placementt-core 1.400.1222 → 1.400.1223
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/lib/callables/events.d.ts +37 -3
- package/lib/callables/events.js +25 -2
- package/lib/callables/events.js.map +1 -1
- package/lib/callables/registry.d.ts +74 -6
- package/lib/typeDefinitions.d.ts +5 -0
- package/lib/typeDefinitions.js.map +1 -1
- package/package.json +1 -1
- package/src/callables/events.ts +25 -2
- package/src/typeDefinitions.ts +8 -0
|
@@ -121,17 +121,20 @@ export declare const eventsCallables: {
|
|
|
121
121
|
invited: z.ZodNumber;
|
|
122
122
|
linked: z.ZodNumber;
|
|
123
123
|
skipped: z.ZodNumber;
|
|
124
|
+
duplicates: z.ZodOptional<z.ZodNumber>;
|
|
124
125
|
remaining: z.ZodNumber;
|
|
125
126
|
}, "strip", z.ZodTypeAny, {
|
|
126
127
|
skipped: number;
|
|
127
128
|
linked: number;
|
|
128
129
|
invited: number;
|
|
129
130
|
remaining: number;
|
|
131
|
+
duplicates?: number | undefined;
|
|
130
132
|
}, {
|
|
131
133
|
skipped: number;
|
|
132
134
|
linked: number;
|
|
133
135
|
invited: number;
|
|
134
136
|
remaining: number;
|
|
137
|
+
duplicates?: number | undefined;
|
|
135
138
|
}>;
|
|
136
139
|
};
|
|
137
140
|
"events-getNonUserSchoolInvite": {
|
|
@@ -252,16 +255,47 @@ export declare const eventsCallables: {
|
|
|
252
255
|
students?: number | undefined;
|
|
253
256
|
}>]>;
|
|
254
257
|
response: z.ZodObject<{
|
|
255
|
-
code: z.ZodEnum<["updated", "emailed", "hasAccount"]>;
|
|
258
|
+
code: z.ZodEnum<["updated", "emailed", "hasAccount", "alreadySignedUp"]>;
|
|
256
259
|
eventSchoolId: z.ZodOptional<z.ZodString>;
|
|
257
260
|
}, "strip", z.ZodTypeAny, {
|
|
258
|
-
code: "updated" | "emailed" | "hasAccount";
|
|
261
|
+
code: "updated" | "emailed" | "hasAccount" | "alreadySignedUp";
|
|
259
262
|
eventSchoolId?: string | undefined;
|
|
260
263
|
}, {
|
|
261
|
-
code: "updated" | "emailed" | "hasAccount";
|
|
264
|
+
code: "updated" | "emailed" | "hasAccount" | "alreadySignedUp";
|
|
262
265
|
eventSchoolId?: string | undefined;
|
|
263
266
|
}>;
|
|
264
267
|
};
|
|
268
|
+
"events-employerJoinEvent": {
|
|
269
|
+
request: z.ZodObject<{
|
|
270
|
+
eventId: z.ZodString;
|
|
271
|
+
externalEventAttendeeId: z.ZodOptional<z.ZodString>;
|
|
272
|
+
providerContactId: z.ZodOptional<z.ZodString>;
|
|
273
|
+
capacity: z.ZodOptional<z.ZodNumber>;
|
|
274
|
+
proposedDates: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>, "many">>;
|
|
275
|
+
}, "strip", z.ZodTypeAny, {
|
|
276
|
+
eventId: string;
|
|
277
|
+
providerContactId?: string | undefined;
|
|
278
|
+
externalEventAttendeeId?: string | undefined;
|
|
279
|
+
capacity?: number | undefined;
|
|
280
|
+
proposedDates?: Record<string, unknown>[] | undefined;
|
|
281
|
+
}, {
|
|
282
|
+
eventId: string;
|
|
283
|
+
providerContactId?: string | undefined;
|
|
284
|
+
externalEventAttendeeId?: string | undefined;
|
|
285
|
+
capacity?: number | undefined;
|
|
286
|
+
proposedDates?: Record<string, unknown>[] | undefined;
|
|
287
|
+
}>;
|
|
288
|
+
response: z.ZodOptional<z.ZodObject<{
|
|
289
|
+
code: z.ZodEnum<["joined", "notFound", "notAccepting"]>;
|
|
290
|
+
externalEventAttendeeId: z.ZodOptional<z.ZodString>;
|
|
291
|
+
}, "strip", z.ZodTypeAny, {
|
|
292
|
+
code: "notFound" | "joined" | "notAccepting";
|
|
293
|
+
externalEventAttendeeId?: string | undefined;
|
|
294
|
+
}, {
|
|
295
|
+
code: "notFound" | "joined" | "notAccepting";
|
|
296
|
+
externalEventAttendeeId?: string | undefined;
|
|
297
|
+
}>>;
|
|
298
|
+
};
|
|
265
299
|
"events-removeEventSlotBooking": {
|
|
266
300
|
request: z.ZodObject<{
|
|
267
301
|
eventSchoolId: z.ZodString;
|
package/lib/callables/events.js
CHANGED
|
@@ -69,6 +69,9 @@ exports.eventsCallables = {
|
|
|
69
69
|
invited: zod_1.z.number(),
|
|
70
70
|
linked: zod_1.z.number(),
|
|
71
71
|
skipped: zod_1.z.number(),
|
|
72
|
+
// Addresses left out because the same school is already on the event (by account,
|
|
73
|
+
// email domain or school name). Its existing invite is resent instead.
|
|
74
|
+
duplicates: zod_1.z.number().optional(),
|
|
72
75
|
remaining: zod_1.z.number(),
|
|
73
76
|
}),
|
|
74
77
|
},
|
|
@@ -100,7 +103,9 @@ exports.eventsCallables = {
|
|
|
100
103
|
// and email are then required, and the response carries the new eventSchoolId, or
|
|
101
104
|
// "emailed" when that address already has an invite (its link is emailed, not returned), or
|
|
102
105
|
// "hasAccount" when it belongs to a school already in the hub, which is invited through its
|
|
103
|
-
// account instead and accepts after logging in
|
|
106
|
+
// account instead and accepts after logging in, or "alreadySignedUp" when the same school is
|
|
107
|
+
// already on the event under another address (matched by account, email domain or school
|
|
108
|
+
// name): no record is made and the link is emailed to whoever registered it.
|
|
104
109
|
zod_1.z.object({
|
|
105
110
|
action: zod_1.z.literal("accept"),
|
|
106
111
|
eventSchoolId: zod_1.z.string().min(1).optional(),
|
|
@@ -128,10 +133,28 @@ exports.eventsCallables = {
|
|
|
128
133
|
}),
|
|
129
134
|
]),
|
|
130
135
|
response: zod_1.z.object({
|
|
131
|
-
code: zod_1.z.enum(["updated", "emailed", "hasAccount"]),
|
|
136
|
+
code: zod_1.z.enum(["updated", "emailed", "hasAccount", "alreadySignedUp"]),
|
|
132
137
|
eventSchoolId: zod_1.z.string().optional(),
|
|
133
138
|
}),
|
|
134
139
|
},
|
|
140
|
+
// Public: an employer joining an event. With externalEventAttendeeId it's the invited attendee
|
|
141
|
+
// from the email link (the id is the credential) accepting. Without, it's a self sign-up from
|
|
142
|
+
// the public event link for the providerContactId the employer just gave: the attendee is made
|
|
143
|
+
// "providerAvailable" and its id returned, so the page can show the invite tasks (forms,
|
|
144
|
+
// uploads, files to review) straight after. An employer already on the event gets its id back.
|
|
145
|
+
"events-employerJoinEvent": {
|
|
146
|
+
request: zod_1.z.object({
|
|
147
|
+
eventId: zod_1.z.string().min(1),
|
|
148
|
+
externalEventAttendeeId: zod_1.z.string().min(1).optional(),
|
|
149
|
+
providerContactId: zod_1.z.string().min(1).optional(),
|
|
150
|
+
capacity: zod_1.z.number().optional(),
|
|
151
|
+
proposedDates: zod_1.z.array(zod_1.z.record(zod_1.z.string(), zod_1.z.unknown())).optional(),
|
|
152
|
+
}),
|
|
153
|
+
response: zod_1.z.object({
|
|
154
|
+
code: zod_1.z.enum(["joined", "notFound", "notAccepting"]),
|
|
155
|
+
externalEventAttendeeId: zod_1.z.string().optional(),
|
|
156
|
+
}).optional(),
|
|
157
|
+
},
|
|
135
158
|
// Hub staff only. Frees the school's places in one slot.
|
|
136
159
|
"events-removeEventSlotBooking": {
|
|
137
160
|
request: zod_1.z.object({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/callables/events.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/callables/events.ts"],"names":[],"mappings":"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"}
|
|
@@ -3319,17 +3319,20 @@ export declare const allCallables: {
|
|
|
3319
3319
|
invited: z.ZodNumber;
|
|
3320
3320
|
linked: z.ZodNumber;
|
|
3321
3321
|
skipped: z.ZodNumber;
|
|
3322
|
+
duplicates: z.ZodOptional<z.ZodNumber>;
|
|
3322
3323
|
remaining: z.ZodNumber;
|
|
3323
3324
|
}, "strip", z.ZodTypeAny, {
|
|
3324
3325
|
skipped: number;
|
|
3325
3326
|
linked: number;
|
|
3326
3327
|
invited: number;
|
|
3327
3328
|
remaining: number;
|
|
3329
|
+
duplicates?: number | undefined;
|
|
3328
3330
|
}, {
|
|
3329
3331
|
skipped: number;
|
|
3330
3332
|
linked: number;
|
|
3331
3333
|
invited: number;
|
|
3332
3334
|
remaining: number;
|
|
3335
|
+
duplicates?: number | undefined;
|
|
3333
3336
|
}>;
|
|
3334
3337
|
};
|
|
3335
3338
|
"events-getNonUserSchoolInvite": {
|
|
@@ -3450,16 +3453,47 @@ export declare const allCallables: {
|
|
|
3450
3453
|
students?: number | undefined;
|
|
3451
3454
|
}>]>;
|
|
3452
3455
|
response: z.ZodObject<{
|
|
3453
|
-
code: z.ZodEnum<["updated", "emailed", "hasAccount"]>;
|
|
3456
|
+
code: z.ZodEnum<["updated", "emailed", "hasAccount", "alreadySignedUp"]>;
|
|
3454
3457
|
eventSchoolId: z.ZodOptional<z.ZodString>;
|
|
3455
3458
|
}, "strip", z.ZodTypeAny, {
|
|
3456
|
-
code: "updated" | "emailed" | "hasAccount";
|
|
3459
|
+
code: "updated" | "emailed" | "hasAccount" | "alreadySignedUp";
|
|
3457
3460
|
eventSchoolId?: string | undefined;
|
|
3458
3461
|
}, {
|
|
3459
|
-
code: "updated" | "emailed" | "hasAccount";
|
|
3462
|
+
code: "updated" | "emailed" | "hasAccount" | "alreadySignedUp";
|
|
3460
3463
|
eventSchoolId?: string | undefined;
|
|
3461
3464
|
}>;
|
|
3462
3465
|
};
|
|
3466
|
+
"events-employerJoinEvent": {
|
|
3467
|
+
request: z.ZodObject<{
|
|
3468
|
+
eventId: z.ZodString;
|
|
3469
|
+
externalEventAttendeeId: z.ZodOptional<z.ZodString>;
|
|
3470
|
+
providerContactId: z.ZodOptional<z.ZodString>;
|
|
3471
|
+
capacity: z.ZodOptional<z.ZodNumber>;
|
|
3472
|
+
proposedDates: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>, "many">>;
|
|
3473
|
+
}, "strip", z.ZodTypeAny, {
|
|
3474
|
+
eventId: string;
|
|
3475
|
+
providerContactId?: string | undefined;
|
|
3476
|
+
externalEventAttendeeId?: string | undefined;
|
|
3477
|
+
capacity?: number | undefined;
|
|
3478
|
+
proposedDates?: Record<string, unknown>[] | undefined;
|
|
3479
|
+
}, {
|
|
3480
|
+
eventId: string;
|
|
3481
|
+
providerContactId?: string | undefined;
|
|
3482
|
+
externalEventAttendeeId?: string | undefined;
|
|
3483
|
+
capacity?: number | undefined;
|
|
3484
|
+
proposedDates?: Record<string, unknown>[] | undefined;
|
|
3485
|
+
}>;
|
|
3486
|
+
response: z.ZodOptional<z.ZodObject<{
|
|
3487
|
+
code: z.ZodEnum<["joined", "notFound", "notAccepting"]>;
|
|
3488
|
+
externalEventAttendeeId: z.ZodOptional<z.ZodString>;
|
|
3489
|
+
}, "strip", z.ZodTypeAny, {
|
|
3490
|
+
code: "notFound" | "joined" | "notAccepting";
|
|
3491
|
+
externalEventAttendeeId?: string | undefined;
|
|
3492
|
+
}, {
|
|
3493
|
+
code: "notFound" | "joined" | "notAccepting";
|
|
3494
|
+
externalEventAttendeeId?: string | undefined;
|
|
3495
|
+
}>>;
|
|
3496
|
+
};
|
|
3463
3497
|
"events-removeEventSlotBooking": {
|
|
3464
3498
|
request: z.ZodObject<{
|
|
3465
3499
|
eventSchoolId: z.ZodString;
|
|
@@ -3711,17 +3745,20 @@ export declare const callableGroups: {
|
|
|
3711
3745
|
invited: z.ZodNumber;
|
|
3712
3746
|
linked: z.ZodNumber;
|
|
3713
3747
|
skipped: z.ZodNumber;
|
|
3748
|
+
duplicates: z.ZodOptional<z.ZodNumber>;
|
|
3714
3749
|
remaining: z.ZodNumber;
|
|
3715
3750
|
}, "strip", z.ZodTypeAny, {
|
|
3716
3751
|
skipped: number;
|
|
3717
3752
|
linked: number;
|
|
3718
3753
|
invited: number;
|
|
3719
3754
|
remaining: number;
|
|
3755
|
+
duplicates?: number | undefined;
|
|
3720
3756
|
}, {
|
|
3721
3757
|
skipped: number;
|
|
3722
3758
|
linked: number;
|
|
3723
3759
|
invited: number;
|
|
3724
3760
|
remaining: number;
|
|
3761
|
+
duplicates?: number | undefined;
|
|
3725
3762
|
}>;
|
|
3726
3763
|
};
|
|
3727
3764
|
"events-getNonUserSchoolInvite": {
|
|
@@ -3842,16 +3879,47 @@ export declare const callableGroups: {
|
|
|
3842
3879
|
students?: number | undefined;
|
|
3843
3880
|
}>]>;
|
|
3844
3881
|
response: z.ZodObject<{
|
|
3845
|
-
code: z.ZodEnum<["updated", "emailed", "hasAccount"]>;
|
|
3882
|
+
code: z.ZodEnum<["updated", "emailed", "hasAccount", "alreadySignedUp"]>;
|
|
3846
3883
|
eventSchoolId: z.ZodOptional<z.ZodString>;
|
|
3847
3884
|
}, "strip", z.ZodTypeAny, {
|
|
3848
|
-
code: "updated" | "emailed" | "hasAccount";
|
|
3885
|
+
code: "updated" | "emailed" | "hasAccount" | "alreadySignedUp";
|
|
3849
3886
|
eventSchoolId?: string | undefined;
|
|
3850
3887
|
}, {
|
|
3851
|
-
code: "updated" | "emailed" | "hasAccount";
|
|
3888
|
+
code: "updated" | "emailed" | "hasAccount" | "alreadySignedUp";
|
|
3852
3889
|
eventSchoolId?: string | undefined;
|
|
3853
3890
|
}>;
|
|
3854
3891
|
};
|
|
3892
|
+
"events-employerJoinEvent": {
|
|
3893
|
+
request: z.ZodObject<{
|
|
3894
|
+
eventId: z.ZodString;
|
|
3895
|
+
externalEventAttendeeId: z.ZodOptional<z.ZodString>;
|
|
3896
|
+
providerContactId: z.ZodOptional<z.ZodString>;
|
|
3897
|
+
capacity: z.ZodOptional<z.ZodNumber>;
|
|
3898
|
+
proposedDates: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>, "many">>;
|
|
3899
|
+
}, "strip", z.ZodTypeAny, {
|
|
3900
|
+
eventId: string;
|
|
3901
|
+
providerContactId?: string | undefined;
|
|
3902
|
+
externalEventAttendeeId?: string | undefined;
|
|
3903
|
+
capacity?: number | undefined;
|
|
3904
|
+
proposedDates?: Record<string, unknown>[] | undefined;
|
|
3905
|
+
}, {
|
|
3906
|
+
eventId: string;
|
|
3907
|
+
providerContactId?: string | undefined;
|
|
3908
|
+
externalEventAttendeeId?: string | undefined;
|
|
3909
|
+
capacity?: number | undefined;
|
|
3910
|
+
proposedDates?: Record<string, unknown>[] | undefined;
|
|
3911
|
+
}>;
|
|
3912
|
+
response: z.ZodOptional<z.ZodObject<{
|
|
3913
|
+
code: z.ZodEnum<["joined", "notFound", "notAccepting"]>;
|
|
3914
|
+
externalEventAttendeeId: z.ZodOptional<z.ZodString>;
|
|
3915
|
+
}, "strip", z.ZodTypeAny, {
|
|
3916
|
+
code: "notFound" | "joined" | "notAccepting";
|
|
3917
|
+
externalEventAttendeeId?: string | undefined;
|
|
3918
|
+
}, {
|
|
3919
|
+
code: "notFound" | "joined" | "notAccepting";
|
|
3920
|
+
externalEventAttendeeId?: string | undefined;
|
|
3921
|
+
}>>;
|
|
3922
|
+
};
|
|
3855
3923
|
"events-removeEventSlotBooking": {
|
|
3856
3924
|
request: z.ZodObject<{
|
|
3857
3925
|
eventSchoolId: z.ZodString;
|
package/lib/typeDefinitions.d.ts
CHANGED
|
@@ -1467,6 +1467,9 @@ export type CustomFormSchemaField = {
|
|
|
1467
1467
|
max?: number;
|
|
1468
1468
|
minRows?: number;
|
|
1469
1469
|
options?: string[];
|
|
1470
|
+
multiple?: boolean;
|
|
1471
|
+
maxSelections?: number;
|
|
1472
|
+
inputType?: "email" | "tel";
|
|
1470
1473
|
levels?: number;
|
|
1471
1474
|
};
|
|
1472
1475
|
};
|
|
@@ -3385,6 +3388,7 @@ export type ExternalEventAttendee = {
|
|
|
3385
3388
|
schoolId?: string;
|
|
3386
3389
|
eventId: string;
|
|
3387
3390
|
providerContactId: string;
|
|
3391
|
+
source?: "link";
|
|
3388
3392
|
finished?: boolean;
|
|
3389
3393
|
students?: string[];
|
|
3390
3394
|
schools?: {
|
|
@@ -3486,6 +3490,7 @@ export type ExternalEventCareersSchool = {
|
|
|
3486
3490
|
schoolName?: string;
|
|
3487
3491
|
staffName?: string;
|
|
3488
3492
|
};
|
|
3493
|
+
source?: "link" | "email" | "hub";
|
|
3489
3494
|
eventId: string;
|
|
3490
3495
|
status: "invited" | "available" | "finalConfirmationSent" | "confirmed" | "feedbackSent" | "declined" | "removed" | "visibleTo" | "creator";
|
|
3491
3496
|
slots?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typeDefinitions.js","sourceRoot":"","sources":["../src/typeDefinitions.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"typeDefinitions.js","sourceRoot":"","sources":["../src/typeDefinitions.ts"],"names":[],"mappings":";;;AAywIA,sDASC;AAeD,oDAKC;AAaD,0CAEC;AA3qED;;;;;kFAKkF;AACrE,QAAA,qBAAqB,GAAG,SAAS,CAAC;AAClC,QAAA,iBAAiB,GAAG,OAAO,CAAC;AAulEzC;yEACyE;AAC5D,QAAA,0BAA0B,GAA2C;IAC9E,gBAAgB,EAAE,2BAA2B;IAC7C,mBAAmB,EAAE,sBAAsB;IAC3C,cAAc,EAAE,iBAAiB;IACjC,kBAAkB,EAAE,qBAAqB;IACzC,UAAU,EAAE,oCAAoC;IAChD,aAAa,EAAE,yBAAyB;IACxC,aAAa,EAAE,wBAAwB;IACvC,KAAK,EAAE,OAAO;CACjB,CAAC;AAEW,QAAA,0BAA0B,GAA+C;IAClF,QAAQ,EAAE,WAAW;IACrB,KAAK,EAAE,YAAY;IACnB,KAAK,EAAE,OAAO;CACjB,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,SAAgB,qBAAqB,CAAC,SAAsC;IACxE,QAAQ,SAAS,EAAE,CAAC;QACpB,KAAK,MAAM,CAAC,CAAC,OAAO,OAAO,CAAC;QAC5B,KAAK,OAAO,CAAC,CAAC,OAAO,OAAO,CAAC;QAC7B,KAAK,WAAW,CAAC;QACjB,KAAK,OAAO,CAAC;QACb,KAAK,OAAO,CAAC;QACb,OAAO,CAAC,CAAC,OAAO,UAAU,CAAC;IAC3B,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAgB,oBAAoB,CAChC,IAAwC,EACxC,MAA6C;IAE7C,OAAO,IAAI,EAAE,WAAW,IAAI,MAAM,EAAE,YAAY,IAAI,KAAK,CAAC;AAC9D,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,eAAe,CAAC,KAA6D;IACzF,OAAO,GAAG,KAAK,CAAC,cAAc,IAAI,EAAE,IAAI,KAAK,CAAC,aAAa,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;AAC/E,CAAC"}
|
package/package.json
CHANGED
package/src/callables/events.ts
CHANGED
|
@@ -68,6 +68,9 @@ export const eventsCallables = {
|
|
|
68
68
|
invited: z.number(),
|
|
69
69
|
linked: z.number(),
|
|
70
70
|
skipped: z.number(),
|
|
71
|
+
// Addresses left out because the same school is already on the event (by account,
|
|
72
|
+
// email domain or school name). Its existing invite is resent instead.
|
|
73
|
+
duplicates: z.number().optional(),
|
|
71
74
|
remaining: z.number(),
|
|
72
75
|
}),
|
|
73
76
|
},
|
|
@@ -99,7 +102,9 @@ export const eventsCallables = {
|
|
|
99
102
|
// and email are then required, and the response carries the new eventSchoolId, or
|
|
100
103
|
// "emailed" when that address already has an invite (its link is emailed, not returned), or
|
|
101
104
|
// "hasAccount" when it belongs to a school already in the hub, which is invited through its
|
|
102
|
-
// account instead and accepts after logging in
|
|
105
|
+
// account instead and accepts after logging in, or "alreadySignedUp" when the same school is
|
|
106
|
+
// already on the event under another address (matched by account, email domain or school
|
|
107
|
+
// name): no record is made and the link is emailed to whoever registered it.
|
|
103
108
|
z.object({
|
|
104
109
|
action: z.literal("accept"),
|
|
105
110
|
eventSchoolId: z.string().min(1).optional(),
|
|
@@ -127,10 +132,28 @@ export const eventsCallables = {
|
|
|
127
132
|
}),
|
|
128
133
|
]),
|
|
129
134
|
response: z.object({
|
|
130
|
-
code: z.enum(["updated", "emailed", "hasAccount"]),
|
|
135
|
+
code: z.enum(["updated", "emailed", "hasAccount", "alreadySignedUp"]),
|
|
131
136
|
eventSchoolId: z.string().optional(),
|
|
132
137
|
}),
|
|
133
138
|
},
|
|
139
|
+
// Public: an employer joining an event. With externalEventAttendeeId it's the invited attendee
|
|
140
|
+
// from the email link (the id is the credential) accepting. Without, it's a self sign-up from
|
|
141
|
+
// the public event link for the providerContactId the employer just gave: the attendee is made
|
|
142
|
+
// "providerAvailable" and its id returned, so the page can show the invite tasks (forms,
|
|
143
|
+
// uploads, files to review) straight after. An employer already on the event gets its id back.
|
|
144
|
+
"events-employerJoinEvent": {
|
|
145
|
+
request: z.object({
|
|
146
|
+
eventId: z.string().min(1),
|
|
147
|
+
externalEventAttendeeId: z.string().min(1).optional(),
|
|
148
|
+
providerContactId: z.string().min(1).optional(),
|
|
149
|
+
capacity: z.number().optional(),
|
|
150
|
+
proposedDates: z.array(z.record(z.string(), z.unknown())).optional(),
|
|
151
|
+
}),
|
|
152
|
+
response: z.object({
|
|
153
|
+
code: z.enum(["joined", "notFound", "notAccepting"]),
|
|
154
|
+
externalEventAttendeeId: z.string().optional(),
|
|
155
|
+
}).optional(),
|
|
156
|
+
},
|
|
134
157
|
// Hub staff only. Frees the school's places in one slot.
|
|
135
158
|
"events-removeEventSlotBooking": {
|
|
136
159
|
request: z.object({
|
package/src/typeDefinitions.ts
CHANGED
|
@@ -1494,6 +1494,9 @@ export type CustomFormSchemaField = {
|
|
|
1494
1494
|
max?: number /* type: number */
|
|
1495
1495
|
minRows?: number /* type: long */
|
|
1496
1496
|
options?: string[] // from dropdown only
|
|
1497
|
+
multiple?: boolean // type: dropdown. Pick any number of options; the answer is a string[].
|
|
1498
|
+
maxSelections?: number // type: dropdown with multiple. Most options that can be picked, e.g. "select up to 3".
|
|
1499
|
+
inputType?: "email"|"tel" // type: short. Validates and labels the answer as an email address or phone number.
|
|
1497
1500
|
levels?: number // For ratings, number of stars.
|
|
1498
1501
|
}
|
|
1499
1502
|
}
|
|
@@ -3389,6 +3392,7 @@ export type ExternalEventAttendee = {
|
|
|
3389
3392
|
schoolId?: string,
|
|
3390
3393
|
eventId: string,
|
|
3391
3394
|
providerContactId: string,
|
|
3395
|
+
source?: "link", // Set when the employer signed itself up from the event's public link. Unset when invited.
|
|
3392
3396
|
finished?: boolean,
|
|
3393
3397
|
students?: string[],
|
|
3394
3398
|
schools?: {[key: string]: number}, // NOTE ID with number of students
|
|
@@ -3478,6 +3482,10 @@ export type ExternalEventCareersSchool = {
|
|
|
3478
3482
|
schoolName?: string,
|
|
3479
3483
|
staffName?: string,
|
|
3480
3484
|
},
|
|
3485
|
+
// How the school was added: "link" when it signed itself up from the hub's shareable link,
|
|
3486
|
+
// "email" when the hub invited it by email address, "hub" when the hub invited its account.
|
|
3487
|
+
// Unset on older records, which are "email" with nonUserSchool and "hub" without.
|
|
3488
|
+
source?: "link"|"email"|"hub",
|
|
3481
3489
|
eventId: string,
|
|
3482
3490
|
status: "invited"|"available"|"finalConfirmationSent"|"confirmed"|"feedbackSent"|"declined"|"removed"|"visibleTo"|"creator", // "removed": taken off the event by the hub. Hidden from the school, kept for the hub.
|
|
3483
3491
|
slots?: {[slotId: string]: number}, // Timed slot bookings, with students per slot (1 when the event counts schools)
|