opal-security 3.1.3 → 3.2.2
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/README.md +163 -28
- package/lib/commands/groups/get.js +1 -2
- package/lib/commands/login.js +14 -3
- package/lib/commands/request/create.d.ts +8 -1
- package/lib/commands/request/create.js +90 -25
- package/lib/commands/request/get.d.ts +7 -2
- package/lib/commands/request/get.js +53 -7
- package/lib/commands/request/list.d.ts +9 -2
- package/lib/commands/request/list.js +55 -8
- package/lib/commands/whoami.d.ts +8 -0
- package/lib/commands/whoami.js +34 -0
- package/lib/graphql/gql.d.ts +62 -2
- package/lib/graphql/gql.js +13 -1
- package/lib/graphql/graphql.d.ts +502 -117
- package/lib/graphql/graphql.js +2737 -158
- package/lib/labels.d.ts +3 -0
- package/lib/labels.js +37 -0
- package/lib/lib/apollo.js +3 -4
- package/lib/lib/credentials/index.d.ts +2 -1
- package/lib/lib/credentials/index.js +2 -1
- package/lib/lib/flags.js +1 -1
- package/lib/lib/request/api/index.d.ts +6 -0
- package/lib/lib/request/api/index.js +20 -0
- package/lib/lib/request/api/mutations/create-request.d.ts +8 -0
- package/lib/lib/request/api/mutations/create-request.js +159 -0
- package/lib/lib/request/api/queries/apps.d.ts +4 -0
- package/lib/lib/request/api/queries/apps.js +73 -0
- package/lib/lib/request/api/queries/assets.d.ts +6 -0
- package/lib/lib/request/api/queries/assets.js +136 -0
- package/lib/lib/request/api/queries/request-defaults.d.ts +5 -0
- package/lib/lib/request/api/queries/request-defaults.js +51 -0
- package/lib/lib/request/api/queries/requests.d.ts +4 -0
- package/lib/lib/request/api/queries/requests.js +163 -0
- package/lib/lib/request/api/queries/roles.d.ts +5 -0
- package/lib/lib/request/api/queries/roles.js +239 -0
- package/lib/lib/request/displays.d.ts +12 -0
- package/lib/lib/request/displays.js +223 -0
- package/lib/lib/request/prompts/apps-prompt.d.ts +4 -0
- package/lib/lib/request/prompts/apps-prompt.js +35 -0
- package/lib/lib/request/prompts/asset-prompt.d.ts +5 -0
- package/lib/lib/request/prompts/asset-prompt.js +81 -0
- package/lib/lib/request/prompts/duration-prompt.d.ts +2 -0
- package/lib/lib/request/prompts/duration-prompt.js +122 -0
- package/lib/lib/request/prompts/index.d.ts +8 -0
- package/lib/lib/request/prompts/index.js +20 -0
- package/lib/lib/request/prompts/reason-prompt.d.ts +2 -0
- package/lib/lib/request/prompts/reason-prompt.js +20 -0
- package/lib/lib/request/prompts/role-prompt.d.ts +4 -0
- package/lib/lib/request/prompts/role-prompt.js +44 -0
- package/lib/lib/request/prompts/validate-prompt.d.ts +4 -0
- package/lib/lib/request/prompts/validate-prompt.js +29 -0
- package/lib/lib/request/request-utils.d.ts +15 -0
- package/lib/lib/request/request-utils.js +467 -0
- package/lib/lib/request/types.d.ts +55 -0
- package/lib/lib/request/types.js +15 -0
- package/lib/lib/util.d.ts +1 -0
- package/lib/lib/util.js +16 -0
- package/lib/types.d.ts +19 -3
- package/lib/types.js +18 -2
- package/oclif.manifest.json +207 -67
- package/package.json +5 -5
- package/lib/lib/requests.d.ts +0 -22
- package/lib/lib/requests.js +0 -274
- package/lib/utils/displays.d.ts +0 -5
- package/lib/utils/displays.js +0 -65
- package/lib/utils/utils.d.ts +0 -1
- package/lib/utils/utils.js +0 -18
package/oclif.manifest.json
CHANGED
|
@@ -316,6 +316,34 @@
|
|
|
316
316
|
"set-url.js"
|
|
317
317
|
]
|
|
318
318
|
},
|
|
319
|
+
"whoami": {
|
|
320
|
+
"aliases": [],
|
|
321
|
+
"args": {},
|
|
322
|
+
"description": "Describes current url set, organization name, and logged in user if applicable.",
|
|
323
|
+
"flags": {
|
|
324
|
+
"help": {
|
|
325
|
+
"char": "h",
|
|
326
|
+
"description": "Show CLI help.",
|
|
327
|
+
"name": "help",
|
|
328
|
+
"allowNo": false,
|
|
329
|
+
"type": "boolean"
|
|
330
|
+
}
|
|
331
|
+
},
|
|
332
|
+
"hasDynamicHelp": false,
|
|
333
|
+
"hiddenAliases": [],
|
|
334
|
+
"id": "whoami",
|
|
335
|
+
"pluginAlias": "opal-security",
|
|
336
|
+
"pluginName": "opal-security",
|
|
337
|
+
"pluginType": "core",
|
|
338
|
+
"strict": true,
|
|
339
|
+
"enableJsonFlag": false,
|
|
340
|
+
"isESM": false,
|
|
341
|
+
"relativePath": [
|
|
342
|
+
"lib",
|
|
343
|
+
"commands",
|
|
344
|
+
"whoami.js"
|
|
345
|
+
]
|
|
346
|
+
},
|
|
319
347
|
"aws:identity": {
|
|
320
348
|
"aliases": [],
|
|
321
349
|
"args": {},
|
|
@@ -365,7 +393,7 @@
|
|
|
365
393
|
},
|
|
366
394
|
"id": {
|
|
367
395
|
"char": "i",
|
|
368
|
-
"description": "The Opal ID of the
|
|
396
|
+
"description": "The Opal ID of the asset. You can find this from the URL, e.g. https://opal.dev/resources/[ID]",
|
|
369
397
|
"name": "id",
|
|
370
398
|
"hasDynamicHelp": false,
|
|
371
399
|
"multiple": false,
|
|
@@ -388,6 +416,70 @@
|
|
|
388
416
|
"get.js"
|
|
389
417
|
]
|
|
390
418
|
},
|
|
419
|
+
"iam-roles:start": {
|
|
420
|
+
"aliases": [],
|
|
421
|
+
"args": {},
|
|
422
|
+
"description": "Starts a session to assume an IAM role.",
|
|
423
|
+
"examples": [
|
|
424
|
+
"opal iam-roles:start",
|
|
425
|
+
"opal iam-roles:start --id 51f7176b-0464-4a6f-8369-e951e187b398",
|
|
426
|
+
"opal iam-roles:start --id 51f7176b-0464-4a6f-8369-e951e187b398 --profileName \"custom-profile\""
|
|
427
|
+
],
|
|
428
|
+
"flags": {
|
|
429
|
+
"help": {
|
|
430
|
+
"char": "h",
|
|
431
|
+
"description": "Show CLI help.",
|
|
432
|
+
"name": "help",
|
|
433
|
+
"allowNo": false,
|
|
434
|
+
"type": "boolean"
|
|
435
|
+
},
|
|
436
|
+
"id": {
|
|
437
|
+
"char": "i",
|
|
438
|
+
"description": "The Opal ID of the asset. You can find this from the URL, e.g. https://opal.dev/resources/[ID]",
|
|
439
|
+
"name": "id",
|
|
440
|
+
"hasDynamicHelp": false,
|
|
441
|
+
"multiple": false,
|
|
442
|
+
"type": "option"
|
|
443
|
+
},
|
|
444
|
+
"sessionId": {
|
|
445
|
+
"char": "s",
|
|
446
|
+
"description": "The Opal ID of the session to connect to. Uses an existing session that was created via the web flow.",
|
|
447
|
+
"name": "sessionId",
|
|
448
|
+
"hasDynamicHelp": false,
|
|
449
|
+
"multiple": false,
|
|
450
|
+
"type": "option"
|
|
451
|
+
},
|
|
452
|
+
"refresh": {
|
|
453
|
+
"char": "r",
|
|
454
|
+
"description": "Starts a new session even if one already exists. Useful if a session is about to expire.",
|
|
455
|
+
"name": "refresh",
|
|
456
|
+
"allowNo": false,
|
|
457
|
+
"type": "boolean"
|
|
458
|
+
},
|
|
459
|
+
"profileName": {
|
|
460
|
+
"description": "Uses a custom AWS profile name for the IAM role. Default value is the role's name.",
|
|
461
|
+
"name": "profileName",
|
|
462
|
+
"hasDynamicHelp": false,
|
|
463
|
+
"multiple": false,
|
|
464
|
+
"type": "option"
|
|
465
|
+
}
|
|
466
|
+
},
|
|
467
|
+
"hasDynamicHelp": false,
|
|
468
|
+
"hiddenAliases": [],
|
|
469
|
+
"id": "iam-roles:start",
|
|
470
|
+
"pluginAlias": "opal-security",
|
|
471
|
+
"pluginName": "opal-security",
|
|
472
|
+
"pluginType": "core",
|
|
473
|
+
"strict": true,
|
|
474
|
+
"enableJsonFlag": false,
|
|
475
|
+
"isESM": false,
|
|
476
|
+
"relativePath": [
|
|
477
|
+
"lib",
|
|
478
|
+
"commands",
|
|
479
|
+
"iam-roles",
|
|
480
|
+
"start.js"
|
|
481
|
+
]
|
|
482
|
+
},
|
|
391
483
|
"kube-roles:start": {
|
|
392
484
|
"aliases": [],
|
|
393
485
|
"args": {},
|
|
@@ -407,7 +499,7 @@
|
|
|
407
499
|
},
|
|
408
500
|
"id": {
|
|
409
501
|
"char": "i",
|
|
410
|
-
"description": "The Opal ID of the
|
|
502
|
+
"description": "The Opal ID of the asset. You can find this from the URL, e.g. https://opal.dev/resources/[ID]",
|
|
411
503
|
"name": "id",
|
|
412
504
|
"hasDynamicHelp": false,
|
|
413
505
|
"multiple": false,
|
|
@@ -473,7 +565,7 @@
|
|
|
473
565
|
},
|
|
474
566
|
"id": {
|
|
475
567
|
"char": "i",
|
|
476
|
-
"description": "The Opal ID of the
|
|
568
|
+
"description": "The Opal ID of the asset. You can find this from the URL, e.g. https://opal.dev/resources/[ID]",
|
|
477
569
|
"name": "id",
|
|
478
570
|
"hasDynamicHelp": false,
|
|
479
571
|
"multiple": false,
|
|
@@ -503,11 +595,12 @@
|
|
|
503
595
|
"type": "boolean"
|
|
504
596
|
},
|
|
505
597
|
"action": {
|
|
506
|
-
"description": "Method of connecting to the database.\n- psql: Start psql session in shell\n- view: View connection configuration details",
|
|
598
|
+
"description": "Method of connecting to the database.\n- open: Open external database app\n- psql: Start psql session in shell\n- view: View connection configuration details",
|
|
507
599
|
"name": "action",
|
|
508
600
|
"hasDynamicHelp": false,
|
|
509
601
|
"multiple": false,
|
|
510
602
|
"options": [
|
|
603
|
+
"open",
|
|
511
604
|
"psql",
|
|
512
605
|
"view"
|
|
513
606
|
],
|
|
@@ -533,10 +626,57 @@
|
|
|
533
626
|
"request:create": {
|
|
534
627
|
"aliases": [],
|
|
535
628
|
"args": {},
|
|
536
|
-
"description": "
|
|
537
|
-
"flags": {
|
|
629
|
+
"description": "Creates an Opal access request via an interactive form",
|
|
630
|
+
"flags": {
|
|
631
|
+
"help": {
|
|
632
|
+
"char": "h",
|
|
633
|
+
"description": "Show CLI help.",
|
|
634
|
+
"name": "help",
|
|
635
|
+
"allowNo": false,
|
|
636
|
+
"type": "boolean"
|
|
637
|
+
},
|
|
638
|
+
"assets": {
|
|
639
|
+
"char": "a",
|
|
640
|
+
"description": "The ids of the assets (resource, group) to request access to. Append a role name using a colon if needed, e.g. `--assets 123:456`. \n If not provided, an interactive selection flow will be available to select assets to request.",
|
|
641
|
+
"name": "assets",
|
|
642
|
+
"hasDynamicHelp": false,
|
|
643
|
+
"multiple": true,
|
|
644
|
+
"type": "option"
|
|
645
|
+
},
|
|
646
|
+
"reason": {
|
|
647
|
+
"char": "r",
|
|
648
|
+
"description": "The reason for the request, contained in quotes. If not provided, you will be prompted.",
|
|
649
|
+
"name": "reason",
|
|
650
|
+
"hasDynamicHelp": false,
|
|
651
|
+
"multiple": false,
|
|
652
|
+
"type": "option"
|
|
653
|
+
},
|
|
654
|
+
"duration": {
|
|
655
|
+
"char": "d",
|
|
656
|
+
"description": "The duration of access for the request in minutes. Pass in a 0 value for permanent access. If not provided, you will be prompted.",
|
|
657
|
+
"name": "duration",
|
|
658
|
+
"hasDynamicHelp": false,
|
|
659
|
+
"multiple": false,
|
|
660
|
+
"type": "option"
|
|
661
|
+
},
|
|
662
|
+
"template": {
|
|
663
|
+
"char": "t",
|
|
664
|
+
"description": "A request ID of a previously finished request (cancelled/denied/approved) to create a new request based on the completed request.",
|
|
665
|
+
"name": "template",
|
|
666
|
+
"hasDynamicHelp": false,
|
|
667
|
+
"multiple": false,
|
|
668
|
+
"type": "option"
|
|
669
|
+
},
|
|
670
|
+
"bundle": {
|
|
671
|
+
"char": "b",
|
|
672
|
+
"description": "A bundle ID to create a new request based on the assets in the bundle.",
|
|
673
|
+
"name": "bundle",
|
|
674
|
+
"hasDynamicHelp": false,
|
|
675
|
+
"multiple": false,
|
|
676
|
+
"type": "option"
|
|
677
|
+
}
|
|
678
|
+
},
|
|
538
679
|
"hasDynamicHelp": false,
|
|
539
|
-
"hidden": true,
|
|
540
680
|
"hiddenAliases": [],
|
|
541
681
|
"id": "request:create",
|
|
542
682
|
"pluginAlias": "opal-security",
|
|
@@ -555,10 +695,36 @@
|
|
|
555
695
|
"request:get": {
|
|
556
696
|
"aliases": [],
|
|
557
697
|
"args": {},
|
|
558
|
-
"description": "
|
|
559
|
-
"
|
|
698
|
+
"description": "Fetch details of an access request by request ID",
|
|
699
|
+
"examples": [
|
|
700
|
+
"opal request get --id 54052a3e-5375-4392-aeaf-0c6c44c131d4",
|
|
701
|
+
"opal request get --id 54052a3e-5375-4392-aeaf-0c6c44c131d4 --verbose"
|
|
702
|
+
],
|
|
703
|
+
"flags": {
|
|
704
|
+
"help": {
|
|
705
|
+
"char": "h",
|
|
706
|
+
"description": "Show CLI help.",
|
|
707
|
+
"name": "help",
|
|
708
|
+
"allowNo": false,
|
|
709
|
+
"type": "boolean"
|
|
710
|
+
},
|
|
711
|
+
"id": {
|
|
712
|
+
"char": "i",
|
|
713
|
+
"description": "The Opal ID of the asset. You can find this from the URL, e.g. https://opal.dev/resources/[ID]",
|
|
714
|
+
"name": "id",
|
|
715
|
+
"hasDynamicHelp": false,
|
|
716
|
+
"multiple": false,
|
|
717
|
+
"type": "option"
|
|
718
|
+
},
|
|
719
|
+
"verbose": {
|
|
720
|
+
"char": "v",
|
|
721
|
+
"description": "Enable verbose output, prints full response in JSON format. Defaults to false.",
|
|
722
|
+
"name": "verbose",
|
|
723
|
+
"allowNo": false,
|
|
724
|
+
"type": "boolean"
|
|
725
|
+
}
|
|
726
|
+
},
|
|
560
727
|
"hasDynamicHelp": false,
|
|
561
|
-
"hidden": true,
|
|
562
728
|
"hiddenAliases": [],
|
|
563
729
|
"id": "request:get",
|
|
564
730
|
"pluginAlias": "opal-security",
|
|
@@ -575,35 +741,16 @@
|
|
|
575
741
|
]
|
|
576
742
|
},
|
|
577
743
|
"request:list": {
|
|
578
|
-
"aliases": [
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
"flags": {},
|
|
582
|
-
"hasDynamicHelp": false,
|
|
583
|
-
"hidden": true,
|
|
584
|
-
"hiddenAliases": [],
|
|
585
|
-
"id": "request:list",
|
|
586
|
-
"pluginAlias": "opal-security",
|
|
587
|
-
"pluginName": "opal-security",
|
|
588
|
-
"pluginType": "core",
|
|
589
|
-
"strict": true,
|
|
590
|
-
"enableJsonFlag": false,
|
|
591
|
-
"isESM": false,
|
|
592
|
-
"relativePath": [
|
|
593
|
-
"lib",
|
|
594
|
-
"commands",
|
|
595
|
-
"request",
|
|
596
|
-
"list.js"
|
|
597
|
-
]
|
|
598
|
-
},
|
|
599
|
-
"iam-roles:start": {
|
|
600
|
-
"aliases": [],
|
|
744
|
+
"aliases": [
|
|
745
|
+
"request:ls"
|
|
746
|
+
],
|
|
601
747
|
"args": {},
|
|
602
|
-
"description": "
|
|
748
|
+
"description": "Lists your n recent outgoing access requests",
|
|
603
749
|
"examples": [
|
|
604
|
-
"opal
|
|
605
|
-
"opal
|
|
606
|
-
"opal
|
|
750
|
+
"opal request list --n 5",
|
|
751
|
+
"opal request list --n 5 --pending",
|
|
752
|
+
"opal request list --n 5 --verbose",
|
|
753
|
+
"opal request list --n 5 --pending --verbose"
|
|
607
754
|
],
|
|
608
755
|
"flags": {
|
|
609
756
|
"help": {
|
|
@@ -613,40 +760,33 @@
|
|
|
613
760
|
"allowNo": false,
|
|
614
761
|
"type": "boolean"
|
|
615
762
|
},
|
|
616
|
-
"
|
|
617
|
-
"char": "
|
|
618
|
-
"description": "
|
|
619
|
-
"name": "
|
|
620
|
-
"
|
|
621
|
-
"multiple": false,
|
|
622
|
-
"type": "option"
|
|
623
|
-
},
|
|
624
|
-
"sessionId": {
|
|
625
|
-
"char": "s",
|
|
626
|
-
"description": "The Opal ID of the session to connect to. Uses an existing session that was created via the web flow.",
|
|
627
|
-
"name": "sessionId",
|
|
763
|
+
"n": {
|
|
764
|
+
"char": "n",
|
|
765
|
+
"description": "Defines number of requests to be returned. 1 <= n <= 100.",
|
|
766
|
+
"name": "n",
|
|
767
|
+
"default": 10,
|
|
628
768
|
"hasDynamicHelp": false,
|
|
629
769
|
"multiple": false,
|
|
630
770
|
"type": "option"
|
|
631
771
|
},
|
|
632
|
-
"
|
|
633
|
-
"char": "
|
|
634
|
-
"description": "
|
|
635
|
-
"name": "
|
|
772
|
+
"pending": {
|
|
773
|
+
"char": "p",
|
|
774
|
+
"description": "Show only pending requests. Defaults to false.",
|
|
775
|
+
"name": "pending",
|
|
636
776
|
"allowNo": false,
|
|
637
777
|
"type": "boolean"
|
|
638
778
|
},
|
|
639
|
-
"
|
|
640
|
-
"
|
|
641
|
-
"
|
|
642
|
-
"
|
|
643
|
-
"
|
|
644
|
-
"type": "
|
|
779
|
+
"verbose": {
|
|
780
|
+
"char": "v",
|
|
781
|
+
"description": "Enable verbose output, prints full response in JSON format. Defaults to false.",
|
|
782
|
+
"name": "verbose",
|
|
783
|
+
"allowNo": false,
|
|
784
|
+
"type": "boolean"
|
|
645
785
|
}
|
|
646
786
|
},
|
|
647
787
|
"hasDynamicHelp": false,
|
|
648
788
|
"hiddenAliases": [],
|
|
649
|
-
"id": "
|
|
789
|
+
"id": "request:list",
|
|
650
790
|
"pluginAlias": "opal-security",
|
|
651
791
|
"pluginName": "opal-security",
|
|
652
792
|
"pluginType": "core",
|
|
@@ -656,8 +796,8 @@
|
|
|
656
796
|
"relativePath": [
|
|
657
797
|
"lib",
|
|
658
798
|
"commands",
|
|
659
|
-
"
|
|
660
|
-
"
|
|
799
|
+
"request",
|
|
800
|
+
"list.js"
|
|
661
801
|
]
|
|
662
802
|
},
|
|
663
803
|
"resources:get": {
|
|
@@ -677,7 +817,7 @@
|
|
|
677
817
|
},
|
|
678
818
|
"id": {
|
|
679
819
|
"char": "i",
|
|
680
|
-
"description": "The Opal ID of the
|
|
820
|
+
"description": "The Opal ID of the asset. You can find this from the URL, e.g. https://opal.dev/resources/[ID]",
|
|
681
821
|
"name": "id",
|
|
682
822
|
"hasDynamicHelp": false,
|
|
683
823
|
"multiple": false,
|
|
@@ -744,7 +884,7 @@
|
|
|
744
884
|
},
|
|
745
885
|
"id": {
|
|
746
886
|
"char": "i",
|
|
747
|
-
"description": "The Opal ID of the
|
|
887
|
+
"description": "The Opal ID of the asset. You can find this from the URL, e.g. https://opal.dev/resources/[ID]",
|
|
748
888
|
"name": "id",
|
|
749
889
|
"hasDynamicHelp": false,
|
|
750
890
|
"multiple": false,
|
|
@@ -819,7 +959,7 @@
|
|
|
819
959
|
},
|
|
820
960
|
"id": {
|
|
821
961
|
"char": "i",
|
|
822
|
-
"description": "The Opal ID of the
|
|
962
|
+
"description": "The Opal ID of the asset. You can find this from the URL, e.g. https://opal.dev/resources/[ID]",
|
|
823
963
|
"name": "id",
|
|
824
964
|
"hasDynamicHelp": false,
|
|
825
965
|
"multiple": false,
|
|
@@ -868,7 +1008,7 @@
|
|
|
868
1008
|
},
|
|
869
1009
|
"id": {
|
|
870
1010
|
"char": "i",
|
|
871
|
-
"description": "The Opal ID of the
|
|
1011
|
+
"description": "The Opal ID of the asset. You can find this from the URL, e.g. https://opal.dev/resources/[ID]",
|
|
872
1012
|
"name": "id",
|
|
873
1013
|
"hasDynamicHelp": false,
|
|
874
1014
|
"multiple": false,
|
|
@@ -907,5 +1047,5 @@
|
|
|
907
1047
|
]
|
|
908
1048
|
}
|
|
909
1049
|
},
|
|
910
|
-
"version": "3.
|
|
1050
|
+
"version": "3.2.2"
|
|
911
1051
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "opal-security",
|
|
3
3
|
"description": "Opal allows you to centrally manage access to all of your sensitive systems.",
|
|
4
|
-
"version": "3.
|
|
4
|
+
"version": "3.2.2",
|
|
5
5
|
"author": "Stephen Cobbe",
|
|
6
6
|
"bin": {
|
|
7
7
|
"opal": "./bin/run"
|
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
"argon2": "^0.40.1",
|
|
17
17
|
"chalk": "^2.4.2",
|
|
18
18
|
"cli-table3": "^0.6.5",
|
|
19
|
+
"enquirer": "^2.4.1",
|
|
19
20
|
"graphql": "^15.5.0",
|
|
20
21
|
"inquirer": "^8.2.6",
|
|
21
22
|
"inquirer-autocomplete-prompt": "^2.0.1",
|
|
@@ -39,6 +40,7 @@
|
|
|
39
40
|
"@types/lodash": "^4.14.169",
|
|
40
41
|
"@types/node": "^22.14.0",
|
|
41
42
|
"@types/prettyjson": "0.0.29",
|
|
43
|
+
"@types/react": "^19.1.4",
|
|
42
44
|
"@types/semver": "^7.3.8",
|
|
43
45
|
"better-npm-audit": "^3.7.3",
|
|
44
46
|
"get-graphql-schema": "^2.1.2",
|
|
@@ -60,9 +62,7 @@
|
|
|
60
62
|
"/scripts"
|
|
61
63
|
],
|
|
62
64
|
"homepage": "https://github.com/opalsecurity/opal-cli/",
|
|
63
|
-
"keywords": [
|
|
64
|
-
"oclif"
|
|
65
|
-
],
|
|
65
|
+
"keywords": ["oclif"],
|
|
66
66
|
"license": "MIT",
|
|
67
67
|
"main": "lib/index.js",
|
|
68
68
|
"oclif": {
|
|
@@ -88,7 +88,7 @@
|
|
|
88
88
|
"prepack": "npm run build && oclif manifest && oclif readme",
|
|
89
89
|
"test": "vitest",
|
|
90
90
|
"coverage": "vitest run --coverage",
|
|
91
|
-
"version": "oclif readme && git add README.md",
|
|
91
|
+
"version": "oclif readme && git add README.md && biome check --write",
|
|
92
92
|
"posttest": "biome check",
|
|
93
93
|
"biome-ci": "biome ci --reporter=github",
|
|
94
94
|
"gql-codegen": "graphql-codegen",
|
package/lib/lib/requests.d.ts
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import type { NormalizedCacheObject } from "@apollo/client/core";
|
|
2
|
-
import type { ApolloClient } from "@apollo/client/core/ApolloClient";
|
|
3
|
-
import type { Command } from "@oclif/core/lib/command";
|
|
4
|
-
export interface AppNode {
|
|
5
|
-
appName: string;
|
|
6
|
-
assets: Map<string, AssetNode>;
|
|
7
|
-
}
|
|
8
|
-
export interface AssetNode {
|
|
9
|
-
assetName: string;
|
|
10
|
-
roles?: Map<string, RoleNode>;
|
|
11
|
-
}
|
|
12
|
-
export interface RoleNode {
|
|
13
|
-
roleName: string;
|
|
14
|
-
}
|
|
15
|
-
export type RequestMap = Map<string, AppNode>;
|
|
16
|
-
export declare function selectRequestableItems(cmd: Command, client: ApolloClient<NormalizedCacheObject>, requestMap: RequestMap): Promise<void>;
|
|
17
|
-
export declare function chooseAssets(cmd: Command, client: ApolloClient<NormalizedCacheObject>, appId: string, requestMap: RequestMap): Promise<void>;
|
|
18
|
-
export declare function chooseRoles(appId: string, assetId: string, requestMap: RequestMap): Promise<void>;
|
|
19
|
-
export declare function doneSelectingAssets(): Promise<boolean>;
|
|
20
|
-
export declare function promptForReason(): Promise<any>;
|
|
21
|
-
export declare function promptForExpiration(): Promise<any>;
|
|
22
|
-
export declare function submitFinalRequest(cmd: Command): Promise<void>;
|