placementt-core 1.400.1149 → 1.400.1151

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,15 +15,34 @@ 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"]>;
41
+ /**
42
+ * Orgs whose own (non-public) externalActivities `institute` sees alongside the public
43
+ * ones: itself when it's a careers hub, and every careers hub it has an approved link
44
+ * with. A hub's own activities therefore reach its schools, and the employers and alumni
45
+ * joining through them, the same way its overrides do. Query them with
46
+ * `oId in activityOwnerIds(...)` and `public == false`.
47
+ */
48
+ export declare function activityOwnerIds(institute: Pick<InstituteData, "package" | "careersHubLinks"> | undefined | null, oId?: string): string[];
package/lib/activities.js CHANGED
@@ -2,8 +2,11 @@
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;
9
+ exports.activityOwnerIds = activityOwnerIds;
7
10
  /**
8
11
  * Applies a hub's activityOverrides to a set of public activities. Every read path
9
12
  * (frontend and backend) must pass fetched externalActivities through this before
@@ -35,27 +38,71 @@ function approvedCareersHubIds(institute) {
35
38
  .filter(([, link]) => link.status === "approved")
36
39
  .map(([hubId]) => hubId);
37
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
+ }
38
62
  /**
39
63
  * The activityOverrides that apply when `institute` views activities. A hub uses its own.
40
- * 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,
41
65
  * employers and alumni see the hub's wording and not the global one; anything the school
42
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.
43
70
  */
44
- function combineActivityOverrides(institute, hubs = []) {
71
+ function combineActivityOverrides(institute, hubs = [], hidingParents = []) {
45
72
  const combined = {};
46
73
  [...hubs.map((hub) => hub?.activityOverrides), institute?.activityOverrides].forEach((overrides) => Object.entries(overrides || {}).forEach(([id, override]) => {
47
- 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 };
48
77
  }));
78
+ [institute, ...hidingParents].flatMap((org) => ownHiddenActivityIds(org)).forEach((id) => {
79
+ combined[id] = { ...combined[id], disabled: true };
80
+ });
49
81
  return Object.keys(combined).length ? combined : undefined;
50
82
  }
51
83
  /**
52
- * 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
53
85
  * caller's own institute fetcher so frontend, backend and core all resolve them the same way.
54
86
  */
55
87
  async function loadActivityOverrides(institute, getInstitute) {
56
88
  if (!institute)
57
89
  return undefined;
58
- const hubs = await Promise.all(approvedCareersHubIds(institute).map((hubId) => getInstitute(hubId).catch(() => undefined)));
59
- 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]));
94
+ }
95
+ /**
96
+ * Orgs whose own (non-public) externalActivities `institute` sees alongside the public
97
+ * ones: itself when it's a careers hub, and every careers hub it has an approved link
98
+ * with. A hub's own activities therefore reach its schools, and the employers and alumni
99
+ * joining through them, the same way its overrides do. Query them with
100
+ * `oId in activityOwnerIds(...)` and `public == false`.
101
+ */
102
+ function activityOwnerIds(institute, oId) {
103
+ if (!institute)
104
+ return [];
105
+ const own = institute.package === "careersHub" && oId ? [oId] : [];
106
+ return [...new Set([...own, ...approvedCareersHubIds(institute)])];
60
107
  }
61
108
  //# sourceMappingURL=activities.js.map
@@ -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,12 +44,52 @@ 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
  });
45
55
  });
56
+ describe("activityOwnerIds", () => {
57
+ it("includes a hub itself, but not a school", () => {
58
+ expect((0, activities_1.activityOwnerIds)({ package: "careersHub" }, "hub1")).toEqual(["hub1"]);
59
+ expect((0, activities_1.activityOwnerIds)({ package: "institutes-one" }, "school1")).toEqual([]);
60
+ });
61
+ it("includes each approved hub a school is linked to", () => {
62
+ const school = { package: "careersSchool", careersHubLinks: { hubA: link("approved"), hubB: link("invited") } };
63
+ expect((0, activities_1.activityOwnerIds)(school, "school1")).toEqual(["hubA"]);
64
+ });
65
+ it("returns nothing without an institute", () => {
66
+ expect((0, activities_1.activityOwnerIds)(undefined, "x")).toEqual([]);
67
+ });
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
+ });
46
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":"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"}
@@ -293,9 +293,14 @@ const createEmailSectionRenderer = (fetcher, isPreview) => {
293
293
  sectorCounts[sector] = { value: 0, color: constants_1.sectorColours[sector] };
294
294
  sectorCounts[sector].value += 1;
295
295
  });
296
- const activitiesRaw = await f.getDocsWhere(["externalActivities"], [{ field: "public", op: "==", value: true }]);
296
+ const [publicActivities, hubActivities] = await Promise.all([
297
+ f.getDocsWhere(["externalActivities"], [{ field: "public", op: "==", value: true }]),
298
+ // Activities the hub added itself.
299
+ f.getDocsWhere(["externalActivities"], [{ field: "oId", op: "==", value: hubId }, { field: "public", op: "==", value: false }]).catch(() => ({})),
300
+ ]);
301
+ const activitiesRaw = { ...publicActivities, ...hubActivities };
297
302
  const hubInstitute = await f.getDocData(["institutes", hubId]).catch(() => undefined);
298
- const activities = (0, activities_1.resolveActivities)(activitiesRaw, hubInstitute?.activityOverrides);
303
+ const activities = (0, activities_1.resolveActivities)(activitiesRaw, (0, activities_1.combineActivityOverrides)(hubInstitute));
299
304
  const activityCounts = Object.fromEntries(Object.entries(activities).map(([activityId, activity]) => {
300
305
  const count = contacts.reduce((total, c) => {
301
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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"}
@@ -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;
@@ -1353,13 +1356,15 @@ export type ExternalActivity = {
1353
1356
  image?: string;
1354
1357
  color: string;
1355
1358
  public?: boolean;
1359
+ /** Set, with `public: false`, on an activity a careers hub added for itself. Seen by
1360
+ * the hub and its approved schools; see activityOwnerIds. */
1356
1361
  oId?: string;
1357
1362
  alumni?: boolean;
1358
1363
  provider?: boolean;
1359
1364
  permanent?: boolean;
1360
1365
  activityType: "workExperience" | "workplaceVisits" | "mentoring" | "mockInterviews" | "other";
1361
- /** Set by resolveActivities when the viewing institute's activityOverrides disables
1362
- * 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. */
1363
1368
  disabled?: boolean;
1364
1369
  };
1365
1370
  export type NotificationObject = {
@@ -1 +1 @@
1
- {"version":3,"file":"typeDefinitions.js","sourceRoot":"","sources":["../src/typeDefinitions.ts"],"names":[],"mappings":";;;AAynIA,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.1149",
5
+ "version": "1.400.1151",
6
6
  "main": "lib/index.js",
7
7
  "types": "lib/index.d.ts",
8
8
  "scripts": {
@@ -1,4 +1,4 @@
1
- import {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,11 +56,59 @@ 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
  });
55
67
  });
68
+
69
+ describe("activityOwnerIds", () => {
70
+ it("includes a hub itself, but not a school", () => {
71
+ expect(activityOwnerIds({package: "careersHub"} as InstituteData, "hub1")).toEqual(["hub1"]);
72
+ expect(activityOwnerIds({package: "institutes-one"} as InstituteData, "school1")).toEqual([]);
73
+ });
74
+
75
+ it("includes each approved hub a school is linked to", () => {
76
+ const school = {package: "careersSchool", careersHubLinks: {hubA: link("approved"), hubB: link("invited")}} as unknown as InstituteData;
77
+ expect(activityOwnerIds(school, "school1")).toEqual(["hubA"]);
78
+ });
79
+
80
+ it("returns nothing without an institute", () => {
81
+ expect(activityOwnerIds(undefined, "x")).toEqual([]);
82
+ });
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,33 +34,84 @@ 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]));
101
+ }
102
+
103
+ /**
104
+ * Orgs whose own (non-public) externalActivities `institute` sees alongside the public
105
+ * ones: itself when it's a careers hub, and every careers hub it has an approved link
106
+ * with. A hub's own activities therefore reach its schools, and the employers and alumni
107
+ * joining through them, the same way its overrides do. Query them with
108
+ * `oId in activityOwnerIds(...)` and `public == false`.
109
+ */
110
+ export function activityOwnerIds(
111
+ institute: Pick<InstituteData, "package"|"careersHubLinks">|undefined|null,
112
+ oId?: string,
113
+ ): string[] {
114
+ if (!institute) return [];
115
+ const own = institute.package === "careersHub" && oId ? [oId] : [];
116
+ return [...new Set([...own, ...approvedCareersHubIds(institute)])];
66
117
  }
@@ -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
 
@@ -304,12 +304,20 @@ export const createEmailSectionRenderer = (fetcher?: SectionDataFetcher, isPrevi
304
304
  sectorCounts[sector].value += 1;
305
305
  });
306
306
 
307
- const activitiesRaw = await f.getDocsWhere<ExternalActivity>(
308
- ["externalActivities"],
309
- [{field: "public", op: "==", value: true}]
310
- );
307
+ const [publicActivities, hubActivities] = await Promise.all([
308
+ f.getDocsWhere<ExternalActivity>(
309
+ ["externalActivities"],
310
+ [{field: "public", op: "==", value: true}]
311
+ ),
312
+ // Activities the hub added itself.
313
+ f.getDocsWhere<ExternalActivity>(
314
+ ["externalActivities"],
315
+ [{field: "oId", op: "==", value: hubId}, {field: "public", op: "==", value: false}]
316
+ ).catch(() => ({})),
317
+ ]);
318
+ const activitiesRaw = {...publicActivities, ...hubActivities};
311
319
  const hubInstitute = await f.getDocData(["institutes", hubId]).catch(() => undefined) as InstituteData|undefined;
312
- const activities = resolveActivities(activitiesRaw, hubInstitute?.activityOverrides);
320
+ const activities = resolveActivities(activitiesRaw, combineActivityOverrides(hubInstitute));
313
321
  const activityCounts: Record<string, {value: number, color?: string}> = Object.fromEntries(
314
322
  Object.entries(activities).map(([activityId, activity]) => {
315
323
  const count = contacts.reduce((total, c) => {
@@ -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,
@@ -1383,13 +1386,15 @@ export type ExternalActivity = {
1383
1386
  image?: string,
1384
1387
  color: string,
1385
1388
  public?: boolean,
1389
+ /** Set, with `public: false`, on an activity a careers hub added for itself. Seen by
1390
+ * the hub and its approved schools; see activityOwnerIds. */
1386
1391
  oId?: string,
1387
1392
  alumni?: boolean,
1388
1393
  provider?: boolean,
1389
1394
  permanent?: boolean,
1390
1395
  activityType: "workExperience"|"workplaceVisits"|"mentoring"|"mockInterviews"|"other"
1391
- /** Set by resolveActivities when the viewing institute's activityOverrides disables
1392
- * 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. */
1393
1398
  disabled?: boolean,
1394
1399
  }
1395
1400