From 78ebb6d443f962efbcd8beb1a6c43ce855482861 Mon Sep 17 00:00:00 2001 From: Mauricio Vieira Date: Wed, 8 Feb 2017 06:35:46 -0200 Subject: [PATCH 1/2] Fix import/prefer-default-export for ApiMetadata collection --- .eslintignore | 2 -- apis/server/methods/delete.js | 2 +- metadata/client/edit/edit.js | 2 +- metadata/client/view/metadata.js | 2 +- metadata/collection/index.js | 6 ++++-- metadata/collection/permissions.js | 11 +++++------ metadata/collection/schema.js | 2 +- metadata/collection/server/publication.js | 4 ++-- 8 files changed, 15 insertions(+), 16 deletions(-) diff --git a/.eslintignore b/.eslintignore index 1be807a2fd..72a35a281d 100644 --- a/.eslintignore +++ b/.eslintignore @@ -13,8 +13,6 @@ apis/client/profile/visibility/lib/bootstrap-switch.js ## We want to lint all those files ## ## Please remove the line on this file if you are changing the file ## ###################################################################### -metadata/client/edit/autoform.js -metadata/collection/index.js metadata/collection/permissions.js metadata/collection/server/publication.js monitoring/client/autoform.js diff --git a/apis/server/methods/delete.js b/apis/server/methods/delete.js index fd0ca0855e..9810611448 100644 --- a/apis/server/methods/delete.js +++ b/apis/server/methods/delete.js @@ -4,7 +4,7 @@ import { Mongo } from 'meteor/mongo'; import Apis from '/apis/collection'; import ApiBacklogItems from '/backlog/collection'; -import { ApiMetadata } from '/metadata/collection'; +import ApiMetadata from '/metadata/collection'; import DocumentationFiles from '/documentation/collection'; import Feedback from '/feedback/collection'; import { MonitoringSettings, MonitoringData } from '/monitoring/collection'; diff --git a/metadata/client/edit/edit.js b/metadata/client/edit/edit.js index 7b7f2f74cd..6391c95697 100644 --- a/metadata/client/edit/edit.js +++ b/metadata/client/edit/edit.js @@ -1,6 +1,6 @@ import { Template } from 'meteor/templating'; import { TAPi18n } from 'meteor/tap:i18n'; -import { ApiMetadata } from '../../collection'; +import ApiMetadata from '../../collection'; Template.editApiMetadata.helpers({ apiMetadataCollection () { diff --git a/metadata/client/view/metadata.js b/metadata/client/view/metadata.js index 23d8380274..65b0c17310 100644 --- a/metadata/client/view/metadata.js +++ b/metadata/client/view/metadata.js @@ -1,7 +1,7 @@ import { Template } from 'meteor/templating'; import formatDate from '/core/helper_functions/format_date'; -import { ApiMetadata } from '../../collection'; +import ApiMetadata from '../../collection'; Template.viewApiMetadata.onCreated(function () { // Get reference to template instance diff --git a/metadata/collection/index.js b/metadata/collection/index.js index 426f473654..2865ef1d3e 100644 --- a/metadata/collection/index.js +++ b/metadata/collection/index.js @@ -1,3 +1,5 @@ -const ApiMetadata = new Mongo.Collection("apiMetadata"); +import { Mongo } from 'meteor/mongo'; -export { ApiMetadata }; +const ApiMetadata = new Mongo.Collection('apiMetadata'); + +export default ApiMetadata; diff --git a/metadata/collection/permissions.js b/metadata/collection/permissions.js index e2e92dc07d..e271820120 100644 --- a/metadata/collection/permissions.js +++ b/metadata/collection/permissions.js @@ -1,4 +1,4 @@ -import { ApiMetadata } from '/metadata/collection'; +import ApiMetadata from '/metadata/collection'; import Apis from '/apis/collection'; ApiMetadata.allow({ @@ -10,15 +10,14 @@ ApiMetadata.allow({ if (ApiMetadata.find({ apiBackendId: apiId }).count() !== 0) { console.log('no insert allowed'); return false; - } else { + } // Find related API Backend, select only "managerIds" field - const api = Apis.findOne(apiId, { fields: { managerIds: 1 } }); + const api = Apis.findOne(apiId, { fields: { managerIds: 1 } }); // Check if current user can edit API Backend - const userCanEdit = api.currentUserCanEdit(); + const userCanEdit = api.currentUserCanEdit(); - return userCanEdit; - } + return userCanEdit; }, update (userId, metadata) { // Get API Backend ID diff --git a/metadata/collection/schema.js b/metadata/collection/schema.js index fb3357a9be..c92bcc0925 100644 --- a/metadata/collection/schema.js +++ b/metadata/collection/schema.js @@ -1,6 +1,6 @@ import { SimpleSchema } from 'meteor/aldeed:simple-schema'; import { TAPi18n } from 'meteor/tap:i18n'; -import { ApiMetadata } from '/metadata/collection'; +import ApiMetadata from '/metadata/collection'; ApiMetadata.schema = new SimpleSchema({ // TODO: migrate to use 'apiId' instead of 'apiBackendId' diff --git a/metadata/collection/server/publication.js b/metadata/collection/server/publication.js index 3023044fbd..e9d62c637d 100644 --- a/metadata/collection/server/publication.js +++ b/metadata/collection/server/publication.js @@ -1,6 +1,6 @@ -import { ApiMetadata } from '/metadata/collection/'; +import ApiMetadata from '/metadata/collection/'; -Meteor.publish('apiMetadata', function (apiId) { +Meteor.publish('apiMetadata', (apiId) => { // Get metadata document for API Backend // TODO: migrate ApiMetadata schema to use 'apiId' instead of 'apiBackendId' const apiMetadata = ApiMetadata.find({ apiBackendId: apiId }); From 3e2c4d92cab86aec8770c950df4bdc9a6971665a Mon Sep 17 00:00:00 2001 From: Mauricio Vieira Date: Wed, 8 Feb 2017 06:47:59 -0200 Subject: [PATCH 2/2] Lint metadata directory --- .eslintignore | 2 -- metadata/collection/permissions.js | 1 + metadata/collection/server/publication.js | 6 ++++++ 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/.eslintignore b/.eslintignore index 72a35a281d..d4d0846d2a 100644 --- a/.eslintignore +++ b/.eslintignore @@ -13,8 +13,6 @@ apis/client/profile/visibility/lib/bootstrap-switch.js ## We want to lint all those files ## ## Please remove the line on this file if you are changing the file ## ###################################################################### -metadata/collection/permissions.js -metadata/collection/server/publication.js monitoring/client/autoform.js monitoring/client/monitoring.js monitoring/collection/index.js diff --git a/metadata/collection/permissions.js b/metadata/collection/permissions.js index e271820120..eea8bd944c 100644 --- a/metadata/collection/permissions.js +++ b/metadata/collection/permissions.js @@ -8,6 +8,7 @@ ApiMetadata.allow({ // Make sure there is only one document per API Backend ID // TODO: refactor ApiMetadata schema to use 'apiId' field if (ApiMetadata.find({ apiBackendId: apiId }).count() !== 0) { + // eslint-disable-next-line no-console console.log('no insert allowed'); return false; } diff --git a/metadata/collection/server/publication.js b/metadata/collection/server/publication.js index e9d62c637d..b996b436b8 100644 --- a/metadata/collection/server/publication.js +++ b/metadata/collection/server/publication.js @@ -1,6 +1,12 @@ +import { check } from 'meteor/check'; +import { Meteor } from 'meteor/meteor'; + import ApiMetadata from '/metadata/collection/'; Meteor.publish('apiMetadata', (apiId) => { + // Make sure apiId is a String + check(apiId, String); + // Get metadata document for API Backend // TODO: migrate ApiMetadata schema to use 'apiId' instead of 'apiBackendId' const apiMetadata = ApiMetadata.find({ apiBackendId: apiId });