@@ -2,38 +2,47 @@ function ApimapFieldTypeDetector(column, options) {
2
2
const DataTypes = options . sequelize ;
3
3
4
4
this . perform = ( ) => {
5
- if ( column . type instanceof DataTypes . STRING ||
6
- column . type instanceof DataTypes . TEXT ||
7
- column . type instanceof DataTypes . UUID ||
8
- column . type instanceof DataTypes . UUIDV1 ||
9
- column . type instanceof DataTypes . UUIDV4 ||
10
- ( DataTypes . CITEXT && column . type instanceof DataTypes . CITEXT ) ||
11
- column . type === 'citext' ) { // TODO: Remove 'citext' once Sequelize 4 has been unsupported.
5
+ if ( column . type instanceof DataTypes . STRING
6
+ || column . type instanceof DataTypes . TEXT
7
+ || column . type instanceof DataTypes . UUID
8
+ || column . type instanceof DataTypes . UUIDV1
9
+ || column . type instanceof DataTypes . UUIDV4
10
+ || ( DataTypes . CITEXT && column . type instanceof DataTypes . CITEXT )
11
+ || column . type === 'citext' ) { // TODO: Remove 'citext' once Sequelize 4 has been unsupported.
12
12
return 'String' ;
13
- } else if ( column . type instanceof DataTypes . ENUM ) {
13
+ }
14
+ if ( column . type instanceof DataTypes . ENUM ) {
14
15
return 'Enum' ;
15
- } else if ( column . type instanceof DataTypes . BOOLEAN ) {
16
+ }
17
+ if ( column . type instanceof DataTypes . BOOLEAN ) {
16
18
return 'Boolean' ;
17
- } else if ( column . type instanceof DataTypes . DATEONLY ) {
19
+ }
20
+ if ( column . type instanceof DataTypes . DATEONLY ) {
18
21
return 'Dateonly' ;
19
- } else if ( column . type instanceof DataTypes . DATE ) {
22
+ }
23
+ if ( column . type instanceof DataTypes . DATE ) {
20
24
return 'Date' ;
21
- } else if ( column . type instanceof DataTypes . INTEGER ||
22
- column . type instanceof DataTypes . FLOAT ||
23
- column . type instanceof DataTypes [ 'DOUBLE PRECISION' ] ||
24
- column . type instanceof DataTypes . BIGINT ||
25
- column . type instanceof DataTypes . DECIMAL ) {
25
+ }
26
+ if ( column . type instanceof DataTypes . INTEGER
27
+ || column . type instanceof DataTypes . FLOAT
28
+ || column . type instanceof DataTypes [ 'DOUBLE PRECISION' ]
29
+ || column . type instanceof DataTypes . BIGINT
30
+ || column . type instanceof DataTypes . DECIMAL ) {
26
31
return 'Number' ;
27
- } else if ( column . type instanceof DataTypes . JSONB ||
28
- column . type instanceof DataTypes . JSON ) {
32
+ }
33
+ if ( column . type instanceof DataTypes . JSONB
34
+ || column . type instanceof DataTypes . JSON ) {
29
35
return 'Json' ;
30
- } else if ( column . type instanceof DataTypes . TIME ) {
36
+ }
37
+ if ( column . type instanceof DataTypes . TIME ) {
31
38
return 'Time' ;
32
- } else if ( column . type instanceof DataTypes . GEOMETRY &&
33
- column . type . type === 'POINT' ) {
39
+ }
40
+ if ( column . type instanceof DataTypes . GEOMETRY
41
+ && column . type . type === 'POINT' ) {
34
42
return 'Point' ;
43
+ }
35
44
// NOTICE: Detect Array types (Array(String), Array(Integer), ...)
36
- } else if ( column . type . type ) {
45
+ if ( column . type . type ) {
37
46
return [ new ApimapFieldTypeDetector ( { type : column . type . type } , options ) . perform ( ) ] ;
38
47
}
39
48
return null ;
0 commit comments