File tree Expand file tree Collapse file tree 9 files changed +49
-16
lines changed Expand file tree Collapse file tree 9 files changed +49
-16
lines changed Original file line number Diff line number Diff line change @@ -377,15 +377,21 @@ export default class MediaDbPlugin extends Plugin {
377377 throw new Error ( 'MDB | active note is not a Media DB entry or is missing metadata' ) ;
378378 }
379379
380+
381+
380382 let oldMediaTypeModel = this . mediaTypeManager . createMediaTypeModelFromMediaType ( metadata , metadata . type ) ;
381383
384+ // console.debug(oldMediaTypeModel);
385+
382386 let newMediaTypeModel = await this . apiManager . queryDetailedInfoById ( metadata . id , metadata . dataSource ) ;
383387 if ( ! newMediaTypeModel ) {
384388 return ;
385389 }
386390
387391 newMediaTypeModel = Object . assign ( oldMediaTypeModel , newMediaTypeModel . getWithOutUserData ( ) ) ;
388392
393+ // console.debug(newMediaTypeModel);
394+
389395 // deletion not happening anymore why is this log statement still here
390396 console . debug ( 'MDB | deleting old entry' ) ;
391397 if ( onlyMetadata ) {
Original file line number Diff line number Diff line change 11import { MediaTypeModel } from './MediaTypeModel' ;
2- import { mediaDbTag } from '../utils/Utils' ;
2+ import { mediaDbTag , migrateObject } from '../utils/Utils' ;
33import { MediaType } from '../utils/MediaType' ;
44
55
@@ -28,7 +28,11 @@ export class BoardGameModel extends MediaTypeModel {
2828 personalRating : undefined ,
2929 } ;
3030
31- Object . assign ( this , obj ) ;
31+ migrateObject ( this , obj , this ) ;
32+
33+ if ( ! obj . hasOwnProperty ( 'userData' ) ) {
34+ migrateObject ( this . userData , obj , this . userData ) ;
35+ }
3236
3337 this . type = this . getMediaType ( ) ;
3438 }
Original file line number Diff line number Diff line change 11import { MediaTypeModel } from './MediaTypeModel' ;
2- import { mediaDbTag } from '../utils/Utils' ;
2+ import { mediaDbTag , migrateObject } from '../utils/Utils' ;
33import { MediaType } from '../utils/MediaType' ;
44
55
@@ -30,7 +30,11 @@ export class GameModel extends MediaTypeModel {
3030 personalRating : undefined ,
3131 } ;
3232
33- Object . assign ( this , obj ) ;
33+ migrateObject ( this , obj , this ) ;
34+
35+ if ( ! obj . hasOwnProperty ( 'userData' ) ) {
36+ migrateObject ( this . userData , obj , this . userData ) ;
37+ }
3438
3539 this . type = this . getMediaType ( ) ;
3640 }
Original file line number Diff line number Diff line change 11import { MediaTypeModel } from './MediaTypeModel' ;
2- import { mediaDbTag } from '../utils/Utils' ;
2+ import { mediaDbTag , migrateObject } from '../utils/Utils' ;
33import { MediaType } from '../utils/MediaType' ;
44
55
@@ -35,7 +35,11 @@ export class MovieModel extends MediaTypeModel {
3535 personalRating : undefined ,
3636 } ;
3737
38- Object . assign ( this , obj ) ;
38+ migrateObject ( this , obj , this ) ;
39+
40+ if ( ! obj . hasOwnProperty ( 'userData' ) ) {
41+ migrateObject ( this . userData , obj , this . userData ) ;
42+ }
3943
4044 this . type = this . getMediaType ( ) ;
4145 }
Original file line number Diff line number Diff line change 11import { MediaTypeModel } from './MediaTypeModel' ;
2- import { mediaDbTag } from '../utils/Utils' ;
2+ import { mediaDbTag , migrateObject } from '../utils/Utils' ;
33import { MediaType } from '../utils/MediaType' ;
44
55
@@ -31,7 +31,11 @@ export class MusicReleaseModel extends MediaTypeModel {
3131 personalRating : undefined ,
3232 } ;
3333
34- Object . assign ( this , obj ) ;
34+ migrateObject ( this , obj , this ) ;
35+
36+ if ( ! obj . hasOwnProperty ( 'userData' ) ) {
37+ migrateObject ( this . userData , obj , this . userData ) ;
38+ }
3539
3640 this . type = this . getMediaType ( ) ;
3741 }
Original file line number Diff line number Diff line change 11import { MediaTypeModel } from './MediaTypeModel' ;
2- import { mediaDbTag } from '../utils/Utils' ;
2+ import { mediaDbTag , migrateObject } from '../utils/Utils' ;
33import { MediaType } from '../utils/MediaType' ;
44
55
@@ -50,7 +50,11 @@ export class SeriesModel extends MediaTypeModel {
5050 personalRating : undefined ,
5151 } ;
5252
53- Object . assign ( this , obj ) ;
53+ migrateObject ( this , obj , this ) ;
54+
55+ if ( ! obj . hasOwnProperty ( 'userData' ) ) {
56+ migrateObject ( this . userData , obj , this . userData ) ;
57+ }
5458
5559 this . type = this . getMediaType ( ) ;
5660 }
Original file line number Diff line number Diff line change 11import { MediaTypeModel } from './MediaTypeModel' ;
2- import { mediaDbTag } from '../utils/Utils' ;
2+ import { mediaDbTag , migrateObject } from '../utils/Utils' ;
33import { MediaType } from '../utils/MediaType' ;
44
55
@@ -29,7 +29,11 @@ export class WikiModel extends MediaTypeModel {
2929 this . article = undefined ;
3030 this . userData = { } ;
3131
32- Object . assign ( this , obj ) ;
32+ migrateObject ( this , obj , this ) ;
33+
34+ if ( ! obj . hasOwnProperty ( 'userData' ) ) {
35+ migrateObject ( this . userData , obj , this . userData ) ;
36+ }
3337
3438 this . type = this . getMediaType ( ) ;
3539 }
Original file line number Diff line number Diff line change @@ -22,17 +22,14 @@ export class PropertyMapper {
2222 return obj ;
2323 }
2424
25- console . log ( 'test2' ) ;
2625 // @ts -ignore
27- console . log ( obj . type ) ;
26+ // console.log(obj.type);
2827
2928 // @ts -ignore
3029 if ( MEDIA_TYPES . filter ( x => x . toString ( ) == obj . type ) . length < 1 ) {
3130 return obj ;
3231 }
3332
34- console . log ( 'test3' ) ;
35-
3633 // @ts -ignore
3734 const propertyMappings = this . plugin . settings . propertyMappingModels . find ( x => x . type === obj . type ) . properties ;
3835
Original file line number Diff line number Diff line change @@ -212,3 +212,9 @@ export interface CreateNoteOptions {
212212 attachFile ?: TFile ,
213213 openNote ?: boolean ,
214214}
215+
216+ export function migrateObject < T extends object > ( object : T , oldData : any , defaultData : T ) : void {
217+ for ( const key in object ) {
218+ object [ key ] = oldData . hasOwnProperty ( key ) ? oldData [ key ] : defaultData [ key ] ;
219+ }
220+ }
You can’t perform that action at this time.
0 commit comments