placementt-core 1.400.1024 → 1.400.1025
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/constants.d.ts +53 -0
- package/lib/constants.js +172 -84
- package/lib/constants.js.map +1 -1
- package/package.json +1 -1
- package/src/constants.ts +200 -82
package/lib/constants.d.ts
CHANGED
|
@@ -106,6 +106,55 @@ export declare const STUDENT_ACTIVITY_CATEGORIES: {
|
|
|
106
106
|
export declare const ACTIVITY_TYPES_BY_CATEGORY: {
|
|
107
107
|
[key in StudentActivityCategory]: StudentActivityType[];
|
|
108
108
|
};
|
|
109
|
+
/**
|
|
110
|
+
* Per-type wording for the core "Title" field on the details step.
|
|
111
|
+
*
|
|
112
|
+
* Every activity has exactly one name, and it lives here — the type schemas below must
|
|
113
|
+
* never ask for it again (a "Title" field followed by a "Competition name" field is the
|
|
114
|
+
* same question twice). Where the type has an obvious name ("Which sport?", "Course
|
|
115
|
+
* title"), that wording is used so the student knows precisely what to put.
|
|
116
|
+
*/
|
|
117
|
+
export declare const ACTIVITY_TYPE_TITLE: {
|
|
118
|
+
[key in StudentActivityType]?: {
|
|
119
|
+
label: string;
|
|
120
|
+
subtitle?: string;
|
|
121
|
+
};
|
|
122
|
+
};
|
|
123
|
+
/**
|
|
124
|
+
* How an activity sits in time, which decides what the "Dates & commitment" step asks.
|
|
125
|
+
*
|
|
126
|
+
* A one-off talk has no start and end date, no days of the week and no frequency, so
|
|
127
|
+
* asking for them made the step mostly noise. Each type maps to one of four shapes:
|
|
128
|
+
*
|
|
129
|
+
* - oneOff: happened once, on a day. Date + how long it lasted.
|
|
130
|
+
* - block: ran over a stretch of consecutive days or weeks. Date range + daily commitment.
|
|
131
|
+
* - ongoing: a regular commitment kept up over time. Dates + how often, which days, how long each time.
|
|
132
|
+
* - selfDirected: done in the student's own time to no schedule. Dates + total time taken.
|
|
133
|
+
*/
|
|
134
|
+
export type ActivityProfile = "oneOff" | "block" | "ongoing" | "selfDirected";
|
|
135
|
+
export declare const ACTIVITY_PROFILES: {
|
|
136
|
+
[key in ActivityProfile]: {
|
|
137
|
+
title: string;
|
|
138
|
+
description: string;
|
|
139
|
+
dates: "single" | "range";
|
|
140
|
+
ongoing: boolean;
|
|
141
|
+
schedule: boolean;
|
|
142
|
+
timeCommitment?: string;
|
|
143
|
+
location: boolean;
|
|
144
|
+
};
|
|
145
|
+
};
|
|
146
|
+
export declare const ACTIVITY_TYPE_PROFILE: {
|
|
147
|
+
[key in StudentActivityType]: ActivityProfile;
|
|
148
|
+
};
|
|
149
|
+
export declare const activityProfile: (activityType?: StudentActivityType) => {
|
|
150
|
+
title: string;
|
|
151
|
+
description: string;
|
|
152
|
+
dates: "single" | "range";
|
|
153
|
+
ongoing: boolean;
|
|
154
|
+
schedule: boolean;
|
|
155
|
+
timeCommitment?: string;
|
|
156
|
+
location: boolean;
|
|
157
|
+
};
|
|
109
158
|
export declare const ACTIVITY_TYPE_ORGANISATION: {
|
|
110
159
|
[key in StudentActivityType]?: {
|
|
111
160
|
label: string;
|
|
@@ -124,6 +173,10 @@ export declare const ACTIVITY_TYPE_ORGANISATION: {
|
|
|
124
173
|
* of the activity. Longer "what did you learn" reflection stays in the reflection step
|
|
125
174
|
* (DEFAULT_ACTIVITY_REFLECTION_FORM); the short prompts here ask something narrower that
|
|
126
175
|
* only makes sense for that type.
|
|
176
|
+
*
|
|
177
|
+
* Two things a schema must never re-ask, because the details step already asks them
|
|
178
|
+
* directly above: the activity's name (ACTIVITY_TYPE_TITLE) and who ran it
|
|
179
|
+
* (ACTIVITY_TYPE_ORGANISATION).
|
|
127
180
|
*/
|
|
128
181
|
export declare const ACTIVITY_SCHEMAS: {
|
|
129
182
|
[key in StudentActivityType]: CustomFormSchemaField[];
|
package/lib/constants.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
exports.STUDENT_YEAR_FIELD = exports.JOB_VALUES = exports.CAREER_INTEREST_CATEGORIES = exports.SIC_SECTIONS = exports.SOC_MAJOR_GROUPS = exports.DESTINATION_CODES = exports.careersHubSchoolOnboardingEmailTemplates = exports.emailCampaignFullStatuses = exports.emailCampaignSummaryStatuses = exports.leadStageOrder = void 0;
|
|
3
|
+
exports.SURVEY_MONTHS = exports.SURVEY_WEEKDAYS = exports.SURVEY_ORDINALS = exports.skillAssessmentSchedule = exports.skillLabelColours = exports.equalexLearningOutcomes = exports.gatsbyBenchmarks = exports.externalActivityTypes = exports.MISQueryParams = exports.emailTemplates = exports.defaultApplicantWorkflow = exports.mobileCountryCodes = exports.ERROR_COLOR = exports.SUCCESS_COLOR = exports.WARNING_COLOR = exports.INFO_COLOR = exports.INFOBACKGROUNDCOLOR = exports.INFOTEXTCOLOR = exports.WARNINGBACKGROUNDCOLOR = exports.WARNINGTEXTCOLOR = exports.SUCCESSBACKGROUNDCOLOR = exports.SUCCESSTEXTCOLOR = exports.ERRORBACKGROUNDCOLOR = exports.ERRORTEXTCOLOR = exports.STUDENT_COLOUR = exports.PROVIDER_COLOUR = exports.INSTITUTE_COLOUR = exports.SECONDARY_COLOUR = exports.LOGO_TERTIARY_COLOUR = exports.LOGO_SECONDARY_COLOUR = exports.PRIMARY_COLOUR = exports.DEFAULT_ACTIVITY_REFLECTION_FORM = exports.studentActivityCategory = exports.ACTIVITY_SCHEMAS = exports.ACTIVITY_TYPE_ORGANISATION = exports.activityProfile = exports.ACTIVITY_TYPE_PROFILE = exports.ACTIVITY_PROFILES = exports.ACTIVITY_TYPE_TITLE = exports.ACTIVITY_TYPES_BY_CATEGORY = exports.STUDENT_ACTIVITY_CATEGORIES = exports.DEFAULT_ACTIVITY_REFLECTION_FORM_ID = exports.sampleTargets = exports.flagCodes = exports.defaultStudentWorkflow = exports.defaultInstituteWorkflow = exports.sectorColours = exports.providerSectors = exports.countryList = exports.providerCodes = void 0;
|
|
4
|
+
exports.STUDENT_YEAR_FIELD = exports.JOB_VALUES = exports.CAREER_INTEREST_CATEGORIES = exports.SIC_SECTIONS = exports.SOC_MAJOR_GROUPS = exports.DESTINATION_CODES = exports.careersHubSchoolOnboardingEmailTemplates = exports.emailCampaignFullStatuses = exports.emailCampaignSummaryStatuses = exports.leadStageOrder = exports.leadStageSchema = exports.commSchema = exports.DEFAULT_SURVEY_RULE = exports.surveyRuleLabel = void 0;
|
|
5
5
|
exports.skillColour = skillColour;
|
|
6
6
|
/* eslint-disable max-len */
|
|
7
7
|
exports.providerCodes = {
|
|
@@ -494,6 +494,114 @@ exports.ACTIVITY_TYPES_BY_CATEGORY = {
|
|
|
494
494
|
"languageLearning", "subjectQualification", "other",
|
|
495
495
|
],
|
|
496
496
|
};
|
|
497
|
+
/**
|
|
498
|
+
* Per-type wording for the core "Title" field on the details step.
|
|
499
|
+
*
|
|
500
|
+
* Every activity has exactly one name, and it lives here — the type schemas below must
|
|
501
|
+
* never ask for it again (a "Title" field followed by a "Competition name" field is the
|
|
502
|
+
* same question twice). Where the type has an obvious name ("Which sport?", "Course
|
|
503
|
+
* title"), that wording is used so the student knows precisely what to put.
|
|
504
|
+
*/
|
|
505
|
+
exports.ACTIVITY_TYPE_TITLE = {
|
|
506
|
+
sport: { label: "Which sport?", subtitle: "e.g. netball, karate, rowing" },
|
|
507
|
+
music: { label: "Instrument or voice" },
|
|
508
|
+
performingArts: { label: "Name this activity", subtitle: "e.g. \"School musical - Grease\", \"Weekly dance class\"" },
|
|
509
|
+
creativeArts: { label: "Name this activity", subtitle: "e.g. the project, portfolio or piece" },
|
|
510
|
+
partTimeWork: { label: "Job title" },
|
|
511
|
+
volunteering: { label: "Name this activity", subtitle: "e.g. Saturday shifts at the food bank" },
|
|
512
|
+
leadership: { label: "Name this activity", subtitle: "e.g. Head Girl, Year 9 peer mentor" },
|
|
513
|
+
dofe: { label: "Name this activity", subtitle: "e.g. Bronze DofE volunteering section" },
|
|
514
|
+
uniformedGroup: { label: "Group, unit or squadron", subtitle: "e.g. 1234 Squadron Air Cadets, 4th Guildford Scouts" },
|
|
515
|
+
enterprise: { label: "Business or project name" },
|
|
516
|
+
clubSociety: { label: "Club or society", subtitle: "e.g. chess club, coding club, eco committee" },
|
|
517
|
+
workShadowing: { label: "Name this activity", subtitle: "e.g. a week shadowing a physiotherapist" },
|
|
518
|
+
employerTalk: { label: "Talk title or topic" },
|
|
519
|
+
workshop: { label: "Workshop title" },
|
|
520
|
+
widerReading: { label: "Title", subtitle: "The book, article, podcast or documentary" },
|
|
521
|
+
onlineProgramme: { label: "Course title" },
|
|
522
|
+
lecture: { label: "Lecture or talk title" },
|
|
523
|
+
competition: { label: "Competition name" },
|
|
524
|
+
essayPrize: { label: "Prize or competition name" },
|
|
525
|
+
epq: { label: "Project question or title" },
|
|
526
|
+
researchPlacement: { label: "Programme name" },
|
|
527
|
+
summerSchool: { label: "Programme name" },
|
|
528
|
+
academicSociety: { label: "Society or activity", subtitle: "e.g. debating, Model United Nations, philosophy society" },
|
|
529
|
+
culturalVisit: { label: "What did you go to see?", subtitle: "The exhibition, collection or site" },
|
|
530
|
+
languageLearning: { label: "Language" },
|
|
531
|
+
subjectQualification: { label: "Qualification or award" },
|
|
532
|
+
};
|
|
533
|
+
exports.ACTIVITY_PROFILES = {
|
|
534
|
+
oneOff: {
|
|
535
|
+
title: "Date & length",
|
|
536
|
+
description: "When did it take place, and how long did it last?",
|
|
537
|
+
dates: "single",
|
|
538
|
+
ongoing: false,
|
|
539
|
+
schedule: false,
|
|
540
|
+
timeCommitment: "How long did it last?",
|
|
541
|
+
location: true,
|
|
542
|
+
},
|
|
543
|
+
block: {
|
|
544
|
+
title: "Dates & commitment",
|
|
545
|
+
description: "When did it run, and how much time did it involve?",
|
|
546
|
+
dates: "range",
|
|
547
|
+
ongoing: false,
|
|
548
|
+
schedule: false,
|
|
549
|
+
timeCommitment: "Time commitment on a typical day",
|
|
550
|
+
location: true,
|
|
551
|
+
},
|
|
552
|
+
ongoing: {
|
|
553
|
+
title: "Dates & commitment",
|
|
554
|
+
description: "When did you start, and how regularly do you do it?",
|
|
555
|
+
dates: "range",
|
|
556
|
+
ongoing: true,
|
|
557
|
+
schedule: true,
|
|
558
|
+
location: true,
|
|
559
|
+
},
|
|
560
|
+
selfDirected: {
|
|
561
|
+
title: "Dates & time taken",
|
|
562
|
+
description: "When did you do this, and roughly how much time did it take?",
|
|
563
|
+
dates: "range",
|
|
564
|
+
ongoing: true,
|
|
565
|
+
schedule: false,
|
|
566
|
+
timeCommitment: "Roughly how much time did it take in total?",
|
|
567
|
+
location: false,
|
|
568
|
+
},
|
|
569
|
+
};
|
|
570
|
+
// "other" is the catch-all, so it gets the fullest set of questions - we can't know what
|
|
571
|
+
// shape it is, and every field on the step is optional anyway.
|
|
572
|
+
exports.ACTIVITY_TYPE_PROFILE = {
|
|
573
|
+
sport: "ongoing",
|
|
574
|
+
music: "ongoing",
|
|
575
|
+
performingArts: "ongoing",
|
|
576
|
+
creativeArts: "selfDirected",
|
|
577
|
+
partTimeWork: "ongoing",
|
|
578
|
+
volunteering: "ongoing",
|
|
579
|
+
leadership: "ongoing",
|
|
580
|
+
dofe: "ongoing",
|
|
581
|
+
uniformedGroup: "ongoing",
|
|
582
|
+
enterprise: "ongoing",
|
|
583
|
+
clubSociety: "ongoing",
|
|
584
|
+
workShadowing: "block",
|
|
585
|
+
employerTalk: "oneOff",
|
|
586
|
+
workshop: "oneOff",
|
|
587
|
+
other: "ongoing",
|
|
588
|
+
widerReading: "selfDirected",
|
|
589
|
+
onlineProgramme: "selfDirected",
|
|
590
|
+
lecture: "oneOff",
|
|
591
|
+
competition: "block",
|
|
592
|
+
essayPrize: "selfDirected",
|
|
593
|
+
epq: "selfDirected",
|
|
594
|
+
researchPlacement: "block",
|
|
595
|
+
summerSchool: "block",
|
|
596
|
+
academicSociety: "ongoing",
|
|
597
|
+
culturalVisit: "oneOff",
|
|
598
|
+
languageLearning: "ongoing",
|
|
599
|
+
subjectQualification: "selfDirected",
|
|
600
|
+
};
|
|
601
|
+
// Falls back to the fullest set for an activity with no type yet (or a type from an older
|
|
602
|
+
// release), so nothing a student could previously record silently disappears.
|
|
603
|
+
const activityProfile = (activityType) => exports.ACTIVITY_PROFILES[(activityType && exports.ACTIVITY_TYPE_PROFILE[activityType]) || "ongoing"];
|
|
604
|
+
exports.activityProfile = activityProfile;
|
|
497
605
|
// Per-type wording for the core "Organisation" field on the details step. "Organisation"
|
|
498
606
|
// is meaningless for wider reading and unhelpfully vague for a sports club or a
|
|
499
607
|
// competition organiser, so each type relabels it — or drops it (`false`) where the
|
|
@@ -501,14 +609,14 @@ exports.ACTIVITY_TYPES_BY_CATEGORY = {
|
|
|
501
609
|
exports.ACTIVITY_TYPE_ORGANISATION = {
|
|
502
610
|
sport: { label: "Club or team name", subtitle: "Leave blank if you do this independently" },
|
|
503
611
|
music: { label: "Ensemble, band or school group" },
|
|
504
|
-
performingArts: { label: "Company
|
|
612
|
+
performingArts: { label: "Company or group" },
|
|
505
613
|
creativeArts: false,
|
|
506
614
|
partTimeWork: { label: "Employer", required: true },
|
|
507
615
|
volunteering: { label: "Organisation or cause", required: true },
|
|
508
616
|
leadership: false,
|
|
509
617
|
dofe: { label: "Who runs your award?", subtitle: "Your school, or a group like Scouts" },
|
|
510
|
-
uniformedGroup:
|
|
511
|
-
enterprise:
|
|
618
|
+
uniformedGroup: false,
|
|
619
|
+
enterprise: false,
|
|
512
620
|
clubSociety: false,
|
|
513
621
|
workShadowing: { label: "Employer or organisation", required: true },
|
|
514
622
|
employerTalk: { label: "Employer or speaker's organisation", required: true },
|
|
@@ -525,6 +633,7 @@ exports.ACTIVITY_TYPE_ORGANISATION = {
|
|
|
525
633
|
culturalVisit: { label: "Museum, gallery or venue", required: true },
|
|
526
634
|
languageLearning: false,
|
|
527
635
|
subjectQualification: { label: "Awarding body or provider", required: true },
|
|
636
|
+
other: { label: "Organisation", subtitle: "A club, charity, employer or programme - or leave blank" },
|
|
528
637
|
};
|
|
529
638
|
/**
|
|
530
639
|
* Follow-up questions per activity type, rendered into the details step underneath the
|
|
@@ -537,20 +646,22 @@ exports.ACTIVITY_TYPE_ORGANISATION = {
|
|
|
537
646
|
* of the activity. Longer "what did you learn" reflection stays in the reflection step
|
|
538
647
|
* (DEFAULT_ACTIVITY_REFLECTION_FORM); the short prompts here ask something narrower that
|
|
539
648
|
* only makes sense for that type.
|
|
649
|
+
*
|
|
650
|
+
* Two things a schema must never re-ask, because the details step already asks them
|
|
651
|
+
* directly above: the activity's name (ACTIVITY_TYPE_TITLE) and who ran it
|
|
652
|
+
* (ACTIVITY_TYPE_ORGANISATION).
|
|
540
653
|
*/
|
|
541
654
|
exports.ACTIVITY_SCHEMAS = {
|
|
542
655
|
// ── Extracurricular ──────────────────────────────────────────────────────
|
|
543
656
|
sport: [
|
|
544
|
-
{ id: 1, label: "
|
|
545
|
-
{ id: 2, label: "
|
|
546
|
-
{ id: 3, label: "
|
|
547
|
-
{ id: 4, label: "Results, awards or coaching qualifications", type: "short", required: false, width: 6, subtitle: "e.g. county trials, black belt, Level 1 referee", extra: {} },
|
|
657
|
+
{ id: 1, label: "Level you play at", type: "dropdown", required: false, width: 6, extra: { options: ["Just for fun", "School team", "Local club", "County or regional", "National or elite"] } },
|
|
658
|
+
{ id: 2, label: "Your position or role", type: "short", required: false, width: 6, subtitle: "e.g. goalkeeper, captain, coach", extra: {} },
|
|
659
|
+
{ id: 3, label: "Results, awards or coaching qualifications", type: "short", required: false, width: 12, subtitle: "e.g. county trials, black belt, Level 1 referee", extra: {} },
|
|
548
660
|
],
|
|
549
661
|
music: [
|
|
550
|
-
{ id: 1, label: "
|
|
551
|
-
{ id: 2, label: "
|
|
552
|
-
{ id: 3, label: "
|
|
553
|
-
{ id: 4, label: "Performances or concerts this year", type: "number", required: false, width: 6, extra: { min: 0 } },
|
|
662
|
+
{ id: 1, label: "Highest grade reached", type: "dropdown", required: false, width: 6, extra: { options: ["Not graded", "Grade 1", "Grade 2", "Grade 3", "Grade 4", "Grade 5", "Grade 6", "Grade 7", "Grade 8", "Diploma"] } },
|
|
663
|
+
{ id: 2, label: "Your role in the group", type: "short", required: false, width: 6, subtitle: "e.g. first violin, lead vocals, accompanist", extra: {} },
|
|
664
|
+
{ id: 3, label: "Performances or concerts this year", type: "number", required: false, width: 6, extra: { min: 0 } },
|
|
554
665
|
],
|
|
555
666
|
performingArts: [
|
|
556
667
|
{ id: 1, label: "Discipline", type: "dropdown", required: true, width: 6, extra: { options: ["Drama or acting", "Dance", "Musical theatre", "Spoken word or stand-up", "Technical - lighting, sound or stage", "Directing or choreography", "Other"] } },
|
|
@@ -564,10 +675,9 @@ exports.ACTIVITY_SCHEMAS = {
|
|
|
564
675
|
{ id: 3, label: "Where can it be seen?", type: "short", required: false, width: 12, subtitle: "A link, gallery or publication - useful evidence for applications", extra: {} },
|
|
565
676
|
],
|
|
566
677
|
partTimeWork: [
|
|
567
|
-
{ id: 1, label: "
|
|
568
|
-
{ id: 2, label: "
|
|
569
|
-
{ id: 3, label: "
|
|
570
|
-
{ id: 4, label: "Responsibilities you've been trusted with", type: "short", required: false, width: 12, subtitle: "e.g. cashing up, opening the shop, training new staff", extra: {} },
|
|
678
|
+
{ id: 1, label: "Type of contract", type: "dropdown", required: false, width: 6, extra: { options: ["Regular part-time", "Weekends only", "Casual or zero hours", "Seasonal or holiday work", "Self-employed or freelance", "Family business"] } },
|
|
679
|
+
{ id: 2, label: "Do you have a work permit?", type: "dropdown", required: false, width: 6, subtitle: "Required by law for term-time work if you are under 16", extra: { options: ["Yes", "No", "Not needed - I'm 16 or over"] } },
|
|
680
|
+
{ id: 3, label: "Responsibilities you've been trusted with", type: "short", required: false, width: 12, subtitle: "e.g. cashing up, opening the shop, training new staff", extra: {} },
|
|
571
681
|
],
|
|
572
682
|
volunteering: [
|
|
573
683
|
{ id: 1, label: "Type of volunteering", type: "dropdown", required: true, width: 6, extra: { options: ["Charity shop or fundraising", "Working with children or young people", "Working with older or vulnerable people", "Animals", "Environment or conservation", "Sports coaching or officiating", "Faith or community group", "Event or festival support", "Other"] } },
|
|
@@ -579,7 +689,6 @@ exports.ACTIVITY_SCHEMAS = {
|
|
|
579
689
|
{ id: 1, label: "Position", type: "dropdown", required: true, width: 6, extra: { options: ["Head student or deputy", "Prefect", "Form or class representative", "School or student council", "Subject ambassador", "Peer mentor or buddy", "Sports captain", "House captain", "Society president or committee", "Other"] } },
|
|
580
690
|
{ id: 2, label: "How did you get the role?", type: "dropdown", required: false, width: 6, extra: { options: ["Elected", "Appointed", "Volunteered"] } },
|
|
581
691
|
{ id: 3, label: "How many people do you lead or represent?", type: "number", required: false, width: 6, extra: { min: 0 } },
|
|
582
|
-
{ id: 4, label: "What have you changed or improved?", type: "long", required: false, width: 12, subtitle: "One or two sentences", extra: { minRows: 2 } },
|
|
583
692
|
],
|
|
584
693
|
dofe: [
|
|
585
694
|
{ id: 1, label: "Level", type: "dropdown", required: true, width: 6, extra: { options: ["Bronze", "Silver", "Gold"] } },
|
|
@@ -599,10 +708,9 @@ exports.ACTIVITY_SCHEMAS = {
|
|
|
599
708
|
{ id: 4, label: "How is it doing financially?", type: "dropdown", required: false, width: 6, extra: { options: ["Not trading yet", "Made some sales", "Breaking even", "Making a profit"] } },
|
|
600
709
|
],
|
|
601
710
|
clubSociety: [
|
|
602
|
-
{ id: 1, label: "
|
|
603
|
-
{ id: 2, label: "
|
|
604
|
-
{ id: 3, label: "
|
|
605
|
-
{ id: 4, label: "Competitions or events taken part in", type: "short", required: false, width: 6, extra: {} },
|
|
711
|
+
{ id: 1, label: "Where does it run?", type: "dropdown", required: false, width: 6, extra: { options: ["At school", "Outside school", "Online"] } },
|
|
712
|
+
{ id: 2, label: "Your role", type: "dropdown", required: false, width: 6, extra: { options: ["Member", "Committee member", "Leader or founder"] } },
|
|
713
|
+
{ id: 3, label: "Competitions or events taken part in", type: "short", required: false, width: 12, extra: {} },
|
|
606
714
|
],
|
|
607
715
|
workShadowing: [
|
|
608
716
|
{ id: 1, label: "Job or department you shadowed", type: "short", required: true, width: 6, extra: {} },
|
|
@@ -619,97 +727,77 @@ exports.ACTIVITY_SCHEMAS = {
|
|
|
619
727
|
workshop: [
|
|
620
728
|
{ id: 1, label: "What did it cover?", type: "dropdown", required: true, width: 6, extra: { options: ["CVs and applications", "Interview skills", "Employability skills", "Money or personal finance", "University applications", "Apprenticeships", "Sector-specific skills", "Other"] } },
|
|
621
729
|
{ id: 2, label: "Did you get a certificate?", type: "dropdown", required: false, width: 6, extra: { options: ["Yes", "No"] } },
|
|
622
|
-
{ id: 3, label: "The most useful thing you took from it", type: "short", required: false, width: 12, extra: {} },
|
|
623
730
|
],
|
|
624
731
|
other: [
|
|
625
|
-
{ id: 1, label: "What kind of activity is it?", type: "short", required: true, width:
|
|
626
|
-
{ id: 2, label: "Is it organised by anyone?", type: "short", required: false, width: 6, subtitle: "A club, charity, employer or programme - or leave blank", extra: {} },
|
|
732
|
+
{ id: 1, label: "What kind of activity is it?", type: "short", required: true, width: 12, subtitle: "So your school can group it with similar activities", extra: {} },
|
|
627
733
|
],
|
|
628
734
|
// ── Supercurricular ──────────────────────────────────────────────────────
|
|
629
735
|
widerReading: [
|
|
630
|
-
{ id: 1, label: "
|
|
631
|
-
{ id: 2, label: "
|
|
632
|
-
{ id: 3, label: "
|
|
633
|
-
{ id: 4, label: "Which subject does it relate to?", type: "short", required: true, width: 6, extra: {} },
|
|
634
|
-
{ id: 5, label: "What was it about?", type: "long", required: true, width: 12, subtitle: "A couple of sentences in your own words", extra: { minRows: 2 } },
|
|
635
|
-
{ id: 6, label: "The idea that stuck with you", type: "long", required: false, width: 12, subtitle: "What surprised you, or what would you argue with?", extra: { minRows: 2 } },
|
|
736
|
+
{ id: 1, label: "Author, host or publisher", type: "short", required: false, width: 6, extra: {} },
|
|
737
|
+
{ id: 2, label: "Format", type: "dropdown", required: true, width: 6, extra: { options: ["Book", "Journal article", "Newspaper or magazine article", "Documentary or film", "Podcast", "Recorded lecture or TED talk", "Blog or online article"] } },
|
|
738
|
+
{ id: 3, label: "Which subject does it relate to?", type: "short", required: true, width: 12, extra: {} },
|
|
636
739
|
],
|
|
637
740
|
onlineProgramme: [
|
|
638
|
-
{ id: 1, label: "
|
|
639
|
-
{ id: 2, label: "
|
|
640
|
-
{ id: 3, label: "
|
|
641
|
-
{ id: 4, label: "
|
|
642
|
-
{ id: 5, label: "Roughly how many hours in total?", type: "number", required: false, width: 6, extra: { min: 0 } },
|
|
643
|
-
{ id: 6, label: "What did you get out of it?", type: "long", required: false, width: 12, subtitle: "One or two sentences", extra: { minRows: 2 } },
|
|
741
|
+
{ id: 1, label: "Provider or platform", type: "dropdown", required: true, width: 6, extra: { options: ["FutureLearn", "Coursera", "edX", "OpenLearn (Open University)", "Khan Academy", "Codecademy", "Run by a university", "Provided by my school", "Other"] } },
|
|
742
|
+
{ id: 2, label: "Subject area", type: "short", required: true, width: 6, extra: {} },
|
|
743
|
+
{ id: 3, label: "Did you finish it?", type: "dropdown", required: true, width: 6, extra: { options: ["In progress", "Completed", "Completed with a certificate"] } },
|
|
744
|
+
{ id: 4, label: "Roughly how many hours in total?", type: "number", required: false, width: 6, extra: { min: 0 } },
|
|
644
745
|
],
|
|
645
746
|
lecture: [
|
|
646
747
|
{ id: 1, label: "Speaker", type: "short", required: false, width: 6, extra: {} },
|
|
647
748
|
{ id: 2, label: "Which subject does it relate to?", type: "short", required: true, width: 6, extra: {} },
|
|
648
|
-
{ id: 3, label: "Was it part of a wider programme?", type: "short", required: false, width:
|
|
649
|
-
{ id: 4, label: "The main argument or idea", type: "long", required: true, width: 12, subtitle: "A couple of sentences in your own words", extra: { minRows: 2 } },
|
|
749
|
+
{ id: 3, label: "Was it part of a wider programme?", type: "short", required: false, width: 12, subtitle: "e.g. a university outreach series - or leave blank", extra: {} },
|
|
650
750
|
],
|
|
651
751
|
competition: [
|
|
652
|
-
{ id: 1, label: "
|
|
653
|
-
{ id: 2, label: "
|
|
654
|
-
{ id: 3, label: "
|
|
655
|
-
{ id: 4, label: "
|
|
656
|
-
{ id: 5, label: "Award, score or mark", type: "short", required: false, width: 6, extra: {} },
|
|
657
|
-
{ id: 6, label: "How did you prepare for it?", type: "long", required: false, width: 12, subtitle: "Independent preparation is worth recording", extra: { minRows: 2 } },
|
|
752
|
+
{ id: 1, label: "Subject", type: "short", required: true, width: 6, extra: {} },
|
|
753
|
+
{ id: 2, label: "Individual or team?", type: "dropdown", required: false, width: 6, extra: { options: ["Individual", "Team"] } },
|
|
754
|
+
{ id: 3, label: "How far did you get?", type: "dropdown", required: true, width: 6, extra: { options: ["Took part", "Certificate of participation", "Bronze, silver or gold certificate", "Shortlisted", "Regional round", "National round", "Placed or won"] } },
|
|
755
|
+
{ id: 4, label: "Award, score or mark", type: "short", required: false, width: 6, extra: {} },
|
|
658
756
|
],
|
|
659
757
|
essayPrize: [
|
|
660
|
-
{ id: 1, label: "
|
|
661
|
-
{ id: 2, label: "
|
|
662
|
-
{ id: 3, label: "
|
|
663
|
-
{ id: 4, label: "
|
|
664
|
-
{ id: 5, label: "Outcome", type: "dropdown", required: true, width: 6, extra: { options: ["Still writing", "Submitted", "Longlisted", "Shortlisted", "Commended", "Won", "Not placed"] } },
|
|
758
|
+
{ id: 1, label: "Subject", type: "short", required: true, width: 6, extra: {} },
|
|
759
|
+
{ id: 2, label: "Your essay title or question", type: "short", required: true, width: 6, extra: {} },
|
|
760
|
+
{ id: 3, label: "Word count", type: "number", required: false, width: 6, extra: { min: 0 } },
|
|
761
|
+
{ id: 4, label: "Outcome", type: "dropdown", required: true, width: 6, extra: { options: ["Still writing", "Submitted", "Longlisted", "Shortlisted", "Commended", "Won", "Not placed"] } },
|
|
665
762
|
],
|
|
666
763
|
epq: [
|
|
667
|
-
{ id: 1, label: "
|
|
668
|
-
{ id: 2, label: "
|
|
669
|
-
{ id: 3, label: "
|
|
670
|
-
{ id: 4, label: "
|
|
671
|
-
{ id: 5, label: "
|
|
672
|
-
{ id: 6, label: "Grade, if you have one", type: "dropdown", required: false, width: 6, extra: { options: ["Not yet known", "A*", "A", "B", "C", "D", "E"] } },
|
|
673
|
-
{ id: 7, label: "Why did you choose this question?", type: "long", required: false, width: 12, extra: { minRows: 2 } },
|
|
764
|
+
{ id: 1, label: "Type of project", type: "dropdown", required: true, width: 6, extra: { options: ["Dissertation", "Investigation or field study", "Performance", "Artefact"] } },
|
|
765
|
+
{ id: 2, label: "Subject area", type: "short", required: true, width: 6, extra: {} },
|
|
766
|
+
{ id: 3, label: "Supervisor", type: "short", required: false, width: 6, subtitle: "The member of staff supervising you", extra: {} },
|
|
767
|
+
{ id: 4, label: "Stage", type: "dropdown", required: true, width: 6, extra: { options: ["Planning", "Researching", "Writing or making", "Submitted", "Graded"] } },
|
|
768
|
+
{ id: 5, label: "Grade, if you have one", type: "dropdown", required: false, width: 6, extra: { options: ["Not yet known", "A*", "A", "B", "C", "D", "E"] } },
|
|
674
769
|
],
|
|
675
770
|
researchPlacement: [
|
|
676
|
-
{ id: 1, label: "
|
|
677
|
-
{ id: 2, label: "
|
|
678
|
-
{ id: 3, label: "
|
|
679
|
-
{ id: 4, label: "
|
|
680
|
-
{ id: 5, label: "Did it produce anything?", type: "short", required: false, width: 12, subtitle: "e.g. a poster, report, presentation or publication", extra: {} },
|
|
771
|
+
{ id: 1, label: "Subject or field", type: "short", required: true, width: 6, extra: {} },
|
|
772
|
+
{ id: 2, label: "Supervisor or research group", type: "short", required: false, width: 6, extra: {} },
|
|
773
|
+
{ id: 3, label: "How did you get a place?", type: "dropdown", required: false, width: 6, extra: { options: ["Applied myself", "Nominated by school", "Invited"] } },
|
|
774
|
+
{ id: 4, label: "Did it produce anything?", type: "short", required: false, width: 6, subtitle: "e.g. a poster, report, presentation or publication", extra: {} },
|
|
681
775
|
],
|
|
682
776
|
summerSchool: [
|
|
683
|
-
{ id: 1, label: "
|
|
684
|
-
{ id: 2, label: "
|
|
685
|
-
{ id: 3, label: "
|
|
686
|
-
{ id: 4, label: "
|
|
687
|
-
{ id: 5, label: "Has it changed where you want to apply?", type: "dropdown", required: false, width: 6, extra: { options: ["Yes - more interested in this subject or university", "Yes - less interested", "No change", "Not sure yet"] } },
|
|
777
|
+
{ id: 1, label: "Subject", type: "short", required: true, width: 6, extra: {} },
|
|
778
|
+
{ id: 2, label: "Is it a widening participation programme?", type: "dropdown", required: false, width: 6, extra: { options: ["Yes - Sutton Trust", "Yes - UNIQ", "Yes - another WP programme", "No", "Not sure"] } },
|
|
779
|
+
{ id: 3, label: "How did you get a place?", type: "dropdown", required: false, width: 6, extra: { options: ["Applied myself", "Nominated by school", "Open to anyone"] } },
|
|
780
|
+
{ id: 4, label: "Has it changed where you want to apply?", type: "dropdown", required: false, width: 6, extra: { options: ["Yes - more interested in this subject or university", "Yes - less interested", "No change", "Not sure yet"] } },
|
|
688
781
|
],
|
|
689
782
|
academicSociety: [
|
|
690
|
-
{ id: 1, label: "
|
|
691
|
-
{ id: 2, label: "
|
|
692
|
-
{ id: 3, label: "
|
|
693
|
-
{ id: 4, label: "
|
|
694
|
-
{ id: 5, label: "Competitions or conferences taken part in", type: "short", required: false, width: 12, subtitle: "e.g. an MUN conference, a debating final", extra: {} },
|
|
783
|
+
{ id: 1, label: "Which subject does it relate to?", type: "short", required: true, width: 6, extra: {} },
|
|
784
|
+
{ id: 2, label: "Where does it run?", type: "dropdown", required: false, width: 6, extra: { options: ["At school", "At a university", "Outside school", "Online"] } },
|
|
785
|
+
{ id: 3, label: "Your role", type: "dropdown", required: false, width: 6, extra: { options: ["Member", "Committee member", "President or founder"] } },
|
|
786
|
+
{ id: 4, label: "Competitions or conferences taken part in", type: "short", required: false, width: 6, subtitle: "e.g. an MUN conference, a debating final", extra: {} },
|
|
695
787
|
],
|
|
696
788
|
culturalVisit: [
|
|
697
|
-
{ id: 1, label: "
|
|
698
|
-
{ id: 2, label: "
|
|
699
|
-
{ id: 3, label: "Who arranged it?", type: "dropdown", required: false, width: 6, extra: { options: ["School trip", "I went myself", "With family", "Through a programme"] } },
|
|
700
|
-
{ id: 4, label: "What did you take from it?", type: "long", required: true, width: 12, subtitle: "A couple of sentences in your own words", extra: { minRows: 2 } },
|
|
789
|
+
{ id: 1, label: "Which subject does it relate to?", type: "short", required: true, width: 6, extra: {} },
|
|
790
|
+
{ id: 2, label: "Who arranged it?", type: "dropdown", required: false, width: 6, extra: { options: ["School trip", "I went myself", "With family", "Through a programme"] } },
|
|
701
791
|
],
|
|
702
792
|
languageLearning: [
|
|
703
|
-
{ id: 1, label: "
|
|
704
|
-
{ id: 2, label: "
|
|
705
|
-
{ id: 3, label: "
|
|
706
|
-
{ id: 4, label: "Working towards a qualification?", type: "short", required: false, width: 6, subtitle: "e.g. GCSE, DELE, HSK - or leave blank", extra: {} },
|
|
793
|
+
{ id: 1, label: "How are you learning it?", type: "dropdown", required: true, width: 6, extra: { options: ["Self-taught with an app", "Online course", "Evening or weekend class", "Tutor", "At home or with family", "Exchange or immersion", "Other"] } },
|
|
794
|
+
{ id: 2, label: "Level you've reached", type: "dropdown", required: false, width: 6, extra: { options: ["Beginner (A1)", "Elementary (A2)", "Intermediate (B1)", "Upper intermediate (B2)", "Advanced (C1)", "Fluent (C2)"] } },
|
|
795
|
+
{ id: 3, label: "Working towards a qualification?", type: "short", required: false, width: 12, subtitle: "e.g. GCSE, DELE, HSK - or leave blank", extra: {} },
|
|
707
796
|
],
|
|
708
797
|
subjectQualification: [
|
|
709
|
-
{ id: 1, label: "
|
|
710
|
-
{ id: 2, label: "
|
|
711
|
-
{ id: 3, label: "
|
|
712
|
-
{ id: 4, label: "Status", type: "dropdown", required: true, width: 6, extra: { options: ["In progress", "Achieved"] } },
|
|
798
|
+
{ id: 1, label: "Subject area", type: "short", required: true, width: 6, extra: {} },
|
|
799
|
+
{ id: 2, label: "Level or grade", type: "short", required: false, width: 6, subtitle: "e.g. Level 3, Grade 5, Distinction", extra: {} },
|
|
800
|
+
{ id: 3, label: "Status", type: "dropdown", required: true, width: 12, extra: { options: ["In progress", "Achieved"] } },
|
|
713
801
|
],
|
|
714
802
|
};
|
|
715
803
|
// Activities logged before the extra/supercurricular distinction existed have no `type`.
|