fillUrls = (config, handleUrl, handleRequestInit) => {
return {
...config,
datasets: config.datasets.map((datasetDef) => {
return {
...datasetDef,
files: datasetDef.files.map((fileDef) => {
return {
...fileDef,
...(fileDef.url ? ({
url: handleUrl(fileDef.url, fileDef.fileType.includes("zarr"))
}) : {}),
...(fileDef.fileType.includes("zarr") ? ({
requestInit: handleRequestInit()
}) : {}),
...(fileDef.options?.images ? ({
options: {
...fileDef.options,
images: fileDef.options.images.map((imageDef) => {
return {
...imageDef,
url: handleUrl(imageDef.url, false),
...(imageDef.metadata?.omeTiffOffsetsUrl ? ({
metadata: {
...imageDef.metadata,
omeTiffOffsetsUrl: handleUrl(imageDef.metadata.omeTiffOffsetsUrl, false),
},
}) : {}),
};
}),
},
}) : {}),
};
}),
};
}),
};
}