1- import { parse } from 'wdf-parser' ;
2-
31import { Analysis } from 'common-spectrum' ;
2+ import { parse } from 'wdf-parser' ;
43
54export function fromWDF ( arrayBuffer ) {
65 let analysis = new Analysis ( ) ;
@@ -31,9 +30,9 @@ export function fromWDF(arrayBuffer) {
3130}
3231
3332function getXVariable ( blocks ) {
34- const xBlock = blocks . filter (
33+ const xBlock = blocks . find (
3534 ( block ) => block . blockType === 'WDF_BLOCKID_XLIST' ,
36- ) [ 0 ] ;
35+ ) ;
3736 return {
3837 label : xBlock . xList . units . replace ( / ( .* ) \( ( .* ) \) / , '$1' ) ,
3938 units : xBlock . xList . units . replace ( / ( .* ) \( ( .* ) \) / , '$2' ) ,
@@ -42,9 +41,9 @@ function getXVariable(blocks) {
4241}
4342
4443function getYVariables ( blocks ) {
45- const dataBlock = blocks . filter (
44+ const dataBlock = blocks . find (
4645 ( block ) => block . blockType === 'WDF_BLOCKID_DATA' ,
47- ) [ 0 ] ;
46+ ) ;
4847 const yVariables = [ ] ;
4948 for ( let spectrum of dataBlock . spectrum ) {
5049 yVariables . push ( {
@@ -56,17 +55,13 @@ function getYVariables(blocks) {
5655}
5756
5857function getOrigins ( blocks ) {
59- const originBlock = blocks . filter (
58+ const originBlock = blocks . find (
6059 ( block ) => block . blockType === 'WDF_BLOCKID_ORIGIN' ,
61- ) [ 0 ] ;
60+ ) ;
6261 if ( ! originBlock ) return [ ] ;
6362
64- const xPositions = originBlock . origins . filter (
65- ( entry ) => entry . label === 'X' ,
66- ) [ 0 ] ;
67- const yPositions = originBlock . origins . filter (
68- ( entry ) => entry . label === 'Y' ,
69- ) [ 0 ] ;
63+ const xPositions = originBlock . origins . find ( ( entry ) => entry . label === 'X' ) ;
64+ const yPositions = originBlock . origins . find ( ( entry ) => entry . label === 'Y' ) ;
7065
7166 if ( ! xPositions || ! yPositions ) return [ ] ;
7267
0 commit comments