Socket
Socket
Sign inDemoInstall

feathers-knex-modeler

Package Overview
Dependencies
Maintainers
1
Versions
26
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

feathers-knex-modeler - npm Package Compare versions

Comparing version 1.4.4 to 1.4.5

6

.vscode/settings.json
{
"standard.enable": true,
"standard.autoFixOnSave": true,
"vetur.format.enable": false,
"javascript.validate.enable": false,
"eslint.autoFixOnSave": false,
"javascript.format.enable": false,
"prettier.eslintIntegration": false,
"eslint.enable": false,
"editor.formatOnSave": false
}

11

package.json
{
"name": "feathers-knex-modeler",
"version": "1.4.4",
"version": "1.4.5",
"description": "This package allows you to easily extend a table while you are developing it without requiring you to drop tables.",

@@ -19,3 +19,3 @@ "main": "src/index.js",

"lodash": "^4.17.15",
"p-queue": "^6.2.1",
"p-queue": "^6.5.0",
"p-wait-for": "^3.1.0"

@@ -25,6 +25,7 @@ },

"chai": "^4.2.0",
"knex": "^0.20.7",
"mocha": "^7.0.0",
"pg": "^7.17.0"
"knex": "^0.21.1",
"mocha": "^8.0.1",
"pg": "^8.2.1",
"standard": "^14.3.4"
}
}

@@ -147,3 +147,3 @@ /* eslint-disable no-console */

const columnToAlter = self.tableColumnUtilityMethod(table, column)
// console.log(table)
switch (typeOfColumn) {

@@ -163,18 +163,34 @@ case 'notNullable': {

case 'references' : {
const referenceArray = argument.split('.')
const referenceTable =referenceArray[0]
const referenceColumn =referenceArray[1]
const constraintName = `${self.name}_${referenceTable}_${referenceColumn}`
try{
debug(`Table: ${self.name} Constraint name: ${constraintName}`)
const alterTableRaw = `alter table "${self.name}" add constraint "${constraintName}" foreign key ("${column.name}") references "${referenceTable}" ("${referenceColumn}")`
debug(`Table: ${self.name} constraint creation: ${alterTableRaw}`)
await db.raw(alterTableRaw)
await columnToAlter.references(referenceColumn).on(referenceTable)
}catch(err){
const errorMessage = _.defaultTo(_.get(err,'message'),'')
if(errorMessage.indexOf('already exists')!==-1){
debug(`Failed to create constraint because it already exists. ${err || ''}`)
}else{
throw new Error(`Failed to create constraint. ${err||''}`)
}
}
if (hasOnDelete !== false && hasOnUpdate !== false) {
self.debug(`Column: ${column.name}, references onUpdate and onDelete`)
columnToAlter.references(argument).onDelete(hasOnDelete.argument).onUpdate(hasOnUpdate.argument)
columnToAlter.onDelete(hasOnDelete.argument).onUpdate(hasOnUpdate.argument)
}
if (hasOnDelete !== false && hasOnUpdate === false) {
self.debug(`Column: ${column.name}, references onDelete`)
columnToAlter.references(argument).onDelete(hasOnDelete.argument)
columnToAlter.onDelete(hasOnDelete.argument)
}
if (hasOnUpdate !== false && hasOnDelete === false) {
self.debug(`Column: ${column.name}, references onUpdate`)
columnToAlter.references(argument).onUpdate(hasOnUpdate.argument)
columnToAlter.onUpdate(hasOnUpdate.argument)
}
if (hasOnDelete === false && hasOnUpdate === false) {
self.debug(`Column: ${column.name}, references no onUpdate or onDelete`)
columnToAlter.references(argument)
}
break

@@ -181,0 +197,0 @@ }

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc