feat: add LMS web client
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
import type { CurriculumWeek } from '../curriculum/types'
|
||||
import type { ModuleRow } from './types'
|
||||
|
||||
export const compareModulePriority = (a: ModuleRow, b: ModuleRow): number => a.sortOrder - b.sortOrder
|
||||
|
||||
export const compareModuleShutdownPriority = (a: ModuleRow, b: ModuleRow): number => b.sortOrder - a.sortOrder
|
||||
|
||||
export function makeUninstalledModuleRows(curriculumModules: CurriculumWeek['modules']): ModuleRow[] {
|
||||
return (curriculumModules ?? [])
|
||||
.map((module) => ({
|
||||
state: 'uninstalled' as const,
|
||||
sortOrder: module.sortOrder,
|
||||
category: module.category,
|
||||
name: module.name,
|
||||
folderName: module.folderName,
|
||||
sourcePath: module.templateRepositoryUrl ?? '',
|
||||
workspacePath: null,
|
||||
templateRepositoryUrl: module.templateRepositoryUrl ?? null,
|
||||
sourceType: module.sourceType ?? null,
|
||||
prebuiltArtifacts: module.prebuiltArtifacts ?? null,
|
||||
parameters: [],
|
||||
cpu: null,
|
||||
memory: null,
|
||||
runtime: '-'
|
||||
}))
|
||||
.sort(compareModulePriority)
|
||||
}
|
||||
Reference in New Issue
Block a user