@@ -237,7 +237,6 @@ async function exportPredicate(
237
237
ajSettings : aj . Settings
238
238
) {
239
239
console . groupCollapsed ( 'Export Predicate Model' )
240
- const projectName = safeFunctionName ( ajSettings . projectName )
241
240
242
241
const predicateJSON = {
243
242
parent : 'item/generated' ,
@@ -249,6 +248,7 @@ async function exportPredicate(
249
248
includedRigs : { } ,
250
249
} ,
251
250
}
251
+
252
252
let usedIDs = [ ]
253
253
function * idGen ( ) {
254
254
let id = 1
@@ -257,12 +257,24 @@ async function exportPredicate(
257
257
id ++
258
258
}
259
259
}
260
+
260
261
if ( fs . existsSync ( ajSettings . predicateFilePath ) ) {
261
- const oldPredicate : PredicateModel = JSON . parse (
262
- await fs . promises . readFile ( ajSettings . predicateFilePath , {
262
+ const stringContent = await fs . promises . readFile (
263
+ ajSettings . predicateFilePath ,
264
+ {
263
265
encoding : 'utf-8' ,
264
- } )
266
+ }
265
267
)
268
+ let oldPredicate : PredicateModel
269
+ try {
270
+ oldPredicate = JSON . parse ( stringContent )
271
+ } catch ( err ) {
272
+ throwPredicateMergingError (
273
+ tl (
274
+ 'animatedJava.dialogs.errors.predicateMergeFailed.reasons.invalidJson'
275
+ )
276
+ )
277
+ }
266
278
console . log ( oldPredicate )
267
279
// @ts -ignore
268
280
if ( oldPredicate ) {
@@ -347,8 +359,8 @@ async function exportPredicate(
347
359
} )
348
360
}
349
361
350
- predicateJSON . overrides . sort ( ( a : any , b : any ) => {
351
- return ( a . predicate . custom_model_data - b . predicate . custom_model_data )
362
+ predicateJSON . overrides . sort ( ( a : any , b : any ) => {
363
+ return a . predicate . custom_model_data - b . predicate . custom_model_data
352
364
} )
353
365
//@ts -ignore
354
366
predicateJSON . aj . includedRigs [ Project . UUID ] = {
0 commit comments