(tableName, attr, dataType, options)
| 759 | } |
| 760 | |
| 761 | pgEnum(tableName, attr, dataType, options) { |
| 762 | const enumName = this.pgEnumName(tableName, attr, options); |
| 763 | let values; |
| 764 | |
| 765 | if (dataType.values) { |
| 766 | values = `ENUM(${dataType.values.map(value => this.escape(value)).join(class="st">', ')})`; |
| 767 | } else { |
| 768 | values = dataType.toString().match(/^ENUM\(.+\)/)[0]; |
| 769 | } |
| 770 | |
| 771 | let sql = `CREATE TYPE ${enumName} AS ${values};`; |
| 772 | if (!!options && options.force === true) { |
| 773 | sql = this.pgEnumDrop(tableName, attr) + sql; |
| 774 | } |
| 775 | return sql; |
| 776 | } |
| 777 | |
| 778 | pgEnumAdd(tableName, attr, value, options) { |
| 779 | const enumName = this.pgEnumName(tableName, attr); |
no test coverage detected