placementt-core 1.400.1150 → 1.400.1152

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.
@@ -15,18 +15,29 @@ export declare function resolveActivities(activities: {
15
15
  };
16
16
  /** Ids of the careers hubs an institute has an approved link with. */
17
17
  export declare function approvedCareersHubIds(institute?: Pick<InstituteData, "careersHubLinks">): string[];
18
+ /**
19
+ * Orgs whose hidden activities `institute` hides too. A careers school follows its approved
20
+ * hubs. A school follows only the trust it has joined, never a hub it's linked to. Hubs
21
+ * and trusts decide for themselves.
22
+ */
23
+ export declare function activityHidingParentIds(institute: Pick<InstituteData, "package" | "careersHubLinks" | "trustLinks"> | undefined | null): string[];
24
+ /** Activity ids an org has hidden itself. Hubs hid them with activityOverrides.disabled before hiddenActivities existed. */
25
+ export declare function ownHiddenActivityIds(org?: Pick<InstituteData, "hiddenActivities" | "activityOverrides">): string[];
18
26
  /**
19
27
  * The activityOverrides that apply when `institute` views activities. A hub uses its own.
20
- * A school linked to careers hubs inherits each approved hub's overrides, so its staff,
28
+ * A school linked to careers hubs inherits each approved hub's renames, so its staff,
21
29
  * employers and alumni see the hub's wording and not the global one; anything the school
22
30
  * sets itself wins. Pass the hubs named by approvedCareersHubIds(institute).
31
+ *
32
+ * Hiding is separate: an activity is `disabled` when the institute hides it, or when one of
33
+ * `hidingParents` (named by activityHidingParentIds) does. A school can't unhide those.
23
34
  */
24
- export declare function combineActivityOverrides(institute?: Pick<InstituteData, "activityOverrides">, hubs?: (Pick<InstituteData, "activityOverrides"> | undefined)[]): InstituteData["activityOverrides"];
35
+ export declare function combineActivityOverrides(institute?: Pick<InstituteData, "activityOverrides" | "hiddenActivities">, hubs?: (Pick<InstituteData, "activityOverrides"> | undefined)[], hidingParents?: (Pick<InstituteData, "activityOverrides" | "hiddenActivities"> | undefined)[]): InstituteData["activityOverrides"];
25
36
  /**
26
- * Loads the hubs an institute is linked to and returns its combined overrides. Takes the
37
+ * Loads the hubs and trust an institute is linked to and returns its combined overrides. Takes the
27
38
  * caller's own institute fetcher so frontend, backend and core all resolve them the same way.
28
39
  */
29
- export declare function loadActivityOverrides(institute: Pick<InstituteData, "activityOverrides" | "careersHubLinks"> | undefined | null, getInstitute: (oId: string) => Promise<InstituteData | undefined | null>): Promise<InstituteData["activityOverrides"]>;
40
+ export declare function loadActivityOverrides(institute: Pick<InstituteData, "activityOverrides" | "hiddenActivities" | "careersHubLinks" | "trustLinks" | "package"> | undefined | null, getInstitute: (oId: string) => Promise<InstituteData | undefined | null>): Promise<InstituteData["activityOverrides"]>;
30
41
  /**
31
42
  * Orgs whose own (non-public) externalActivities `institute` sees alongside the public
32
43
  * ones: itself when it's a careers hub, and every careers hub it has an approved link
package/lib/activities.js CHANGED
@@ -2,6 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.resolveActivities = resolveActivities;
4
4
  exports.approvedCareersHubIds = approvedCareersHubIds;
5
+ exports.activityHidingParentIds = activityHidingParentIds;
6
+ exports.ownHiddenActivityIds = ownHiddenActivityIds;
5
7
  exports.combineActivityOverrides = combineActivityOverrides;
6
8
  exports.loadActivityOverrides = loadActivityOverrides;
7
9
  exports.activityOwnerIds = activityOwnerIds;
@@ -36,28 +38,59 @@ function approvedCareersHubIds(institute) {
36
38
  .filter(([, link]) => link.status === "approved")
37
39
  .map(([hubId]) => hubId);
38
40
  }
41
+ /**
42
+ * Orgs whose hidden activities `institute` hides too. A careers school follows its approved
43
+ * hubs. A school follows only the trust it has joined, never a hub it's linked to. Hubs
44
+ * and trusts decide for themselves.
45
+ */
46
+ function activityHidingParentIds(institute) {
47
+ if (institute?.package === "careersSchool")
48
+ return approvedCareersHubIds(institute);
49
+ // Same as workflows' approvedTrustId, which can't be imported here without pulling in Firebase.
50
+ if (institute?.package === "institutes-one") {
51
+ return Object.entries(institute.trustLinks || {}).filter(([, link]) => link.status === "approved").map(([oId]) => oId).slice(0, 1);
52
+ }
53
+ return [];
54
+ }
55
+ /** Activity ids an org has hidden itself. Hubs hid them with activityOverrides.disabled before hiddenActivities existed. */
56
+ function ownHiddenActivityIds(org) {
57
+ return [...new Set([
58
+ ...(org?.hiddenActivities || []),
59
+ ...Object.entries(org?.activityOverrides || {}).filter(([, o]) => o.disabled).map(([id]) => id),
60
+ ])];
61
+ }
39
62
  /**
40
63
  * The activityOverrides that apply when `institute` views activities. A hub uses its own.
41
- * A school linked to careers hubs inherits each approved hub's overrides, so its staff,
64
+ * A school linked to careers hubs inherits each approved hub's renames, so its staff,
42
65
  * employers and alumni see the hub's wording and not the global one; anything the school
43
66
  * sets itself wins. Pass the hubs named by approvedCareersHubIds(institute).
67
+ *
68
+ * Hiding is separate: an activity is `disabled` when the institute hides it, or when one of
69
+ * `hidingParents` (named by activityHidingParentIds) does. A school can't unhide those.
44
70
  */
45
- function combineActivityOverrides(institute, hubs = []) {
71
+ function combineActivityOverrides(institute, hubs = [], hidingParents = []) {
46
72
  const combined = {};
47
73
  [...hubs.map((hub) => hub?.activityOverrides), institute?.activityOverrides].forEach((overrides) => Object.entries(overrides || {}).forEach(([id, override]) => {
48
- combined[id] = { ...combined[id], ...override };
74
+ const renames = Object.fromEntries(Object.entries(override).filter(([key]) => key !== "disabled"));
75
+ if (Object.keys(renames).length)
76
+ combined[id] = { ...combined[id], ...renames };
49
77
  }));
78
+ [institute, ...hidingParents].flatMap((org) => ownHiddenActivityIds(org)).forEach((id) => {
79
+ combined[id] = { ...combined[id], disabled: true };
80
+ });
50
81
  return Object.keys(combined).length ? combined : undefined;
51
82
  }
52
83
  /**
53
- * Loads the hubs an institute is linked to and returns its combined overrides. Takes the
84
+ * Loads the hubs and trust an institute is linked to and returns its combined overrides. Takes the
54
85
  * caller's own institute fetcher so frontend, backend and core all resolve them the same way.
55
86
  */
56
87
  async function loadActivityOverrides(institute, getInstitute) {
57
88
  if (!institute)
58
89
  return undefined;
59
- const hubs = await Promise.all(approvedCareersHubIds(institute).map((hubId) => getInstitute(hubId).catch(() => undefined)));
60
- return combineActivityOverrides(institute, hubs.map((hub) => hub ?? undefined));
90
+ const hubIds = approvedCareersHubIds(institute);
91
+ const parentIds = activityHidingParentIds(institute);
92
+ const orgs = Object.fromEntries(await Promise.all([...new Set([...hubIds, ...parentIds])].map(async (oId) => [oId, (await getInstitute(oId).catch(() => undefined)) ?? undefined])));
93
+ return combineActivityOverrides(institute, hubIds.map((oId) => orgs[oId]), parentIds.map((oId) => orgs[oId]));
61
94
  }
62
95
  /**
63
96
  * Orgs whose own (non-public) externalActivities `institute` sees alongside the public
@@ -1 +1 @@
1
- {"version":3,"file":"activities.js","sourceRoot":"","sources":["../src/activities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"activities.js","sourceRoot":"","sources":["../src/activities.ts"],"names":[],"mappings":"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"}
@@ -20,9 +20,18 @@ describe("combineActivityOverrides", () => {
20
20
  expect((0, activities_1.combineActivityOverrides)({ activityOverrides: { a: { title: "Networking Activity" } } }))
21
21
  .toEqual({ a: { title: "Networking Activity" } });
22
22
  });
23
- it("gives a linked school its hub's overrides", () => {
24
- expect((0, activities_1.combineActivityOverrides)({}, [{ activityOverrides: { a: { title: "Employer Workshop", disabled: false }, b: { disabled: true } } }]))
25
- .toEqual({ a: { title: "Employer Workshop", disabled: false }, b: { disabled: true } });
23
+ it("gives a linked school its hub's renames, and its hides only when the hub is a hiding parent", () => {
24
+ const hub = { activityOverrides: { a: { title: "Employer Workshop", disabled: false }, b: { disabled: true } } };
25
+ expect((0, activities_1.combineActivityOverrides)({}, [hub])).toEqual({ a: { title: "Employer Workshop" } });
26
+ expect((0, activities_1.combineActivityOverrides)({}, [hub], [hub])).toEqual({ a: { title: "Employer Workshop" }, b: { disabled: true } });
27
+ });
28
+ it("hides the institute's own and its hiding parents' hiddenActivities", () => {
29
+ expect((0, activities_1.combineActivityOverrides)({ hiddenActivities: ["a"] }, [], [{ hiddenActivities: ["b"] }]))
30
+ .toEqual({ a: { disabled: true }, b: { disabled: true } });
31
+ });
32
+ it("doesn't let a school unhide what its parent hid", () => {
33
+ expect((0, activities_1.combineActivityOverrides)({ activityOverrides: { a: { disabled: false } } }, [], [{ hiddenActivities: ["a"] }]))
34
+ .toEqual({ a: { disabled: true } });
26
35
  });
27
36
  it("lets the school's own override win, field by field", () => {
28
37
  expect((0, activities_1.combineActivityOverrides)({ activityOverrides: { a: { description: "School wording" } } }, [{ activityOverrides: { a: { title: "Hub title", description: "Hub wording" } } }])).toEqual({ a: { title: "Hub title", description: "School wording" } });
@@ -35,10 +44,11 @@ describe("combineActivityOverrides", () => {
35
44
  a: { title: "CV/Personal Statements", description: "", color: "#000", activityType: "other" },
36
45
  b: { title: "Short Placement", description: "", color: "#000", activityType: "workExperience" },
37
46
  };
38
- const resolved = (0, activities_1.resolveActivities)(activities, (0, activities_1.combineActivityOverrides)({}, [{ activityOverrides: {
39
- a: { title: "Employer Workshop" },
40
- b: { disabled: true },
41
- } }]));
47
+ const hub = { activityOverrides: {
48
+ a: { title: "Employer Workshop" },
49
+ b: { disabled: true },
50
+ } };
51
+ const resolved = (0, activities_1.resolveActivities)(activities, (0, activities_1.combineActivityOverrides)({}, [hub], [hub]));
42
52
  expect(resolved.a.title).toBe("Employer Workshop");
43
53
  expect(resolved.b.disabled).toBe(true);
44
54
  });
@@ -56,4 +66,30 @@ describe("activityOwnerIds", () => {
56
66
  expect((0, activities_1.activityOwnerIds)(undefined, "x")).toEqual([]);
57
67
  });
58
68
  });
69
+ describe("activityHidingParentIds", () => {
70
+ const hubLinks = { careersHubLinks: { hubA: link("approved"), hubB: link("invited") } };
71
+ const trustLinks = { trustLinks: { trust1: link("approved") } };
72
+ it("makes a careers school follow its approved hubs", () => {
73
+ expect((0, activities_1.activityHidingParentIds)({ package: "careersSchool", ...hubLinks, ...trustLinks })).toEqual(["hubA"]);
74
+ });
75
+ it("makes a school follow its trust, never its hubs", () => {
76
+ expect((0, activities_1.activityHidingParentIds)({ package: "institutes-one", ...hubLinks, ...trustLinks })).toEqual(["trust1"]);
77
+ expect((0, activities_1.activityHidingParentIds)({ package: "institutes-one", ...hubLinks })).toEqual([]);
78
+ });
79
+ it("lets hubs and trusts decide for themselves", () => {
80
+ expect((0, activities_1.activityHidingParentIds)({ package: "careersHub", ...hubLinks })).toEqual([]);
81
+ expect((0, activities_1.activityHidingParentIds)({ package: "institutes-two", ...trustLinks })).toEqual([]);
82
+ });
83
+ });
84
+ describe("loadActivityOverrides", () => {
85
+ it("gives a trust school its hub's renames and its trust's hides", async () => {
86
+ const orgs = {
87
+ hubA: { activityOverrides: { a: { title: "Hub title", disabled: true } } },
88
+ trust1: { hiddenActivities: ["b"] },
89
+ };
90
+ const school = { package: "institutes-one", careersHubLinks: { hubA: link("approved") }, trustLinks: { trust1: link("approved") } };
91
+ expect(await (0, activities_1.loadActivityOverrides)(school, async (oId) => orgs[oId]))
92
+ .toEqual({ a: { title: "Hub title" }, b: { disabled: true } });
93
+ });
94
+ });
59
95
  //# sourceMappingURL=activities.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"activities.test.js","sourceRoot":"","sources":["../src/activities.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"activities.test.js","sourceRoot":"","sources":["../src/activities.test.ts"],"names":[],"mappings":";;AAAA,6CAAkK;AAGlK,MAAM,IAAI,GAAG,CAAC,MAAuC,EAAE,EAAE,CAAC,CAAC,EAAC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAC,CAAC,CAAC;AAE1G,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACnC,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;QAC9D,MAAM,CAAC,IAAA,kCAAqB,EAAC,EAAC,eAAe,EAAE;gBAC3C,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC;gBACxB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC;gBACvB,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC;aAC/B,EAA2C,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;QACtD,MAAM,CAAC,IAAA,kCAAqB,EAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,CAAC,IAAA,kCAAqB,EAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACtC,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;QACrC,MAAM,CAAC,IAAA,qCAAwB,EAAC,EAAC,iBAAiB,EAAE,EAAC,CAAC,EAAE,EAAC,KAAK,EAAE,qBAAqB,EAAC,EAAC,EAAC,CAAC,CAAC;aACrF,OAAO,CAAC,EAAC,CAAC,EAAE,EAAC,KAAK,EAAE,qBAAqB,EAAC,EAAC,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6FAA6F,EAAE,GAAG,EAAE;QACnG,MAAM,GAAG,GAAG,EAAC,iBAAiB,EAAE,EAAC,CAAC,EAAE,EAAC,KAAK,EAAE,mBAAmB,EAAE,QAAQ,EAAE,KAAK,EAAC,EAAE,CAAC,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,EAAC,EAAC,CAAC;QACzG,MAAM,CAAC,IAAA,qCAAwB,EAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAC,CAAC,EAAE,EAAC,KAAK,EAAE,mBAAmB,EAAC,EAAC,CAAC,CAAC;QACvF,MAAM,CAAC,IAAA,qCAAwB,EAAC,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAC,CAAC,EAAE,EAAC,KAAK,EAAE,mBAAmB,EAAC,EAAE,CAAC,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,EAAC,CAAC,CAAC;IACvH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;QAC1E,MAAM,CAAC,IAAA,qCAAwB,EAAC,EAAC,gBAAgB,EAAE,CAAC,GAAG,CAAC,EAAC,EAAE,EAAE,EAAE,CAAC,EAAC,gBAAgB,EAAE,CAAC,GAAG,CAAC,EAAC,CAAC,CAAC,CAAC;aACvF,OAAO,CAAC,EAAC,CAAC,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,EAAE,CAAC,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,EAAC,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACvD,MAAM,CAAC,IAAA,qCAAwB,EAAC,EAAC,iBAAiB,EAAE,EAAC,CAAC,EAAE,EAAC,QAAQ,EAAE,KAAK,EAAC,EAAC,EAAC,EAAE,EAAE,EAAE,CAAC,EAAC,gBAAgB,EAAE,CAAC,GAAG,CAAC,EAAC,CAAC,CAAC,CAAC;aACzG,OAAO,CAAC,EAAC,CAAC,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,EAAC,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC1D,MAAM,CAAC,IAAA,qCAAwB,EAC3B,EAAC,iBAAiB,EAAE,EAAC,CAAC,EAAE,EAAC,WAAW,EAAE,gBAAgB,EAAC,EAAC,EAAC,EACzD,CAAC,EAAC,iBAAiB,EAAE,EAAC,CAAC,EAAE,EAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,EAAC,EAAC,EAAC,CAAC,CAC/E,CAAC,CAAC,OAAO,CAAC,EAAC,CAAC,EAAE,EAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,gBAAgB,EAAC,EAAC,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACpD,MAAM,CAAC,IAAA,qCAAwB,EAAC,EAAE,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IAC1E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uEAAuE,EAAE,GAAG,EAAE;QAC7E,MAAM,UAAU,GAAqC;YACjD,CAAC,EAAE,EAAC,KAAK,EAAE,wBAAwB,EAAE,WAAW,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAC;YAC3F,CAAC,EAAE,EAAC,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,gBAAgB,EAAC;SAChG,CAAC;QACF,MAAM,GAAG,GAAG,EAAC,iBAAiB,EAAE;gBAC5B,CAAC,EAAE,EAAC,KAAK,EAAE,mBAAmB,EAAC;gBAC/B,CAAC,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC;aACtB,EAAC,CAAC;QACH,MAAM,QAAQ,GAAG,IAAA,8BAAiB,EAAC,UAAU,EAAE,IAAA,qCAAwB,EAAC,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC3F,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACnD,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAC9B,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QAC/C,MAAM,CAAC,IAAA,6BAAgB,EAAC,EAAC,OAAO,EAAE,YAAY,EAAkB,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QAC7F,MAAM,CAAC,IAAA,6BAAgB,EAAC,EAAC,OAAO,EAAE,gBAAgB,EAAkB,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAClG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QACxD,MAAM,MAAM,GAAG,EAAC,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,EAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAC,EAA6B,CAAC;QACxI,MAAM,CAAC,IAAA,6BAAgB,EAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC5C,MAAM,CAAC,IAAA,6BAAgB,EAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACrC,MAAM,QAAQ,GAAG,EAAC,eAAe,EAAE,EAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAC,EAAC,CAAC;IACpF,MAAM,UAAU,GAAG,EAAC,UAAU,EAAE,EAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,EAAC,EAAC,CAAC;IAE5D,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACvD,MAAM,CAAC,IAAA,oCAAuB,EAAC,EAAC,OAAO,EAAE,eAAe,EAAE,GAAG,QAAQ,EAAE,GAAG,UAAU,EAA6B,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1I,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACvD,MAAM,CAAC,IAAA,oCAAuB,EAAC,EAAC,OAAO,EAAE,gBAAgB,EAAE,GAAG,QAAQ,EAAE,GAAG,UAAU,EAA6B,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QACzI,MAAM,CAAC,IAAA,oCAAuB,EAAC,EAAC,OAAO,EAAE,gBAAgB,EAAE,GAAG,QAAQ,EAA6B,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACtH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QAClD,MAAM,CAAC,IAAA,oCAAuB,EAAC,EAAC,OAAO,EAAE,YAAY,EAAE,GAAG,QAAQ,EAA6B,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC9G,MAAM,CAAC,IAAA,oCAAuB,EAAC,EAAC,OAAO,EAAE,gBAAgB,EAAE,GAAG,UAAU,EAA6B,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACxH,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACnC,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;QAC1E,MAAM,IAAI,GAA4C;YAClD,IAAI,EAAE,EAAC,iBAAiB,EAAE,EAAC,CAAC,EAAE,EAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAC,EAAC,EAAC;YACpE,MAAM,EAAE,EAAC,gBAAgB,EAAE,CAAC,GAAG,CAAC,EAAC;SACpC,CAAC;QACF,MAAM,MAAM,GAAG,EAAC,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,EAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,EAAC,EAAE,UAAU,EAAE,EAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,EAAC,EAA6B,CAAC;QAC1J,MAAM,CAAC,MAAM,IAAA,kCAAqB,EAAC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAkB,CAAC,CAAC;aACjF,OAAO,CAAC,EAAC,CAAC,EAAE,EAAC,KAAK,EAAE,WAAW,EAAC,EAAE,CAAC,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,EAAC,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -300,7 +300,7 @@ const createEmailSectionRenderer = (fetcher, isPreview) => {
300
300
  ]);
301
301
  const activitiesRaw = { ...publicActivities, ...hubActivities };
302
302
  const hubInstitute = await f.getDocData(["institutes", hubId]).catch(() => undefined);
303
- const activities = (0, activities_1.resolveActivities)(activitiesRaw, hubInstitute?.activityOverrides);
303
+ const activities = (0, activities_1.resolveActivities)(activitiesRaw, (0, activities_1.combineActivityOverrides)(hubInstitute));
304
304
  const activityCounts = Object.fromEntries(Object.entries(activities).map(([activityId, activity]) => {
305
305
  const count = contacts.reduce((total, c) => {
306
306
  const acts = c.savedBy?.[hubId]?.activities ?? [];
@@ -1 +1 @@
1
- {"version":3,"file":"emailSections.js","sourceRoot":"","sources":["../src/emailSections.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"emailSections.js","sourceRoot":"","sources":["../src/emailSections.ts"],"names":[],"mappings":"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"}
package/lib/letters.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { Descendant } from "slate";
2
- import type { ProductTag } from "./typeDefinitions";
2
+ import type { CohortData, InstituteData, ProductTag } from "./typeDefinitions";
3
3
  export type WexLetterKey = "employer" | "parent" | "student";
4
4
  export type WexLetterOverride = {
5
5
  body: Descendant[];
@@ -20,3 +20,31 @@ export declare const wexLetters: {
20
20
  export declare function fillLetterParams(text: string, values: {
21
21
  [key: string]: string | undefined;
22
22
  }): string;
23
+ export declare const CAREERTHREAD_LETTER_ADDRESS: string[];
24
+ export declare const CAREERTHREAD_LETTER_CONTACT: string[];
25
+ export declare const CAREERTHREAD_LETTER_FOOTER = "CareerThread is the trading name of Placementt Ltd, a company registered in England and Wales with company number 14481303.";
26
+ export declare function wexLetterValues({ institute, cohort, staff }: {
27
+ institute?: Partial<InstituteData>;
28
+ cohort?: Partial<CohortData>;
29
+ staff?: {
30
+ forename?: string;
31
+ surname?: string;
32
+ email?: string;
33
+ };
34
+ }): {
35
+ [key: string]: string | undefined;
36
+ };
37
+ export type LetterRun = {
38
+ text: string;
39
+ bold?: boolean;
40
+ italic?: boolean;
41
+ underline?: boolean;
42
+ href?: string;
43
+ };
44
+ export type LetterBlock = {
45
+ type: "heading-one" | "heading-two" | "paragraph";
46
+ runs: LetterRun[];
47
+ };
48
+ export declare function wexLetterBlocks(body: Descendant[], values: {
49
+ [key: string]: string | undefined;
50
+ }): LetterBlock[];
package/lib/letters.js CHANGED
@@ -1,7 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.wexLetters = exports.wexLetterParams = void 0;
3
+ exports.CAREERTHREAD_LETTER_FOOTER = exports.CAREERTHREAD_LETTER_CONTACT = exports.CAREERTHREAD_LETTER_ADDRESS = exports.wexLetters = exports.wexLetterParams = void 0;
4
4
  exports.fillLetterParams = fillLetterParams;
5
+ exports.wexLetterValues = wexLetterValues;
6
+ exports.wexLetterBlocks = wexLetterBlocks;
7
+ const benchmarkEvidenceRules_1 = require("./benchmarkEvidenceRules");
5
8
  // Params available in every letter. Filled in when the letter is previewed or downloaded.
6
9
  exports.wexLetterParams = ["instituteName", "academicYear", "cohortName", "placementStart", "placementEnd", "staffName", "staffEmail"];
7
10
  // Builds Slate content from lines. "# " and "## " start headings, **text** is bold, {{param}} becomes a param node.
@@ -72,4 +75,34 @@ exports.wexLetters = {
72
75
  function fillLetterParams(text, values) {
73
76
  return text.replace(/\{\{(\w+)\}\}/g, (match, key) => values[key] ?? match);
74
77
  }
78
+ // Printed top right of every letter, under the CareerThread name.
79
+ // TODO(Tom): fill in the postal address.
80
+ exports.CAREERTHREAD_LETTER_ADDRESS = [];
81
+ exports.CAREERTHREAD_LETTER_CONTACT = ["tom@careerthread.co.uk", "careerthread.co.uk"];
82
+ exports.CAREERTHREAD_LETTER_FOOTER = "CareerThread is the trading name of Placementt Ltd, a company registered in England and Wales with company number 14481303.";
83
+ // Values for the letter params. Shared by the web preview and the backend PDF, so both say the same thing.
84
+ function wexLetterValues({ institute, cohort, staff }) {
85
+ const formatDate = (d) => d ? new Date(d).toLocaleDateString("en-GB", { day: "numeric", month: "long", year: "numeric" }) : undefined;
86
+ return {
87
+ instituteName: institute?.name,
88
+ academicYear: (0, benchmarkEvidenceRules_1.academicYearForDate)(cohort?.startPlacements || new Date()).replace("-", "/"),
89
+ cohortName: cohort?.name,
90
+ placementStart: formatDate(cohort?.startPlacements),
91
+ placementEnd: formatDate(cohort?.endPlacements),
92
+ staffName: [staff?.forename, staff?.surname].filter(Boolean).join(" ") || undefined,
93
+ staffEmail: staff?.email,
94
+ };
95
+ }
96
+ // Flattens Slate content into blocks of styled text runs with params filled in. The web preview and the PDF both draw from this.
97
+ function wexLetterBlocks(body, values) {
98
+ const runsOf = (node, href) => {
99
+ if (typeof node.text === "string")
100
+ return [{ text: fillLetterParams(node.text, values), bold: node.bold, italic: node.italic, underline: node.underline, href }];
101
+ return (node.children || []).flatMap((child) => runsOf(child, node.type === "link" ? node.href : href));
102
+ };
103
+ return body.map((node) => ({
104
+ type: node.type === "heading-one" || node.type === "heading-two" ? node.type : "paragraph",
105
+ runs: runsOf(node).filter((r) => r.text),
106
+ }));
107
+ }
75
108
  //# sourceMappingURL=letters.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"letters.js","sourceRoot":"","sources":["../src/letters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"letters.js","sourceRoot":"","sources":["../src/letters.ts"],"names":[],"mappings":"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"}
@@ -1142,6 +1142,9 @@ export type InstituteData = {
1142
1142
  }[];
1143
1143
  };
1144
1144
  };
1145
+ /** externalActivities ids this org has hidden from its platform. A careers school also
1146
+ * hides those its hubs hide, and a school those its trust hides; see activityHidingParentIds. */
1147
+ hiddenActivities?: string[];
1145
1148
  activityOverrides?: {
1146
1149
  [externalActivityId: string]: {
1147
1150
  disabled?: boolean;
@@ -1360,8 +1363,8 @@ export type ExternalActivity = {
1360
1363
  provider?: boolean;
1361
1364
  permanent?: boolean;
1362
1365
  activityType: "workExperience" | "workplaceVisits" | "mentoring" | "mockInterviews" | "other";
1363
- /** Set by resolveActivities when the viewing institute's activityOverrides disables
1364
- * this activity. Never stored on the externalActivities doc itself. */
1366
+ /** Set by resolveActivities when the viewing institute hides this activity, or inherits
1367
+ * the hide from its hub or trust. Never stored on the externalActivities doc itself. */
1365
1368
  disabled?: boolean;
1366
1369
  };
1367
1370
  export type NotificationObject = {
@@ -1 +1 @@
1
- {"version":3,"file":"typeDefinitions.js","sourceRoot":"","sources":["../src/typeDefinitions.ts"],"names":[],"mappings":";;;AA2nIA,sDASC;AAeD,oDAKC;AAaD,0CAEC;AAjoED;;;;;kFAKkF;AACrE,QAAA,qBAAqB,GAAG,SAAS,CAAC;AAClC,QAAA,iBAAiB,GAAG,OAAO,CAAC;AA6iEzC;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"}
1
+ {"version":3,"file":"typeDefinitions.js","sourceRoot":"","sources":["../src/typeDefinitions.ts"],"names":[],"mappings":";;;AA8nIA,sDASC;AAeD,oDAKC;AAaD,0CAEC;AAjoED;;;;;kFAKkF;AACrE,QAAA,qBAAqB,GAAG,SAAS,CAAC;AAClC,QAAA,iBAAiB,GAAG,OAAO,CAAC;AA6iEzC;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
@@ -2,7 +2,7 @@
2
2
  "private": false,
3
3
  "name": "placementt-core",
4
4
  "author": "Placementt",
5
- "version": "1.400.1150",
5
+ "version": "1.400.1152",
6
6
  "main": "lib/index.js",
7
7
  "types": "lib/index.d.ts",
8
8
  "scripts": {
@@ -1,4 +1,4 @@
1
- import {activityOwnerIds, approvedCareersHubIds, combineActivityOverrides, resolveActivities} from "./activities";
1
+ import {activityHidingParentIds, activityOwnerIds, approvedCareersHubIds, combineActivityOverrides, loadActivityOverrides, resolveActivities} from "./activities";
2
2
  import {ExternalActivity, InstituteData} from "./typeDefinitions";
3
3
 
4
4
  const link = (status: "invited"|"approved"|"declined") => ({exists: true, invited: "2026-09-01", status});
@@ -24,9 +24,20 @@ describe("combineActivityOverrides", () => {
24
24
  .toEqual({a: {title: "Networking Activity"}});
25
25
  });
26
26
 
27
- it("gives a linked school its hub's overrides", () => {
28
- expect(combineActivityOverrides({}, [{activityOverrides: {a: {title: "Employer Workshop", disabled: false}, b: {disabled: true}}}]))
29
- .toEqual({a: {title: "Employer Workshop", disabled: false}, b: {disabled: true}});
27
+ it("gives a linked school its hub's renames, and its hides only when the hub is a hiding parent", () => {
28
+ const hub = {activityOverrides: {a: {title: "Employer Workshop", disabled: false}, b: {disabled: true}}};
29
+ expect(combineActivityOverrides({}, [hub])).toEqual({a: {title: "Employer Workshop"}});
30
+ expect(combineActivityOverrides({}, [hub], [hub])).toEqual({a: {title: "Employer Workshop"}, b: {disabled: true}});
31
+ });
32
+
33
+ it("hides the institute's own and its hiding parents' hiddenActivities", () => {
34
+ expect(combineActivityOverrides({hiddenActivities: ["a"]}, [], [{hiddenActivities: ["b"]}]))
35
+ .toEqual({a: {disabled: true}, b: {disabled: true}});
36
+ });
37
+
38
+ it("doesn't let a school unhide what its parent hid", () => {
39
+ expect(combineActivityOverrides({activityOverrides: {a: {disabled: false}}}, [], [{hiddenActivities: ["a"]}]))
40
+ .toEqual({a: {disabled: true}});
30
41
  });
31
42
 
32
43
  it("lets the school's own override win, field by field", () => {
@@ -45,10 +56,11 @@ describe("combineActivityOverrides", () => {
45
56
  a: {title: "CV/Personal Statements", description: "", color: "#000", activityType: "other"},
46
57
  b: {title: "Short Placement", description: "", color: "#000", activityType: "workExperience"},
47
58
  };
48
- const resolved = resolveActivities(activities, combineActivityOverrides({}, [{activityOverrides: {
59
+ const hub = {activityOverrides: {
49
60
  a: {title: "Employer Workshop"},
50
61
  b: {disabled: true},
51
- }}]));
62
+ }};
63
+ const resolved = resolveActivities(activities, combineActivityOverrides({}, [hub], [hub]));
52
64
  expect(resolved.a.title).toBe("Employer Workshop");
53
65
  expect(resolved.b.disabled).toBe(true);
54
66
  });
@@ -69,3 +81,34 @@ describe("activityOwnerIds", () => {
69
81
  expect(activityOwnerIds(undefined, "x")).toEqual([]);
70
82
  });
71
83
  });
84
+
85
+ describe("activityHidingParentIds", () => {
86
+ const hubLinks = {careersHubLinks: {hubA: link("approved"), hubB: link("invited")}};
87
+ const trustLinks = {trustLinks: {trust1: link("approved")}};
88
+
89
+ it("makes a careers school follow its approved hubs", () => {
90
+ expect(activityHidingParentIds({package: "careersSchool", ...hubLinks, ...trustLinks} as unknown as InstituteData)).toEqual(["hubA"]);
91
+ });
92
+
93
+ it("makes a school follow its trust, never its hubs", () => {
94
+ expect(activityHidingParentIds({package: "institutes-one", ...hubLinks, ...trustLinks} as unknown as InstituteData)).toEqual(["trust1"]);
95
+ expect(activityHidingParentIds({package: "institutes-one", ...hubLinks} as unknown as InstituteData)).toEqual([]);
96
+ });
97
+
98
+ it("lets hubs and trusts decide for themselves", () => {
99
+ expect(activityHidingParentIds({package: "careersHub", ...hubLinks} as unknown as InstituteData)).toEqual([]);
100
+ expect(activityHidingParentIds({package: "institutes-two", ...trustLinks} as unknown as InstituteData)).toEqual([]);
101
+ });
102
+ });
103
+
104
+ describe("loadActivityOverrides", () => {
105
+ it("gives a trust school its hub's renames and its trust's hides", async () => {
106
+ const orgs: {[oId: string]: Partial<InstituteData>} = {
107
+ hubA: {activityOverrides: {a: {title: "Hub title", disabled: true}}},
108
+ trust1: {hiddenActivities: ["b"]},
109
+ };
110
+ const school = {package: "institutes-one", careersHubLinks: {hubA: link("approved")}, trustLinks: {trust1: link("approved")}} as unknown as InstituteData;
111
+ expect(await loadActivityOverrides(school, async (oId) => orgs[oId] as InstituteData))
112
+ .toEqual({a: {title: "Hub title"}, b: {disabled: true}});
113
+ });
114
+ });
package/src/activities.ts CHANGED
@@ -34,35 +34,70 @@ export function approvedCareersHubIds(institute?: Pick<InstituteData, "careersHu
34
34
  .map(([hubId]) => hubId);
35
35
  }
36
36
 
37
+ /**
38
+ * Orgs whose hidden activities `institute` hides too. A careers school follows its approved
39
+ * hubs. A school follows only the trust it has joined, never a hub it's linked to. Hubs
40
+ * and trusts decide for themselves.
41
+ */
42
+ export function activityHidingParentIds(
43
+ institute: Pick<InstituteData, "package"|"careersHubLinks"|"trustLinks">|undefined|null,
44
+ ): string[] {
45
+ if (institute?.package === "careersSchool") return approvedCareersHubIds(institute);
46
+ // Same as workflows' approvedTrustId, which can't be imported here without pulling in Firebase.
47
+ if (institute?.package === "institutes-one") {
48
+ return Object.entries(institute.trustLinks || {}).filter(([, link]) => link.status === "approved").map(([oId]) => oId).slice(0, 1);
49
+ }
50
+ return [];
51
+ }
52
+
53
+ /** Activity ids an org has hidden itself. Hubs hid them with activityOverrides.disabled before hiddenActivities existed. */
54
+ export function ownHiddenActivityIds(org?: Pick<InstituteData, "hiddenActivities"|"activityOverrides">): string[] {
55
+ return [...new Set([
56
+ ...(org?.hiddenActivities || []),
57
+ ...Object.entries(org?.activityOverrides || {}).filter(([, o]) => o.disabled).map(([id]) => id),
58
+ ])];
59
+ }
60
+
37
61
  /**
38
62
  * The activityOverrides that apply when `institute` views activities. A hub uses its own.
39
- * A school linked to careers hubs inherits each approved hub's overrides, so its staff,
63
+ * A school linked to careers hubs inherits each approved hub's renames, so its staff,
40
64
  * employers and alumni see the hub's wording and not the global one; anything the school
41
65
  * sets itself wins. Pass the hubs named by approvedCareersHubIds(institute).
66
+ *
67
+ * Hiding is separate: an activity is `disabled` when the institute hides it, or when one of
68
+ * `hidingParents` (named by activityHidingParentIds) does. A school can't unhide those.
42
69
  */
43
70
  export function combineActivityOverrides(
44
- institute?: Pick<InstituteData, "activityOverrides">,
71
+ institute?: Pick<InstituteData, "activityOverrides"|"hiddenActivities">,
45
72
  hubs: (Pick<InstituteData, "activityOverrides">|undefined)[] = [],
73
+ hidingParents: (Pick<InstituteData, "activityOverrides"|"hiddenActivities">|undefined)[] = [],
46
74
  ): InstituteData["activityOverrides"] {
47
75
  const combined: NonNullable<InstituteData["activityOverrides"]> = {};
48
76
  [...hubs.map((hub) => hub?.activityOverrides), institute?.activityOverrides].forEach((overrides) =>
49
77
  Object.entries(overrides || {}).forEach(([id, override]) => {
50
- combined[id] = {...combined[id], ...override};
78
+ const renames = Object.fromEntries(Object.entries(override).filter(([key]) => key !== "disabled"));
79
+ if (Object.keys(renames).length) combined[id] = {...combined[id], ...renames};
51
80
  }));
81
+ [institute, ...hidingParents].flatMap((org) => ownHiddenActivityIds(org)).forEach((id) => {
82
+ combined[id] = {...combined[id], disabled: true};
83
+ });
52
84
  return Object.keys(combined).length ? combined : undefined;
53
85
  }
54
86
 
55
87
  /**
56
- * Loads the hubs an institute is linked to and returns its combined overrides. Takes the
88
+ * Loads the hubs and trust an institute is linked to and returns its combined overrides. Takes the
57
89
  * caller's own institute fetcher so frontend, backend and core all resolve them the same way.
58
90
  */
59
91
  export async function loadActivityOverrides(
60
- institute: Pick<InstituteData, "activityOverrides"|"careersHubLinks">|undefined|null,
92
+ institute: Pick<InstituteData, "activityOverrides"|"hiddenActivities"|"careersHubLinks"|"trustLinks"|"package">|undefined|null,
61
93
  getInstitute: (oId: string) => Promise<InstituteData|undefined|null>,
62
94
  ): Promise<InstituteData["activityOverrides"]> {
63
95
  if (!institute) return undefined;
64
- const hubs = await Promise.all(approvedCareersHubIds(institute).map((hubId) => getInstitute(hubId).catch(() => undefined)));
65
- return combineActivityOverrides(institute, hubs.map((hub) => hub ?? undefined));
96
+ const hubIds = approvedCareersHubIds(institute);
97
+ const parentIds = activityHidingParentIds(institute);
98
+ const orgs = Object.fromEntries(await Promise.all([...new Set([...hubIds, ...parentIds])].map(async (oId) =>
99
+ [oId, (await getInstitute(oId).catch(() => undefined)) ?? undefined] as const)));
100
+ return combineActivityOverrides(institute, hubIds.map((oId) => orgs[oId]), parentIds.map((oId) => orgs[oId]));
66
101
  }
67
102
 
68
103
  /**
@@ -1,7 +1,7 @@
1
1
  import {where} from "firebase/firestore";
2
2
  import FirebaseQuery from "./firebase/firebaseQuery";
3
3
  import {convertDate} from "./firebase/util";
4
- import {loadActivityOverrides, resolveActivities} from "./activities";
4
+ import {combineActivityOverrides, loadActivityOverrides, resolveActivities} from "./activities";
5
5
  import {EmailSectionConfig, EmailSectionRenderProps, ExternalActivity, ExternalEvent, ExternalEventAttendee, ExternalEventRequest, InstituteData, ProviderContactData, SectionDataFetcher, SectionFallback} from "./typeDefinitions";
6
6
  import {sectorColours} from "./constants";
7
7
 
@@ -317,7 +317,7 @@ export const createEmailSectionRenderer = (fetcher?: SectionDataFetcher, isPrevi
317
317
  ]);
318
318
  const activitiesRaw = {...publicActivities, ...hubActivities};
319
319
  const hubInstitute = await f.getDocData(["institutes", hubId]).catch(() => undefined) as InstituteData|undefined;
320
- const activities = resolveActivities(activitiesRaw, hubInstitute?.activityOverrides);
320
+ const activities = resolveActivities(activitiesRaw, combineActivityOverrides(hubInstitute));
321
321
  const activityCounts: Record<string, {value: number, color?: string}> = Object.fromEntries(
322
322
  Object.entries(activities).map(([activityId, activity]) => {
323
323
  const count = contacts.reduce((total, c) => {
package/src/letters.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import {Descendant} from "slate";
2
- import type {ProductTag} from "./typeDefinitions";
2
+ import type {CohortData, InstituteData, ProductTag} from "./typeDefinitions";
3
+ import {academicYearForDate} from "./benchmarkEvidenceRules";
3
4
 
4
5
  // Work experience letters schools hand to employers, parents and students. We provide the defaults below.
5
6
  // A school can edit a letter once, saved to InstituteData.wexLetters[key], and that version is used for all their cohorts.
@@ -89,3 +90,39 @@ export const wexLetters: {[key in WexLetterKey]: WexLetterConfig} = {
89
90
  export function fillLetterParams(text: string, values: {[key: string]: string|undefined}) {
90
91
  return text.replace(/\{\{(\w+)\}\}/g, (match, key) => values[key] ?? match);
91
92
  }
93
+
94
+ // Printed top right of every letter, under the CareerThread name.
95
+ // TODO(Tom): fill in the postal address.
96
+ export const CAREERTHREAD_LETTER_ADDRESS: string[] = [];
97
+ export const CAREERTHREAD_LETTER_CONTACT = ["tom@careerthread.co.uk", "careerthread.co.uk"];
98
+ export const CAREERTHREAD_LETTER_FOOTER = "CareerThread is the trading name of Placementt Ltd, a company registered in England and Wales with company number 14481303.";
99
+
100
+ // Values for the letter params. Shared by the web preview and the backend PDF, so both say the same thing.
101
+ export function wexLetterValues({institute, cohort, staff}:{institute?: Partial<InstituteData>, cohort?: Partial<CohortData>, staff?: {forename?: string, surname?: string, email?: string}}): {[key: string]: string|undefined} {
102
+ const formatDate = (d?: string) => d ? new Date(d).toLocaleDateString("en-GB", {day: "numeric", month: "long", year: "numeric"}) : undefined;
103
+ return {
104
+ instituteName: institute?.name,
105
+ academicYear: academicYearForDate(cohort?.startPlacements || new Date()).replace("-", "/"),
106
+ cohortName: cohort?.name,
107
+ placementStart: formatDate(cohort?.startPlacements),
108
+ placementEnd: formatDate(cohort?.endPlacements),
109
+ staffName: [staff?.forename, staff?.surname].filter(Boolean).join(" ") || undefined,
110
+ staffEmail: staff?.email,
111
+ };
112
+ }
113
+
114
+ export type LetterRun = {text: string, bold?: boolean, italic?: boolean, underline?: boolean, href?: string};
115
+ export type LetterBlock = {type: "heading-one"|"heading-two"|"paragraph", runs: LetterRun[]};
116
+
117
+ // Flattens Slate content into blocks of styled text runs with params filled in. The web preview and the PDF both draw from this.
118
+ export function wexLetterBlocks(body: Descendant[], values: {[key: string]: string|undefined}): LetterBlock[] {
119
+ type Node = {type?: string, href?: string, text?: string, bold?: boolean, italic?: boolean, underline?: boolean, children?: Node[]};
120
+ const runsOf = (node: Node, href?: string): LetterRun[] => {
121
+ if (typeof node.text === "string") return [{text: fillLetterParams(node.text, values), bold: node.bold, italic: node.italic, underline: node.underline, href}];
122
+ return (node.children || []).flatMap((child) => runsOf(child, node.type === "link" ? node.href : href));
123
+ };
124
+ return (body as unknown as Node[]).map((node) => ({
125
+ type: node.type === "heading-one" || node.type === "heading-two" ? node.type : "paragraph",
126
+ runs: runsOf(node).filter((r) => r.text),
127
+ }));
128
+ }
@@ -1175,6 +1175,9 @@ export type InstituteData = {
1175
1175
  messageId?: string,
1176
1176
  }[]
1177
1177
  }},
1178
+ /** externalActivities ids this org has hidden from its platform. A careers school also
1179
+ * hides those its hubs hide, and a school those its trust hides; see activityHidingParentIds. */
1180
+ hiddenActivities?: string[],
1178
1181
  activityOverrides?: {[externalActivityId: string]: { // Customisations of existing hard-coded activities by a hub.
1179
1182
  disabled?: boolean,
1180
1183
  title?: string,
@@ -1390,8 +1393,8 @@ export type ExternalActivity = {
1390
1393
  provider?: boolean,
1391
1394
  permanent?: boolean,
1392
1395
  activityType: "workExperience"|"workplaceVisits"|"mentoring"|"mockInterviews"|"other"
1393
- /** Set by resolveActivities when the viewing institute's activityOverrides disables
1394
- * this activity. Never stored on the externalActivities doc itself. */
1396
+ /** Set by resolveActivities when the viewing institute hides this activity, or inherits
1397
+ * the hide from its hub or trust. Never stored on the externalActivities doc itself. */
1395
1398
  disabled?: boolean,
1396
1399
  }
1397
1400