8000 add guard outline · benjaminthedev/coderoad-vscode@be67d01 · GitHub
[go: up one dir, main page]

Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit be67d01

Browse files
committed
add guard outline
1 parent 7ec46c9 commit be67d01

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

src/state/guards/index.ts

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,29 @@ export default {
66
console.log('GUARD: hasNoNextLevelProgress')
77
return false
88
},
9+
tasksComplete: (context: CR.MachineContext): boolean => {
10+
console.log('GUARD: tasksComplete')
11+
return false
12+
},
13+
hasNextStep: (context: CR.MachineContext): boolean => {
14+
console.log('GUARD: hasNextStep')
15+
const { data, position, progress } = context
16+
const steps = data.stages[position.stageId].stepList
17+
const isStageComplete = progress.stages[position.stageId] || steps[steps.length - 1] === position.stepId
18+
return !isStageComplete
19+
},
20+
hasNextStage: (context: CR.MachineContext): boolean => {
21+
console.log('GUARD: hasNextStage')
22+
const { data, position, progress } = context
23+
const stages = data.levels[position.levelId].stageList
24+
const isLevelComplete = progress.levels[position.levelId] || stages[stages.length - 1] === position.stageId
25+
return !isLevelComplete
26+
},
27+
hasNextLevel: (context: CR.MachineContext): boolean => {
28+
console.log('GUARD: hasNextLevel')
29+
const { data, position, progress } = context
30+
const levels = data.summary.levelList
31+
const isTutorialComplete = progress.complete || levels[levels.length - 1] === position.levelId
32+
return !isTutorialComplete
33+
},
934
}

0 commit comments

Comments
 (0)
0