Registry / database / sequelize_enum_utils

sequelize_enum_utils

JSON →
library1.1.0jsnpmunverified

Sequelize Enum Utils is a utility package (version 1.1.0) that simplifies PostgreSQL ENUM manipulation in Sequelize migrations. It provides helper functions for safely adding and removing enum members, handling column updates and default values automatically. Unlike raw SQL or manual migration scripts, this package abstracts common pitfalls like enum value existence checks and column default value handling. It is authored by Federico Antunes and targets projects using Sequelize with PostgreSQL. The release cadence is low; the package is stable with a single major version.

npm install sequelize_enum_utils
INSTALL
IMPORT
SIG · SEQUELIZE_ENUM_UTI
S
sequelize_enum_utils
databasejavascriptv1.1.0
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

enumUtils
const { enumUtils } = require('sequelize_enum_utils');
import { enumUtils } from 'sequelize_enum_utils';
Package uses CommonJS and does not provide ESM exports. Default import is not supported.
addMember
const { enumUtils: { addMember } } = require('sequelize_enum_utils');
const addMember = require('sequelize_enum_utils').addMember;
addMember is a method on the exported object enumUtils, not a direct export.
removeMember
const { enumUtils: { removeMember } } = require('sequelize_enum_utils');
const removeMember = require('sequelize_enum_utils').removeMember;
removeMember is a method on the exported object enumUtils, not a direct export.

Demonstrates adding and removing enum members in a Sequelize migration using enumUtils.addMember and enumUtils.removeMember.

const { enumUtils } = require('sequelize_enum_utils'); module.exports = { up: async (queryInterface, Sequelize) => { await enumUtils.addMember({ queryInterface, enumName: 'enum_transaction_status', newEnumMember: 'CANCELLED', }); await enumUtils.removeMember({ queryInterface, enumName: 'enum_transaction_status', enumMembersToRemove: ['PENDING'], defaultEnumValue: 'ACCEPTED', }); }, down: async (queryInterface, Sequelize) => {}, };
Debug
Known issues
gotchaaddMember throws an error if the enum value already exists.
fix
Wrap in try-catch or check existence before calling addMember.
affects: >=1.0
gotcharemoveMember without defaultEnumValue sets affected columns to NULL.
fix
Always provide a defaultEnumValue to avoid unintended NULL values.
affects: >=1.0
gotchaThe package is CommonJS-only; ES import syntax (import) will fail.
fix
Use require() instead of import.
affects: >=1.0
breakingNo known breaking changes in 1.1.0; API is stable.
affects: >=1.0
Errors
Common errors & fixes
TypeError: enumUtils.addMember is not a function
Incorrect import; direct require('...') instead of destructuring the object.
fix
const { enumUtils } = require('sequelize_enum_utils'); then use enumUtils.addMember(...)
Error: The enum value already exists
addMember called for an existing enum value.
fix
Check if the value exists before adding, or catch the error.
Cannot find module 'sequelize_enum_utils'
Package not installed.
fix
npm install sequelize_enum_utils
Upgrade
Version history
1.1.0latest on npm
Audit
Dependencies

No dependency data recorded yet.

Agent activity
6 hits · last 30 days
node
4
Meta
2
Resources
sequelize_enum_utils — npm install sequelize_enum_utils · libregistry