@shuffl/api-contracts 0.5.8 → 0.5.10

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.
@@ -267,6 +267,7 @@ const credentials_api_createInput = z
267
267
  z.literal('playbooks.answerBuddyFollowUp'),
268
268
  z.literal('playbooks.answerCheckIn'),
269
269
  z.literal('playbooks.answerFirstDaysCheckIn'),
270
+ z.literal('playbooks.answerForm'),
270
271
  z.literal('playbooks.approve'),
271
272
  z.literal('playbooks.askBuddy'),
272
273
  z.literal('playbooks.assignBuddy'),
@@ -344,6 +345,7 @@ const credentials_api_createInput = z
344
345
  z.literal('pulse.createAction'),
345
346
  z.literal('pulse.decideProposal'),
346
347
  z.literal('pulse.editProposal'),
348
+ z.literal('pulse.groupTrends'),
347
349
  z.literal('pulse.insights'),
348
350
  z.literal('pulse.latestRead'),
349
351
  z.literal('pulse.mine'),
@@ -853,6 +855,7 @@ const exports_teamOutput = z.strictObject({
853
855
  location: z.string().optional().optional(),
854
856
  offers: z.string().optional().optional(),
855
857
  phone: z.string().optional().optional(),
858
+ preferredName: z.string().optional().optional(),
856
859
  pronouns: z.string().optional().optional(),
857
860
  role: z.string().optional().optional(),
858
861
  workingOn: z.string().optional().optional(),
@@ -1116,6 +1119,16 @@ const exports_teamOutput = z.strictObject({
1116
1119
  ])
1117
1120
  .optional()
1118
1121
  .optional(),
1122
+ formFields: z
1123
+ .array(z.union([
1124
+ z.literal('bio'),
1125
+ z.literal('birthday'),
1126
+ z.literal('photo'),
1127
+ z.literal('preferredName'),
1128
+ z.literal('pronouns'),
1129
+ ]))
1130
+ .optional()
1131
+ .optional(),
1119
1132
  id: z.string(),
1120
1133
  kind: z.union([
1121
1134
  z.literal('acknowledge'),
@@ -2254,6 +2267,7 @@ const credentials_api_listOutput = z.strictObject({
2254
2267
  z.literal('playbooks.answerBuddyFollowUp'),
2255
2268
  z.literal('playbooks.answerCheckIn'),
2256
2269
  z.literal('playbooks.answerFirstDaysCheckIn'),
2270
+ z.literal('playbooks.answerForm'),
2257
2271
  z.literal('playbooks.approve'),
2258
2272
  z.literal('playbooks.askBuddy'),
2259
2273
  z.literal('playbooks.assignBuddy'),
@@ -2331,6 +2345,7 @@ const credentials_api_listOutput = z.strictObject({
2331
2345
  z.literal('pulse.createAction'),
2332
2346
  z.literal('pulse.decideProposal'),
2333
2347
  z.literal('pulse.editProposal'),
2348
+ z.literal('pulse.groupTrends'),
2334
2349
  z.literal('pulse.insights'),
2335
2350
  z.literal('pulse.latestRead'),
2336
2351
  z.literal('pulse.mine'),
@@ -2704,6 +2719,7 @@ const credentials_api_listOutput = z.strictObject({
2704
2719
  z.literal('playbooks.answerBuddyFollowUp'),
2705
2720
  z.literal('playbooks.answerCheckIn'),
2706
2721
  z.literal('playbooks.answerFirstDaysCheckIn'),
2722
+ z.literal('playbooks.answerForm'),
2707
2723
  z.literal('playbooks.approve'),
2708
2724
  z.literal('playbooks.askBuddy'),
2709
2725
  z.literal('playbooks.assignBuddy'),
@@ -2781,6 +2797,7 @@ const credentials_api_listOutput = z.strictObject({
2781
2797
  z.literal('pulse.createAction'),
2782
2798
  z.literal('pulse.decideProposal'),
2783
2799
  z.literal('pulse.editProposal'),
2800
+ z.literal('pulse.groupTrends'),
2784
2801
  z.literal('pulse.insights'),
2785
2802
  z.literal('pulse.latestRead'),
2786
2803
  z.literal('pulse.mine'),
@@ -3096,6 +3113,7 @@ const users_detailsOutput = z.strictObject({
3096
3113
  location: z.string().optional().optional(),
3097
3114
  offers: z.string().optional().optional(),
3098
3115
  phone: z.string().optional().optional(),
3116
+ preferredName: z.string().optional().optional(),
3099
3117
  pronouns: z.string().optional().optional(),
3100
3118
  role: z.string().optional().optional(),
3101
3119
  workingOn: z.string().optional().optional(),
@@ -3208,6 +3226,7 @@ const users_pageOutput = z.strictObject({
3208
3226
  location: z.string().optional().optional(),
3209
3227
  offers: z.string().optional().optional(),
3210
3228
  phone: z.string().optional().optional(),
3229
+ preferredName: z.string().optional().optional(),
3211
3230
  pronouns: z.string().optional().optional(),
3212
3231
  role: z.string().optional().optional(),
3213
3232
  workingOn: z.string().optional().optional(),
@@ -3309,6 +3328,7 @@ const users_participantsOutput = z.union([
3309
3328
  location: z.string().optional().optional(),
3310
3329
  offers: z.string().optional().optional(),
3311
3330
  phone: z.string().optional().optional(),
3331
+ preferredName: z.string().optional().optional(),
3312
3332
  pronouns: z.string().optional().optional(),
3313
3333
  role: z.string().optional().optional(),
3314
3334
  workingOn: z.string().optional().optional(),
@@ -3341,6 +3361,7 @@ const users_participantsOutput = z.union([
3341
3361
  location: z.string().optional().optional(),
3342
3362
  offers: z.string().optional().optional(),
3343
3363
  phone: z.string().optional().optional(),
3364
+ preferredName: z.string().optional().optional(),
3344
3365
  pronouns: z.string().optional().optional(),
3345
3366
  role: z.string().optional().optional(),
3346
3367
  workingOn: z.string().optional().optional(),
@@ -3484,6 +3505,7 @@ const users_saveOutput = z.object({
3484
3505
  location: z.string().optional().optional(),
3485
3506
  offers: z.string().optional().optional(),
3486
3507
  phone: z.string().optional().optional(),
3508
+ preferredName: z.string().optional().optional(),
3487
3509
  pronouns: z.string().optional().optional(),
3488
3510
  role: z.string().optional().optional(),
3489
3511
  workingOn: z.string().optional().optional(),
@@ -3694,6 +3716,7 @@ const profiles_getOutput = z.strictObject({
3694
3716
  location: z.union([z.null(), z.string()]),
3695
3717
  offers: z.union([z.null(), z.string()]),
3696
3718
  phone: z.union([z.null(), z.string()]),
3719
+ preferredName: z.string(),
3697
3720
  pronouns: z.union([z.null(), z.string()]),
3698
3721
  workingOn: z.union([z.null(), z.string()]),
3699
3722
  }),
@@ -3890,6 +3913,7 @@ const profiles_saveInput = z
3890
3913
  offers: z.string().optional().optional(),
3891
3914
  personId: z.string(),
3892
3915
  phone: z.string().optional().optional(),
3916
+ preferredName: z.string().optional().optional(),
3893
3917
  pronouns: z.string().optional().optional(),
3894
3918
  workingOn: z.string().optional().optional(),
3895
3919
  })
@@ -7105,6 +7129,7 @@ const runs_detailsOutput = z.strictObject({
7105
7129
  location: z.string().optional().optional(),
7106
7130
  offers: z.string().optional().optional(),
7107
7131
  phone: z.string().optional().optional(),
7132
+ preferredName: z.string().optional().optional(),
7108
7133
  pronouns: z.string().optional().optional(),
7109
7134
  role: z.string().optional().optional(),
7110
7135
  workingOn: z.string().optional().optional(),
@@ -9256,6 +9281,16 @@ const reports_overviewOutput = z.strictObject({
9256
9281
  ])
9257
9282
  .optional()
9258
9283
  .optional(),
9284
+ formFields: z
9285
+ .array(z.union([
9286
+ z.literal('bio'),
9287
+ z.literal('birthday'),
9288
+ z.literal('photo'),
9289
+ z.literal('preferredName'),
9290
+ z.literal('pronouns'),
9291
+ ]))
9292
+ .optional()
9293
+ .optional(),
9259
9294
  id: z.string(),
9260
9295
  kind: z.union([
9261
9296
  z.literal('acknowledge'),
@@ -9825,6 +9860,16 @@ const playbooks_programOutput = z.strictObject({
9825
9860
  ])
9826
9861
  .optional()
9827
9862
  .optional(),
9863
+ formFields: z
9864
+ .array(z.union([
9865
+ z.literal('bio'),
9866
+ z.literal('birthday'),
9867
+ z.literal('photo'),
9868
+ z.literal('preferredName'),
9869
+ z.literal('pronouns'),
9870
+ ]))
9871
+ .optional()
9872
+ .optional(),
9828
9873
  id: z.string(),
9829
9874
  kind: z.union([
9830
9875
  z.literal('acknowledge'),
@@ -10162,10 +10207,21 @@ const playbooks_saveProgramInput = z
10162
10207
  ])
10163
10208
  .optional()
10164
10209
  .optional(),
10210
+ formFields: z
10211
+ .array(z.union([
10212
+ z.literal('bio'),
10213
+ z.literal('birthday'),
10214
+ z.literal('photo'),
10215
+ z.literal('preferredName'),
10216
+ z.literal('pronouns'),
10217
+ ]))
10218
+ .optional()
10219
+ .optional(),
10165
10220
  id: z.string(),
10166
10221
  kind: z.union([
10167
10222
  z.literal('acknowledge'),
10168
10223
  z.literal('checkpoint'),
10224
+ z.literal('form'),
10169
10225
  z.literal('meet'),
10170
10226
  z.literal('message'),
10171
10227
  z.literal('task'),
@@ -10378,6 +10434,16 @@ const playbooks_saveProgramOutput = z.object({
10378
10434
  ])
10379
10435
  .optional()
10380
10436
  .optional(),
10437
+ formFields: z
10438
+ .array(z.union([
10439
+ z.literal('bio'),
10440
+ z.literal('birthday'),
10441
+ z.literal('photo'),
10442
+ z.literal('preferredName'),
10443
+ z.literal('pronouns'),
10444
+ ]))
10445
+ .optional()
10446
+ .optional(),
10381
10447
  id: z.string(),
10382
10448
  kind: z.union([
10383
10449
  z.literal('acknowledge'),
@@ -11164,6 +11230,19 @@ const playbooks_runOutput = z.union([
11164
11230
  ]),
11165
11231
  enrolled: z.boolean(),
11166
11232
  enrollmentId: z.union([z.null(), z.string()]),
11233
+ formValues: z.union([
11234
+ z.null(),
11235
+ z.strictObject({
11236
+ bio: z.string(),
11237
+ birthday: z.union([
11238
+ z.null(),
11239
+ z.strictObject({ day: z.number(), month: z.number() }),
11240
+ ]),
11241
+ photo: z.boolean(),
11242
+ preferredName: z.string(),
11243
+ pronouns: z.string(),
11244
+ }),
11245
+ ]),
11167
11246
  gettingReady: z.array(z.strictObject({
11168
11247
  done: z.boolean(),
11169
11248
  due: z.union([z.null(), z.string()]),
@@ -11195,6 +11274,7 @@ const playbooks_runOutput = z.union([
11195
11274
  title: z.union([z.null(), z.string()]),
11196
11275
  userId: z.union([z.null(), z.string()]),
11197
11276
  })),
11277
+ personId: z.string(),
11198
11278
  playbooks: z.array(z.strictObject({
11199
11279
  current: z.boolean(),
11200
11280
  dayZero: z.union([
@@ -11243,10 +11323,24 @@ const playbooks_runOutput = z.union([
11243
11323
  confirmedAt: z.union([z.null(), z.iso.datetime({ offset: true })]),
11244
11324
  date: z.string(),
11245
11325
  day: z.number(),
11326
+ form: z.union([
11327
+ z.null(),
11328
+ z.strictObject({
11329
+ answeredAt: z.union([z.null(), z.iso.datetime({ offset: true })]),
11330
+ fields: z.array(z.union([
11331
+ z.literal('bio'),
11332
+ z.literal('birthday'),
11333
+ z.literal('photo'),
11334
+ z.literal('preferredName'),
11335
+ z.literal('pronouns'),
11336
+ ])),
11337
+ }),
11338
+ ]),
11246
11339
  kind: z.union([
11247
11340
  z.literal('acknowledge'),
11248
11341
  z.literal('check_in'),
11249
11342
  z.literal('checkpoint'),
11343
+ z.literal('form'),
11250
11344
  z.literal('introduction'),
11251
11345
  z.literal('meet'),
11252
11346
  z.literal('message'),
@@ -11625,6 +11719,27 @@ const playbooks_respondBuddyOutput = z.object({
11625
11719
  receipt: commandReceiptSchema,
11626
11720
  result: z.strictObject({ status: z.string() }).nullable(),
11627
11721
  });
11722
+ const playbooks_answerFormInput = z
11723
+ .strictObject({
11724
+ bio: z.string().optional().optional(),
11725
+ birthday: z
11726
+ .union([z.null(), z.strictObject({ day: z.number(), month: z.number() })])
11727
+ .optional()
11728
+ .optional(),
11729
+ preferredName: z.string().optional().optional(),
11730
+ pronouns: z.string().optional().optional(),
11731
+ stepId: z.string(),
11732
+ })
11733
+ .extend({
11734
+ confirm: z.literal('playbooks.answerForm'),
11735
+ requestKey: z.string().min(1).max(128),
11736
+ });
11737
+ const playbooks_answerFormOutput = z.object({
11738
+ receipt: commandReceiptSchema,
11739
+ result: z
11740
+ .strictObject({ answered: z.literal(true), fields: z.number() })
11741
+ .nullable(),
11742
+ });
11628
11743
  const playbooks_buddySuggestionsInput = z.strictObject({});
11629
11744
  const playbooks_buddySuggestionsOutput = z.union([
11630
11745
  z.strictObject({
@@ -15600,6 +15715,167 @@ const pulse_insightsOutput = z.strictObject({
15600
15715
  windowStart: z.iso.datetime({ offset: true }),
15601
15716
  withheld: z.number(),
15602
15717
  });
15718
+ const pulse_groupTrendsInput = z.strictObject({
15719
+ days: z
15720
+ .union([z.literal(30), z.literal(90), z.literal(180)])
15721
+ .optional()
15722
+ .optional(),
15723
+ });
15724
+ const pulse_groupTrendsOutput = z.strictObject({
15725
+ days: z.union([z.literal(30), z.literal(90), z.literal(180)]),
15726
+ dimensions: z.strictObject({
15727
+ department: z.array(z.strictObject({
15728
+ label: z.string(),
15729
+ segment: z.string(),
15730
+ series: z.array(z.strictObject({
15731
+ change: z.union([z.null(), z.number()]),
15732
+ latest: z.union([z.null(), z.number()]),
15733
+ metric: z.union([
15734
+ z.literal('ai_adoption'),
15735
+ z.literal('belonging'),
15736
+ z.literal('clarity'),
15737
+ z.literal('engagement'),
15738
+ z.literal('enps'),
15739
+ z.literal('favourable'),
15740
+ z.literal('growth'),
15741
+ z.literal('manager'),
15742
+ z.literal('recognition'),
15743
+ z.literal('safety'),
15744
+ z.literal('tools'),
15745
+ z.literal('workload'),
15746
+ ]),
15747
+ points: z.array(z.strictObject({
15748
+ seen: z.boolean(),
15749
+ value: z.union([z.null(), z.number()]),
15750
+ })),
15751
+ })),
15752
+ })),
15753
+ group: z.array(z.strictObject({
15754
+ label: z.string(),
15755
+ segment: z.string(),
15756
+ series: z.array(z.strictObject({
15757
+ change: z.union([z.null(), z.number()]),
15758
+ latest: z.union([z.null(), z.number()]),
15759
+ metric: z.union([
15760
+ z.literal('ai_adoption'),
15761
+ z.literal('belonging'),
15762
+ z.literal('clarity'),
15763
+ z.literal('engagement'),
15764
+ z.literal('enps'),
15765
+ z.literal('favourable'),
15766
+ z.literal('growth'),
15767
+ z.literal('manager'),
15768
+ z.literal('recognition'),
15769
+ z.literal('safety'),
15770
+ z.literal('tools'),
15771
+ z.literal('workload'),
15772
+ ]),
15773
+ points: z.array(z.strictObject({
15774
+ seen: z.boolean(),
15775
+ value: z.union([z.null(), z.number()]),
15776
+ })),
15777
+ })),
15778
+ })),
15779
+ role: z.array(z.strictObject({
15780
+ label: z.string(),
15781
+ segment: z.string(),
15782
+ series: z.array(z.strictObject({
15783
+ change: z.union([z.null(), z.number()]),
15784
+ latest: z.union([z.null(), z.number()]),
15785
+ metric: z.union([
15786
+ z.literal('ai_adoption'),
15787
+ z.literal('belonging'),
15788
+ z.literal('clarity'),
15789
+ z.literal('engagement'),
15790
+ z.literal('enps'),
15791
+ z.literal('favourable'),
15792
+ z.literal('growth'),
15793
+ z.literal('manager'),
15794
+ z.literal('recognition'),
15795
+ z.literal('safety'),
15796
+ z.literal('tools'),
15797
+ z.literal('workload'),
15798
+ ]),
15799
+ points: z.array(z.strictObject({
15800
+ seen: z.boolean(),
15801
+ value: z.union([z.null(), z.number()]),
15802
+ })),
15803
+ })),
15804
+ })),
15805
+ tenure: z.array(z.strictObject({
15806
+ label: z.string(),
15807
+ segment: z.string(),
15808
+ series: z.array(z.strictObject({
15809
+ change: z.union([z.null(), z.number()]),
15810
+ latest: z.union([z.null(), z.number()]),
15811
+ metric: z.union([
15812
+ z.literal('ai_adoption'),
15813
+ z.literal('belonging'),
15814
+ z.literal('clarity'),
15815
+ z.literal('engagement'),
15816
+ z.literal('enps'),
15817
+ z.literal('favourable'),
15818
+ z.literal('growth'),
15819
+ z.literal('manager'),
15820
+ z.literal('recognition'),
15821
+ z.literal('safety'),
15822
+ z.literal('tools'),
15823
+ z.literal('workload'),
15824
+ ]),
15825
+ points: z.array(z.strictObject({
15826
+ seen: z.boolean(),
15827
+ value: z.union([z.null(), z.number()]),
15828
+ })),
15829
+ })),
15830
+ })),
15831
+ }),
15832
+ enpsPeriods: z.array(z.string()),
15833
+ everyone: z.array(z.strictObject({
15834
+ change: z.union([z.null(), z.number()]),
15835
+ latest: z.union([z.null(), z.number()]),
15836
+ metric: z.union([
15837
+ z.literal('ai_adoption'),
15838
+ z.literal('belonging'),
15839
+ z.literal('clarity'),
15840
+ z.literal('engagement'),
15841
+ z.literal('enps'),
15842
+ z.literal('favourable'),
15843
+ z.literal('growth'),
15844
+ z.literal('manager'),
15845
+ z.literal('recognition'),
15846
+ z.literal('safety'),
15847
+ z.literal('tools'),
15848
+ z.literal('workload'),
15849
+ ]),
15850
+ points: z.array(z.strictObject({
15851
+ seen: z.boolean(),
15852
+ value: z.union([z.null(), z.number()]),
15853
+ })),
15854
+ })),
15855
+ metrics: z.array(z.strictObject({
15856
+ label: z.string(),
15857
+ metric: z.union([
15858
+ z.literal('ai_adoption'),
15859
+ z.literal('belonging'),
15860
+ z.literal('clarity'),
15861
+ z.literal('engagement'),
15862
+ z.literal('enps'),
15863
+ z.literal('favourable'),
15864
+ z.literal('growth'),
15865
+ z.literal('manager'),
15866
+ z.literal('recognition'),
15867
+ z.literal('safety'),
15868
+ z.literal('tools'),
15869
+ z.literal('workload'),
15870
+ ]),
15871
+ })),
15872
+ periods: z.array(z.string()),
15873
+ unit: z.union([
15874
+ z.literal('fortnight'),
15875
+ z.literal('month'),
15876
+ z.literal('week'),
15877
+ ]),
15878
+ });
15603
15879
  const pulse_actionsInput = z.strictObject({
15604
15880
  driver: z
15605
15881
  .union([
@@ -19244,6 +19520,15 @@ export const managementContract = {
19244
19520
  })
19245
19521
  .input(playbooks_answerFirstDaysCheckInInput)
19246
19522
  .output(playbooks_answerFirstDaysCheckInOutput),
19523
+ answerForm: base
19524
+ .meta({ scope: 'self:write' })
19525
+ .route({
19526
+ method: 'POST',
19527
+ path: '/manage/playbooks/answerForm',
19528
+ summary: 'Answer a playbook’s Tell us about you form; the answers fill in your profile',
19529
+ })
19530
+ .input(playbooks_answerFormInput)
19531
+ .output(playbooks_answerFormOutput),
19247
19532
  approve: base
19248
19533
  .meta({ scope: 'playbooks:write' })
19249
19534
  .route({
@@ -19861,6 +20146,15 @@ export const managementContract = {
19861
20146
  })
19862
20147
  .input(pulse_editProposalInput)
19863
20148
  .output(pulse_editProposalOutput),
20149
+ groupTrends: base
20150
+ .meta({ scope: 'pulse:read' })
20151
+ .route({
20152
+ method: 'POST',
20153
+ path: '/manage/pulse/groupTrends',
20154
+ summary: "Read each group's Pulse results over time, period by period, with the change since the start (published group totals only)",
20155
+ })
20156
+ .input(pulse_groupTrendsInput)
20157
+ .output(pulse_groupTrendsOutput),
19864
20158
  insights: base
19865
20159
  .meta({ scope: 'pulse:read' })
19866
20160
  .route({
@@ -226,6 +226,7 @@ export declare const permissionSchema: z.ZodEnum<{
226
226
  "playbooks.answerBuddyFollowUp": "playbooks.answerBuddyFollowUp";
227
227
  "playbooks.answerCheckIn": "playbooks.answerCheckIn";
228
228
  "playbooks.answerFirstDaysCheckIn": "playbooks.answerFirstDaysCheckIn";
229
+ "playbooks.answerForm": "playbooks.answerForm";
229
230
  "playbooks.approve": "playbooks.approve";
230
231
  "playbooks.askBuddy": "playbooks.askBuddy";
231
232
  "playbooks.assignBuddy": "playbooks.assignBuddy";
@@ -303,6 +304,7 @@ export declare const permissionSchema: z.ZodEnum<{
303
304
  "pulse.createAction": "pulse.createAction";
304
305
  "pulse.decideProposal": "pulse.decideProposal";
305
306
  "pulse.editProposal": "pulse.editProposal";
307
+ "pulse.groupTrends": "pulse.groupTrends";
306
308
  "pulse.insights": "pulse.insights";
307
309
  "pulse.latestRead": "pulse.latestRead";
308
310
  "pulse.mine": "pulse.mine";
@@ -626,6 +628,7 @@ export declare const permissionDefinitionSchema: z.ZodObject<{
626
628
  "playbooks.answerBuddyFollowUp": "playbooks.answerBuddyFollowUp";
627
629
  "playbooks.answerCheckIn": "playbooks.answerCheckIn";
628
630
  "playbooks.answerFirstDaysCheckIn": "playbooks.answerFirstDaysCheckIn";
631
+ "playbooks.answerForm": "playbooks.answerForm";
629
632
  "playbooks.approve": "playbooks.approve";
630
633
  "playbooks.askBuddy": "playbooks.askBuddy";
631
634
  "playbooks.assignBuddy": "playbooks.assignBuddy";
@@ -703,6 +706,7 @@ export declare const permissionDefinitionSchema: z.ZodObject<{
703
706
  "pulse.createAction": "pulse.createAction";
704
707
  "pulse.decideProposal": "pulse.decideProposal";
705
708
  "pulse.editProposal": "pulse.editProposal";
709
+ "pulse.groupTrends": "pulse.groupTrends";
706
710
  "pulse.insights": "pulse.insights";
707
711
  "pulse.latestRead": "pulse.latestRead";
708
712
  "pulse.mine": "pulse.mine";