MCPcopy Create free account
hub / github.com/codecombat/codecombat / toggleModuleCollapse

Function toggleModuleCollapse

app/core/store/modules/teacherDashboard.js:279–297  ·  view source on GitHub ↗
({ commit, getters }, moduleNumber)

Source from the content-addressed store, hash-verified

277
278 actions: {
279 toggleModuleCollapse ({ commit, getters }, moduleNumber) {
280 try {
281 const courseId = getters.getSelectedCourseIdCurrentClassroom
282 const isCollapsed = getters.isModuleCollapsed(moduleNumber)
283 const currentCollapsed = getters.getCollapsedModules[courseId] || []
284
285 let collapsedModules
286 if (isCollapsed) {
287 collapsedModules = currentCollapsed.filter(num => num !== moduleNumber)
288 } else {
289 collapsedModules = [...currentCollapsed, moduleNumber]
290 }
291
292 commit('setModuleCollapsedState', { courseId, collapsedModules })
293 } catch (error) {
294 console.error('Failed to toggle module collapse:', error)
295 throw error
296 }
297 },
298 // componentName = name of the vue component -> used to fetch relevant data for the respective page
299 // options = { data: {} }
300 // options.data = {} -> contains specific properties to fetch (or `project`) for an object as a string, eg: {users: 'firstName,lastName,email', levelSessions: 'state.complete,level,creator,changed'}

Callers

nothing calls this directly

Calls 2

filterMethod · 0.80
errorMethod · 0.45

Tested by

no test coverage detected