placementt-core 1.300.1030 → 1.300.1031
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/productResolver.d.ts +25 -3
- package/lib/productResolver.js +37 -16
- package/lib/productResolver.js.map +1 -1
- package/lib/tasksAndTips.d.ts +3 -1
- package/lib/tasksAndTips.js +61 -44
- package/lib/tasksAndTips.js.map +1 -1
- package/lib/typeDefinitions.d.ts +9 -0
- package/package.json +1 -1
- package/src/productResolver.ts +48 -21
- package/src/tasksAndTips.ts +61 -45
- package/src/typeDefinitions.ts +9 -0
package/lib/productResolver.d.ts
CHANGED
|
@@ -25,6 +25,9 @@ export type ResolvedProducts = Record<ProductKey, boolean> & {
|
|
|
25
25
|
isTrust: boolean;
|
|
26
26
|
isHub: boolean;
|
|
27
27
|
isHubSchool: boolean;
|
|
28
|
+
/** Whether the account holds students, cohorts and placements of its own —
|
|
29
|
+
* every package except the two hub-side ones, which consume a hub's. */
|
|
30
|
+
runsOwnStudents: boolean;
|
|
28
31
|
/** An approved careersHubLinks entry — a school inside someone else's hub. */
|
|
29
32
|
hubLinked: boolean;
|
|
30
33
|
/** Ids of the hubs this institute has accepted. Empty unless hubLinked. */
|
|
@@ -37,15 +40,34 @@ export type ResolvedProducts = Record<ProductKey, boolean> & {
|
|
|
37
40
|
* (a trust school row, a customer-success record) without casting. */
|
|
38
41
|
export type ProductResolverInput = Partial<Pick<InstituteData, "package" | "workExperience" | "employerEvents" | "network" | "careersEvents" | "skillsAssessmentsProduct" | "trackExtracurriculars" | "destinationTracking" | "alumniManagement" | "careersHubLinks">>;
|
|
39
42
|
/**
|
|
40
|
-
* Resolve an institute's products.
|
|
43
|
+
* Resolve an institute's products from its flags alone.
|
|
44
|
+
*
|
|
45
|
+
* The synchronous half of {@link useProductResolver}, for the code that can't
|
|
46
|
+
* hold a hook — task and tip callbacks, backend cron, anything outside React.
|
|
47
|
+
* Everything but `parents` is a pure read of the flags; the parent count is a
|
|
48
|
+
* query, so a caller that has already run it passes it in and a caller that
|
|
49
|
+
* hasn't gets `parents: false`.
|
|
41
50
|
*
|
|
42
51
|
* @param {ProductResolverInput} [institute] the institute, or a partial of it.
|
|
43
52
|
* @param {object} [options] extra context.
|
|
44
|
-
* @param {string[]} [options.oIds] whose parent database to count. A trust holds
|
|
45
|
-
* none on its own oId, so pass its schools'.
|
|
46
53
|
* @param {ProductResolverInput[]} [options.trustSchools] schools beneath a trust.
|
|
47
54
|
* A trust shows a product when any of its schools has it, matching the nav's
|
|
48
55
|
* existing destinations rule.
|
|
56
|
+
* @param {number} [options.parentCount] parents already counted, if known.
|
|
57
|
+
* @return {ResolvedProducts} what this institute has.
|
|
58
|
+
*/
|
|
59
|
+
export declare function resolveProducts(institute?: ProductResolverInput, options?: {
|
|
60
|
+
trustSchools?: ProductResolverInput[];
|
|
61
|
+
parentCount?: number;
|
|
62
|
+
}): ResolvedProducts;
|
|
63
|
+
/**
|
|
64
|
+
* Resolve an institute's products, counting its parent database as it goes.
|
|
65
|
+
*
|
|
66
|
+
* @param {ProductResolverInput} [institute] the institute, or a partial of it.
|
|
67
|
+
* @param {object} [options] extra context.
|
|
68
|
+
* @param {string[]} [options.oIds] whose parent database to count. A trust holds
|
|
69
|
+
* none on its own oId, so pass its schools'.
|
|
70
|
+
* @param {ProductResolverInput[]} [options.trustSchools] schools beneath a trust.
|
|
49
71
|
* @return {ResolvedProducts} what this institute has.
|
|
50
72
|
*/
|
|
51
73
|
export declare function useProductResolver(institute?: ProductResolverInput, options?: {
|
package/lib/productResolver.js
CHANGED
|
@@ -4,6 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.PRODUCT_LABELS = void 0;
|
|
7
|
+
exports.resolveProducts = resolveProducts;
|
|
7
8
|
exports.useProductResolver = useProductResolver;
|
|
8
9
|
const react_1 = require("react");
|
|
9
10
|
const firestore_1 = require("firebase/firestore");
|
|
@@ -13,30 +14,24 @@ const PRODUCT_ORDER = ["wex", "destinations", "events", "skills", "activities",
|
|
|
13
14
|
const on = (flag) => flag !== false;
|
|
14
15
|
const firebaseQuery = new firebaseQuery_1.default();
|
|
15
16
|
/**
|
|
16
|
-
* Resolve an institute's products.
|
|
17
|
+
* Resolve an institute's products from its flags alone.
|
|
18
|
+
*
|
|
19
|
+
* The synchronous half of {@link useProductResolver}, for the code that can't
|
|
20
|
+
* hold a hook — task and tip callbacks, backend cron, anything outside React.
|
|
21
|
+
* Everything but `parents` is a pure read of the flags; the parent count is a
|
|
22
|
+
* query, so a caller that has already run it passes it in and a caller that
|
|
23
|
+
* hasn't gets `parents: false`.
|
|
17
24
|
*
|
|
18
25
|
* @param {ProductResolverInput} [institute] the institute, or a partial of it.
|
|
19
26
|
* @param {object} [options] extra context.
|
|
20
|
-
* @param {string[]} [options.oIds] whose parent database to count. A trust holds
|
|
21
|
-
* none on its own oId, so pass its schools'.
|
|
22
27
|
* @param {ProductResolverInput[]} [options.trustSchools] schools beneath a trust.
|
|
23
28
|
* A trust shows a product when any of its schools has it, matching the nav's
|
|
24
29
|
* existing destinations rule.
|
|
30
|
+
* @param {number} [options.parentCount] parents already counted, if known.
|
|
25
31
|
* @return {ResolvedProducts} what this institute has.
|
|
26
32
|
*/
|
|
27
|
-
function
|
|
28
|
-
const
|
|
29
|
-
const oIds = options?.oIds || [];
|
|
30
|
-
const scope = oIds.join(",");
|
|
31
|
-
(0, react_1.useEffect)(() => {
|
|
32
|
-
if (!oIds.length) {
|
|
33
|
-
setParentCount(0);
|
|
34
|
-
return;
|
|
35
|
-
}
|
|
36
|
-
Promise.all(oIds.map((o) => firebaseQuery.getCount(["parents"], [(0, firestore_1.where)("oId", "==", o)])))
|
|
37
|
-
.then((counts) => setParentCount(counts.reduce((t, c) => t + c, 0)))
|
|
38
|
-
.catch(() => setParentCount(0));
|
|
39
|
-
}, [scope]);
|
|
33
|
+
function resolveProducts(institute, options) {
|
|
34
|
+
const parentCount = options?.parentCount || 0;
|
|
40
35
|
const i = institute || {};
|
|
41
36
|
const pkg = i.package;
|
|
42
37
|
const isTrust = pkg === "institutes-two";
|
|
@@ -72,11 +67,37 @@ function useProductResolver(institute, options) {
|
|
|
72
67
|
isTrust,
|
|
73
68
|
isHub,
|
|
74
69
|
isHubSchool,
|
|
70
|
+
runsOwnStudents,
|
|
75
71
|
hubLinked: hubIds.length > 0,
|
|
76
72
|
hubIds,
|
|
77
73
|
enabled: PRODUCT_ORDER.filter((k) => products[k]),
|
|
78
74
|
};
|
|
79
75
|
}
|
|
76
|
+
/**
|
|
77
|
+
* Resolve an institute's products, counting its parent database as it goes.
|
|
78
|
+
*
|
|
79
|
+
* @param {ProductResolverInput} [institute] the institute, or a partial of it.
|
|
80
|
+
* @param {object} [options] extra context.
|
|
81
|
+
* @param {string[]} [options.oIds] whose parent database to count. A trust holds
|
|
82
|
+
* none on its own oId, so pass its schools'.
|
|
83
|
+
* @param {ProductResolverInput[]} [options.trustSchools] schools beneath a trust.
|
|
84
|
+
* @return {ResolvedProducts} what this institute has.
|
|
85
|
+
*/
|
|
86
|
+
function useProductResolver(institute, options) {
|
|
87
|
+
const [parentCount, setParentCount] = (0, react_1.useState)(0);
|
|
88
|
+
const oIds = options?.oIds || [];
|
|
89
|
+
const scope = oIds.join(",");
|
|
90
|
+
(0, react_1.useEffect)(() => {
|
|
91
|
+
if (!oIds.length) {
|
|
92
|
+
setParentCount(0);
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
Promise.all(oIds.map((o) => firebaseQuery.getCount(["parents"], [(0, firestore_1.where)("oId", "==", o)])))
|
|
96
|
+
.then((counts) => setParentCount(counts.reduce((t, c) => t + c, 0)))
|
|
97
|
+
.catch(() => setParentCount(0));
|
|
98
|
+
}, [scope]);
|
|
99
|
+
return resolveProducts(institute, { trustSchools: options?.trustSchools, parentCount });
|
|
100
|
+
}
|
|
80
101
|
/** Human labels, for checklists, settings and the trust product strip. */
|
|
81
102
|
exports.PRODUCT_LABELS = {
|
|
82
103
|
wex: "Work experience",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"productResolver.js","sourceRoot":"","sources":["../src/productResolver.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"productResolver.js","sourceRoot":"","sources":["../src/productResolver.ts"],"names":[],"mappings":";;;;;;AA8EA,0CA4EC;AAYD,gDAqBC;AA3LD,iCAA0C;AAC1C,kDAAyC;AACzC,6EAAqD;AAmDrD,MAAM,aAAa,GACf,CAAC,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;AAE9F,kFAAkF;AAClF,MAAM,EAAE,GAAG,CAAC,IAAc,EAAE,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC;AAE9C,MAAM,aAAa,GAAG,IAAI,uBAAa,EAAE,CAAC;AAE1C;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,eAAe,CAC3B,SAAgC,EAChC,OAAuE;IAEvE,MAAM,WAAW,GAAG,OAAO,EAAE,WAAW,IAAI,CAAC,CAAC;IAC9C,MAAM,CAAC,GAAG,SAAS,IAAI,EAAE,CAAC;IAC1B,MAAM,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC;IAEtB,MAAM,OAAO,GAAG,GAAG,KAAK,gBAAgB,CAAC;IACzC,MAAM,KAAK,GAAG,GAAG,KAAK,YAAY,CAAC;IACnC,MAAM,WAAW,GAAG,GAAG,KAAK,eAAe,CAAC;IAE5C,6EAA6E;IAC7E,sDAAsD;IACtD,MAAM,eAAe,GAAG,CAAC,KAAK,IAAI,CAAC,WAAW,CAAC;IAE/C,mEAAmE;IACnE,6EAA6E;IAC7E,MAAM,eAAe,GAAG,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,KAAK,CAAC;IAE3D,MAAM,OAAO,GAAG,OAAO,EAAE,YAAY,IAAI,EAAE,CAAC;IAC5C,6EAA6E;IAC7E,MAAM,SAAS,GAAG,CACd,IAAa,EACb,IAA0C,EAC5C,EAAE,CAAC,IAAI,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAE7C,MAAM,GAAG,GAAG,SAAS,CACjB,eAAe,IAAI,CAAC,CAAC,cAAc,KAAK,IAAI,EAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,KAAK,IAAI,CAAC,CAAC;IAEtC,MAAM,YAAY,GAAG,SAAS,CAC1B,CAAC,CAAC,mBAAmB,KAAK,IAAI,EAC9B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,mBAAmB,KAAK,IAAI,CAAC,CAAC;IAE3C,MAAM,MAAM,GAAG,SAAS,CACpB,CAAC,CAAC,gBAAgB,KAAK,IAAI,EAC3B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAgB,KAAK,IAAI,CAAC,CAAC;IAExC,MAAM,MAAM,GAAG,SAAS,CACpB,eAAe,IAAI,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,EACtC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;IAE7D,MAAM,MAAM,GAAG,SAAS,CACpB,eAAe,IAAI,eAAe,IAAI,EAAE,CAAC,CAAC,CAAC,wBAAwB,CAAC,EACpE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC;IAExE,MAAM,UAAU,GAAG,SAAS,CACxB,eAAe,IAAI,eAAe,IAAI,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC,EACjE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAErE,8EAA8E;IAC9E,4EAA4E;IAC5E,MAAM,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAE9B,mDAAmD;IACnD,MAAM,OAAO,GAAG,WAAW,GAAG,CAAC,CAAC;IAEhC,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,IAAI,EAAE,CAAC;SACjD,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,UAAU,CAAC;SACjD,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IAEzB,MAAM,QAAQ,GACV,EAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAC,CAAC;IAE9E,OAAO;QACH,GAAG,QAAQ;QACX,WAAW;QACX,OAAO;QACP,KAAK;QACL,WAAW;QACX,eAAe;QACf,SAAS,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC;QAC5B,MAAM;QACN,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;KACpD,CAAC;AACN,CAAC;AAED;;;;;;;;;GASG;AACH,SAAgB,kBAAkB,CAC9B,SAAgC,EAChC,OAAkE;IAElE,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,IAAA,gBAAQ,EAAC,CAAC,CAAC,CAAC;IAElD,MAAM,IAAI,GAAG,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE7B,IAAA,iBAAS,EAAC,GAAG,EAAE;QACX,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACf,cAAc,CAAC,CAAC,CAAC,CAAC;YAClB,OAAO;QACX,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACvB,aAAa,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,IAAA,iBAAK,EAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAC7D,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;aACnE,KAAK,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,OAAO,eAAe,CAAC,SAAS,EAAE,EAAC,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAC,CAAC,CAAC;AAC1F,CAAC;AAED,0EAA0E;AAC7D,QAAA,cAAc,GAA+B;IACtD,GAAG,EAAE,iBAAiB;IACtB,YAAY,EAAE,cAAc;IAC5B,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,YAAY;IACxB,OAAO,EAAE,kBAAkB;IAC3B,OAAO,EAAE,iBAAiB;IAC1B,MAAM,EAAE,QAAQ;CACnB,CAAC"}
|
package/lib/tasksAndTips.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { CohortData, InstituteData, OrganisationAddress, ProviderData, UserData } from "./typeDefinitions";
|
|
2
|
+
import { ResolvedProducts } from "./productResolver";
|
|
2
3
|
type InstituteTipNames = "createCohort" | "addSchools" | "uploadStaff" | "assignStaffRoles" | "allowExternalPlacementUpload" | "uploadStaffGuidance" | "uploadStudentGuidance";
|
|
3
4
|
type ProviderTipNames = string;
|
|
4
5
|
type StudentTipNames = string;
|
|
@@ -30,9 +31,10 @@ export type TipQueryReturnObject = {
|
|
|
30
31
|
} | undefined;
|
|
31
32
|
export type InstituteTaskObject = {
|
|
32
33
|
[key in InstituteTaskNames]: {
|
|
33
|
-
callback: ({ user, organisation, cohorts, schools, eventId, type }: {
|
|
34
|
+
callback: ({ user, organisation, products, cohorts, schools, eventId, type }: {
|
|
34
35
|
user: UserData;
|
|
35
36
|
organisation: InstituteData & ProviderData;
|
|
37
|
+
products: ResolvedProducts;
|
|
36
38
|
cohorts: CohortData | [string, CohortData][];
|
|
37
39
|
schools?: InstituteData | [string, InstituteData][];
|
|
38
40
|
eventId?: string;
|
package/lib/tasksAndTips.js
CHANGED
|
@@ -9,6 +9,7 @@ const firebaseQuery_1 = __importDefault(require("./firebase/firebaseQuery"));
|
|
|
9
9
|
const util_1 = require("./firebase/util");
|
|
10
10
|
const workflows_1 = require("./workflows");
|
|
11
11
|
const util_2 = require("./firebase/util");
|
|
12
|
+
const productResolver_1 = require("./productResolver");
|
|
12
13
|
const firebaseQuery = new firebaseQuery_1.default;
|
|
13
14
|
const providerTips = {};
|
|
14
15
|
const studentTips = {};
|
|
@@ -32,7 +33,7 @@ const instituteTips = {
|
|
|
32
33
|
},
|
|
33
34
|
createCohort: {
|
|
34
35
|
callback: async (user, institute) => {
|
|
35
|
-
if (!(0, util_1.getAccess)(user, institute || null, "createCohorts") ||
|
|
36
|
+
if (!(0, util_1.getAccess)(user, institute || null, "createCohorts") || !(0, productResolver_1.resolveProducts)(institute).wex)
|
|
36
37
|
return;
|
|
37
38
|
const cohorts = await firebaseQuery.getCount("cohorts", [(0, firestore_1.where)("product", "==", user.product), (0, firestore_1.where)("oId", "==", user.oId)]);
|
|
38
39
|
if (cohorts === 0 && institute?.package === "institutes-one") {
|
|
@@ -77,6 +78,9 @@ const instituteTips = {
|
|
|
77
78
|
callback: async (user, organisation) => {
|
|
78
79
|
if (user.product !== "institutes")
|
|
79
80
|
return;
|
|
81
|
+
// Nothing to open up when the employer network is switched off.
|
|
82
|
+
if (!(0, productResolver_1.resolveProducts)(organisation).network)
|
|
83
|
+
return;
|
|
80
84
|
if (organisation.acceptingEmployers)
|
|
81
85
|
return;
|
|
82
86
|
return {
|
|
@@ -91,7 +95,10 @@ const instituteTips = {
|
|
|
91
95
|
},
|
|
92
96
|
uploadStaffGuidance: {
|
|
93
97
|
callback: async (user, organisation) => {
|
|
94
|
-
|
|
98
|
+
// The guidance this prompts for is work experience guidance, and a hub
|
|
99
|
+
// school has no Guidance page of its own.
|
|
100
|
+
const products = (0, productResolver_1.resolveProducts)(organisation);
|
|
101
|
+
if (user.product !== "institutes" || !products.wex || products.isHubSchool)
|
|
95
102
|
return;
|
|
96
103
|
const returnObj = {
|
|
97
104
|
link: "",
|
|
@@ -113,7 +120,8 @@ const instituteTips = {
|
|
|
113
120
|
},
|
|
114
121
|
uploadStudentGuidance: {
|
|
115
122
|
callback: async (user, organisation) => {
|
|
116
|
-
|
|
123
|
+
// Only accounts that hold their own students, and so have a Guidance page.
|
|
124
|
+
if (user.product !== "institutes" || !(0, productResolver_1.resolveProducts)(organisation).runsOwnStudents)
|
|
117
125
|
return;
|
|
118
126
|
const returnObj = {
|
|
119
127
|
link: "",
|
|
@@ -157,8 +165,8 @@ const instituteTasks = {
|
|
|
157
165
|
},
|
|
158
166
|
},
|
|
159
167
|
latePlacementStage: {
|
|
160
|
-
callback: async ({
|
|
161
|
-
if (!["home", "cohort"].includes(type))
|
|
168
|
+
callback: async ({ products, cohorts, type }) => {
|
|
169
|
+
if (!["home", "cohort"].includes(type) || !products.wex)
|
|
162
170
|
return;
|
|
163
171
|
if (!Array.isArray(cohorts)) {
|
|
164
172
|
const placementCount = (await firebaseQuery.getCount(["placements"], [(0, firestore_1.where)("oId", "==", cohorts.oId), (0, firestore_1.where)("cohort", "==", cohorts.id), (0, firestore_1.where)("flags", "array-contains", "latePlacementStage")]));
|
|
@@ -192,8 +200,8 @@ const instituteTasks = {
|
|
|
192
200
|
},
|
|
193
201
|
},
|
|
194
202
|
stagnantPlacementStage: {
|
|
195
|
-
callback: async ({
|
|
196
|
-
if (!["home", "cohort"].includes(type))
|
|
203
|
+
callback: async ({ products, cohorts, type }) => {
|
|
204
|
+
if (!["home", "cohort"].includes(type) || !products.wex)
|
|
197
205
|
return;
|
|
198
206
|
if (!Array.isArray(cohorts)) {
|
|
199
207
|
const placementCount = (await firebaseQuery.getCount(["placements"], [(0, firestore_1.where)("oId", "==", cohorts.oId), (0, firestore_1.where)("cohort", "==", cohorts.id), (0, firestore_1.where)("flags", "array-contains", "stagnantPlacementStage")]));
|
|
@@ -227,8 +235,8 @@ const instituteTasks = {
|
|
|
227
235
|
},
|
|
228
236
|
},
|
|
229
237
|
approveAlumniConversation: {
|
|
230
|
-
callback: async ({ user, organisation, schools, type }) => {
|
|
231
|
-
if (type !== "home")
|
|
238
|
+
callback: async ({ user, organisation, products, schools, type }) => {
|
|
239
|
+
if (type !== "home" || !products.alumni)
|
|
232
240
|
return;
|
|
233
241
|
if (!schools) {
|
|
234
242
|
if (!organisation.alumniConversations)
|
|
@@ -248,6 +256,8 @@ const instituteTasks = {
|
|
|
248
256
|
}
|
|
249
257
|
if (!Array.isArray(schools)) {
|
|
250
258
|
// One school
|
|
259
|
+
if (!schools.alumniConversations)
|
|
260
|
+
return;
|
|
251
261
|
const convos = (await firebaseQuery.getCount(["alumniConversations"], [(0, firestore_1.where)("oId", "==", user.oId), (0, firestore_1.where)("schoolId", "==", schools.id), (0, firestore_1.where)("open", "==", true), (0, firestore_1.where)("delivered", "==", "pending")]));
|
|
252
262
|
if (convos > 0) {
|
|
253
263
|
return { approveAlumniConversation: {
|
|
@@ -281,8 +291,8 @@ const instituteTasks = {
|
|
|
281
291
|
},
|
|
282
292
|
},
|
|
283
293
|
invalidStudentEmails: {
|
|
284
|
-
callback: async ({ user, cohorts, type }) => {
|
|
285
|
-
if (type !== "home")
|
|
294
|
+
callback: async ({ user, products, cohorts, type }) => {
|
|
295
|
+
if (type !== "home" || !products.runsOwnStudents)
|
|
286
296
|
return;
|
|
287
297
|
if (!(0, util_1.getAccess)(user, null, "viewStudents") || (user.userGroup !== "admin" && user.viewStudents === "none"))
|
|
288
298
|
return;
|
|
@@ -318,8 +328,8 @@ const instituteTasks = {
|
|
|
318
328
|
},
|
|
319
329
|
},
|
|
320
330
|
outstandingReminders: {
|
|
321
|
-
callback: async ({ user, cohorts, type }) => {
|
|
322
|
-
if (!["home", "cohort"].includes(type))
|
|
331
|
+
callback: async ({ user, products, cohorts, type }) => {
|
|
332
|
+
if (!["home", "cohort"].includes(type) || !products.wex)
|
|
323
333
|
return;
|
|
324
334
|
if (!Array.isArray(cohorts)) {
|
|
325
335
|
const reminderCount = (await firebaseQuery.getCount(["reminders"], [(0, firestore_1.where)("oId", "==", cohorts.oId), (0, firestore_1.where)("uid", "==", user.id), (0, firestore_1.where)("dueDate", "<=", (0, util_2.convertDate)(new Date(), "dbstring")), (0, firestore_1.where)("cohort", "==", cohorts.id), (0, firestore_1.where)("status", "==", "upcoming")]));
|
|
@@ -353,8 +363,8 @@ const instituteTasks = {
|
|
|
353
363
|
},
|
|
354
364
|
},
|
|
355
365
|
invalidParentEmails: {
|
|
356
|
-
callback: async ({ user, cohorts, type }) => {
|
|
357
|
-
if (!["home", "cohort"].includes(type))
|
|
366
|
+
callback: async ({ user, products, cohorts, type }) => {
|
|
367
|
+
if (!["home", "cohort"].includes(type) || !products.wex)
|
|
358
368
|
return;
|
|
359
369
|
if (!(0, util_1.getAccess)(user, null, "signOffPlacements") || (user.userGroup !== "admin" && user.viewStudents === "none"))
|
|
360
370
|
return;
|
|
@@ -392,8 +402,8 @@ const instituteTasks = {
|
|
|
392
402
|
},
|
|
393
403
|
},
|
|
394
404
|
promptCohortAttendanceTracking: {
|
|
395
|
-
callback: async ({
|
|
396
|
-
if (!["home", "cohort"].includes(type))
|
|
405
|
+
callback: async ({ products, cohorts, type }) => {
|
|
406
|
+
if (!["home", "cohort"].includes(type) || !products.wex)
|
|
397
407
|
return;
|
|
398
408
|
const todayDate = new Date();
|
|
399
409
|
todayDate.setDate(todayDate.getDate() + 14);
|
|
@@ -431,8 +441,8 @@ const instituteTasks = {
|
|
|
431
441
|
},
|
|
432
442
|
},
|
|
433
443
|
expiredInsurance: {
|
|
434
|
-
callback: async ({ user, cohorts, type }) => {
|
|
435
|
-
if (!["home", "cohort"].includes(type))
|
|
444
|
+
callback: async ({ user, products, cohorts, type }) => {
|
|
445
|
+
if (!["home", "cohort"].includes(type) || !products.wex)
|
|
436
446
|
return;
|
|
437
447
|
const today = (0, util_2.convertDate)(new Date(), "dbstring");
|
|
438
448
|
if (!(0, util_1.getAccess)(user, null, "signOffPlacements") || (user.userGroup !== "admin" && user.viewStudents === "none"))
|
|
@@ -470,8 +480,8 @@ const instituteTasks = {
|
|
|
470
480
|
},
|
|
471
481
|
},
|
|
472
482
|
invalidProviderEmails: {
|
|
473
|
-
callback: async ({ user, cohorts, type }) => {
|
|
474
|
-
if (!["home", "cohort"].includes(type))
|
|
483
|
+
callback: async ({ user, products, cohorts, type }) => {
|
|
484
|
+
if (!["home", "cohort"].includes(type) || !products.wex)
|
|
475
485
|
return;
|
|
476
486
|
if (!(0, util_1.getAccess)(user, null, "signOffPlacements") || (user.userGroup !== "admin" && user.viewStudents === "none"))
|
|
477
487
|
return;
|
|
@@ -509,8 +519,8 @@ const instituteTasks = {
|
|
|
509
519
|
},
|
|
510
520
|
},
|
|
511
521
|
requiredStage: {
|
|
512
|
-
callback: async ({ user, cohorts, type }) => {
|
|
513
|
-
if (!["home", "cohort"].includes(type))
|
|
522
|
+
callback: async ({ user, products, cohorts, type }) => {
|
|
523
|
+
if (!["home", "cohort"].includes(type) || !products.wex)
|
|
514
524
|
return;
|
|
515
525
|
if (!(0, util_1.getAccess)(user, null, "signOffPlacements") || (user.userGroup !== "admin" && user.viewStudents === "none"))
|
|
516
526
|
return;
|
|
@@ -551,8 +561,8 @@ const instituteTasks = {
|
|
|
551
561
|
},
|
|
552
562
|
},
|
|
553
563
|
verifyInsurance: {
|
|
554
|
-
callback: async ({ user, cohorts, type }) => {
|
|
555
|
-
if (!["home", "cohort"].includes(type))
|
|
564
|
+
callback: async ({ user, products, cohorts, type }) => {
|
|
565
|
+
if (!["home", "cohort"].includes(type) || !products.wex)
|
|
556
566
|
return;
|
|
557
567
|
if (!(0, util_1.getAccess)(user, null, "verifyInsurance") || (user.userGroup !== "admin" && user.viewStudents === "none"))
|
|
558
568
|
return;
|
|
@@ -624,8 +634,8 @@ const instituteTasks = {
|
|
|
624
634
|
// },
|
|
625
635
|
// },
|
|
626
636
|
verifyDbsCheck: {
|
|
627
|
-
callback: async ({ user, cohorts, type }) => {
|
|
628
|
-
if (!["home", "cohort"].includes(type))
|
|
637
|
+
callback: async ({ user, products, cohorts, type }) => {
|
|
638
|
+
if (!["home", "cohort"].includes(type) || !products.wex)
|
|
629
639
|
return;
|
|
630
640
|
if (!(0, util_1.getAccess)(user, null, "verifyDbsChecks") || (user.userGroup !== "admin" && user.viewStudents === "none"))
|
|
631
641
|
return;
|
|
@@ -664,8 +674,8 @@ const instituteTasks = {
|
|
|
664
674
|
},
|
|
665
675
|
},
|
|
666
676
|
employerEventRequests: {
|
|
667
|
-
callback: async ({ user, type }) => {
|
|
668
|
-
if (type !== "home")
|
|
677
|
+
callback: async ({ user, products, type }) => {
|
|
678
|
+
if (type !== "home" || !products.events)
|
|
669
679
|
return;
|
|
670
680
|
const openRequests = await firebaseQuery.getCount(["externalEventRequests"], [(0, firestore_1.where)("oId", "==", user.oId), (0, firestore_1.where)("requestedBy", "==", "employer"), (0, firestore_1.where)("status", "==", "pendingInstitute")]);
|
|
671
681
|
if (openRequests > 0) {
|
|
@@ -682,8 +692,9 @@ const instituteTasks = {
|
|
|
682
692
|
},
|
|
683
693
|
},
|
|
684
694
|
schoolEventRequests: {
|
|
685
|
-
callback: async ({ user, type }) => {
|
|
686
|
-
|
|
695
|
+
callback: async ({ user, products, type }) => {
|
|
696
|
+
// Only a hub or trust is on the receiving end of a school's request.
|
|
697
|
+
if (type !== "home" || !products.events || !(products.isHub || products.isTrust))
|
|
687
698
|
return;
|
|
688
699
|
const openRequests = await firebaseQuery.getCount(["externalEventRequests"], [(0, firestore_1.where)("oId", "==", user.oId), (0, firestore_1.where)("requestedBy", "==", "school"), (0, firestore_1.where)("status", "==", "pendingInstitute")]);
|
|
689
700
|
if (openRequests > 0) {
|
|
@@ -700,8 +711,8 @@ const instituteTasks = {
|
|
|
700
711
|
},
|
|
701
712
|
},
|
|
702
713
|
eventsGetAvailableProviders: {
|
|
703
|
-
callback: async ({ user, eventId, type }) => {
|
|
704
|
-
if (!["home", "event"].includes(type))
|
|
714
|
+
callback: async ({ user, products, eventId, type }) => {
|
|
715
|
+
if (!["home", "event"].includes(type) || !products.events)
|
|
705
716
|
return;
|
|
706
717
|
if (type === "event" && eventId) {
|
|
707
718
|
const availableAttendees = await firebaseQuery.getCount(["externalEventAttendees"], [(0, firestore_1.where)("oId", "==", user.oId), (0, firestore_1.where)("eventId", "==", eventId), (0, firestore_1.where)("status", "==", "providerAvailable")]);
|
|
@@ -745,8 +756,8 @@ const instituteTasks = {
|
|
|
745
756
|
},
|
|
746
757
|
},
|
|
747
758
|
verifyRiskAssessment: {
|
|
748
|
-
callback: async ({ user, cohorts, type }) => {
|
|
749
|
-
if (!["home", "cohort"].includes(type))
|
|
759
|
+
callback: async ({ user, products, cohorts, type }) => {
|
|
760
|
+
if (!["home", "cohort"].includes(type) || !products.wex)
|
|
750
761
|
return;
|
|
751
762
|
if (!(0, util_1.getAccess)(user, null, "verifyRiskAssessments") || (user.userGroup !== "admin" && user.viewStudents === "none"))
|
|
752
763
|
return;
|
|
@@ -785,8 +796,8 @@ const instituteTasks = {
|
|
|
785
796
|
},
|
|
786
797
|
},
|
|
787
798
|
missingParentEmail: {
|
|
788
|
-
callback: async ({ user, cohorts, type }) => {
|
|
789
|
-
if (!["home", "cohort"].includes(type))
|
|
799
|
+
callback: async ({ user, products, cohorts, type }) => {
|
|
800
|
+
if (!["home", "cohort"].includes(type) || !products.wex)
|
|
790
801
|
return;
|
|
791
802
|
if (!(0, util_1.getAccess)(user, null, "editStudents") || (user.userGroup !== "admin" && user.viewStudents === "none"))
|
|
792
803
|
return;
|
|
@@ -837,8 +848,8 @@ const instituteTasks = {
|
|
|
837
848
|
},
|
|
838
849
|
},
|
|
839
850
|
inactiveStudents: {
|
|
840
|
-
callback: async ({ user, cohorts, type }) => {
|
|
841
|
-
if (!["home", "cohort"].includes(type))
|
|
851
|
+
callback: async ({ user, products, cohorts, type }) => {
|
|
852
|
+
if (!["home", "cohort"].includes(type) || !products.runsOwnStudents)
|
|
842
853
|
return;
|
|
843
854
|
if (!(0, util_1.getAccess)(user, null, "activateStudents") || (user.userGroup !== "admin" && user.viewStudents === "none"))
|
|
844
855
|
return;
|
|
@@ -883,8 +894,8 @@ const instituteTasks = {
|
|
|
883
894
|
},
|
|
884
895
|
},
|
|
885
896
|
uploadStudents: {
|
|
886
|
-
callback: async ({ user, cohorts, type }) => {
|
|
887
|
-
if (!["home", "cohort"].includes(type))
|
|
897
|
+
callback: async ({ user, products, cohorts, type }) => {
|
|
898
|
+
if (!["home", "cohort"].includes(type) || !products.wex)
|
|
888
899
|
return;
|
|
889
900
|
if (!Array.isArray(cohorts))
|
|
890
901
|
return;
|
|
@@ -948,8 +959,8 @@ const instituteTasks = {
|
|
|
948
959
|
},
|
|
949
960
|
},
|
|
950
961
|
approveProvider: {
|
|
951
|
-
callback: async ({ user,
|
|
952
|
-
if (!["home", "employerDatabase"].includes(type))
|
|
962
|
+
callback: async ({ user, products, type }) => {
|
|
963
|
+
if (!["home", "employerDatabase"].includes(type) || !products.network)
|
|
953
964
|
return;
|
|
954
965
|
const availableAttendees = await firebaseQuery.getCount(["providerContacts"], [(0, firestore_1.where)(`savedBy.${user.oId}.exists`, "==", true), (0, firestore_1.where)(`savedBy.${user.oId}.status`, "==", "providerReviewed")]);
|
|
955
966
|
if (availableAttendees > 0) {
|
|
@@ -1452,13 +1463,19 @@ const getInstituteTasks = async ({ user, organisation, cohort, school, type, eve
|
|
|
1452
1463
|
fCohort = await getCohortsOrSchoolsIfNotProvided("cohorts", fSchool);
|
|
1453
1464
|
}
|
|
1454
1465
|
console.log("FCOHORTS FOR TASKS", fCohort);
|
|
1466
|
+
// A trust's own flags say nothing about its schools' products, so resolve
|
|
1467
|
+
// against its schools too — the same rule the nav uses. Only meaningful when
|
|
1468
|
+
// the caller handed us real institute records (Tasks.tsx passes
|
|
1469
|
+
// trustOrHubSchools); the `schools` collection fallback carries no flags.
|
|
1470
|
+
const trustSchools = Array.isArray(fSchool) ? fSchool.map(([, school]) => school) : fSchool ? [fSchool] : undefined;
|
|
1471
|
+
const products = (0, productResolver_1.resolveProducts)(organisation, { trustSchools });
|
|
1455
1472
|
const processedTasks = await Object.entries(instituteTasks).reduce(async (accPromise, [itemName, item]) => {
|
|
1456
1473
|
if (!fCohort) {
|
|
1457
1474
|
console.log("No cohorts to retrieve tasks for");
|
|
1458
1475
|
return ({});
|
|
1459
1476
|
}
|
|
1460
1477
|
const acc = await accPromise;
|
|
1461
|
-
const queryResult = await item.callback({ user, organisation, cohorts: fCohort, schools: fSchool, type, eventId });
|
|
1478
|
+
const queryResult = await item.callback({ user, organisation, products, cohorts: fCohort, schools: fSchool, type, eventId });
|
|
1462
1479
|
if (!queryResult)
|
|
1463
1480
|
return acc;
|
|
1464
1481
|
return { ...acc, ...queryResult }; // Merge the query result into the accumulator object
|
package/lib/tasksAndTips.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tasksAndTips.js","sourceRoot":"","sources":["../src/tasksAndTips.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tasksAndTips.js","sourceRoot":"","sources":["../src/tasksAndTips.ts"],"names":[],"mappings":"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"}
|
package/lib/typeDefinitions.d.ts
CHANGED
|
@@ -3503,6 +3503,15 @@ export type Lead = {
|
|
|
3503
3503
|
bookedCall?: boolean;
|
|
3504
3504
|
bookedCallAt?: string;
|
|
3505
3505
|
oId?: string;
|
|
3506
|
+
/** demoAccounts/{id} seeded for this lead from the CRM. Set by
|
|
3507
|
+
* demoSeed-createDemoAccount and cleared when the demo is deleted — which
|
|
3508
|
+
* happens automatically once oId is stamped on (i.e. they registered). */
|
|
3509
|
+
demoAccountId?: string;
|
|
3510
|
+
demoAccountCreatedAt?: string;
|
|
3511
|
+
/** When the tailored auto-sign-in link was emailed to the lead. */
|
|
3512
|
+
demoInviteSentAt?: string;
|
|
3513
|
+
/** Last time the lead opened their demo through that link. */
|
|
3514
|
+
demoLastAccessedAt?: string;
|
|
3506
3515
|
source: string;
|
|
3507
3516
|
dateAdded?: string;
|
|
3508
3517
|
addedBy: string;
|
package/package.json
CHANGED
package/src/productResolver.ts
CHANGED
|
@@ -32,6 +32,9 @@ export type ResolvedProducts = Record<ProductKey, boolean> & {
|
|
|
32
32
|
isTrust: boolean,
|
|
33
33
|
isHub: boolean,
|
|
34
34
|
isHubSchool: boolean,
|
|
35
|
+
/** Whether the account holds students, cohorts and placements of its own —
|
|
36
|
+
* every package except the two hub-side ones, which consume a hub's. */
|
|
37
|
+
runsOwnStudents: boolean,
|
|
35
38
|
/** An approved careersHubLinks entry — a school inside someone else's hub. */
|
|
36
39
|
hubLinked: boolean,
|
|
37
40
|
/** Ids of the hubs this institute has accepted. Empty unless hubLinked. */
|
|
@@ -57,37 +60,27 @@ const on = (flag?: boolean) => flag !== false;
|
|
|
57
60
|
const firebaseQuery = new FirebaseQuery();
|
|
58
61
|
|
|
59
62
|
/**
|
|
60
|
-
* Resolve an institute's products.
|
|
63
|
+
* Resolve an institute's products from its flags alone.
|
|
64
|
+
*
|
|
65
|
+
* The synchronous half of {@link useProductResolver}, for the code that can't
|
|
66
|
+
* hold a hook — task and tip callbacks, backend cron, anything outside React.
|
|
67
|
+
* Everything but `parents` is a pure read of the flags; the parent count is a
|
|
68
|
+
* query, so a caller that has already run it passes it in and a caller that
|
|
69
|
+
* hasn't gets `parents: false`.
|
|
61
70
|
*
|
|
62
71
|
* @param {ProductResolverInput} [institute] the institute, or a partial of it.
|
|
63
72
|
* @param {object} [options] extra context.
|
|
64
|
-
* @param {string[]} [options.oIds] whose parent database to count. A trust holds
|
|
65
|
-
* none on its own oId, so pass its schools'.
|
|
66
73
|
* @param {ProductResolverInput[]} [options.trustSchools] schools beneath a trust.
|
|
67
74
|
* A trust shows a product when any of its schools has it, matching the nav's
|
|
68
75
|
* existing destinations rule.
|
|
76
|
+
* @param {number} [options.parentCount] parents already counted, if known.
|
|
69
77
|
* @return {ResolvedProducts} what this institute has.
|
|
70
78
|
*/
|
|
71
|
-
export function
|
|
79
|
+
export function resolveProducts(
|
|
72
80
|
institute?: ProductResolverInput,
|
|
73
|
-
options?: {
|
|
81
|
+
options?: {trustSchools?: ProductResolverInput[], parentCount?: number},
|
|
74
82
|
): ResolvedProducts {
|
|
75
|
-
const
|
|
76
|
-
|
|
77
|
-
const oIds = options?.oIds || [];
|
|
78
|
-
const scope = oIds.join(",");
|
|
79
|
-
|
|
80
|
-
useEffect(() => {
|
|
81
|
-
if (!oIds.length) {
|
|
82
|
-
setParentCount(0);
|
|
83
|
-
return;
|
|
84
|
-
}
|
|
85
|
-
Promise.all(oIds.map((o) =>
|
|
86
|
-
firebaseQuery.getCount(["parents"], [where("oId", "==", o)])))
|
|
87
|
-
.then((counts) => setParentCount(counts.reduce((t, c) => t + c, 0)))
|
|
88
|
-
.catch(() => setParentCount(0));
|
|
89
|
-
}, [scope]);
|
|
90
|
-
|
|
83
|
+
const parentCount = options?.parentCount || 0;
|
|
91
84
|
const i = institute || {};
|
|
92
85
|
const pkg = i.package;
|
|
93
86
|
|
|
@@ -154,12 +147,46 @@ export function useProductResolver(
|
|
|
154
147
|
isTrust,
|
|
155
148
|
isHub,
|
|
156
149
|
isHubSchool,
|
|
150
|
+
runsOwnStudents,
|
|
157
151
|
hubLinked: hubIds.length > 0,
|
|
158
152
|
hubIds,
|
|
159
153
|
enabled: PRODUCT_ORDER.filter((k) => products[k]),
|
|
160
154
|
};
|
|
161
155
|
}
|
|
162
156
|
|
|
157
|
+
/**
|
|
158
|
+
* Resolve an institute's products, counting its parent database as it goes.
|
|
159
|
+
*
|
|
160
|
+
* @param {ProductResolverInput} [institute] the institute, or a partial of it.
|
|
161
|
+
* @param {object} [options] extra context.
|
|
162
|
+
* @param {string[]} [options.oIds] whose parent database to count. A trust holds
|
|
163
|
+
* none on its own oId, so pass its schools'.
|
|
164
|
+
* @param {ProductResolverInput[]} [options.trustSchools] schools beneath a trust.
|
|
165
|
+
* @return {ResolvedProducts} what this institute has.
|
|
166
|
+
*/
|
|
167
|
+
export function useProductResolver(
|
|
168
|
+
institute?: ProductResolverInput,
|
|
169
|
+
options?: {oIds?: string[], trustSchools?: ProductResolverInput[]},
|
|
170
|
+
): ResolvedProducts {
|
|
171
|
+
const [parentCount, setParentCount] = useState(0);
|
|
172
|
+
|
|
173
|
+
const oIds = options?.oIds || [];
|
|
174
|
+
const scope = oIds.join(",");
|
|
175
|
+
|
|
176
|
+
useEffect(() => {
|
|
177
|
+
if (!oIds.length) {
|
|
178
|
+
setParentCount(0);
|
|
179
|
+
return;
|
|
180
|
+
}
|
|
181
|
+
Promise.all(oIds.map((o) =>
|
|
182
|
+
firebaseQuery.getCount(["parents"], [where("oId", "==", o)])))
|
|
183
|
+
.then((counts) => setParentCount(counts.reduce((t, c) => t + c, 0)))
|
|
184
|
+
.catch(() => setParentCount(0));
|
|
185
|
+
}, [scope]);
|
|
186
|
+
|
|
187
|
+
return resolveProducts(institute, {trustSchools: options?.trustSchools, parentCount});
|
|
188
|
+
}
|
|
189
|
+
|
|
163
190
|
/** Human labels, for checklists, settings and the trust product strip. */
|
|
164
191
|
export const PRODUCT_LABELS: Record<ProductKey, string> = {
|
|
165
192
|
wex: "Work experience",
|
package/src/tasksAndTips.ts
CHANGED
|
@@ -4,6 +4,7 @@ import {CohortData, ExternalEvent, ExternalEventAttendee, InstituteData, Organis
|
|
|
4
4
|
import {capitaliseWords, getAccess} from "./firebase/util";
|
|
5
5
|
import {fetchCohortWorkflow} from "./workflows";
|
|
6
6
|
import { convertDate } from "./firebase/util";
|
|
7
|
+
import {ResolvedProducts, resolveProducts} from "./productResolver";
|
|
7
8
|
|
|
8
9
|
const firebaseQuery = new FirebaseQuery;
|
|
9
10
|
|
|
@@ -68,7 +69,7 @@ type StudentTipsObject = {
|
|
|
68
69
|
|
|
69
70
|
export type InstituteTaskObject = {
|
|
70
71
|
[key in InstituteTaskNames]: {
|
|
71
|
-
callback: ({user, organisation, cohorts, schools, eventId, type}:{user: UserData, organisation:InstituteData&ProviderData, cohorts: CohortData|[string, CohortData][], schools?: InstituteData|[string, InstituteData][], eventId?: string, type: "event" | "cohort" | "home" | "employerDatabase"}) => Promise<TaskQueryReturnObject>,
|
|
72
|
+
callback: ({user, organisation, products, cohorts, schools, eventId, type}:{user: UserData, organisation:InstituteData&ProviderData, products: ResolvedProducts, cohorts: CohortData|[string, CohortData][], schools?: InstituteData|[string, InstituteData][], eventId?: string, type: "event" | "cohort" | "home" | "employerDatabase"}) => Promise<TaskQueryReturnObject>,
|
|
72
73
|
};
|
|
73
74
|
};
|
|
74
75
|
|
|
@@ -105,7 +106,7 @@ const instituteTips:InstituteTipsObject = {
|
|
|
105
106
|
},
|
|
106
107
|
createCohort: {
|
|
107
108
|
callback: async (user, institute) => {
|
|
108
|
-
if (!getAccess(user, institute || null, "createCohorts") ||
|
|
109
|
+
if (!getAccess(user, institute || null, "createCohorts") || !resolveProducts(institute).wex) return;
|
|
109
110
|
const cohorts = await firebaseQuery.getCount("cohorts", [where("product", "==", user.product), where("oId", "==", user.oId)])
|
|
110
111
|
if (cohorts === 0 && institute?.package === "institutes-one") {
|
|
111
112
|
return {
|
|
@@ -147,6 +148,8 @@ const instituteTips:InstituteTipsObject = {
|
|
|
147
148
|
allowExternalPlacementUpload: {
|
|
148
149
|
callback: async (user, organisation) => {
|
|
149
150
|
if (user.product !== "institutes") return;
|
|
151
|
+
// Nothing to open up when the employer network is switched off.
|
|
152
|
+
if (!resolveProducts(organisation).network) return;
|
|
150
153
|
if ((organisation as InstituteData).acceptingEmployers) return;
|
|
151
154
|
|
|
152
155
|
return {
|
|
@@ -161,7 +164,10 @@ const instituteTips:InstituteTipsObject = {
|
|
|
161
164
|
},
|
|
162
165
|
uploadStaffGuidance: {
|
|
163
166
|
callback: async (user, organisation) => {
|
|
164
|
-
|
|
167
|
+
// The guidance this prompts for is work experience guidance, and a hub
|
|
168
|
+
// school has no Guidance page of its own.
|
|
169
|
+
const products = resolveProducts(organisation);
|
|
170
|
+
if (user.product !== "institutes" || !products.wex || products.isHubSchool) return;
|
|
165
171
|
const returnObj: TipQueryReturnObject = {
|
|
166
172
|
link: "",
|
|
167
173
|
dismissible: true,
|
|
@@ -182,7 +188,8 @@ const instituteTips:InstituteTipsObject = {
|
|
|
182
188
|
},
|
|
183
189
|
uploadStudentGuidance: {
|
|
184
190
|
callback: async (user, organisation) => {
|
|
185
|
-
|
|
191
|
+
// Only accounts that hold their own students, and so have a Guidance page.
|
|
192
|
+
if (user.product !== "institutes" || !resolveProducts(organisation).runsOwnStudents) return;
|
|
186
193
|
const returnObj: TipQueryReturnObject = {
|
|
187
194
|
link: "",
|
|
188
195
|
dismissible: true,
|
|
@@ -225,8 +232,8 @@ const instituteTasks:InstituteTaskObject = {
|
|
|
225
232
|
},
|
|
226
233
|
},
|
|
227
234
|
latePlacementStage: {
|
|
228
|
-
callback: async ({
|
|
229
|
-
if (!["home", "cohort"].includes(type)) return;
|
|
235
|
+
callback: async ({products, cohorts, type}) => {
|
|
236
|
+
if (!["home", "cohort"].includes(type) || !products.wex) return;
|
|
230
237
|
|
|
231
238
|
if (!Array.isArray(cohorts)) {
|
|
232
239
|
const placementCount = (await firebaseQuery.getCount(["placements"], [where("oId", "==", cohorts.oId), where("cohort", "==", cohorts.id), where("flags", "array-contains", "latePlacementStage")]));
|
|
@@ -261,8 +268,8 @@ const instituteTasks:InstituteTaskObject = {
|
|
|
261
268
|
},
|
|
262
269
|
},
|
|
263
270
|
stagnantPlacementStage: {
|
|
264
|
-
callback: async ({
|
|
265
|
-
if (!["home", "cohort"].includes(type)) return;
|
|
271
|
+
callback: async ({products, cohorts, type}) => {
|
|
272
|
+
if (!["home", "cohort"].includes(type) || !products.wex) return;
|
|
266
273
|
|
|
267
274
|
if (!Array.isArray(cohorts)) {
|
|
268
275
|
const placementCount = (await firebaseQuery.getCount(["placements"], [where("oId", "==", cohorts.oId), where("cohort", "==", cohorts.id), where("flags", "array-contains", "stagnantPlacementStage")]));
|
|
@@ -296,8 +303,8 @@ const instituteTasks:InstituteTaskObject = {
|
|
|
296
303
|
},
|
|
297
304
|
},
|
|
298
305
|
approveAlumniConversation: {
|
|
299
|
-
callback: async ({user, organisation, schools, type}) => {
|
|
300
|
-
if (type !== "home") return;
|
|
306
|
+
callback: async ({user, organisation, products, schools, type}) => {
|
|
307
|
+
if (type !== "home" || !products.alumni) return;
|
|
301
308
|
|
|
302
309
|
if (!schools) {
|
|
303
310
|
if (!organisation.alumniConversations) return;
|
|
@@ -316,6 +323,7 @@ const instituteTasks:InstituteTaskObject = {
|
|
|
316
323
|
}
|
|
317
324
|
if (!Array.isArray(schools)) {
|
|
318
325
|
// One school
|
|
326
|
+
if (!schools.alumniConversations) return;
|
|
319
327
|
const convos = (await firebaseQuery.getCount(["alumniConversations"], [where("oId", "==", user.oId), where("schoolId", "==", schools.id), where("open", "==", true), where("delivered", "==", "pending")]));
|
|
320
328
|
if (convos > 0) {
|
|
321
329
|
return {approveAlumniConversation: {
|
|
@@ -349,8 +357,8 @@ const instituteTasks:InstituteTaskObject = {
|
|
|
349
357
|
},
|
|
350
358
|
},
|
|
351
359
|
invalidStudentEmails: {
|
|
352
|
-
callback: async ({user, cohorts, type}) => {
|
|
353
|
-
if (type !== "home") return;
|
|
360
|
+
callback: async ({user, products, cohorts, type}) => {
|
|
361
|
+
if (type !== "home" || !products.runsOwnStudents) return;
|
|
354
362
|
|
|
355
363
|
if (!getAccess(user, null, "viewStudents") || (user.userGroup !== "admin" && user.viewStudents === "none")) return;
|
|
356
364
|
|
|
@@ -387,8 +395,8 @@ const instituteTasks:InstituteTaskObject = {
|
|
|
387
395
|
},
|
|
388
396
|
},
|
|
389
397
|
outstandingReminders: {
|
|
390
|
-
callback: async ({user, cohorts, type}) => {
|
|
391
|
-
if (!["home", "cohort"].includes(type)) return;
|
|
398
|
+
callback: async ({user, products, cohorts, type}) => {
|
|
399
|
+
if (!["home", "cohort"].includes(type) || !products.wex) return;
|
|
392
400
|
|
|
393
401
|
if (!Array.isArray(cohorts)) {
|
|
394
402
|
const reminderCount = (await firebaseQuery.getCount(["reminders"], [where("oId", "==", cohorts.oId), where("uid", "==", user.id), where("dueDate", "<=", convertDate(new Date(), "dbstring") as string), where("cohort", "==", cohorts.id), where("status", "==", "upcoming")]));
|
|
@@ -423,8 +431,8 @@ const instituteTasks:InstituteTaskObject = {
|
|
|
423
431
|
},
|
|
424
432
|
},
|
|
425
433
|
invalidParentEmails: {
|
|
426
|
-
callback: async ({user, cohorts, type}) => {
|
|
427
|
-
if (!["home", "cohort"].includes(type)) return;
|
|
434
|
+
callback: async ({user, products, cohorts, type}) => {
|
|
435
|
+
if (!["home", "cohort"].includes(type) || !products.wex) return;
|
|
428
436
|
|
|
429
437
|
if (!getAccess(user, null, "signOffPlacements") || (user.userGroup !== "admin" && user.viewStudents === "none")) return;
|
|
430
438
|
const today = convertDate(new Date(), "dbstring") as string;
|
|
@@ -463,8 +471,8 @@ const instituteTasks:InstituteTaskObject = {
|
|
|
463
471
|
},
|
|
464
472
|
},
|
|
465
473
|
promptCohortAttendanceTracking: {
|
|
466
|
-
callback: async ({
|
|
467
|
-
if (!["home", "cohort"].includes(type)) return;
|
|
474
|
+
callback: async ({products, cohorts, type}) => {
|
|
475
|
+
if (!["home", "cohort"].includes(type) || !products.wex) return;
|
|
468
476
|
|
|
469
477
|
const todayDate = new Date();
|
|
470
478
|
todayDate.setDate(todayDate.getDate() + 14);
|
|
@@ -504,8 +512,8 @@ const instituteTasks:InstituteTaskObject = {
|
|
|
504
512
|
},
|
|
505
513
|
},
|
|
506
514
|
expiredInsurance: {
|
|
507
|
-
callback: async ({user, cohorts, type}) => {
|
|
508
|
-
if (!["home", "cohort"].includes(type)) return;
|
|
515
|
+
callback: async ({user, products, cohorts, type}) => {
|
|
516
|
+
if (!["home", "cohort"].includes(type) || !products.wex) return;
|
|
509
517
|
|
|
510
518
|
const today = convertDate(new Date(), "dbstring") as string;
|
|
511
519
|
|
|
@@ -545,8 +553,8 @@ const instituteTasks:InstituteTaskObject = {
|
|
|
545
553
|
},
|
|
546
554
|
},
|
|
547
555
|
invalidProviderEmails: {
|
|
548
|
-
callback: async ({user, cohorts, type}) => {
|
|
549
|
-
if (!["home", "cohort"].includes(type)) return;
|
|
556
|
+
callback: async ({user, products, cohorts, type}) => {
|
|
557
|
+
if (!["home", "cohort"].includes(type) || !products.wex) return;
|
|
550
558
|
|
|
551
559
|
if (!getAccess(user, null, "signOffPlacements") || (user.userGroup !== "admin" && user.viewStudents === "none")) return;
|
|
552
560
|
const today = convertDate(new Date(), "dbstring") as string;
|
|
@@ -585,8 +593,8 @@ const instituteTasks:InstituteTaskObject = {
|
|
|
585
593
|
},
|
|
586
594
|
},
|
|
587
595
|
requiredStage: {
|
|
588
|
-
callback: async ({user, cohorts, type}) => {
|
|
589
|
-
if (!["home", "cohort"].includes(type)) return;
|
|
596
|
+
callback: async ({user, products, cohorts, type}) => {
|
|
597
|
+
if (!["home", "cohort"].includes(type) || !products.wex) return;
|
|
590
598
|
|
|
591
599
|
if (!getAccess(user, null, "signOffPlacements") || (user.userGroup !== "admin" && user.viewStudents === "none")) return;
|
|
592
600
|
const today = convertDate(new Date(), "dbstring") as string;
|
|
@@ -628,8 +636,8 @@ const instituteTasks:InstituteTaskObject = {
|
|
|
628
636
|
},
|
|
629
637
|
},
|
|
630
638
|
verifyInsurance: {
|
|
631
|
-
callback: async ({user, cohorts, type}) => {
|
|
632
|
-
if (!["home", "cohort"].includes(type)) return;
|
|
639
|
+
callback: async ({user, products, cohorts, type}) => {
|
|
640
|
+
if (!["home", "cohort"].includes(type) || !products.wex) return;
|
|
633
641
|
|
|
634
642
|
if (!getAccess(user, null, "verifyInsurance") || (user.userGroup !== "admin" && user.viewStudents === "none")) return;
|
|
635
643
|
|
|
@@ -707,8 +715,8 @@ const instituteTasks:InstituteTaskObject = {
|
|
|
707
715
|
// },
|
|
708
716
|
// },
|
|
709
717
|
verifyDbsCheck: {
|
|
710
|
-
callback: async ({user, cohorts, type}) => {
|
|
711
|
-
if (!["home", "cohort"].includes(type)) return;
|
|
718
|
+
callback: async ({user, products, cohorts, type}) => {
|
|
719
|
+
if (!["home", "cohort"].includes(type) || !products.wex) return;
|
|
712
720
|
|
|
713
721
|
if (!getAccess(user, null, "verifyDbsChecks") || (user.userGroup !== "admin" && user.viewStudents === "none")) return;
|
|
714
722
|
const today = convertDate(new Date(), "dbstring") as string;
|
|
@@ -748,8 +756,8 @@ const instituteTasks:InstituteTaskObject = {
|
|
|
748
756
|
},
|
|
749
757
|
},
|
|
750
758
|
employerEventRequests: {
|
|
751
|
-
callback: async ({user, type}) => {
|
|
752
|
-
if (type !== "home") return;
|
|
759
|
+
callback: async ({user, products, type}) => {
|
|
760
|
+
if (type !== "home" || !products.events) return;
|
|
753
761
|
|
|
754
762
|
const openRequests = await firebaseQuery.getCount(["externalEventRequests"], [where("oId", "==", user.oId), where("requestedBy", "==", "employer"), where("status", "==", "pendingInstitute")]);
|
|
755
763
|
|
|
@@ -767,8 +775,9 @@ const instituteTasks:InstituteTaskObject = {
|
|
|
767
775
|
},
|
|
768
776
|
},
|
|
769
777
|
schoolEventRequests: {
|
|
770
|
-
callback: async ({user, type}) => {
|
|
771
|
-
|
|
778
|
+
callback: async ({user, products, type}) => {
|
|
779
|
+
// Only a hub or trust is on the receiving end of a school's request.
|
|
780
|
+
if (type !== "home" || !products.events || !(products.isHub || products.isTrust)) return;
|
|
772
781
|
|
|
773
782
|
const openRequests = await firebaseQuery.getCount(["externalEventRequests"], [where("oId", "==", user.oId), where("requestedBy", "==", "school"), where("status", "==", "pendingInstitute")]);
|
|
774
783
|
|
|
@@ -786,8 +795,8 @@ const instituteTasks:InstituteTaskObject = {
|
|
|
786
795
|
},
|
|
787
796
|
},
|
|
788
797
|
eventsGetAvailableProviders: {
|
|
789
|
-
callback: async ({user, eventId, type}) => {
|
|
790
|
-
if (!["home", "event"].includes(type)) return;
|
|
798
|
+
callback: async ({user, products, eventId, type}) => {
|
|
799
|
+
if (!["home", "event"].includes(type) || !products.events) return;
|
|
791
800
|
|
|
792
801
|
if (type === "event" && eventId) {
|
|
793
802
|
const availableAttendees = await firebaseQuery.getCount(["externalEventAttendees"], [where("oId", "==", user.oId), where("eventId", "==", eventId), where("status", "==", "providerAvailable")]);
|
|
@@ -835,8 +844,8 @@ const instituteTasks:InstituteTaskObject = {
|
|
|
835
844
|
},
|
|
836
845
|
},
|
|
837
846
|
verifyRiskAssessment: {
|
|
838
|
-
callback: async ({user, cohorts, type}) => {
|
|
839
|
-
if (!["home", "cohort"].includes(type)) return;
|
|
847
|
+
callback: async ({user, products, cohorts, type}) => {
|
|
848
|
+
if (!["home", "cohort"].includes(type) || !products.wex) return;
|
|
840
849
|
|
|
841
850
|
if (!getAccess(user, null, "verifyRiskAssessments") || (user.userGroup !== "admin" && user.viewStudents === "none")) return;
|
|
842
851
|
const today = convertDate(new Date(), "dbstring") as string;
|
|
@@ -876,8 +885,8 @@ const instituteTasks:InstituteTaskObject = {
|
|
|
876
885
|
},
|
|
877
886
|
},
|
|
878
887
|
missingParentEmail: {
|
|
879
|
-
callback: async ({user, cohorts, type}) => {
|
|
880
|
-
if (!["home", "cohort"].includes(type)) return;
|
|
888
|
+
callback: async ({user, products, cohorts, type}) => {
|
|
889
|
+
if (!["home", "cohort"].includes(type) || !products.wex) return;
|
|
881
890
|
|
|
882
891
|
if (!getAccess(user, null, "editStudents") || (user.userGroup !== "admin" && user.viewStudents === "none")) return;
|
|
883
892
|
if (!Array.isArray(cohorts)) {
|
|
@@ -927,8 +936,8 @@ const instituteTasks:InstituteTaskObject = {
|
|
|
927
936
|
},
|
|
928
937
|
},
|
|
929
938
|
inactiveStudents: {
|
|
930
|
-
callback: async ({user, cohorts, type}) => {
|
|
931
|
-
if (!["home", "cohort"].includes(type)) return;
|
|
939
|
+
callback: async ({user, products, cohorts, type}) => {
|
|
940
|
+
if (!["home", "cohort"].includes(type) || !products.runsOwnStudents) return;
|
|
932
941
|
|
|
933
942
|
if (!getAccess(user, null, "activateStudents") || (user.userGroup !== "admin" && user.viewStudents === "none")) return;
|
|
934
943
|
if (!Array.isArray(cohorts)) {
|
|
@@ -975,8 +984,8 @@ const instituteTasks:InstituteTaskObject = {
|
|
|
975
984
|
},
|
|
976
985
|
},
|
|
977
986
|
uploadStudents: {
|
|
978
|
-
callback: async ({user, cohorts, type}) => {
|
|
979
|
-
if (!["home", "cohort"].includes(type)) return;
|
|
987
|
+
callback: async ({user, products, cohorts, type}) => {
|
|
988
|
+
if (!["home", "cohort"].includes(type) || !products.wex) return;
|
|
980
989
|
|
|
981
990
|
if (!Array.isArray(cohorts)) return;
|
|
982
991
|
if (!getAccess(user, null, "addStudents") || (user.userGroup !== "admin" && user.viewStudents === "none")) return;
|
|
@@ -1036,8 +1045,8 @@ const instituteTasks:InstituteTaskObject = {
|
|
|
1036
1045
|
},
|
|
1037
1046
|
},
|
|
1038
1047
|
approveProvider: {
|
|
1039
|
-
callback: async ({user,
|
|
1040
|
-
if (!["home", "employerDatabase"].includes(type)) return;
|
|
1048
|
+
callback: async ({user, products, type}) => {
|
|
1049
|
+
if (!["home", "employerDatabase"].includes(type) || !products.network) return;
|
|
1041
1050
|
|
|
1042
1051
|
|
|
1043
1052
|
const availableAttendees = await firebaseQuery.getCount(["providerContacts"], [where(`savedBy.${user.oId}.exists`, "==", true), where(`savedBy.${user.oId}.status`, "==", "providerReviewed")]);
|
|
@@ -1602,6 +1611,13 @@ const getInstituteTasks = async ({user, organisation, cohort, school, type, even
|
|
|
1602
1611
|
}
|
|
1603
1612
|
console.log("FCOHORTS FOR TASKS", fCohort);
|
|
1604
1613
|
|
|
1614
|
+
// A trust's own flags say nothing about its schools' products, so resolve
|
|
1615
|
+
// against its schools too — the same rule the nav uses. Only meaningful when
|
|
1616
|
+
// the caller handed us real institute records (Tasks.tsx passes
|
|
1617
|
+
// trustOrHubSchools); the `schools` collection fallback carries no flags.
|
|
1618
|
+
const trustSchools = Array.isArray(fSchool) ? fSchool.map(([, school]) => school) : fSchool ? [fSchool] : undefined;
|
|
1619
|
+
const products = resolveProducts(organisation, {trustSchools});
|
|
1620
|
+
|
|
1605
1621
|
const processedTasks = await Object.entries(instituteTasks).reduce(async (accPromise, [itemName, item]) => {
|
|
1606
1622
|
if (!fCohort) {
|
|
1607
1623
|
console.log("No cohorts to retrieve tasks for");
|
|
@@ -1609,7 +1625,7 @@ const getInstituteTasks = async ({user, organisation, cohort, school, type, even
|
|
|
1609
1625
|
}
|
|
1610
1626
|
const acc = await accPromise;
|
|
1611
1627
|
|
|
1612
|
-
const queryResult = await item.callback({user, organisation, cohorts: fCohort, schools: fSchool, type, eventId});
|
|
1628
|
+
const queryResult = await item.callback({user, organisation, products, cohorts: fCohort, schools: fSchool, type, eventId});
|
|
1613
1629
|
if (!queryResult) return acc;
|
|
1614
1630
|
|
|
1615
1631
|
return { ...acc, ...queryResult}; // Merge the query result into the accumulator object
|
package/src/typeDefinitions.ts
CHANGED
|
@@ -3597,6 +3597,15 @@ export type Lead = {
|
|
|
3597
3597
|
bookedCall?: boolean,
|
|
3598
3598
|
bookedCallAt?: string,
|
|
3599
3599
|
oId?: string,
|
|
3600
|
+
/** demoAccounts/{id} seeded for this lead from the CRM. Set by
|
|
3601
|
+
* demoSeed-createDemoAccount and cleared when the demo is deleted — which
|
|
3602
|
+
* happens automatically once oId is stamped on (i.e. they registered). */
|
|
3603
|
+
demoAccountId?: string,
|
|
3604
|
+
demoAccountCreatedAt?: string,
|
|
3605
|
+
/** When the tailored auto-sign-in link was emailed to the lead. */
|
|
3606
|
+
demoInviteSentAt?: string,
|
|
3607
|
+
/** Last time the lead opened their demo through that link. */
|
|
3608
|
+
demoLastAccessedAt?: string,
|
|
3600
3609
|
source: string,
|
|
3601
3610
|
dateAdded?: string,
|
|
3602
3611
|
addedBy: string,
|