@shuffl/cli 0.7.10 → 0.7.12

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',
@@ -3976,6 +4541,14 @@ export const commands = [
3976
4541
  const: 'timeOff.balances',
3977
4542
  type: 'string',
3978
4543
  },
4544
+ {
4545
+ const: 'timeOff.cancel',
4546
+ type: 'string',
4547
+ },
4548
+ {
4549
+ const: 'timeOff.request',
4550
+ type: 'string',
4551
+ },
3979
4552
  {
3980
4553
  const: 'units.list',
3981
4554
  type: 'string',
@@ -9306,6 +9879,10 @@ export const commands = [
9306
9879
  },
9307
9880
  kind: {
9308
9881
  anyOf: [
9882
+ {
9883
+ const: 'access_request',
9884
+ type: 'string',
9885
+ },
9309
9886
  {
9310
9887
  const: 'billing_limit',
9311
9888
  type: 'string',
@@ -16458,6 +17035,92 @@ export const commands = [
16458
17035
  scope: 'self:read',
16459
17036
  summary: 'Read your own time-off balances from the connected HR system',
16460
17037
  },
17038
+ {
17039
+ access: 'write',
17040
+ command: ['time-off', 'cancel'],
17041
+ input: {
17042
+ $schema: 'https://json-schema.org/draft/2020-12/schema',
17043
+ additionalProperties: false,
17044
+ properties: {
17045
+ confirm: {
17046
+ const: 'timeOff.cancel',
17047
+ type: 'string',
17048
+ },
17049
+ id: {
17050
+ type: 'string',
17051
+ },
17052
+ requestKey: {
17053
+ maxLength: 128,
17054
+ minLength: 1,
17055
+ type: 'string',
17056
+ },
17057
+ },
17058
+ required: ['id', 'requestKey', 'confirm'],
17059
+ type: 'object',
17060
+ },
17061
+ path: ['timeOff', 'cancel'],
17062
+ permission: 'timeOff.cancel',
17063
+ scope: 'self:write',
17064
+ summary: 'Cancel a pending time-off request Mello filed',
17065
+ },
17066
+ {
17067
+ access: 'write',
17068
+ command: ['time-off', 'request'],
17069
+ input: {
17070
+ $schema: 'https://json-schema.org/draft/2020-12/schema',
17071
+ additionalProperties: false,
17072
+ properties: {
17073
+ confirm: {
17074
+ const: 'timeOff.request',
17075
+ type: 'string',
17076
+ },
17077
+ endDate: {
17078
+ type: 'string',
17079
+ },
17080
+ endHalfDay: {
17081
+ anyOf: [
17082
+ {
17083
+ const: false,
17084
+ type: 'boolean',
17085
+ },
17086
+ {
17087
+ const: true,
17088
+ type: 'boolean',
17089
+ },
17090
+ ],
17091
+ },
17092
+ policy: {
17093
+ type: 'string',
17094
+ },
17095
+ requestKey: {
17096
+ maxLength: 128,
17097
+ minLength: 1,
17098
+ type: 'string',
17099
+ },
17100
+ startDate: {
17101
+ type: 'string',
17102
+ },
17103
+ startHalfDay: {
17104
+ anyOf: [
17105
+ {
17106
+ const: false,
17107
+ type: 'boolean',
17108
+ },
17109
+ {
17110
+ const: true,
17111
+ type: 'boolean',
17112
+ },
17113
+ ],
17114
+ },
17115
+ },
17116
+ required: ['endDate', 'policy', 'requestKey', 'startDate', 'confirm'],
17117
+ type: 'object',
17118
+ },
17119
+ path: ['timeOff', 'request'],
17120
+ permission: 'timeOff.request',
17121
+ scope: 'self:write',
17122
+ summary: 'Request time off in your HR system; it waits for approval there',
17123
+ },
16461
17124
  {
16462
17125
  access: 'read',
16463
17126
  command: ['units', 'list'],
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.10",
5
- "@shuffl/sdk": "0.7.10"
4
+ "@shuffl/api-contracts": "0.7.12",
5
+ "@shuffl/sdk": "0.7.12"
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.10",
36
+ "version": "0.7.12",
37
37
  "bin": {
38
38
  "shuffl": "./dist/bin.js"
39
39
  }