From 8cd33563aed3cd73c2705a091bd5484d84f60c1c Mon Sep 17 00:00:00 2001 From: Jim Laurie Date: Mon, 14 May 2018 12:05:09 +0200 Subject: [PATCH 1/5] Harmonize model templates --- packages/strapi-generate-model/lib/before.js | 6 +++ .../bookshelf/model.settings.template | 8 ++- .../templates/bookshelf/model.template | 45 +++++----------- .../mongoose/model.settings.template | 11 +++- .../templates/mongoose/model.template | 54 +++++++------------ .../services/UsersPermissions.js | 2 +- 6 files changed, 54 insertions(+), 72 deletions(-) diff --git a/packages/strapi-generate-model/lib/before.js b/packages/strapi-generate-model/lib/before.js index b3bc7b56ff..32b30ed3c8 100755 --- a/packages/strapi-generate-model/lib/before.js +++ b/packages/strapi-generate-model/lib/before.js @@ -86,6 +86,12 @@ module.exports = (scope, cb) => { }; }); + // Set collectionName + scope.collectionName = _.has(scope.args, 'collectionName') ? scope.args.collectionName : undefined; + + // Set description + scope.description = _.has(scope.args, 'description') ? scope.args.description : undefined; + // Handle invalid action arguments. // Send back invalidActions. if (invalidAttributes.length) { diff --git a/packages/strapi-generate-model/templates/bookshelf/model.settings.template b/packages/strapi-generate-model/templates/bookshelf/model.settings.template index 12112c36cc..8afd29e826 100755 --- a/packages/strapi-generate-model/templates/bookshelf/model.settings.template +++ b/packages/strapi-generate-model/templates/bookshelf/model.settings.template @@ -1,12 +1,16 @@ { "connection": "<%= connection %>", - "collectionName": "<%= idPluralized %>", + "collectionName": "<%= collectionName || idPluralized %>", + "info": { + "name": "<%= id %>", + "description": "<%= description %>" + }, "options": { "increments": true, "timestamps": true, "comment": "" }, "attributes": { -<%= attributes %> + <%= attributes %> } } diff --git a/packages/strapi-generate-model/templates/bookshelf/model.template b/packages/strapi-generate-model/templates/bookshelf/model.template index 300baeec68..6a197959cd 100755 --- a/packages/strapi-generate-model/templates/bookshelf/model.template +++ b/packages/strapi-generate-model/templates/bookshelf/model.template @@ -5,64 +5,43 @@ */ module.exports = { - // Before saving a value. // Fired before an `insert` or `update` query. - // beforeSave: (model, attrs, options) => { - // return new Promise(); - // }, + // beforeSave: async (model, attrs, options) => {}, // After saving a value. // Fired after an `insert` or `update` query. - // afterSave: (model, response, options) => { - // return new Promise(); - // }, + // afterSave: async (model, response, options) => {}, // Before fetching a value. // Fired before a `fetch` operation. - // beforeFetch: (model, columns, options) => { - // return new Promise(); - // }, + // beforeFetch: async (model, columns, options) => {}, // After fetching a value. // Fired after a `fetch` operation. - // afterFetch: (model, response, options) => { - // return new Promise(); - // }, + // afterFetch: async (model, response, options) => {}, // Before creating a value. - // Fired before `insert` query. - // beforeCreate: (model, attrs, options) => { - // return new Promise(); - // }, + // Fired before an `insert` query. + // beforeCreate: async (model, attrs, options) => {}, // After creating a value. - // Fired after `insert` query. - // afterCreate: (model, attrs, options) => { - // return new Promise(); - // }, + // Fired after an `insert` query. + // afterCreate: async (model, attrs, options) => {}, // Before updating a value. // Fired before an `update` query. - // beforeUpdate: (model, attrs, options) => { - // return new Promise(); - // }, + // beforeUpdate: async (model, attrs, options) => {}, // After updating a value. // Fired after an `update` query. - // afterUpdate: (model, attrs, options) => { - // return new Promise(); - // }, + // afterUpdate: async (model, attrs, options) => {}, // Before destroying a value. // Fired before a `delete` query. - // beforeDestroy: (model, attrs, options) => { - // return new Promise(); - // }, + // beforeDestroy: async (model, attrs, options) => {}, // After destroying a value. // Fired after a `delete` query. - // afterDestroy: (model, attrs, options) => { - // return new Promise(); - // } + // afterDestroy: async (model, attrs, options) => {} }; diff --git a/packages/strapi-generate-model/templates/mongoose/model.settings.template b/packages/strapi-generate-model/templates/mongoose/model.settings.template index 10ab60df58..99bfc2e48a 100755 --- a/packages/strapi-generate-model/templates/mongoose/model.settings.template +++ b/packages/strapi-generate-model/templates/mongoose/model.settings.template @@ -1,7 +1,14 @@ { "connection": "<%= connection %>", - "collectionName": "<%= idPluralized %>", + "collectionName": "<%= collectionName || '' %>", + "info": { + "name": "<%= id %>", + "description": "<%= description %>" + }, + "options": { + "timestamps": true + }, "attributes": { -<%= attributes %> + <%= attributes %> } } diff --git a/packages/strapi-generate-model/templates/mongoose/model.template b/packages/strapi-generate-model/templates/mongoose/model.template index 300baeec68..300dc5a200 100755 --- a/packages/strapi-generate-model/templates/mongoose/model.template +++ b/packages/strapi-generate-model/templates/mongoose/model.template @@ -5,64 +5,50 @@ */ module.exports = { - // Before saving a value. // Fired before an `insert` or `update` query. - // beforeSave: (model, attrs, options) => { - // return new Promise(); - // }, + // beforeSave: async (model) => {}, // After saving a value. // Fired after an `insert` or `update` query. - // afterSave: (model, response, options) => { - // return new Promise(); - // }, + // afterSave: async (model, result) => {}, + + // Before fetching all values. + // Fired before a `fetchAll` operation. + // beforeFetchAll: async (model) => {}, + + // After fetching all values. + // Fired after a `fetchAll` operation. + // afterFetchAll: async (model, results) => {}, - // Before fetching a value. // Fired before a `fetch` operation. - // beforeFetch: (model, columns, options) => { - // return new Promise(); - // }, + // beforeFetch: async (model) => {}, // After fetching a value. // Fired after a `fetch` operation. - // afterFetch: (model, response, options) => { - // return new Promise(); - // }, + // afterFetch: async (model, result) => {}, // Before creating a value. - // Fired before `insert` query. - // beforeCreate: (model, attrs, options) => { - // return new Promise(); - // }, + // Fired before an `insert` query. + // beforeCreate: async (model) => {}, // After creating a value. - // Fired after `insert` query. - // afterCreate: (model, attrs, options) => { - // return new Promise(); - // }, + // Fired after an `insert` query. + // afterCreate: async (model, result) => {}, // Before updating a value. // Fired before an `update` query. - // beforeUpdate: (model, attrs, options) => { - // return new Promise(); - // }, + // beforeUpdate: async (model) => {}, // After updating a value. // Fired after an `update` query. - // afterUpdate: (model, attrs, options) => { - // return new Promise(); - // }, + // afterUpdate: async (model, result) => {}, // Before destroying a value. // Fired before a `delete` query. - // beforeDestroy: (model, attrs, options) => { - // return new Promise(); - // }, + // beforeDestroy: async (model) => {}, // After destroying a value. // Fired after a `delete` query. - // afterDestroy: (model, attrs, options) => { - // return new Promise(); - // } + // afterDestroy: async (model, result) => {} }; diff --git a/packages/strapi-plugin-users-permissions/services/UsersPermissions.js b/packages/strapi-plugin-users-permissions/services/UsersPermissions.js index 2c05dd3b28..ab00402af4 100644 --- a/packages/strapi-plugin-users-permissions/services/UsersPermissions.js +++ b/packages/strapi-plugin-users-permissions/services/UsersPermissions.js @@ -203,7 +203,7 @@ module.exports = { // Aggregate first level actions. const appActions = Object.keys(strapi.api || {}).reduce((acc, api) => { - Object.keys(strapi.api[api].controllers) + Object.keys(_.get(strapi.api[api], 'controllers', {})) .map(controller => { const actions = Object.keys(strapi.api[api].controllers[controller]) .filter(action => _.isFunction(strapi.api[api].controllers[controller][action])) From 860cb8315b62b1352a6371cdf3b9d94cdb0f8438 Mon Sep 17 00:00:00 2001 From: Jim Laurie Date: Mon, 14 May 2018 12:28:49 +0200 Subject: [PATCH 2/5] Add strapi generate controller in strapi deps fix #644 --- packages/strapi/package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/strapi/package.json b/packages/strapi/package.json index a4cfcb53c4..1bcc39142b 100755 --- a/packages/strapi/package.json +++ b/packages/strapi/package.json @@ -58,6 +58,7 @@ "strapi-generate": "3.0.0-alpha.12.1.3", "strapi-generate-admin": "3.0.0-alpha.12.1.3", "strapi-generate-api": "3.0.0-alpha.12.1.3", + "strapi-generate-controller": "3.0.0-alpha.12.1.3", "strapi-generate-new": "3.0.0-alpha.12.1.3", "strapi-generate-plugin": "3.0.0-alpha.12.1.3", "strapi-generate-policy": "3.0.0-alpha.12.1.3", @@ -89,4 +90,4 @@ }, "preferGlobal": true, "license": "MIT" -} \ No newline at end of file +} From 86677cb373ea5f4e9eceec623c781333f211fe01 Mon Sep 17 00:00:00 2001 From: Jim Laurie Date: Mon, 14 May 2018 12:29:52 +0200 Subject: [PATCH 3/5] Add strapi generate model in strapi deps --- packages/strapi/package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/strapi/package.json b/packages/strapi/package.json index 1bcc39142b..79f2b7a0cb 100755 --- a/packages/strapi/package.json +++ b/packages/strapi/package.json @@ -59,6 +59,7 @@ "strapi-generate-admin": "3.0.0-alpha.12.1.3", "strapi-generate-api": "3.0.0-alpha.12.1.3", "strapi-generate-controller": "3.0.0-alpha.12.1.3", + "strapi-generate-model": "3.0.0-alpha.12.1.3", "strapi-generate-new": "3.0.0-alpha.12.1.3", "strapi-generate-plugin": "3.0.0-alpha.12.1.3", "strapi-generate-policy": "3.0.0-alpha.12.1.3", From 79881f3707303d82a1614bdd5840dc2a975593f6 Mon Sep 17 00:00:00 2001 From: Jim Laurie Date: Mon, 14 May 2018 13:35:15 +0200 Subject: [PATCH 4/5] Remove componentDidCatch from Edit page content manager --- .../admin/src/containers/EditPage/index.js | 5 ----- 1 file changed, 5 deletions(-) diff --git a/packages/strapi-plugin-content-manager/admin/src/containers/EditPage/index.js b/packages/strapi-plugin-content-manager/admin/src/containers/EditPage/index.js index 8987029456..e4f5ecb6c2 100644 --- a/packages/strapi-plugin-content-manager/admin/src/containers/EditPage/index.js +++ b/packages/strapi-plugin-content-manager/admin/src/containers/EditPage/index.js @@ -214,11 +214,6 @@ export class EditPage extends React.Component { this.props.setFormErrors(formErrors); } - componentDidCatch(error, info) { - console.log('err', error); - console.log('info', info); - } - isCreating = () => this.props.match.params.id === 'create'; isRelationComponentNull = () => ( From c2ceb0495983b10a3cc73680cfaad566909ec5f7 Mon Sep 17 00:00:00 2001 From: Jim Laurie Date: Mon, 14 May 2018 14:08:06 +0200 Subject: [PATCH 5/5] Remove eslint from strapi-helper-plugin waiting for eslint PR --- packages/strapi/package.json | 2 +- scripts/test.sh | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/strapi/package.json b/packages/strapi/package.json index 79f2b7a0cb..32f3ae5ab0 100755 --- a/packages/strapi/package.json +++ b/packages/strapi/package.json @@ -91,4 +91,4 @@ }, "preferGlobal": true, "license": "MIT" -} +} \ No newline at end of file diff --git a/scripts/test.sh b/scripts/test.sh index 4978f159ff..51838f2985 100755 --- a/scripts/test.sh +++ b/scripts/test.sh @@ -32,5 +32,5 @@ cd ../strapi-plugin-upload npm run test # Test `strapi-helper-plugin` -cd ../strapi-helper-plugin/lib -npm run test +# cd ../strapi-helper-plugin/lib +# npm run test