@@ -17,7 +17,8 @@ import { confirmOption } from '#/components/helpers/confirmComponent/ConfirmComp
17
17
*/
18
18
export async function recoverProject ( ) {
19
19
if ( localStorage . getItem ( 'recover' ) ) {
20
- var data = JSON . parse ( localStorage . getItem ( 'recover' ) )
20
+ const recover = localStorage . getItem ( 'recover' )
21
+ const data = recover ? JSON . parse ( recover ) : { }
21
22
if ( await confirmOption ( `Would you like to recover: ${ data . name } ` ) ) {
22
23
load ( data )
23
24
}
@@ -78,11 +79,10 @@ export function openOffline() {
78
79
}
79
80
/**
80
81
* Flag for project saved or not
81
- * @type {boolean }
82
82
* @category data
83
83
*/
84
- var projectSaved = true
85
- export function projectSavedSet ( param ) {
84
+ let projectSaved = true
85
+ export function projectSavedSet ( param : boolean ) {
86
86
projectSaved = param
87
87
}
88
88
@@ -91,10 +91,12 @@ export function projectSavedSet(param) {
91
91
* @category data
92
92
*/
93
93
export async function saveOffline ( ) {
94
- const data = await generateSaveData ( )
94
+ const data = await generateSaveData ( '' )
95
95
if ( data instanceof Error ) return
96
- localStorage . setItem ( projectId , data )
97
- const temp = JSON . parse ( localStorage . getItem ( 'projectList' ) ) || { }
96
+ const stringData = JSON . stringify ( data )
97
+ localStorage . setItem ( projectId , stringData )
98
+ const projectList = localStorage . getItem ( 'projectList' )
99
+ const temp = projectList ? JSON . parse ( projectList ) : { }
98
100
temp [ projectId ] = getProjectName ( )
99
101
localStorage . setItem ( 'projectList' , JSON . stringify ( temp ) )
100
102
showMessage (
@@ -109,8 +111,8 @@ export async function saveOffline() {
109
111
function checkToSave ( ) {
110
112
let saveFlag = false
111
113
// eslint-disable-next-line no-restricted-syntax
112
- for ( id in scopeList ) {
113
- saveFlag |= checkIfBackup ( scopeList [ id ] )
114
+ for ( const id in scopeList ) {
115
+ saveFlag = saveFlag || checkIfBackup ( scopeList [ id ] )
114
116
}
115
117
return saveFlag
116
118
}
@@ -131,14 +133,14 @@ window.onbeforeunload = async function () {
131
133
// 'You have unsaved changes on this page. Do you want to leave this page and discard your changes or stay on this page?'
132
134
// )
133
135
const data = await generateSaveData ( 'Untitled' )
134
- localStorage . setItem ( 'recover' , await data )
136
+ const stringData = JSON . stringify ( data )
137
+ localStorage . setItem ( 'recover' , stringData )
135
138
// eslint-disable-next-line consistent-return
136
139
return 'Are u sure u want to leave? Any unsaved changes may not be recoverable'
137
140
}
138
141
139
142
/**
140
143
* Function to clear project
141
- * @category data
142
144
*/
143
145
export async function clearProject ( ) {
144
146
if ( await confirmOption ( 'Would you like to clear the project?' ) ) {
@@ -152,10 +154,8 @@ export async function clearProject() {
152
154
153
155
/**
154
156
Function used to start a new project while prompting confirmation from the user
155
- * @param {boolean } verify - flag to verify a new project
156
- * @category data
157
157
*/
158
- export async function newProject ( verify ) {
158
+ export async function newProject ( verify : boolean ) {
159
159
if (
160
160
verify ||
161
161
projectSaved ||
@@ -166,7 +166,7 @@ export async function newProject(verify) {
166
166
) {
167
167
clearProject ( )
168
168
localStorage . removeItem ( 'recover' )
169
- window . location = '/simulator '
169
+ window . location = '/simulatorvue/ '
170
170
171
171
setProjectName ( undefined )
172
172
projectId = generateId ( )
0 commit comments