mirror of
https://github.com/freeCodeCamp/freeCodeCamp.git
synced 2026-05-28 18:26:54 +00:00
feat: make new javascript live (#52623)
Co-authored-by: scissorsneedfoodtoo <scissorsneedfoodtoo@gmail.com>
This commit is contained in:
@@ -13,7 +13,7 @@ import { SuperBlocks } from '../../shared/config/superblocks';
|
||||
*/
|
||||
export enum Certification {
|
||||
RespWebDesign = 'responsive-web-design',
|
||||
JsAlgoDataStruct = 'javascript-algorithms-and-data-structures',
|
||||
JsAlgoDataStructNew = 'javascript-algorithms-and-data-structures-v8',
|
||||
FrontEndDevLibs = 'front-end-development-libraries',
|
||||
DataVis = 'data-visualization',
|
||||
RelationalDb = 'relational-database-v8',
|
||||
@@ -30,6 +30,7 @@ export enum Certification {
|
||||
A2English = 'a2-english-for-developers-v8',
|
||||
// Legacy certifications
|
||||
LegacyFrontEnd = 'legacy-front-end',
|
||||
JsAlgoDataStruct = 'javascript-algorithms-and-data-structures',
|
||||
LegacyBackEnd = 'legacy-back-end',
|
||||
LegacyDataVis = 'legacy-data-visualization',
|
||||
LegacyInfoSecQa = 'information-security-and-quality-assurance',
|
||||
@@ -40,7 +41,7 @@ export enum Certification {
|
||||
// live and not legacy.
|
||||
export const currentCertifications = [
|
||||
Certification.RespWebDesign,
|
||||
Certification.JsAlgoDataStruct,
|
||||
Certification.JsAlgoDataStructNew,
|
||||
Certification.FrontEndDevLibs,
|
||||
Certification.DataVis,
|
||||
Certification.RelationalDb,
|
||||
@@ -58,6 +59,7 @@ export const currentCertifications = [
|
||||
// still live and claimable, but some parts of the UI handle them differently.
|
||||
export const legacyCertifications = [
|
||||
Certification.LegacyFrontEnd,
|
||||
Certification.JsAlgoDataStruct,
|
||||
Certification.LegacyBackEnd,
|
||||
Certification.LegacyDataVis,
|
||||
Certification.LegacyInfoSecQa
|
||||
@@ -95,7 +97,8 @@ export const certTypes = {
|
||||
relationalDatabaseV8: 'isRelationalDatabaseCertV8',
|
||||
collegeAlgebraPyV8: 'isCollegeAlgebraPyCertV8',
|
||||
foundationalCSharpV8: 'isFoundationalCSharpCertV8',
|
||||
upcomingPythonV8: 'isUpcomingPythonCertV8'
|
||||
upcomingPythonV8: 'isUpcomingPythonCertV8',
|
||||
jsAlgoDataStructV8: 'isJsAlgoDataStructCertV8'
|
||||
} as const;
|
||||
|
||||
export const certIds = {
|
||||
@@ -117,7 +120,8 @@ export const certIds = {
|
||||
relationalDatabaseV8Id: '606243f50267e718b1e755f4',
|
||||
collegeAlgebraPyV8Id: '61531b20cc9dfa2741a5b800',
|
||||
foundationalCSharpV8Id: '647f7da207d29547b3bee1ba',
|
||||
upcomingPythonV8Id: '64afc4e8f3b37856e035b85f'
|
||||
upcomingPythonV8Id: '64afc4e8f3b37856e035b85f',
|
||||
jsAlgoDataStructV8Id: '658180220947283cdc0689ce'
|
||||
};
|
||||
|
||||
export const completionHours = {
|
||||
@@ -139,12 +143,14 @@ export const completionHours = {
|
||||
[certTypes.relationalDatabaseV8]: 300,
|
||||
[certTypes.collegeAlgebraPyV8]: 300,
|
||||
[certTypes.foundationalCSharpV8]: 300,
|
||||
[certTypes.upcomingPythonV8]: 300
|
||||
[certTypes.upcomingPythonV8]: 300,
|
||||
[certTypes.jsAlgoDataStructV8]: 300
|
||||
};
|
||||
|
||||
export const certSlugTypeMap = {
|
||||
// legacy
|
||||
[Certification.LegacyFrontEnd]: certTypes.frontEnd,
|
||||
[Certification.JsAlgoDataStruct]: certTypes.jsAlgoDataStruct,
|
||||
[Certification.LegacyBackEnd]: certTypes.backEnd,
|
||||
[Certification.LegacyDataVis]: certTypes.dataVis,
|
||||
[Certification.LegacyInfoSecQa]: certTypes.infosecQa,
|
||||
@@ -152,7 +158,7 @@ export const certSlugTypeMap = {
|
||||
|
||||
// modern
|
||||
[Certification.RespWebDesign]: certTypes.respWebDesign,
|
||||
[Certification.JsAlgoDataStruct]: certTypes.jsAlgoDataStruct,
|
||||
[Certification.JsAlgoDataStructNew]: certTypes.jsAlgoDataStructV8,
|
||||
[Certification.FrontEndDevLibs]: certTypes.frontEndDevLibs,
|
||||
[Certification.DataVis]: certTypes.dataVis2018,
|
||||
[Certification.BackEndDevApis]: certTypes.apisMicroservices,
|
||||
@@ -172,6 +178,7 @@ export const certSlugTypeMap = {
|
||||
export const superBlockCertTypeMap = {
|
||||
// legacy
|
||||
'legacy-front-end': certTypes.frontEnd,
|
||||
[SuperBlocks.JsAlgoDataStruct]: certTypes.jsAlgoDataStruct,
|
||||
'legacy-back-end': certTypes.backEnd,
|
||||
'legacy-data-visualization': certTypes.dataVis,
|
||||
'information-security-and-quality-assurance': certTypes.infosecQa,
|
||||
@@ -179,7 +186,7 @@ export const superBlockCertTypeMap = {
|
||||
|
||||
// modern
|
||||
[SuperBlocks.RespWebDesign]: certTypes.respWebDesign,
|
||||
[SuperBlocks.JsAlgoDataStruct]: certTypes.jsAlgoDataStruct,
|
||||
[SuperBlocks.JsAlgoDataStructNew]: certTypes.jsAlgoDataStructV8,
|
||||
[SuperBlocks.FrontEndDevLibs]: certTypes.frontEndDevLibs,
|
||||
[SuperBlocks.DataVis]: certTypes.dataVis2018,
|
||||
[SuperBlocks.BackEndDevApis]: certTypes.apisMicroservices,
|
||||
@@ -195,7 +202,6 @@ export const superBlockCertTypeMap = {
|
||||
// post-modern
|
||||
// TODO: use enum
|
||||
[SuperBlocks.RespWebDesignNew]: certTypes.respWebDesign,
|
||||
[SuperBlocks.JsAlgoDataStructNew]: certTypes.jsAlgoDataStruct,
|
||||
|
||||
// upcoming
|
||||
[SuperBlocks.UpcomingPython]: certTypes.upcomingPythonV8
|
||||
@@ -220,7 +226,8 @@ export const certTypeIdMap = {
|
||||
[certTypes.relationalDatabaseV8]: certIds.relationalDatabaseV8Id,
|
||||
[certTypes.collegeAlgebraPyV8]: certIds.collegeAlgebraPyV8Id,
|
||||
[certTypes.foundationalCSharpV8]: certIds.foundationalCSharpV8Id,
|
||||
[certTypes.upcomingPythonV8]: certIds.upcomingPythonV8Id
|
||||
[certTypes.upcomingPythonV8]: certIds.upcomingPythonV8Id,
|
||||
[certTypes.jsAlgoDataStructV8]: certIds.jsAlgoDataStructV8Id
|
||||
};
|
||||
|
||||
export const certTypeTitleMap = {
|
||||
@@ -242,7 +249,9 @@ export const certTypeTitleMap = {
|
||||
[certTypes.relationalDatabaseV8]: 'Relational Database',
|
||||
[certTypes.collegeAlgebraPyV8]: 'College Algebra with Python',
|
||||
[certTypes.foundationalCSharpV8]: 'Foundational C# with Microsoft',
|
||||
[certTypes.upcomingPythonV8]: 'Upcoming Python'
|
||||
[certTypes.upcomingPythonV8]: 'Upcoming Python',
|
||||
[certTypes.jsAlgoDataStructV8]:
|
||||
'JavaScript Algorithms and Data Structures (Beta)'
|
||||
};
|
||||
|
||||
export const oldDataVizId = '561add10cb82ac38a17513b3';
|
||||
|
||||
@@ -82,7 +82,7 @@ describe('firstNotAuditedSuperBlock', () => {
|
||||
showNewCurriculum: false,
|
||||
showUpcomingChanges: false
|
||||
});
|
||||
expect(result).toEqual(SuperBlocks.FoundationalCSharp);
|
||||
expect(result).toEqual(SuperBlocks.JsAlgoDataStructNew);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ export enum SuperBlocks {
|
||||
RespWebDesignNew = '2022/responsive-web-design',
|
||||
RespWebDesign = 'responsive-web-design',
|
||||
JsAlgoDataStruct = 'javascript-algorithms-and-data-structures',
|
||||
JsAlgoDataStructNew = '2022/javascript-algorithms-and-data-structures',
|
||||
JsAlgoDataStructNew = 'javascript-algorithms-and-data-structures-v8',
|
||||
FrontEndDevLibs = 'front-end-development-libraries',
|
||||
DataVis = 'data-visualization',
|
||||
RelationalDb = 'relational-database',
|
||||
@@ -55,7 +55,7 @@ export type SuperBlockOrder = {
|
||||
export const superBlockOrder: SuperBlockOrder = {
|
||||
[SuperBlockStages.FrontEnd]: [
|
||||
SuperBlocks.RespWebDesignNew,
|
||||
SuperBlocks.JsAlgoDataStruct,
|
||||
SuperBlocks.JsAlgoDataStructNew,
|
||||
SuperBlocks.FrontEndDevLibs,
|
||||
SuperBlocks.DataVis
|
||||
],
|
||||
@@ -81,11 +81,11 @@ export const superBlockOrder: SuperBlockOrder = {
|
||||
],
|
||||
[SuperBlockStages.Legacy]: [
|
||||
SuperBlocks.RespWebDesign,
|
||||
SuperBlocks.JsAlgoDataStruct,
|
||||
SuperBlocks.PythonForEverybody
|
||||
],
|
||||
[SuperBlockStages.New]: [],
|
||||
[SuperBlockStages.Upcoming]: [
|
||||
SuperBlocks.JsAlgoDataStructNew,
|
||||
SuperBlocks.ExampleCertification,
|
||||
SuperBlocks.UpcomingPython
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user