@shuffl/cli 0.7.11 → 0.7.13

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.
@@ -216,19 +216,500 @@ export const commands = [
216
216
  scope: 'access:read',
217
217
  summary: 'List Slack members waiting for access to Shuffl',
218
218
  },
219
+ {
220
+ access: 'write',
221
+ command: ['access-requests', 'decide'],
222
+ input: {
223
+ $schema: 'https://json-schema.org/draft/2020-12/schema',
224
+ additionalProperties: false,
225
+ properties: {
226
+ confirm: {
227
+ const: 'accessRequests.decide',
228
+ type: 'string',
229
+ },
230
+ decision: {
231
+ anyOf: [
232
+ {
233
+ const: 'approve',
234
+ type: 'string',
235
+ },
236
+ {
237
+ const: 'decline',
238
+ type: 'string',
239
+ },
240
+ ],
241
+ },
242
+ expectedRevision: {
243
+ type: 'number',
244
+ },
245
+ note: {
246
+ type: 'string',
247
+ },
248
+ requestId: {
249
+ type: 'string',
250
+ },
251
+ requestKey: {
252
+ maxLength: 128,
253
+ minLength: 1,
254
+ type: 'string',
255
+ },
256
+ },
257
+ required: ['decision', 'requestId', 'confirm', 'requestKey'],
258
+ type: 'object',
259
+ },
260
+ path: ['accessRequests', 'decide'],
261
+ permission: 'accessRequests.decide',
262
+ scope: 'self:write',
263
+ summary: 'Approve or decline an access request you were asked to decide',
264
+ },
265
+ {
266
+ access: 'read',
267
+ command: ['access-requests', 'get'],
268
+ input: {
269
+ $schema: 'https://json-schema.org/draft/2020-12/schema',
270
+ additionalProperties: false,
271
+ properties: {
272
+ requestId: {
273
+ type: 'string',
274
+ },
275
+ },
276
+ required: ['requestId'],
277
+ type: 'object',
278
+ },
279
+ path: ['accessRequests', 'get'],
280
+ permission: 'accessRequests.get',
281
+ scope: 'self:read',
282
+ summary: 'Read one access request you asked for, approve or own',
283
+ },
284
+ {
285
+ access: 'read',
286
+ command: ['access-requests', 'inbox'],
287
+ input: {
288
+ $schema: 'https://json-schema.org/draft/2020-12/schema',
289
+ additionalProperties: false,
290
+ properties: {},
291
+ type: 'object',
292
+ },
293
+ path: ['accessRequests', 'inbox'],
294
+ permission: 'accessRequests.inbox',
295
+ scope: 'self:read',
296
+ summary: 'List the access requests waiting on you to decide or set up',
297
+ },
298
+ {
299
+ access: 'read',
300
+ command: ['access-requests', 'list'],
301
+ input: {
302
+ $schema: 'https://json-schema.org/draft/2020-12/schema',
303
+ additionalProperties: false,
304
+ properties: {
305
+ appId: {
306
+ type: 'string',
307
+ },
308
+ limit: {
309
+ type: 'number',
310
+ },
311
+ status: {
312
+ anyOf: [
313
+ {
314
+ const: 'approved',
315
+ type: 'string',
316
+ },
317
+ {
318
+ const: 'declined',
319
+ type: 'string',
320
+ },
321
+ {
322
+ const: 'expired',
323
+ type: 'string',
324
+ },
325
+ {
326
+ const: 'failed',
327
+ type: 'string',
328
+ },
329
+ {
330
+ const: 'granted',
331
+ type: 'string',
332
+ },
333
+ {
334
+ const: 'granting',
335
+ type: 'string',
336
+ },
337
+ {
338
+ const: 'pending_approval',
339
+ type: 'string',
340
+ },
341
+ {
342
+ const: 'requested',
343
+ type: 'string',
344
+ },
345
+ {
346
+ const: 'revoked',
347
+ type: 'string',
348
+ },
349
+ ],
350
+ },
351
+ },
352
+ type: 'object',
353
+ },
354
+ path: ['accessRequests', 'list'],
355
+ permission: 'accessRequests.list',
356
+ scope: 'access:read',
357
+ summary: 'List access requests across the workspace, by app or status',
358
+ },
359
+ {
360
+ access: 'write',
361
+ command: ['access-requests', 'mark-granted'],
362
+ input: {
363
+ $schema: 'https://json-schema.org/draft/2020-12/schema',
364
+ additionalProperties: false,
365
+ properties: {
366
+ confirm: {
367
+ const: 'accessRequests.markGranted',
368
+ type: 'string',
369
+ },
370
+ requestId: {
371
+ type: 'string',
372
+ },
373
+ requestKey: {
374
+ maxLength: 128,
375
+ minLength: 1,
376
+ type: 'string',
377
+ },
378
+ },
379
+ required: ['requestId', 'confirm', 'requestKey'],
380
+ type: 'object',
381
+ },
382
+ path: ['accessRequests', 'markGranted'],
383
+ permission: 'accessRequests.markGranted',
384
+ scope: 'self:write',
385
+ summary: 'Mark an approved request as set up, so the person is told',
386
+ },
387
+ {
388
+ access: 'read',
389
+ command: ['access-requests', 'mine'],
390
+ input: {
391
+ $schema: 'https://json-schema.org/draft/2020-12/schema',
392
+ additionalProperties: false,
393
+ properties: {},
394
+ type: 'object',
395
+ },
396
+ path: ['accessRequests', 'mine'],
397
+ permission: 'accessRequests.mine',
398
+ scope: 'self:read',
399
+ summary: 'List your own access requests and where each stands',
400
+ },
401
+ {
402
+ access: 'write',
403
+ command: ['access-requests', 'request'],
404
+ input: {
405
+ $schema: 'https://json-schema.org/draft/2020-12/schema',
406
+ additionalProperties: false,
407
+ properties: {
408
+ appId: {
409
+ type: 'string',
410
+ },
411
+ confirm: {
412
+ const: 'accessRequests.request',
413
+ type: 'string',
414
+ },
415
+ forPersonId: {
416
+ type: 'string',
417
+ },
418
+ levelId: {
419
+ type: 'string',
420
+ },
421
+ note: {
422
+ type: 'string',
423
+ },
424
+ requestKey: {
425
+ maxLength: 128,
426
+ minLength: 1,
427
+ type: 'string',
428
+ },
429
+ },
430
+ required: ['appId', 'requestKey', 'confirm'],
431
+ type: 'object',
432
+ },
433
+ path: ['accessRequests', 'request'],
434
+ permission: 'accessRequests.request',
435
+ scope: 'self:write',
436
+ summary: 'Ask for access to an app',
437
+ },
438
+ {
439
+ access: 'write',
440
+ command: ['access-requests', 'revoke'],
441
+ input: {
442
+ $schema: 'https://json-schema.org/draft/2020-12/schema',
443
+ additionalProperties: false,
444
+ properties: {
445
+ confirm: {
446
+ const: 'accessRequests.revoke',
447
+ type: 'string',
448
+ },
449
+ note: {
450
+ type: 'string',
451
+ },
452
+ requestId: {
453
+ type: 'string',
454
+ },
455
+ requestKey: {
456
+ maxLength: 128,
457
+ minLength: 1,
458
+ type: 'string',
459
+ },
460
+ },
461
+ required: ['requestId', 'confirm', 'requestKey'],
462
+ type: 'object',
463
+ },
464
+ path: ['accessRequests', 'revoke'],
465
+ permission: 'accessRequests.revoke',
466
+ scope: 'self:write',
467
+ summary: 'Remove access that was granted through a request',
468
+ },
469
+ {
470
+ access: 'read',
471
+ command: ['actions', 'mine'],
472
+ input: {
473
+ $schema: 'https://json-schema.org/draft/2020-12/schema',
474
+ additionalProperties: false,
475
+ properties: {},
476
+ type: 'object',
477
+ },
478
+ path: ['actions', 'mine'],
479
+ permission: 'actions.mine',
480
+ scope: 'self:read',
481
+ summary: 'List the requests Mello filed for you and where each stands',
482
+ },
483
+ {
484
+ access: 'write',
485
+ command: ['apps', 'archive'],
486
+ input: {
487
+ $schema: 'https://json-schema.org/draft/2020-12/schema',
488
+ additionalProperties: false,
489
+ properties: {
490
+ appId: {
491
+ type: 'string',
492
+ },
493
+ confirm: {
494
+ const: 'apps.archive',
495
+ type: 'string',
496
+ },
497
+ requestKey: {
498
+ maxLength: 128,
499
+ minLength: 1,
500
+ type: 'string',
501
+ },
502
+ },
503
+ required: ['appId', 'confirm', 'requestKey'],
504
+ type: 'object',
505
+ },
506
+ path: ['apps', 'archive'],
507
+ permission: 'apps.archive',
508
+ scope: 'access:write',
509
+ summary: 'Archive an app so nobody can ask for it; open requests expire',
510
+ },
511
+ {
512
+ access: 'read',
513
+ command: ['apps', 'get'],
514
+ input: {
515
+ $schema: 'https://json-schema.org/draft/2020-12/schema',
516
+ additionalProperties: false,
517
+ properties: {
518
+ appId: {
519
+ type: 'string',
520
+ },
521
+ },
522
+ required: ['appId'],
523
+ type: 'object',
524
+ },
525
+ path: ['apps', 'get'],
526
+ permission: 'apps.get',
527
+ scope: 'self:read',
528
+ summary: 'Read one app in the catalog: owners, approvers, levels and who has access',
529
+ },
530
+ {
531
+ access: 'write',
532
+ command: ['apps', 'import'],
533
+ input: {
534
+ $schema: 'https://json-schema.org/draft/2020-12/schema',
535
+ additionalProperties: false,
536
+ properties: {
537
+ confirm: {
538
+ const: 'apps.import',
539
+ type: 'string',
540
+ },
541
+ connectionId: {
542
+ type: 'string',
543
+ },
544
+ requestKey: {
545
+ maxLength: 128,
546
+ minLength: 1,
547
+ type: 'string',
548
+ },
549
+ },
550
+ required: ['connectionId', 'confirm', 'requestKey'],
551
+ type: 'object',
552
+ },
553
+ path: ['apps', 'import'],
554
+ permission: 'apps.import',
555
+ scope: 'access:write',
556
+ summary: 'Import the apps a connected identity provider lists into the catalog',
557
+ },
558
+ {
559
+ access: 'read',
560
+ command: ['apps', 'import-sources'],
561
+ input: {
562
+ $schema: 'https://json-schema.org/draft/2020-12/schema',
563
+ additionalProperties: false,
564
+ properties: {},
565
+ type: 'object',
566
+ },
567
+ path: ['apps', 'importSources'],
568
+ permission: 'apps.importSources',
569
+ scope: 'access:read',
570
+ summary: 'List the connected identity providers apps can be imported from',
571
+ },
219
572
  {
220
573
  access: 'read',
221
- command: ['actions', 'mine'],
574
+ command: ['apps', 'list'],
222
575
  input: {
223
576
  $schema: 'https://json-schema.org/draft/2020-12/schema',
224
577
  additionalProperties: false,
225
578
  properties: {},
226
579
  type: 'object',
227
580
  },
228
- path: ['actions', 'mine'],
229
- permission: 'actions.mine',
581
+ path: ['apps', 'list'],
582
+ permission: 'apps.list',
230
583
  scope: 'self:read',
231
- summary: 'List the requests Mello filed for you and where each stands',
584
+ summary: 'List the apps people can ask for, with owners, levels and your own request',
585
+ },
586
+ {
587
+ access: 'read',
588
+ command: ['apps', 'members'],
589
+ input: {
590
+ $schema: 'https://json-schema.org/draft/2020-12/schema',
591
+ additionalProperties: false,
592
+ properties: {
593
+ appId: {
594
+ type: 'string',
595
+ },
596
+ },
597
+ required: ['appId'],
598
+ type: 'object',
599
+ },
600
+ path: ['apps', 'members'],
601
+ permission: 'apps.members',
602
+ scope: 'access:read',
603
+ summary: 'List who has access to an app through Shuffl',
604
+ },
605
+ {
606
+ access: 'write',
607
+ command: ['apps', 'save'],
608
+ input: {
609
+ $schema: 'https://json-schema.org/draft/2020-12/schema',
610
+ additionalProperties: false,
611
+ properties: {
612
+ approvers: {
613
+ additionalProperties: false,
614
+ properties: {
615
+ groupIds: {
616
+ items: {
617
+ type: 'string',
618
+ },
619
+ type: 'array',
620
+ },
621
+ manager: {
622
+ type: 'boolean',
623
+ },
624
+ personIds: {
625
+ items: {
626
+ type: 'string',
627
+ },
628
+ type: 'array',
629
+ },
630
+ },
631
+ required: ['groupIds', 'manager', 'personIds'],
632
+ type: 'object',
633
+ },
634
+ confirm: {
635
+ const: 'apps.save',
636
+ type: 'string',
637
+ },
638
+ description: {
639
+ type: 'string',
640
+ },
641
+ expectedRevision: {
642
+ type: 'number',
643
+ },
644
+ expiryDays: {
645
+ type: 'number',
646
+ },
647
+ id: {
648
+ type: 'string',
649
+ },
650
+ levels: {
651
+ items: {
652
+ additionalProperties: false,
653
+ properties: {
654
+ description: {
655
+ type: 'string',
656
+ },
657
+ id: {
658
+ type: 'string',
659
+ },
660
+ name: {
661
+ type: 'string',
662
+ },
663
+ },
664
+ required: ['name'],
665
+ type: 'object',
666
+ },
667
+ type: 'array',
668
+ },
669
+ logoUrl: {
670
+ type: 'string',
671
+ },
672
+ name: {
673
+ type: 'string',
674
+ },
675
+ ownerPersonIds: {
676
+ items: {
677
+ type: 'string',
678
+ },
679
+ type: 'array',
680
+ },
681
+ requestKey: {
682
+ maxLength: 128,
683
+ minLength: 1,
684
+ type: 'string',
685
+ },
686
+ requestPolicy: {
687
+ anyOf: [
688
+ {
689
+ const: 'approval',
690
+ type: 'string',
691
+ },
692
+ {
693
+ const: 'closed',
694
+ type: 'string',
695
+ },
696
+ {
697
+ const: 'open',
698
+ type: 'string',
699
+ },
700
+ ],
701
+ },
702
+ websiteUrl: {
703
+ type: 'string',
704
+ },
705
+ },
706
+ required: ['name', 'confirm', 'requestKey'],
707
+ type: 'object',
708
+ },
709
+ path: ['apps', 'save'],
710
+ permission: 'apps.save',
711
+ scope: 'access:write',
712
+ summary: 'Add or change an app in the catalog: owners, approvers, levels and request policy',
232
713
  },
233
714
  {
234
715
  access: 'read',
@@ -849,6 +1330,18 @@ export const commands = [
849
1330
  properties: {
850
1331
  capabilityId: {
851
1332
  anyOf: [
1333
+ {
1334
+ const: 'app_access',
1335
+ type: 'string',
1336
+ },
1337
+ {
1338
+ const: 'app_approvals',
1339
+ type: 'string',
1340
+ },
1341
+ {
1342
+ const: 'app_catalog',
1343
+ type: 'string',
1344
+ },
852
1345
  {
853
1346
  const: 'badges',
854
1347
  type: 'string',
@@ -1018,6 +1511,18 @@ export const commands = [
1018
1511
  properties: {
1019
1512
  capabilityId: {
1020
1513
  anyOf: [
1514
+ {
1515
+ const: 'app_access',
1516
+ type: 'string',
1517
+ },
1518
+ {
1519
+ const: 'app_approvals',
1520
+ type: 'string',
1521
+ },
1522
+ {
1523
+ const: 'app_catalog',
1524
+ type: 'string',
1525
+ },
1021
1526
  {
1022
1527
  const: 'badges',
1023
1528
  type: 'string',
@@ -2468,10 +2973,70 @@ export const commands = [
2468
2973
  const: 'access.slackWaiting',
2469
2974
  type: 'string',
2470
2975
  },
2976
+ {
2977
+ const: 'accessRequests.decide',
2978
+ type: 'string',
2979
+ },
2980
+ {
2981
+ const: 'accessRequests.get',
2982
+ type: 'string',
2983
+ },
2984
+ {
2985
+ const: 'accessRequests.inbox',
2986
+ type: 'string',
2987
+ },
2988
+ {
2989
+ const: 'accessRequests.list',
2990
+ type: 'string',
2991
+ },
2992
+ {
2993
+ const: 'accessRequests.markGranted',
2994
+ type: 'string',
2995
+ },
2996
+ {
2997
+ const: 'accessRequests.mine',
2998
+ type: 'string',
2999
+ },
3000
+ {
3001
+ const: 'accessRequests.request',
3002
+ type: 'string',
3003
+ },
3004
+ {
3005
+ const: 'accessRequests.revoke',
3006
+ type: 'string',
3007
+ },
2471
3008
  {
2472
3009
  const: 'actions.mine',
2473
3010
  type: 'string',
2474
3011
  },
3012
+ {
3013
+ const: 'apps.archive',
3014
+ type: 'string',
3015
+ },
3016
+ {
3017
+ const: 'apps.get',
3018
+ type: 'string',
3019
+ },
3020
+ {
3021
+ const: 'apps.import',
3022
+ type: 'string',
3023
+ },
3024
+ {
3025
+ const: 'apps.importSources',
3026
+ type: 'string',
3027
+ },
3028
+ {
3029
+ const: 'apps.list',
3030
+ type: 'string',
3031
+ },
3032
+ {
3033
+ const: 'apps.members',
3034
+ type: 'string',
3035
+ },
3036
+ {
3037
+ const: 'apps.save',
3038
+ type: 'string',
3039
+ },
2475
3040
  {
2476
3041
  const: 'assistant.conversations',
2477
3042
  type: 'string',
@@ -3812,10 +4377,18 @@ export const commands = [
3812
4377
  const: 'runs.history.get',
3813
4378
  type: 'string',
3814
4379
  },
4380
+ {
4381
+ const: 'runs.history.linkPeople',
4382
+ type: 'string',
4383
+ },
3815
4384
  {
3816
4385
  const: 'runs.history.list',
3817
4386
  type: 'string',
3818
4387
  },
4388
+ {
4389
+ const: 'runs.history.people',
4390
+ type: 'string',
4391
+ },
3819
4392
  {
3820
4393
  const: 'runs.list',
3821
4394
  type: 'string',
@@ -3824,6 +4397,10 @@ export const commands = [
3824
4397
  const: 'runs.request',
3825
4398
  type: 'string',
3826
4399
  },
4400
+ {
4401
+ const: 'runs.resolveMonthlyReview',
4402
+ type: 'string',
4403
+ },
3827
4404
  {
3828
4405
  const: 'runs.retry',
3829
4406
  type: 'string',
@@ -9314,6 +9891,10 @@ export const commands = [
9314
9891
  },
9315
9892
  kind: {
9316
9893
  anyOf: [
9894
+ {
9895
+ const: 'access_request',
9896
+ type: 'string',
9897
+ },
9317
9898
  {
9318
9899
  const: 'billing_limit',
9319
9900
  type: 'string',
@@ -15201,6 +15782,37 @@ export const commands = [
15201
15782
  scope: 'exports:read',
15202
15783
  summary: 'Read one introduction round imported from the previous Shuffl',
15203
15784
  },
15785
+ {
15786
+ access: 'write',
15787
+ command: ['runs', 'history', 'link-people'],
15788
+ input: {
15789
+ $schema: 'https://json-schema.org/draft/2020-12/schema',
15790
+ additionalProperties: false,
15791
+ properties: {
15792
+ confirm: {
15793
+ const: 'runs.history.linkPeople',
15794
+ type: 'string',
15795
+ },
15796
+ requestKey: {
15797
+ maxLength: 128,
15798
+ minLength: 1,
15799
+ type: 'string',
15800
+ },
15801
+ sourceUserIds: {
15802
+ items: {
15803
+ type: 'string',
15804
+ },
15805
+ type: 'array',
15806
+ },
15807
+ },
15808
+ required: ['sourceUserIds', 'confirm', 'requestKey'],
15809
+ type: 'object',
15810
+ },
15811
+ path: ['runs', 'history', 'linkPeople'],
15812
+ permission: 'runs.history.linkPeople',
15813
+ scope: 'runs:write',
15814
+ summary: 'Link people from preserved rounds to the matching person in People',
15815
+ },
15204
15816
  {
15205
15817
  access: 'read',
15206
15818
  command: ['runs', 'history', 'list'],
@@ -15219,6 +15831,20 @@ export const commands = [
15219
15831
  scope: 'exports:read',
15220
15832
  summary: 'List introduction rounds imported from the previous Shuffl',
15221
15833
  },
15834
+ {
15835
+ access: 'read',
15836
+ command: ['runs', 'history', 'people'],
15837
+ input: {
15838
+ $schema: 'https://json-schema.org/draft/2020-12/schema',
15839
+ additionalProperties: false,
15840
+ properties: {},
15841
+ type: 'object',
15842
+ },
15843
+ path: ['runs', 'history', 'people'],
15844
+ permission: 'runs.history.people',
15845
+ scope: 'exports:read',
15846
+ summary: 'People recorded in preserved rounds, each with their link or suggested match in People',
15847
+ },
15222
15848
  {
15223
15849
  access: 'read',
15224
15850
  command: ['runs', 'list'],
@@ -15280,6 +15906,53 @@ export const commands = [
15280
15906
  scope: 'runs:read',
15281
15907
  summary: "List a program's introduction rounds",
15282
15908
  },
15909
+ {
15910
+ access: 'write',
15911
+ command: ['runs', 'resolve-monthly-review'],
15912
+ input: {
15913
+ $schema: 'https://json-schema.org/draft/2020-12/schema',
15914
+ additionalProperties: false,
15915
+ properties: {
15916
+ confirm: {
15917
+ const: 'runs.resolveMonthlyReview',
15918
+ type: 'string',
15919
+ },
15920
+ decision: {
15921
+ anyOf: [
15922
+ {
15923
+ const: 'notice-not-required',
15924
+ type: 'string',
15925
+ },
15926
+ {
15927
+ const: 'send-notice',
15928
+ type: 'string',
15929
+ },
15930
+ {
15931
+ const: 'skip-occurrence',
15932
+ type: 'string',
15933
+ },
15934
+ ],
15935
+ },
15936
+ reason: {
15937
+ type: 'string',
15938
+ },
15939
+ requestKey: {
15940
+ maxLength: 128,
15941
+ minLength: 1,
15942
+ type: 'string',
15943
+ },
15944
+ runId: {
15945
+ type: 'string',
15946
+ },
15947
+ },
15948
+ required: ['decision', 'reason', 'runId', 'confirm', 'requestKey'],
15949
+ type: 'object',
15950
+ },
15951
+ path: ['runs', 'resolveMonthlyReview'],
15952
+ permission: 'runs.resolveMonthlyReview',
15953
+ scope: 'runs:write',
15954
+ summary: 'Settle a monthly round held for review with a recorded decision',
15955
+ },
15283
15956
  {
15284
15957
  access: 'write',
15285
15958
  command: ['runs', 'retry'],
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "dependencies": {
3
3
  "@orpc/client": "1.15.3",
4
- "@shuffl/api-contracts": "0.7.11",
5
- "@shuffl/sdk": "0.7.11"
4
+ "@shuffl/api-contracts": "0.7.13",
5
+ "@shuffl/sdk": "0.7.13"
6
6
  },
7
7
  "description": "Shuffl command line: every public API operation as a scriptable command with JSON output.",
8
8
  "engines": {
@@ -33,7 +33,7 @@
33
33
  "sideEffects": false,
34
34
  "type": "module",
35
35
  "types": "./dist/index.d.ts",
36
- "version": "0.7.11",
36
+ "version": "0.7.13",
37
37
  "bin": {
38
38
  "shuffl": "./dist/bin.js"
39
39
  }