move to feature module and init board

This commit is contained in:
Julien Calixte
2023-07-22 11:42:54 +02:00
parent 2d9006b4c9
commit 835e0cf642
9 changed files with 77 additions and 16 deletions

View File

@@ -0,0 +1,29 @@
import { FeatureStatus, FeatureStep } from '@/modules/feature/feature-steps'
import { features } from '@/modules/feature/feature.fixture'
import { pickRandomElement, popNElement, shuffleArray } from '@/utils'
export const createFeatureBoard = () => {
const boardFeatures = shuffleArray(features)
const initBoard = (featureSteps: FeatureStep[]): FeatureStep[] => {
const initialFeatures = popNElement(boardFeatures, 10)
initialFeatures.forEach((feature) => {
const step = pickRandomElement(featureSteps)
const doingOrDone: FeatureStatus = pickRandomElement(['doing', 'done'])
switch (doingOrDone) {
case 'doing':
step.featuresInProgress.push(feature)
break
case 'done':
step.featuresDone.push(feature)
break
}
})
return featureSteps
}
return { initBoard }
}