@@ -23,6 +23,8 @@ import * as Blockly from 'blockly/core';
2323
2424import { Block } from "../toolbox/items" ;
2525import startingOpModeBlocks from '../modules/opmode_start.json' ;
26+ import startingMechanismBlocks from '../modules/mechanism_start.json' ;
27+ import startingRobotBlocks from '../modules/robot_start.json' ;
2628
2729import { extendedPythonGenerator } from '../editor/extended_python_generator' ;
2830
@@ -160,9 +162,15 @@ export function newWorkspaceContent(workspaceName: string): string {
160162 dateModifiedMillis : 0 ,
161163 } ;
162164
163- const pythonCode = '' ;
164- const exportedBlocks = '[]' ;
165- const blocksContent = '{}' ;
165+ // Create a headless blockly workspace.
166+ const headlessBlocklyWorkspace = new Blockly . Workspace ( ) ;
167+ headlessBlocklyWorkspace . options . oneBasedIndex = false ;
168+ Blockly . serialization . workspaces . load ( startingRobotBlocks , headlessBlocklyWorkspace ) ;
169+
170+ extendedPythonGenerator . setCurrentModule ( module ) ;
171+ const pythonCode = extendedPythonGenerator . workspaceToCode ( headlessBlocklyWorkspace ) ;
172+ const exportedBlocks = JSON . stringify ( extendedPythonGenerator . getExportedBlocks ( headlessBlocklyWorkspace ) ) ;
173+ const blocksContent = JSON . stringify ( Blockly . serialization . workspaces . save ( headlessBlocklyWorkspace ) ) ;
166174 return makeModuleContent ( module , pythonCode , exportedBlocks , blocksContent ) ;
167175}
168176
@@ -181,7 +189,7 @@ export function newMechanismContent(workspaceName: string, mechanismName: string
181189 // Create a headless blockly workspace.
182190 const headlessBlocklyWorkspace = new Blockly . Workspace ( ) ;
183191 headlessBlocklyWorkspace . options . oneBasedIndex = false ;
184- // TODO: Create the blocks for a new mechanism.
192+ Blockly . serialization . workspaces . load ( startingMechanismBlocks , headlessBlocklyWorkspace ) ;
185193
186194 extendedPythonGenerator . setCurrentModule ( module ) ;
187195 const pythonCode = extendedPythonGenerator . workspaceToCode ( headlessBlocklyWorkspace ) ;
0 commit comments