@flowmap.gl/data 8.0.0-alpha.14 → 8.0.0-alpha.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"FlowmapDataProvider.d.ts","sourceRoot":"","sources":["../../src/provider/FlowmapDataProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAE,OAAO,EAAqB,cAAc,EAAC,MAAM,IAAI,CAAC;AAC7E,OAAO,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EACL,WAAW,EACX,WAAW,EACX,oBAAoB,EACpB,UAAU,EACV,aAAa,EACd,MAAM,UAAU,CAAC;AAElB,MAAM,CAAC,OAAO,WAAW,mBAAmB,CAAC,CAAC,EAAE,CAAC;IAC/C,YAAY,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;IAE1D,eAAe,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAI3D,uBAAuB,CACrB,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GACrB,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC;IAItC,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,aAAa,GAAG,SAAS,CAAC,CAAC;IAEtE,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,OAAO,GAAG,SAAS,CAAC,CAAC;IAE9D,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,WAAW,GAAG,SAAS,CAAC,CAAC;IAEtE,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAAC;IAQtE,aAAa,IAAI,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAAC;CAClD;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,CAAC,EAChC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACxB,IAAI,IAAI,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAQ3B;AAED,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,CAAC,EACxC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAChC,YAAY,IAAI,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAU3C"}
1
+ {"version":3,"file":"FlowmapDataProvider.d.ts","sourceRoot":"","sources":["../../src/provider/FlowmapDataProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAE,OAAO,EAAqB,cAAc,EAAC,MAAM,IAAI,CAAC;AAC7E,OAAO,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EACL,WAAW,EACX,WAAW,EACX,oBAAoB,EACpB,UAAU,EACV,aAAa,EACd,MAAM,UAAU,CAAC;AAElB,MAAM,CAAC,OAAO,WAAW,mBAAmB,CAAC,CAAC,EAAE,CAAC;IAC/C,YAAY,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;IAE1D,eAAe,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAI3D,uBAAuB,CACrB,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GACrB,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC;IAItC,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,aAAa,GAAG,SAAS,CAAC,CAAC;IAEtE,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,OAAO,GAAG,SAAS,CAAC,CAAC;IAE9D,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,WAAW,GAAG,SAAS,CAAC,CAAC;IAEtE,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAAC;IAQtE,aAAa,IAAI,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAAC;CAClD;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,CAAC,EAChC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACxB,IAAI,IAAI,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAO3B;AAED,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,CAAC,EACxC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAChC,YAAY,IAAI,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAU3C"}
@@ -1,9 +1,9 @@
1
1
  export function isFlowmapData(data) {
2
- return (data &&
3
- data.locations &&
4
- data.flows &&
5
- Array.isArray(data.locations) &&
6
- Array.isArray(data.flows));
2
+ return (data && data.locations && data.flows
3
+ // TODO: test that they are iterable
4
+ // Array.isArray(data.locations) &&
5
+ // Array.isArray(data.flows)
6
+ );
7
7
  }
8
8
  export function isFlowmapDataProvider(dataProvider) {
9
9
  return (dataProvider &&
@@ -14,4 +14,4 @@ export function isFlowmapDataProvider(dataProvider) {
14
14
  typeof dataProvider.getLocationByIndex === 'function' &&
15
15
  typeof dataProvider.getLayersData === 'function');
16
16
  }
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRmxvd21hcERhdGFQcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wcm92aWRlci9GbG93bWFwRGF0YVByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXdDQSxNQUFNLFVBQVUsYUFBYSxDQUMzQixJQUF5QjtJQUV6QixPQUFPLENBQ0wsSUFBSTtRQUNKLElBQUksQ0FBQyxTQUFTO1FBQ2QsSUFBSSxDQUFDLEtBQUs7UUFDVixLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDN0IsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQzFCLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxVQUFVLHFCQUFxQixDQUNuQyxZQUFpQztJQUVqQyxPQUFPLENBQ0wsWUFBWTtRQUNaLE9BQU8sWUFBWSxDQUFDLGVBQWUsS0FBSyxVQUFVO1FBQ2xELE9BQU8sWUFBWSxDQUFDLHVCQUF1QixLQUFLLFVBQVU7UUFDMUQsT0FBTyxZQUFZLENBQUMsY0FBYyxLQUFLLFVBQVU7UUFDakQsT0FBTyxZQUFZLENBQUMsZUFBZSxLQUFLLFVBQVU7UUFDbEQsT0FBTyxZQUFZLENBQUMsa0JBQWtCLEtBQUssVUFBVTtRQUNyRCxPQUFPLFlBQVksQ0FBQyxhQUFhLEtBQUssVUFBVSxDQUNqRCxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWdncmVnYXRlRmxvdywgQ2x1c3RlciwgTG9jYXRpb25BY2Nlc3NvcnMsIExvY2F0aW9uVG90YWxzfSBmcm9tICcuLic7XG5pbXBvcnQge0Zsb3dtYXBTdGF0ZX0gZnJvbSAnLi4vRmxvd21hcFN0YXRlJztcbmltcG9ydCB7XG4gIENsdXN0ZXJOb2RlLFxuICBGbG93bWFwRGF0YSxcbiAgRmxvd21hcERhdGFBY2Nlc3NvcnMsXG4gIExheWVyc0RhdGEsXG4gIFZpZXdwb3J0UHJvcHMsXG59IGZyb20gJy4uL3R5cGVzJztcblxuZXhwb3J0IGRlZmF1bHQgaW50ZXJmYWNlIEZsb3dtYXBEYXRhUHJvdmlkZXI8TCwgRj4ge1xuICBzZXRBY2Nlc3NvcnMoYWNjZXNzb3JzOiBGbG93bWFwRGF0YUFjY2Vzc29yczxMLCBGPik6IHZvaWQ7XG5cbiAgc2V0Rmxvd21hcFN0YXRlKGZsb3dtYXBTdGF0ZTogRmxvd21hcFN0YXRlKTogUHJvbWlzZTx2b2lkPjtcblxuICAvLyBjbGVhckRhdGEoKTogdm9pZDtcblxuICBnZXRWaWV3cG9ydEZvckxvY2F0aW9ucyhcbiAgICBkaW1zOiBbbnVtYmVyLCBudW1iZXJdLFxuICApOiBQcm9taXNlPFZpZXdwb3J0UHJvcHMgfCB1bmRlZmluZWQ+O1xuXG4gIC8vIGdldEZsb3dUb3RhbHMoKTogUHJvbWlzZTxGbG93VG90YWxzPjtcblxuICBnZXRGbG93QnlJbmRleChpbmRleDogbnVtYmVyKTogUHJvbWlzZTxGIHwgQWdncmVnYXRlRmxvdyB8IHVuZGVmaW5lZD47XG5cbiAgZ2V0TG9jYXRpb25CeUlkKGlkOiBzdHJpbmcpOiBQcm9taXNlPEwgfCBDbHVzdGVyIHwgdW5kZWZpbmVkPjtcblxuICBnZXRMb2NhdGlvbkJ5SW5kZXgoaWR4OiBudW1iZXIpOiBQcm9taXNlPEwgfCBDbHVzdGVyTm9kZSB8IHVuZGVmaW5lZD47XG5cbiAgZ2V0VG90YWxzRm9yTG9jYXRpb24oaWQ6IHN0cmluZyk6IFByb21pc2U8TG9jYXRpb25Ub3RhbHMgfCB1bmRlZmluZWQ+O1xuXG4gIC8vIGdldExvY2F0aW9uc0luQmJveChcbiAgLy8gICBiYm94OiBbbnVtYmVyLCBudW1iZXIsIG51bWJlciwgbnVtYmVyXSxcbiAgLy8gKTogUHJvbWlzZTxBcnJheTxGbG93TG9jYXRpb24gfCBDbHVzdGVyTm9kZT4gfCB1bmRlZmluZWQ+O1xuXG4gIC8vIGdldExvY2F0aW9uc0ZvclNlYXJjaEJveCgpOiBQcm9taXNlPChGbG93TG9jYXRpb24gfCBDbHVzdGVyTm9kZSlbXSB8IHVuZGVmaW5lZD47XG5cbiAgZ2V0TGF5ZXJzRGF0YSgpOiBQcm9taXNlPExheWVyc0RhdGEgfCB1bmRlZmluZWQ+O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNGbG93bWFwRGF0YTxMLCBGPihcbiAgZGF0YTogUmVjb3JkPHN0cmluZywgYW55Pixcbik6IGRhdGEgaXMgRmxvd21hcERhdGE8TCwgRj4ge1xuICByZXR1cm4gKFxuICAgIGRhdGEgJiZcbiAgICBkYXRhLmxvY2F0aW9ucyAmJlxuICAgIGRhdGEuZmxvd3MgJiZcbiAgICBBcnJheS5pc0FycmF5KGRhdGEubG9jYXRpb25zKSAmJlxuICAgIEFycmF5LmlzQXJyYXkoZGF0YS5mbG93cylcbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzRmxvd21hcERhdGFQcm92aWRlcjxMLCBGPihcbiAgZGF0YVByb3ZpZGVyOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LFxuKTogZGF0YVByb3ZpZGVyIGlzIEZsb3dtYXBEYXRhUHJvdmlkZXI8TCwgRj4ge1xuICByZXR1cm4gKFxuICAgIGRhdGFQcm92aWRlciAmJlxuICAgIHR5cGVvZiBkYXRhUHJvdmlkZXIuc2V0Rmxvd21hcFN0YXRlID09PSAnZnVuY3Rpb24nICYmXG4gICAgdHlwZW9mIGRhdGFQcm92aWRlci5nZXRWaWV3cG9ydEZvckxvY2F0aW9ucyA9PT0gJ2Z1bmN0aW9uJyAmJlxuICAgIHR5cGVvZiBkYXRhUHJvdmlkZXIuZ2V0Rmxvd0J5SW5kZXggPT09ICdmdW5jdGlvbicgJiZcbiAgICB0eXBlb2YgZGF0YVByb3ZpZGVyLmdldExvY2F0aW9uQnlJZCA9PT0gJ2Z1bmN0aW9uJyAmJlxuICAgIHR5cGVvZiBkYXRhUHJvdmlkZXIuZ2V0TG9jYXRpb25CeUluZGV4ID09PSAnZnVuY3Rpb24nICYmXG4gICAgdHlwZW9mIGRhdGFQcm92aWRlci5nZXRMYXllcnNEYXRhID09PSAnZnVuY3Rpb24nXG4gICk7XG59XG4iXX0=
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRmxvd21hcERhdGFQcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wcm92aWRlci9GbG93bWFwRGF0YVByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXdDQSxNQUFNLFVBQVUsYUFBYSxDQUMzQixJQUF5QjtJQUV6QixPQUFPLENBQ0wsSUFBSSxJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLEtBQUs7SUFDcEMsb0NBQW9DO0lBQ3BDLG1DQUFtQztJQUNuQyw0QkFBNEI7S0FDN0IsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUscUJBQXFCLENBQ25DLFlBQWlDO0lBRWpDLE9BQU8sQ0FDTCxZQUFZO1FBQ1osT0FBTyxZQUFZLENBQUMsZUFBZSxLQUFLLFVBQVU7UUFDbEQsT0FBTyxZQUFZLENBQUMsdUJBQXVCLEtBQUssVUFBVTtRQUMxRCxPQUFPLFlBQVksQ0FBQyxjQUFjLEtBQUssVUFBVTtRQUNqRCxPQUFPLFlBQVksQ0FBQyxlQUFlLEtBQUssVUFBVTtRQUNsRCxPQUFPLFlBQVksQ0FBQyxrQkFBa0IsS0FBSyxVQUFVO1FBQ3JELE9BQU8sWUFBWSxDQUFDLGFBQWEsS0FBSyxVQUFVLENBQ2pELENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBZ2dyZWdhdGVGbG93LCBDbHVzdGVyLCBMb2NhdGlvbkFjY2Vzc29ycywgTG9jYXRpb25Ub3RhbHN9IGZyb20gJy4uJztcbmltcG9ydCB7Rmxvd21hcFN0YXRlfSBmcm9tICcuLi9GbG93bWFwU3RhdGUnO1xuaW1wb3J0IHtcbiAgQ2x1c3Rlck5vZGUsXG4gIEZsb3dtYXBEYXRhLFxuICBGbG93bWFwRGF0YUFjY2Vzc29ycyxcbiAgTGF5ZXJzRGF0YSxcbiAgVmlld3BvcnRQcm9wcyxcbn0gZnJvbSAnLi4vdHlwZXMnO1xuXG5leHBvcnQgZGVmYXVsdCBpbnRlcmZhY2UgRmxvd21hcERhdGFQcm92aWRlcjxMLCBGPiB7XG4gIHNldEFjY2Vzc29ycyhhY2Nlc3NvcnM6IEZsb3dtYXBEYXRhQWNjZXNzb3JzPEwsIEY+KTogdm9pZDtcblxuICBzZXRGbG93bWFwU3RhdGUoZmxvd21hcFN0YXRlOiBGbG93bWFwU3RhdGUpOiBQcm9taXNlPHZvaWQ+O1xuXG4gIC8vIGNsZWFyRGF0YSgpOiB2b2lkO1xuXG4gIGdldFZpZXdwb3J0Rm9yTG9jYXRpb25zKFxuICAgIGRpbXM6IFtudW1iZXIsIG51bWJlcl0sXG4gICk6IFByb21pc2U8Vmlld3BvcnRQcm9wcyB8IHVuZGVmaW5lZD47XG5cbiAgLy8gZ2V0Rmxvd1RvdGFscygpOiBQcm9taXNlPEZsb3dUb3RhbHM+O1xuXG4gIGdldEZsb3dCeUluZGV4KGluZGV4OiBudW1iZXIpOiBQcm9taXNlPEYgfCBBZ2dyZWdhdGVGbG93IHwgdW5kZWZpbmVkPjtcblxuICBnZXRMb2NhdGlvbkJ5SWQoaWQ6IHN0cmluZyk6IFByb21pc2U8TCB8IENsdXN0ZXIgfCB1bmRlZmluZWQ+O1xuXG4gIGdldExvY2F0aW9uQnlJbmRleChpZHg6IG51bWJlcik6IFByb21pc2U8TCB8IENsdXN0ZXJOb2RlIHwgdW5kZWZpbmVkPjtcblxuICBnZXRUb3RhbHNGb3JMb2NhdGlvbihpZDogc3RyaW5nKTogUHJvbWlzZTxMb2NhdGlvblRvdGFscyB8IHVuZGVmaW5lZD47XG5cbiAgLy8gZ2V0TG9jYXRpb25zSW5CYm94KFxuICAvLyAgIGJib3g6IFtudW1iZXIsIG51bWJlciwgbnVtYmVyLCBudW1iZXJdLFxuICAvLyApOiBQcm9taXNlPEFycmF5PEZsb3dMb2NhdGlvbiB8IENsdXN0ZXJOb2RlPiB8IHVuZGVmaW5lZD47XG5cbiAgLy8gZ2V0TG9jYXRpb25zRm9yU2VhcmNoQm94KCk6IFByb21pc2U8KEZsb3dMb2NhdGlvbiB8IENsdXN0ZXJOb2RlKVtdIHwgdW5kZWZpbmVkPjtcblxuICBnZXRMYXllcnNEYXRhKCk6IFByb21pc2U8TGF5ZXJzRGF0YSB8IHVuZGVmaW5lZD47XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0Zsb3dtYXBEYXRhPEwsIEY+KFxuICBkYXRhOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LFxuKTogZGF0YSBpcyBGbG93bWFwRGF0YTxMLCBGPiB7XG4gIHJldHVybiAoXG4gICAgZGF0YSAmJiBkYXRhLmxvY2F0aW9ucyAmJiBkYXRhLmZsb3dzXG4gICAgLy8gVE9ETzogdGVzdCB0aGF0IHRoZXkgYXJlIGl0ZXJhYmxlXG4gICAgLy8gQXJyYXkuaXNBcnJheShkYXRhLmxvY2F0aW9ucykgJiZcbiAgICAvLyBBcnJheS5pc0FycmF5KGRhdGEuZmxvd3MpXG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0Zsb3dtYXBEYXRhUHJvdmlkZXI8TCwgRj4oXG4gIGRhdGFQcm92aWRlcjogUmVjb3JkPHN0cmluZywgYW55Pixcbik6IGRhdGFQcm92aWRlciBpcyBGbG93bWFwRGF0YVByb3ZpZGVyPEwsIEY+IHtcbiAgcmV0dXJuIChcbiAgICBkYXRhUHJvdmlkZXIgJiZcbiAgICB0eXBlb2YgZGF0YVByb3ZpZGVyLnNldEZsb3dtYXBTdGF0ZSA9PT0gJ2Z1bmN0aW9uJyAmJlxuICAgIHR5cGVvZiBkYXRhUHJvdmlkZXIuZ2V0Vmlld3BvcnRGb3JMb2NhdGlvbnMgPT09ICdmdW5jdGlvbicgJiZcbiAgICB0eXBlb2YgZGF0YVByb3ZpZGVyLmdldEZsb3dCeUluZGV4ID09PSAnZnVuY3Rpb24nICYmXG4gICAgdHlwZW9mIGRhdGFQcm92aWRlci5nZXRMb2NhdGlvbkJ5SWQgPT09ICdmdW5jdGlvbicgJiZcbiAgICB0eXBlb2YgZGF0YVByb3ZpZGVyLmdldExvY2F0aW9uQnlJbmRleCA9PT0gJ2Z1bmN0aW9uJyAmJlxuICAgIHR5cGVvZiBkYXRhUHJvdmlkZXIuZ2V0TGF5ZXJzRGF0YSA9PT0gJ2Z1bmN0aW9uJ1xuICApO1xufVxuIl19
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flowmap.gl/data",
3
- "version": "8.0.0-alpha.14",
3
+ "version": "8.0.0-alpha.15",
4
4
  "main": "dist/index.js",
5
5
  "module": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -13,7 +13,7 @@
13
13
  "prepare": "yarn build"
14
14
  },
15
15
  "dependencies": {
16
- "@flowmap.gl/data": "^8.0.0-alpha.14",
16
+ "@flowmap.gl/data": "^8.0.0-alpha.15",
17
17
  "d3-array": "^3.0.2",
18
18
  "d3-collection": "^1.0.7",
19
19
  "d3-color": "^3.0.1",
@@ -42,7 +42,7 @@
42
42
  "@types/mapbox__geo-viewport": "^0.4.1",
43
43
  "@types/seedrandom": "^3.0.1"
44
44
  },
45
- "gitHead": "0a77d66dc556ac5c4d678df4910b65149a928450",
45
+ "gitHead": "1620e0bc1613515f3b5c65d261358d8a265fb617",
46
46
  "publishConfig": {
47
47
  "access": "public"
48
48
  }
@@ -42,11 +42,10 @@ export function isFlowmapData<L, F>(
42
42
  data: Record<string, any>,
43
43
  ): data is FlowmapData<L, F> {
44
44
  return (
45
- data &&
46
- data.locations &&
47
- data.flows &&
48
- Array.isArray(data.locations) &&
49
- Array.isArray(data.flows)
45
+ data && data.locations && data.flows
46
+ // TODO: test that they are iterable
47
+ // Array.isArray(data.locations) &&
48
+ // Array.isArray(data.flows)
50
49
  );
51
50
  }
52
51