From 9f8dddc2ffc1f7cab2808028da76fc228c7e9230 Mon Sep 17 00:00:00 2001 From: "greenkeeper[bot]" <23040076+greenkeeper[bot]@users.noreply.github.com> Date: Sun, 21 Jul 2019 04:39:48 +0000 Subject: [PATCH 1/3] chore(package): update eslint to version 6.1.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 2bff3bca0d..9200b2fec9 100644 --- a/package.json +++ b/package.json @@ -80,7 +80,7 @@ "babel-plugin-transform-object-rest-spread": "6.26.0", "core-js": "2.6.5", "css-loader": "3.1.0", - "eslint": "5.16.0", + "eslint": "6.1.0", "eslint-plugin-jest": "22.12.0", "eslint-plugin-react": "7.14.1", "file-loader": "4.1.0", From a0f674e954ae6289bd174f26002aa169f2353e9b Mon Sep 17 00:00:00 2001 From: "greenkeeper[bot]" <23040076+greenkeeper[bot]@users.noreply.github.com> Date: Sun, 21 Jul 2019 04:39:59 +0000 Subject: [PATCH 2/3] chore(package): update lockfile package-lock.json --- package-lock.json | 101 ++++++++++++++++++++++++++++++---------------- 1 file changed, 66 insertions(+), 35 deletions(-) diff --git a/package-lock.json b/package-lock.json index 240ccb8f49..6aba4a4fb2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4788,49 +4788,56 @@ } }, "eslint": { - "version": "5.16.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.16.0.tgz", - "integrity": "sha512-S3Rz11i7c8AA5JPv7xAH+dOyq/Cu/VXHiHXBPOU1k/JAM5dXqQPt3qcrhpHSorXmrpu2g0gkIBVXAqCpzfoZIg==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.1.0.tgz", + "integrity": "sha512-QhrbdRD7ofuV09IuE2ySWBz0FyXCq0rriLTZXZqaWSI79CVtHVRdkFuFTViiqzZhkCgfOh9USpriuGN2gIpZDQ==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "ajv": "^6.9.1", + "ajv": "^6.10.0", "chalk": "^2.1.0", "cross-spawn": "^6.0.5", "debug": "^4.0.1", "doctrine": "^3.0.0", - "eslint-scope": "^4.0.3", + "eslint-scope": "^5.0.0", "eslint-utils": "^1.3.1", "eslint-visitor-keys": "^1.0.0", - "espree": "^5.0.1", + "espree": "^6.0.0", "esquery": "^1.0.1", "esutils": "^2.0.2", "file-entry-cache": "^5.0.1", "functional-red-black-tree": "^1.0.1", - "glob": "^7.1.2", + "glob-parent": "^5.0.0", "globals": "^11.7.0", "ignore": "^4.0.6", "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", - "inquirer": "^6.2.2", - "js-yaml": "^3.13.0", + "inquirer": "^6.4.1", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.3.0", - "lodash": "^4.17.11", + "lodash": "^4.17.14", "minimatch": "^3.0.4", "mkdirp": "^0.5.1", "natural-compare": "^1.4.0", "optionator": "^0.8.2", - "path-is-inside": "^1.0.2", "progress": "^2.0.0", "regexpp": "^2.0.1", - "semver": "^5.5.1", - "strip-ansi": "^4.0.0", - "strip-json-comments": "^2.0.1", + "semver": "^6.1.2", + "strip-ansi": "^5.2.0", + "strip-json-comments": "^3.0.1", "table": "^5.2.3", - "text-table": "^0.2.0" + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" }, "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, "debug": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", @@ -4841,20 +4848,50 @@ } }, "eslint-scope": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", - "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz", + "integrity": "sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw==", "dev": true, "requires": { "esrecurse": "^4.1.0", "estraverse": "^4.1.1" } }, + "glob-parent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.0.0.tgz", + "integrity": "sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true + }, + "semver": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.2.0.tgz", + "integrity": "sha512-jdFC1VdUGT/2Scgbimf7FSx9iJLXoqfglSF+gJeuNWVpiE37OIbc1jywR/GJyFdz3mnkz2/id0L0J/cr0izR5A==", + "dev": true + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + }, + "strip-json-comments": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz", + "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==", + "dev": true } } }, @@ -4918,9 +4955,9 @@ "dev": true }, "espree": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-5.0.1.tgz", - "integrity": "sha512-qWAZcWh4XE/RwzLJejfcofscgMc9CamR6Tn1+XRXNzrvUSSbiAjGOI/fggztjIi7y9VLPqnICMIPiGyr8JaZ0A==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-6.0.0.tgz", + "integrity": "sha512-lJvCS6YbCn3ImT3yKkPe0+tJ+mH6ljhGNjHQH9mRtiO6gjhVAOhVXW1yjnwqGwTkK3bGbye+hb00nFNmu0l/1Q==", "dev": true, "requires": { "acorn": "^6.0.7", @@ -4929,9 +4966,9 @@ }, "dependencies": { "acorn": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.2.0.tgz", - "integrity": "sha512-8oe72N3WPMjA+2zVG71Ia0nXZ8DpQH+QyyHO+p06jT8eg8FGG3FbcUIi8KziHlAfheJQZeoqbvq1mQSQHXKYLw==", + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.2.1.tgz", + "integrity": "sha512-JD0xT5FCRDNyjDda3Lrg/IxFscp9q4tiYtxE1/nOzlKCk7hIRuYjhq1kCNkbPjMRMZuFq20HNQn1I9k8Oj0E+Q==", "dev": true } } @@ -10592,12 +10629,6 @@ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" }, - "path-is-inside": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", - "dev": true - }, "path-key": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", @@ -13284,13 +13315,13 @@ "dev": true }, "table": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/table/-/table-5.4.1.tgz", - "integrity": "sha512-E6CK1/pZe2N75rGZQotFOdmzWQ1AILtgYbMAbAjvms0S1l5IDB47zG3nCnFGB/w+7nB3vKofbLXCH7HPBo864w==", + "version": "5.4.4", + "resolved": "https://registry.npmjs.org/table/-/table-5.4.4.tgz", + "integrity": "sha512-IIfEAUx5QlODLblLrGTTLJA7Tk0iLSGBvgY8essPRVNGHAzThujww1YqHLs6h3HfTg55h++RzLHH5Xw/rfv+mg==", "dev": true, "requires": { - "ajv": "^6.9.1", - "lodash": "^4.17.11", + "ajv": "^6.10.2", + "lodash": "^4.17.14", "slice-ansi": "^2.1.0", "string-width": "^3.0.0" }, From 665e292c407d7a76d0f2e14ee8b51f5eb463dae9 Mon Sep 17 00:00:00 2001 From: Lucas Alencar Date: Mon, 22 Jul 2019 12:20:24 -0300 Subject: [PATCH 3/3] fix: Can't access method 'hasOwnProperty' from target object (#1172) --- package-lock.json | 14 ++++++-------- src/components/BrowserCell/BrowserCell.react.js | 2 +- .../ExplorerQueryComposer.react.js | 2 +- src/components/Filter/Filter.react.js | 4 ++-- .../PushAudienceDialog/PushAudienceDialog.react.js | 2 +- .../Analytics/SlowQueries/SlowQueries.react.js | 2 +- src/dashboard/Push/PushIndex.react.js | 2 +- src/lib/AJAX.js | 2 +- src/lib/PushUtils.js | 8 ++++---- 9 files changed, 18 insertions(+), 20 deletions(-) diff --git a/package-lock.json b/package-lock.json index 6aba4a4fb2..653b9c21b9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9129,7 +9129,6 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.3.5.tgz", "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==", "dev": true, - "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -9139,15 +9138,13 @@ "version": "5.2.0", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz", "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==", - "dev": true, - "optional": true + "dev": true }, "yallist": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", - "dev": true, - "optional": true + "dev": true } } }, @@ -10328,16 +10325,17 @@ "follow-redirects": "1.7.0", "graphql": "14.4.2", "graphql-list-fields": "2.0.2", + "graphql-tools": "^4.0.5", "graphql-upload": "8.0.7", "intersect": "1.0.1", "jsonwebtoken": "8.5.1", - "lodash": "4.17.14", + "lodash": "4.17.15", "lru-cache": "5.1.1", "mime": "2.4.4", "mongodb": "3.2.7", "node-rsa": "1.0.5", "parse": "2.5.1", - "pg-promise": "8.7.4", + "pg-promise": "8.7.5", "redis": "2.8.0", "semver": "6.2.0", "subscriptions-transport-ws": "0.9.16", @@ -10346,7 +10344,7 @@ "uws": "10.148.1", "winston": "3.2.1", "winston-daily-rotate-file": "3.10.0", - "ws": "7.1.0" + "ws": "7.1.1" }, "dependencies": { "@babel/runtime": { diff --git a/src/components/BrowserCell/BrowserCell.react.js b/src/components/BrowserCell/BrowserCell.react.js index c2242f61f4..74e8a1dca4 100644 --- a/src/components/BrowserCell/BrowserCell.react.js +++ b/src/components/BrowserCell/BrowserCell.react.js @@ -65,7 +65,7 @@ let BrowserCell = ({ type, value, hidden, width, current, onSelect, onEditChange } else if (type === 'ACL') { let pieces = []; let json = value.toJSON(); - if (json.hasOwnProperty('*')) { + if (Object.prototype.hasOwnProperty.call(json, '*')) { if (json['*'].read && json['*'].write) { pieces.push('Public Read + Write'); } else if (json['*'].read) { diff --git a/src/components/ExplorerQueryComposer/ExplorerQueryComposer.react.js b/src/components/ExplorerQueryComposer/ExplorerQueryComposer.react.js index 05bbf73c4a..c852974bc8 100644 --- a/src/components/ExplorerQueryComposer/ExplorerQueryComposer.react.js +++ b/src/components/ExplorerQueryComposer/ExplorerQueryComposer.react.js @@ -370,7 +370,7 @@ export default class ExplorerQueryComposer extends React.Component { } renderFilter(filter, index=0) { - let type = Constraints[filter.op].hasOwnProperty('field') ? Constraints[filter.op].field : FIELD_TYPE[filter.col]; + let type = Object.prototype.hasOwnProperty.call(Constraints[filter.op], 'field') ? Constraints[filter.op].field : FIELD_TYPE[filter.col]; let constraintView = null; if (type === 'JSON') { diff --git a/src/components/Filter/Filter.react.js b/src/components/Filter/Filter.react.js index 7220b1a579..af8a8b7877 100644 --- a/src/components/Filter/Filter.react.js +++ b/src/components/Filter/Filter.react.js @@ -22,7 +22,7 @@ function changeField(schema, filters, index, newField) { function changeConstraint(schema, filters, index, newConstraint) { let field = filters.get(index).get('field'); let compareType = schema[field].type; - if (Filters.Constraints[newConstraint].hasOwnProperty('field')) { + if (Object.prototype.hasOwnProperty.call(Filters.Constraints[newConstraint], 'field')) { compareType = Filters.Constraints[newConstraint].field; } let newFilter = new Map({ @@ -59,7 +59,7 @@ let Filter = ({ schema, filters, renderRow, onChange, blacklist }) => { fields.sort(); let constraints = Filters.FieldConstraints[schema[field].type].filter((c) => blacklist.indexOf(c) < 0); let compareType = schema[field].type; - if (Filters.Constraints[constraint].hasOwnProperty('field')) { + if (Object.prototype.hasOwnProperty.call(Filters.Constraints[constraint], 'field')) { compareType = Filters.Constraints[constraint].field; } return renderRow({ diff --git a/src/components/PushAudienceDialog/PushAudienceDialog.react.js b/src/components/PushAudienceDialog/PushAudienceDialog.react.js index 4392f27a6c..58d8e179b2 100644 --- a/src/components/PushAudienceDialog/PushAudienceDialog.react.js +++ b/src/components/PushAudienceDialog/PushAudienceDialog.react.js @@ -32,7 +32,7 @@ const AUDIENCE_SIZE_FETCHING_ENABLED = true; let filterFormatter = (filters, schema) => { return filters.map((filter) => { let type = schema[filter.get('field')]; - if (Filters.Constraints[filter.get('constraint')].hasOwnProperty('field')) { + if (Object.prototype.hasOwnProperty.call(Filters.Constraints[filter.get('constraint')], 'field')) { type = Filters.Constraints[filter.get('constraint')].field; } // Format any stringified fields diff --git a/src/dashboard/Analytics/SlowQueries/SlowQueries.react.js b/src/dashboard/Analytics/SlowQueries/SlowQueries.react.js index 118207900b..c0ac36aee7 100644 --- a/src/dashboard/Analytics/SlowQueries/SlowQueries.react.js +++ b/src/dashboard/Analytics/SlowQueries/SlowQueries.react.js @@ -129,7 +129,7 @@ class SlowQueries extends TableView { let os = value['OS']; let version = value['App Display Version']; if (os === null || version === null) return; - if (appVersions.hasOwnProperty(os)) { + if (Object.prototype.hasOwnProperty.call(appVersions, os)) { appVersions[os].push(version); } else { appVersions[os] = [version]; diff --git a/src/dashboard/Push/PushIndex.react.js b/src/dashboard/Push/PushIndex.react.js index 0b0d4d2523..370421a458 100644 --- a/src/dashboard/Push/PushIndex.react.js +++ b/src/dashboard/Push/PushIndex.react.js @@ -98,7 +98,7 @@ let isChannelTargeted = (pushData) => { let additionalKeys = false; for (let key in queryJSON) { - if (queryJSON.hasOwnProperty(key)) { + if (Object.prototype.hasOwnProperty.call(queryJSON, key)) { if (key !== 'deviceType' && key !== 'channels') { additionalKeys = true; } diff --git a/src/lib/AJAX.js b/src/lib/AJAX.js index 076d678635..fc3c55436f 100644 --- a/src/lib/AJAX.js +++ b/src/lib/AJAX.js @@ -59,7 +59,7 @@ export function request(method, url, body, abortable = false, withCredentials = p.reject(this.responseText); return; } - if (json.hasOwnProperty('success') && json.success === false) { + if (Object.prototype.hasOwnProperty.call(json, 'success') && json.success === false) { p.reject(json); } else { p.resolve(json); diff --git a/src/lib/PushUtils.js b/src/lib/PushUtils.js index 95ed49a015..0608097761 100644 --- a/src/lib/PushUtils.js +++ b/src/lib/PushUtils.js @@ -159,7 +159,7 @@ let formatConstraintComponent = (key, operation, value, schema) => { let formatStructure = (key, constraints, schema) => { let rows = []; for(let prop in constraints){ - if(constraints.hasOwnProperty(prop)){ + if(Object.prototype.hasOwnProperty.call(constraints, prop)){ rows.push(formatConstraintComponent(key, prop, constraints[prop], schema)); } } @@ -287,9 +287,9 @@ export function largeInfoBuilder(query, schema, styles = {}) { : + : null - } + } ) } @@ -307,7 +307,7 @@ let tableInfoBuilderHelper = (styles, key, description, value) => { export function tableInfoBuilder(query, schema, styles = {}) { try { query = JSON.parse(query); - } catch(e) {/**/} + } catch(e) {/**/} if(!query) { return;