placementt-core 1.400.983 → 1.400.985

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.
@@ -1964,6 +1964,7 @@ export type CheckInEntry = {
1964
1964
  activities?: string[];
1965
1965
  linkedinUrl?: string;
1966
1966
  currentPostcode?: string;
1967
+ currentCity?: string;
1967
1968
  currentCountry?: string;
1968
1969
  };
1969
1970
  /** Trusted contact / parent fallback stored on the Alumni record */
@@ -2339,12 +2340,18 @@ export type Alumni = {
2339
2340
  sector?: string;
2340
2341
  subsector?: string;
2341
2342
  businessSize?: string;
2342
- /** Typed check-in history — replaces the previous untyped enrolmentHistory: {}[] */
2343
+ /** Typed check-in history — replaces the previous untyped enrolmentHistory: {}[].
2344
+ * This is the alumnus's activity timeline: every check-in appends here. */
2343
2345
  enrolmentHistory: CheckInEntry[];
2346
+ /** Most recent check-in answers — the alumnus's current role/destination snapshot.
2347
+ * Written on every check-in submission; a "no change" reply leaves it untouched. */
2348
+ currentRole?: CheckInEntry;
2344
2349
  checkInConsent: boolean;
2345
2350
  checkInConsentDate?: string;
2346
2351
  lastCheckIn?: string;
2347
2352
  nextCheckInDue?: string;
2353
+ /** ISO — when the most recent annual check-in invite was emailed; cron double-send guard. */
2354
+ checkInInviteSentAt?: string;
2348
2355
  trustedContact?: TrustedContact;
2349
2356
  trustedContactConsent?: boolean;
2350
2357
  trustedContactConsentDate?: string;
@@ -2359,10 +2366,14 @@ export type Alumni = {
2359
2366
  lacStatus?: boolean;
2360
2367
  aspirationHistory?: AspirationEntry[];
2361
2368
  visibleToStudents?: boolean;
2369
+ /** Consent to share their journey with students at other schools in their school's trust.
2370
+ * Only meaningful when visibleToStudents is true and the school has an approved trust link. */
2371
+ shareJourneyWithTrust?: boolean;
2362
2372
  enableConversations?: boolean;
2363
2373
  linkedinUrl?: string;
2364
2374
  homePostcode?: string;
2365
2375
  currentPostcode?: string;
2376
+ currentCity?: string;
2366
2377
  currentCountry?: string;
2367
2378
  linkCode: string;
2368
2379
  linkCodeExpiry: string;
@@ -2843,7 +2854,8 @@ export type YearScoreData = {
2843
2854
  campaignsClicked?: number;
2844
2855
  campaignsFailed?: number;
2845
2856
  };
2846
- type MessageTypes = "hubOrTrustInviteSchool" | "sendPlacementActionRequired" | "sendPlacementAdditionalInformationRequired" | "sendFeedbackReminder" | "sendProviderContactInvite" | "sendProviderContactActivityInvite" | "sendActivateUserAccount" | "shareEmployerEventRequest" | "employerEventInvite" | "schoolEventInvite" | "reuploadPlacementDocument" | "requestEventDates" | "taskReminder" | "eventDatesReminder" | "parentDatabase" | "aspirationInvite" | "leaverInvite" | "leaverReminder" | "leaverResultsInvite" | "leaverResultsReminder" | "leaverChristmasInvite" | "leaverChristmasReminder" | "alumniCheckInTrustedContact";
2857
+ type MessageTypes = "hubOrTrustInviteSchool" | "sendPlacementActionRequired" | "sendPlacementAdditionalInformationRequired" | "sendFeedbackReminder" | "sendProviderContactInvite" | "sendProviderContactActivityInvite" | "sendActivateUserAccount" | "shareEmployerEventRequest" | "employerEventInvite" | "schoolEventInvite" | "reuploadPlacementDocument" | "requestEventDates" | "taskReminder" | "eventDatesReminder" | "parentDatabase" | "aspirationInvite" | "leaverInvite" | "leaverReminder" | "leaverResultsInvite" | "leaverResultsReminder" | "leaverChristmasInvite" | "leaverChristmasReminder" | "alumniCheckInInvite" | // annual "where are you now" check-in — reminder chain falls back to the trusted contact
2858
+ "alumniCheckInTrustedContact";
2847
2859
  /** Keys for reminderFailureFunctions — the fallback dispatched once a reminder chain
2848
2860
  * is exhausted with no response. Params are read from the interaction's additionalData. */
2849
2861
  export type ReminderFallbackType = "checkInTrustedContact";
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "private": false,
3
3
  "name": "placementt-core",
4
4
  "author": "Placementt",
5
- "version": "1.400.983",
5
+ "version": "1.400.985",
6
6
  "main": "lib/index.js",
7
7
  "types": "lib/index.d.ts",
8
8
  "scripts": {
@@ -983,7 +983,7 @@ export type InstituteData = {
983
983
  emailTemplates?: {
984
984
  onboarding: boolean,
985
985
  employerDatabaseInvite?: string,
986
- },
986
+ },
987
987
  acceptingParents?: boolean,
988
988
  parentDatabaseEmailTemplate?: string,
989
989
  publicEventsDescription?: Descendant[],
@@ -995,7 +995,8 @@ export type InstituteData = {
995
995
  k: string;
996
996
  e?: WhereFilterOp;
997
997
  v: unknown;
998
- }[],}
998
+ }[],
999
+ }
999
1000
  // RECURRING WORK EXPERIENCE GROUPS (templates that spawn a cohort instance each year)
1000
1001
  cohortConfig?: {
1001
1002
  [groupId: string]: {
@@ -1908,7 +1909,8 @@ export type CheckInEntry = {
1908
1909
  /** IDs of the institute's externalActivities this alumni is willing to support — mirrors the employer/alumni-join activity model. */
1909
1910
  activities?: string[],
1910
1911
  linkedinUrl?: string,
1911
- currentPostcode?: string, // Alumni location at time of check-in for map/mobility analysis
1912
+ currentPostcode?: string, // Legacy no longer collected; annual check-in asks for city instead
1913
+ currentCity?: string, // Alumni town/city at time of check-in
1912
1914
  currentCountry?: string, // Populated when alumni is outside UK
1913
1915
  }
1914
1916
 
@@ -2284,14 +2286,21 @@ export type Alumni = {
2284
2286
  subsector?: string,
2285
2287
  businessSize?: string,
2286
2288
 
2287
- /** Typed check-in history — replaces the previous untyped enrolmentHistory: {}[] */
2289
+ /** Typed check-in history — replaces the previous untyped enrolmentHistory: {}[].
2290
+ * This is the alumnus's activity timeline: every check-in appends here. */
2288
2291
  enrolmentHistory: CheckInEntry[],
2289
2292
 
2293
+ /** Most recent check-in answers — the alumnus's current role/destination snapshot.
2294
+ * Written on every check-in submission; a "no change" reply leaves it untouched. */
2295
+ currentRole?: CheckInEntry,
2296
+
2290
2297
  // Check-in management
2291
2298
  checkInConsent: boolean,
2292
2299
  checkInConsentDate?: string,
2293
2300
  lastCheckIn?: string, // ISO date
2294
2301
  nextCheckInDue?: string, // ISO date
2302
+ /** ISO — when the most recent annual check-in invite was emailed; cron double-send guard. */
2303
+ checkInInviteSentAt?: string,
2295
2304
 
2296
2305
  // Trusted contact
2297
2306
  trustedContact?: TrustedContact,
@@ -2316,12 +2325,16 @@ export type Alumni = {
2316
2325
 
2317
2326
  // Engagement
2318
2327
  visibleToStudents?: boolean,
2328
+ /** Consent to share their journey with students at other schools in their school's trust.
2329
+ * Only meaningful when visibleToStudents is true and the school has an approved trust link. */
2330
+ shareJourneyWithTrust?: boolean,
2319
2331
  enableConversations?: boolean,
2320
2332
  linkedinUrl?: string,
2321
2333
 
2322
2334
  // Location (alumni-only — enables alumni map view)
2323
2335
  homePostcode?: string, // Frozen from MIS at leaver export
2324
- currentPostcode?: string, // Self-reported annually via Form C; may differ from homePostcode
2336
+ currentPostcode?: string, // Legacy check-in now asks for city, not postcode
2337
+ currentCity?: string, // Self-reported town/city via the annual check-in
2325
2338
  currentCountry?: string, // Populated when alumni has moved abroad; otherwise UK assumed
2326
2339
 
2327
2340
  // Auth
@@ -2768,6 +2781,7 @@ type MessageTypes =
2768
2781
  "leaverResultsReminder" |
2769
2782
  "leaverChristmasInvite" |
2770
2783
  "leaverChristmasReminder" |
2784
+ "alumniCheckInInvite" | // annual "where are you now" check-in — reminder chain falls back to the trusted contact
2771
2785
  "alumniCheckInTrustedContact" // parent/trusted-contact fallback invite — has its own reminder chain
2772
2786
 
2773
2787
  /** Keys for reminderFailureFunctions — the fallback dispatched once a reminder chain