Skip to content

Commit d1b289e

Browse files
committed
fix: correct custom data type resolution
1 parent 5762f20 commit d1b289e

File tree

2 files changed

+14
-2
lines changed

2 files changed

+14
-2
lines changed

src/utilities/createLoaderTypePropertyDeclaration.js

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,14 @@
11
// @flow
22

3+
import Logger from '../Logger';
34
import formatTypeName from './formatTypeName';
45
import isNumberType from './isNumberType';
56
import isStringType from './isStringType';
67

8+
const log = Logger.child({
9+
namespace: 'createLoaderTypePropertyDeclaration'
10+
});
11+
712
export default (loaderName: string, dataTypeName: string, resourceName: string, resultIsArray: boolean) => {
813
let keyType: 'number' | 'string';
914

@@ -12,7 +17,14 @@ export default (loaderName: string, dataTypeName: string, resourceName: string,
1217
} else if (isStringType(dataTypeName)) {
1318
keyType = 'string';
1419
} else {
15-
throw new Error('Unexpected state.');
20+
log.error({
21+
dataTypeName,
22+
loaderName,
23+
resourceName,
24+
resultIsArray
25+
}, 'key type cannot be resolved to a string or number');
26+
27+
throw new Error('Cannot resolve key type.');
1628
}
1729

1830
if (resultIsArray) {

src/utilities/generateFlowTypeDocument.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ const generateFlowTypeDeclarationBody = (columns: $ReadOnlyArray<ColumnType>, da
1717
const propertyDeclarations = [];
1818

1919
for (const column of sortedColumns) {
20-
const propertyDataType = dataTypeMap[column.dataType] ? dataTypeMap[column.dataType] : getFlowType(column.dataType);
20+
const propertyDataType = dataTypeMap[column.dataType] ? getFlowType(dataTypeMap[column.dataType]) : getFlowType(column.dataType);
2121

2222
propertyDeclarations.push('+' + formatPropertyName(column.name) + ': ' + propertyDataType + (column.isNullable ? ' | null' : ''));
2323
}

0 commit comments

Comments
 (0)