diff --git a/backend/Dockerfile b/backend/Dockerfile index ffcc0559d..72b9973e7 100644 --- a/backend/Dockerfile +++ b/backend/Dockerfile @@ -1,4 +1,4 @@ -FROM node:12.8-alpine as base +FROM node:12.9-alpine as base LABEL Description="Backend of the Social Network Human-Connection.org" Vendor="Human Connection gGmbH" Version="0.0.1" Maintainer="Human Connection gGmbH (developer@human-connection.org)" EXPOSE 4000 diff --git a/backend/package.json b/backend/package.json index ed4e8e2a7..88de61106 100644 --- a/backend/package.json +++ b/backend/package.json @@ -120,7 +120,7 @@ "eslint-config-prettier": "~6.1.0", "eslint-config-standard": "~14.0.0", "eslint-plugin-import": "~2.18.2", - "eslint-plugin-jest": "~22.15.1", + "eslint-plugin-jest": "~22.15.2", "eslint-plugin-node": "~9.1.0", "eslint-plugin-prettier": "~3.1.0", "eslint-plugin-promise": "~4.2.1", diff --git a/backend/yarn.lock b/backend/yarn.lock index da337eb33..1f3afb9e0 100644 --- a/backend/yarn.lock +++ b/backend/yarn.lock @@ -1732,33 +1732,6 @@ apollo-server-caching@0.5.0: dependencies: lru-cache "^5.0.0" -apollo-server-core@2.8.1: - version "2.8.1" - resolved "https://registry.yarnpkg.com/apollo-server-core/-/apollo-server-core-2.8.1.tgz#e5fadb3fe1fadd009d1b06a46cb44ec8692bf3fb" - integrity sha512-BpvhKdycTI1v5n8biJ5c/DVF7MCbTL3JtB9llHGkqYgHaTH1gXguh2qD8Vcki+rpUNO5P1lcj5V6oVXoSUFXlA== - dependencies: - "@apollographql/apollo-tools" "^0.4.0" - "@apollographql/graphql-playground-html" "1.6.24" - "@types/graphql-upload" "^8.0.0" - "@types/ws" "^6.0.0" - apollo-cache-control "0.8.1" - apollo-datasource "0.6.1" - apollo-engine-reporting "1.4.3" - apollo-server-caching "0.5.0" - apollo-server-env "2.4.1" - apollo-server-errors "2.3.1" - apollo-server-plugin-base "0.6.1" - apollo-server-types "0.2.1" - apollo-tracing "0.8.1" - fast-json-stable-stringify "^2.0.0" - graphql-extensions "0.9.1" - graphql-tag "^2.9.2" - graphql-tools "^4.0.0" - graphql-upload "^8.0.2" - sha.js "^2.4.11" - subscriptions-transport-ws "^0.9.11" - ws "^6.0.0" - apollo-server-core@2.8.2: version "2.8.2" resolved "https://registry.yarnpkg.com/apollo-server-core/-/apollo-server-core-2.8.2.tgz#d7e5a94c43457dd5c5a171c79b1c554b418581d4" @@ -3444,10 +3417,10 @@ eslint-plugin-import@~2.18.2: read-pkg-up "^2.0.0" resolve "^1.11.0" -eslint-plugin-jest@~22.15.1: - version "22.15.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-22.15.1.tgz#54c4a752a44c4bc5a564ecc22b32e1cd16a2961a" - integrity sha512-CWq/RR/3tLaKFB+FZcCJwU9hH5q/bKeO3rFP8G07+q7hcDCFNqpvdphVbEbGE6o6qo1UbciEev4ejUWv7brUhw== +eslint-plugin-jest@~22.15.2: + version "22.15.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-22.15.2.tgz#e3c10d9391f787744e31566f69ebb70c3a98e398" + integrity sha512-p4NME9TgXIt+KgpxcXyNBvO30ZKxwFAO1dJZBc2OGfDnXVEtPwEyNs95GSr6RIE3xLHdjd8ngDdE2icRRXrbxg== dependencies: "@typescript-eslint/experimental-utils" "^1.13.0" diff --git a/package.json b/package.json index e18a8741c..de538aa17 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "codecov": "^3.5.0", "cross-env": "^5.2.0", "cypress": "^3.4.1", - "cypress-cucumber-preprocessor": "^1.13.1", + "cypress-cucumber-preprocessor": "^1.14.0", "cypress-file-upload": "^3.3.3", "cypress-plugin-retries": "^1.2.2", "dotenv": "^8.1.0", diff --git a/webapp/Dockerfile b/webapp/Dockerfile index 84c435c0a..4b219d2fe 100644 --- a/webapp/Dockerfile +++ b/webapp/Dockerfile @@ -1,4 +1,4 @@ -FROM node:12.8-alpine as base +FROM node:12.9-alpine as base LABEL Description="Web Frontend of the Social Network Human-Connection.org" Vendor="Human-Connection gGmbH" Version="0.0.1" Maintainer="Human-Connection gGmbH (developer@human-connection.org)" EXPOSE 3000 diff --git a/webapp/locales/de.json b/webapp/locales/de.json index e824d565c..253c27664 100644 --- a/webapp/locales/de.json +++ b/webapp/locales/de.json @@ -1,4 +1,8 @@ { + "index": { + "no-results": "Keine Beiträge gefunden.", + "change-filter-settings": "Verändere die Filter-Einstellungen um mehr Ergebnisse zu erhalten." + }, "filter-menu": { "title": "Deine Filterblase", "hashtag-search": "Suche nach #{hashtag}", diff --git a/webapp/locales/en.json b/webapp/locales/en.json index edc6e2d28..b32691418 100644 --- a/webapp/locales/en.json +++ b/webapp/locales/en.json @@ -1,4 +1,8 @@ { + "index": { + "no-results": "No contributions found.", + "change-filter-settings": "Change your filter settings to get more results." + }, "filter-menu": { "title": "Your filter bubble", "hashtag-search": "Searching for #{hashtag}", diff --git a/webapp/package.json b/webapp/package.json index b9153357e..83f5fe2cf 100644 --- a/webapp/package.json +++ b/webapp/package.json @@ -90,7 +90,7 @@ "@storybook/addon-a11y": "^5.1.11", "@storybook/addon-actions": "^5.1.11", "@storybook/vue": "~5.1.11", - "@vue/cli-shared-utils": "~3.10.0", + "@vue/cli-shared-utils": "~3.11.0", "@vue/eslint-config-prettier": "~5.0.0", "@vue/server-test-utils": "~1.0.0-beta.29", "@vue/test-utils": "~1.0.0-beta.29", @@ -106,7 +106,7 @@ "eslint-config-standard": "~12.0.0", "eslint-loader": "~2.2.1", "eslint-plugin-import": "~2.18.2", - "eslint-plugin-jest": "~22.15.1", + "eslint-plugin-jest": "~22.15.2", "eslint-plugin-node": "~9.1.0", "eslint-plugin-prettier": "~3.1.0", "eslint-plugin-promise": "~4.2.1", diff --git a/webapp/pages/index.vue b/webapp/pages/index.vue index 29cabbf68..910fa7a2f 100644 --- a/webapp/pages/index.vue +++ b/webapp/pages/index.vue @@ -15,13 +15,26 @@ > - - - + + import FilterMenu from '~/components/FilterMenu/FilterMenu.vue' import uniqBy from 'lodash/uniqBy' +import HcEmpty from '~/components/Empty' import HcPostCard from '~/components/PostCard' import HcLoadMore from '~/components/LoadMore.vue' import MasonryGrid from '~/components/MasonryGrid/MasonryGrid.vue' @@ -61,6 +75,7 @@ export default { FilterMenu, HcPostCard, HcLoadMore, + HcEmpty, MasonryGrid, MasonryGridItem, }, @@ -119,6 +134,9 @@ export default { } return filter }, + hasResults() { + return this.$apollo.loading || (this.posts && this.posts.length > 0) + }, }, watch: { postsFilter() { diff --git a/webapp/yarn.lock b/webapp/yarn.lock index 404387aab..5f3f90797 100644 --- a/webapp/yarn.lock +++ b/webapp/yarn.lock @@ -2435,10 +2435,10 @@ "@vue/babel-plugin-transform-vue-jsx" "^1.0.0" camelcase "^5.0.0" -"@vue/cli-shared-utils@~3.10.0": - version "3.10.0" - resolved "https://registry.yarnpkg.com/@vue/cli-shared-utils/-/cli-shared-utils-3.10.0.tgz#9d156f3c0ef675a939319062489e98c8d3d80f7e" - integrity sha512-i96XBUtLdWeKFCC/ot12ngqnVikN/dXpelGdyxvNZczCkX7Je0FUdrZkiw0+uTYTu1RmuYWpLs+vb/YQerjiWg== +"@vue/cli-shared-utils@~3.11.0": + version "3.11.0" + resolved "https://registry.yarnpkg.com/@vue/cli-shared-utils/-/cli-shared-utils-3.11.0.tgz#a3d6f809b0dfb367e626b71405f85dea0631310b" + integrity sha512-D7pst/4v9H1DD66fLxlZOwRR09R03MV0ROdKxBHmh3FmnApCA/RiaolFA/8w+B3CnevYMlV3SJ5fOAgedbswbA== dependencies: "@hapi/joi" "^15.0.1" chalk "^2.4.1" @@ -6395,10 +6395,10 @@ eslint-plugin-import@~2.18.2: read-pkg-up "^2.0.0" resolve "^1.11.0" -eslint-plugin-jest@~22.15.1: - version "22.15.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-22.15.1.tgz#54c4a752a44c4bc5a564ecc22b32e1cd16a2961a" - integrity sha512-CWq/RR/3tLaKFB+FZcCJwU9hH5q/bKeO3rFP8G07+q7hcDCFNqpvdphVbEbGE6o6qo1UbciEev4ejUWv7brUhw== +eslint-plugin-jest@~22.15.2: + version "22.15.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-22.15.2.tgz#e3c10d9391f787744e31566f69ebb70c3a98e398" + integrity sha512-p4NME9TgXIt+KgpxcXyNBvO30ZKxwFAO1dJZBc2OGfDnXVEtPwEyNs95GSr6RIE3xLHdjd8ngDdE2icRRXrbxg== dependencies: "@typescript-eslint/experimental-utils" "^1.13.0" @@ -6647,22 +6647,7 @@ execa@^1.0.0: signal-exit "^3.0.0" strip-eof "^1.0.0" -execa@^2.0.1: - version "2.0.3" - resolved "https://registry.yarnpkg.com/execa/-/execa-2.0.3.tgz#4b84301b33042cfb622771e886ed0b10e5634642" - integrity sha512-iM124nlyGSrXmuyZF1EMe83ESY2chIYVyDRZKgmcDynid2Q2v/+GuE7gNMl6Sy9Niwf4MC0DDxagOxeMPjuLsw== - dependencies: - cross-spawn "^6.0.5" - get-stream "^5.0.0" - is-stream "^2.0.0" - merge-stream "^2.0.0" - npm-run-path "^3.0.0" - onetime "^5.1.0" - p-finally "^2.0.0" - signal-exit "^3.0.2" - strip-final-newline "^2.0.0" - -execa@^2.0.4: +execa@^2.0.1, execa@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/execa/-/execa-2.0.4.tgz#2f5cc589c81db316628627004ea4e37b93391d8e" integrity sha512-VcQfhuGD51vQUQtKIq2fjGDLDbL6N1DTQVpYzxZ7LPIXw3HqTuIz6uxRmpV1qf8i31LHf2kjiaGI+GdHwRgbnQ== @@ -10885,20 +10870,13 @@ onetime@^5.1.0: dependencies: mimic-fn "^2.1.0" -open@^6.1.0: +open@^6.1.0, open@^6.3.0: version "6.4.0" resolved "https://registry.yarnpkg.com/open/-/open-6.4.0.tgz#5c13e96d0dc894686164f18965ecfe889ecfc8a9" integrity sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg== dependencies: is-wsl "^1.1.0" -open@^6.3.0: - version "6.3.0" - resolved "https://registry.yarnpkg.com/open/-/open-6.3.0.tgz#60d0b845ee38fae0631f5d739a21bd40e3d2a527" - integrity sha512-6AHdrJxPvAXIowO/aIaeHZ8CeMdDf7qCyRNq8NwJpinmCdXhz+NZR7ie1Too94lpciCDsG+qHGO9Mt0svA4OqA== - dependencies: - is-wsl "^1.1.0" - opener@1.5.1, opener@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/opener/-/opener-1.5.1.tgz#6d2f0e77f1a0af0032aca716c2c1fbb8e7e8abed" diff --git a/yarn.lock b/yarn.lock index 5c3a570f8..b205f2434 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1847,10 +1847,10 @@ cucumber@^4.2.1: util-arity "^1.0.2" verror "^1.9.0" -cypress-cucumber-preprocessor@^1.13.1: - version "1.13.1" - resolved "https://registry.yarnpkg.com/cypress-cucumber-preprocessor/-/cypress-cucumber-preprocessor-1.13.1.tgz#d33350343a617c7579e1fed16e169d0a23b18d7a" - integrity sha512-gNmSVTmSVbUftvdTk0MnGGERwKTxtEQ1CwUOK4ujv5kANX29eV3XH9MYMe6gZQlVbLZN9kxz1EhopRF2bqmcwg== +cypress-cucumber-preprocessor@^1.14.0: + version "1.14.0" + resolved "https://registry.yarnpkg.com/cypress-cucumber-preprocessor/-/cypress-cucumber-preprocessor-1.14.0.tgz#79fa9d4da72e2cb56bf511c17c77f8200b3279f1" + integrity sha512-eo79d7XCX4JG5wWGQJ2tuONTEgQfZHNGvuBMwTNjvZcz+qEVy04kdiBzbQGB7uy2Lf9LAkabt1hKUjwewmMioA== dependencies: "@cypress/browserify-preprocessor" "^1.1.2" chai "^4.1.2"