Skip to content

Commit ebbaaa8

Browse files
committed
feat: Load datatype and modality when building context
1 parent f61b385 commit ebbaaa8

File tree

1 file changed

+12
-7
lines changed

1 file changed

+12
-7
lines changed

src/schema/context.ts

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import type { BIDSFile } from '../types/filetree.ts'
1515
import { FileTree } from '../types/filetree.ts'
1616
import { ColumnsMap } from '../types/columns.ts'
1717
import { readEntities } from './entities.ts'
18+
import { findDatatype } from './datatypes.ts'
1819
import { DatasetIssues } from '../issues/datasetIssues.ts'
1920
import { walkBack } from '../files/inheritance.ts'
2021
import { parseGzip } from '../files/gzip.ts'
@@ -147,16 +148,20 @@ export class BIDSContext implements Context {
147148
dsContext?: BIDSContextDataset,
148149
fileTree?: FileTree,
149150
) {
151+
this.dataset = dsContext ? dsContext : new BIDSContextDataset({ tree: fileTree })
152+
150153
this.filenameRules = []
151154
this.file = file
152-
const bidsEntities = readEntities(file.name)
153-
this.suffix = bidsEntities.suffix
154-
this.extension = bidsEntities.extension
155-
this.entities = bidsEntities.entities
156-
this.dataset = dsContext ? dsContext : new BIDSContextDataset({ tree: fileTree })
155+
156+
const { entities, suffix, extension } = readEntities(file.name)
157+
const { datatype, modality } = findDatatype(file, this.dataset.schema)
158+
this.entities = entities
159+
this.suffix = suffix
160+
this.extension = extension
161+
this.datatype = datatype
162+
this.modality = modality
163+
157164
this.subject = {} as Subject
158-
this.datatype = ''
159-
this.modality = ''
160165
this.sidecar = {}
161166
this.sidecarKeyOrigin = {}
162167
this.columns = new ColumnsMap() as Record<string, string[]>

0 commit comments

Comments
 (0)