@@ -28,10 +28,7 @@ import {
2828 PostImportDialogState ,
2929 SaveStep ,
3030} from "../model" ;
31- import {
32- renameProject ,
33- untitledProjectName as untitled ,
34- } from "../project-name" ;
31+ import { untitledProjectName as untitled } from "../project-name" ;
3532import { useStore } from "../store" ;
3633import {
3734 createCodePageUrl ,
@@ -59,10 +56,6 @@ interface ProjectContext {
5956 project : MakeCodeProject ;
6057 projectEdited : boolean ;
6158 resetProject : ( ) => void ;
62- importProject : (
63- project : MakeCodeProject ,
64- projectNameOverride : string
65- ) => void ;
6659 loadFile : ( file : File , type : LoadType ) => void ;
6760 /**
6861 * Called to request a save.
@@ -137,7 +130,8 @@ export const ProjectProvider = ({
137130 const openEditorTimedOutDialog = useStore (
138131 ( s ) => ( ) => s . setIsEditorTimedOutDialogOpen ( true )
139132 ) ;
140- const expectChangedHeader = useStore ( ( s ) => s . setChangedHeaderExpected ) ;
133+ const setEditorLoadingFile = useStore ( ( s ) => s . setEditorLoadingFile ) ;
134+ const setEditorImportingState = useStore ( ( s ) => s . setEditorImportingState ) ;
141135 const projectFlushedToEditor = useStore ( ( s ) => s . projectFlushedToEditor ) ;
142136 const checkIfProjectNeedsFlush = useStore ( ( s ) => s . checkIfProjectNeedsFlush ) ;
143137 const getCurrentProject = useStore ( ( s ) => s . getCurrentProject ) ;
@@ -225,8 +219,8 @@ export const ProjectProvider = ({
225219 logging . log ( "[MakeCode] Importing project" ) ;
226220 await editorReadyPromise . promise ;
227221 const project = getCurrentProject ( ) ;
228- expectChangedHeader ( ) ;
229222 try {
223+ setEditorImportingState ( ) ;
230224 await driverRef . current . importProject ( { project } ) ;
231225 logging . log ( "[MakeCode] Project import succeeded" ) ;
232226 projectFlushedToEditor ( ) ;
@@ -267,7 +261,7 @@ export const ProjectProvider = ({
267261 logging ,
268262 editorReadyPromise . promise ,
269263 getCurrentProject ,
270- expectChangedHeader ,
264+ setEditorImportingState ,
271265 projectFlushedToEditor ,
272266 langChangeFlushedToEditor ,
273267 checkIfEditorStartUpTimedOut ,
@@ -339,6 +333,7 @@ export const ProjectProvider = ({
339333 return ;
340334 }
341335 // This triggers the code in editorChanged to update actions etc.
336+ setEditorLoadingFile ( ) ;
342337 driverRef . current ! . importFile ( {
343338 filename : file . name ,
344339 parts : [ hex ] ,
@@ -353,42 +348,13 @@ export const ProjectProvider = ({
353348 [
354349 checkIfEditorStartUpTimedOut ,
355350 driverRef ,
356- editorReadyPromise ,
351+ editorReadyPromise . promise ,
357352 loadDataset ,
358353 logging ,
359354 navigate ,
360355 openEditorTimedOutDialog ,
361356 setPostImportDialogState ,
362- ]
363- ) ;
364-
365- const importProject = useCallback (
366- async (
367- project : MakeCodeProject ,
368- projectNameOverride : string
369- ) : Promise < void > => {
370- const hasTimedOut = await checkIfEditorStartUpTimedOut (
371- editorReadyPromise . promise
372- ) ;
373- if ( hasTimedOut ) {
374- openEditorTimedOutDialog ( ) ;
375- return ;
376- }
377- try {
378- // This triggers the code in editorChanged to update actions etc.
379- await driverRef . current ! . importProject ( {
380- project : renameProject ( project , projectNameOverride ) ,
381- } ) ;
382- } catch ( e ) {
383- setPostImportDialogState ( PostImportDialogState . Error ) ;
384- }
385- } ,
386- [
387- checkIfEditorStartUpTimedOut ,
388- driverRef ,
389- editorReadyPromise . promise ,
390- openEditorTimedOutDialog ,
391- setPostImportDialogState ,
357+ setEditorLoadingFile ,
392358 ]
393359 ) ;
394360
@@ -493,7 +459,6 @@ export const ProjectProvider = ({
493459 const value = useMemo (
494460 ( ) => ( {
495461 loadFile,
496- importProject,
497462 openEditor,
498463 browserNavigationToEditor,
499464 project,
@@ -512,7 +477,6 @@ export const ProjectProvider = ({
512477 } ) ,
513478 [
514479 loadFile ,
515- importProject ,
516480 openEditor ,
517481 browserNavigationToEditor ,
518482 project ,
0 commit comments