@@ -199,25 +199,25 @@ export const getWbsChanges = (
199199} ;
200200
201201export const getChangesForProject = (
202- originalProject : Project ,
203- proposedChanges : ProjectProposedChanges
202+ proposedChanges : ProjectProposedChanges ,
203+ originalProject ?: Project
204204) : ComparableCollection [ ] => {
205205 const projectLines : ComparableLine [ ] = [ ...getWbsChanges ( originalProject , proposedChanges ) ] ;
206206
207207 projectLines . push (
208208 genChange (
209209 'Summary' ,
210- originalProject . summary !== proposedChanges . summary ,
211- originalProject . summary ,
210+ originalProject ? .summary !== proposedChanges . summary ,
211+ originalProject ? originalProject . summary : '' ,
212212 proposedChanges . summary
213213 )
214214 ) ;
215215
216216 projectLines . push (
217217 genChange (
218218 'Budget' ,
219- originalProject . budget !== proposedChanges . budget ,
220- `$${ originalProject . budget } ` ,
219+ originalProject ? .budget !== proposedChanges . budget ,
220+ originalProject ? `$${ originalProject . budget } ` : '' ,
221221 `$${ proposedChanges . budget } `
222222 )
223223 ) ;
@@ -226,9 +226,11 @@ export const getChangesForProject = (
226226 genListChange (
227227 'Teams' ,
228228 '' ,
229- originalProject . teams
230- . map ( ( team ) => ( { ...team , value : team . teamName } ) )
231- . sort ( ( a , b ) => a . teamName . localeCompare ( b . teamName ) ) ,
229+ originalProject
230+ ? originalProject . teams
231+ . map ( ( team ) => ( { ...team , value : team . teamName } ) )
232+ . sort ( ( a , b ) => a . teamName . localeCompare ( b . teamName ) )
233+ : [ ] ,
232234 proposedChanges . teams
233235 . map ( ( team ) => ( { ...team , value : team . teamName } ) )
234236 . sort ( ( a , b ) => a . teamName . localeCompare ( b . teamName ) ) ,
@@ -238,7 +240,7 @@ export const getChangesForProject = (
238240
239241 const workPackageCollections : ComparableCollection [ ] = [ ] ;
240242
241- originalProject . workPackages . forEach ( ( workPackage ) => {
243+ originalProject ? .workPackages . forEach ( ( workPackage ) => {
242244 const newWorkPackage = proposedChanges . workPackageProposedChanges . find ( ( wp ) => wp . name === workPackage . name ) ; // TODO ideally do this based on something unique, maybe add a reference to original wbsElementid or something this also just doesnt work if the name has changed so... I dont see another way to identify them though
243245 if ( newWorkPackage ) {
244246 const workPackageLines = getChangesForWorkPackage ( workPackage , newWorkPackage ) ;
@@ -253,7 +255,7 @@ export const getChangesForProject = (
253255 workPackageCollections . push ( getChangesForWorkPackage ( undefined , wp ) ) ;
254256 } ) ;
255257
256- return [ { label : originalProject . name , lines : projectLines } , ...workPackageCollections ] ;
258+ return [ { label : originalProject ? originalProject . name : '' , lines : projectLines } , ...workPackageCollections ] ;
257259} ;
258260
259261export const getChangesForWorkPackage = (
0 commit comments