@@ -6,6 +6,7 @@ import type { InstrumentRecordsExport } from '@opendatacapture/schemas/instrumen
66import { removeSubjectIdScope } from '@opendatacapture/subject-utils' ;
77
88import type { ChunkCompleteData , InitData , ParentMessage , RecordType } from './thread-types' ;
9+ import { isArray } from 'lodash-es' ;
910
1011type ExpandDataType =
1112 | {
@@ -59,17 +60,22 @@ function handleChunkComplete(_data: ChunkCompleteData) {
5960 const instrumentsMap = initData ;
6061
6162 const processRecord = ( record : RecordType ) : InstrumentRecordsExport => {
63+ const instrument = instrumentsMap . get ( record . instrumentId ) ! ;
64+
6265 if ( ! record . computedMeasures ) return [ ] ;
6366
64- const instrument = instrumentsMap . get ( record . instrumentId ) ! ;
67+ // const instrument = instrumentsMap.get(record.instrumentId)!;
6568 const rows : InstrumentRecordsExport = [ ] ;
6669
6770 for ( const [ measureKey , measureValue ] of Object . entries ( record . computedMeasures ) ) {
6871 if ( measureValue == null ) continue ;
6972
7073 if ( ! Array . isArray ( measureValue ) ) {
7174 rows . push ( {
72- groupId : record . subject . groupIds [ 0 ] ?? DEFAULT_GROUP_NAME ,
75+ groupId :
76+ isArray ( record . subject . groupIds ) && record . subject . groupIds [ 0 ]
77+ ? record . subject . groupIds [ 0 ]
78+ : DEFAULT_GROUP_NAME ,
7379 instrumentEdition : instrument . edition ,
7480 instrumentName : instrument . name ,
7581 measure : measureKey ,
@@ -94,7 +100,10 @@ function handleChunkComplete(_data: ChunkCompleteData) {
94100 throw new Error ( `exportRecords: ${ instrument . name } .${ measureKey } — ${ entry . message } ` ) ;
95101 }
96102 rows . push ( {
97- groupId : record . subject . groupIds [ 0 ] ?? DEFAULT_GROUP_NAME ,
103+ groupId :
104+ isArray ( record . subject . groupIds ) && record . subject . groupIds [ 0 ]
105+ ? record . subject . groupIds [ 0 ]
106+ : DEFAULT_GROUP_NAME ,
98107 instrumentEdition : instrument . edition ,
99108 instrumentName : instrument . name ,
100109 measure : `${ measureKey } - ${ entry . measure } ` ,
@@ -110,7 +119,6 @@ function handleChunkComplete(_data: ChunkCompleteData) {
110119 } ) ;
111120 }
112121 }
113-
114122 return rows ;
115123 } ;
116124
0 commit comments