From 28c443c35650bd22405dd6f94ccdbc869071ade1 Mon Sep 17 00:00:00 2001 From: Nick Date: Sat, 31 Aug 2019 15:00:31 -0400 Subject: [PATCH] feat: admin dashboard recent pages + update deps --- client/components/admin/admin-dashboard.vue | 50 ++- client/components/admin/admin-groups.vue | 2 +- client/components/admin/admin-locale.vue | 2 +- client/components/admin/admin-pages.vue | 6 +- .../dashboard/dashboard-query-recentpages.gql | 17 + dev/webpack/webpack.dev.js | 3 - dev/webpack/webpack.prod.js | 3 - package.json | 42 +- server/graph/resolvers/page.js | 24 +- server/graph/schemas/page.graphql | 19 +- yarn.lock | 416 +++++++++--------- 11 files changed, 337 insertions(+), 247 deletions(-) create mode 100644 client/graph/admin/dashboard/dashboard-query-recentpages.gql diff --git a/client/components/admin/admin-dashboard.vue b/client/components/admin/admin-dashboard.vue index f9aa6a96..97fa3aef 100644 --- a/client/components/admin/admin-dashboard.vue +++ b/client/components/admin/admin-dashboard.vue @@ -54,24 +54,31 @@ .body-2(v-else) {{$t('admin:dashboard.versionNew', { version: info.latestVersion })}} v-flex(xs12, xl6) v-card.radius-7.animated.fadeInUp.wait-p2s - v-card-title.subtitle-1(:class='$vuetify.theme.dark ? `grey darken-2` : `grey lighten-5`') Recent Pages + v-toolbar(:color='$vuetify.theme.dark ? `grey darken-2` : `grey lighten-5`', dense, flat) + v-spacer + .overline Recent Pages + v-spacer v-data-table.pb-2( :items='recentPages' + :headers='headers' + :loading='recentPagesLoading' hide-default-footer hide-default-header ) - template(slot='items' slot-scope='props') - td(width='20', style='padding-right: 0;'): v-icon insert_drive_file - td - .body-2.primary--text {{ props.item.title }} - .caption.grey--text.text--darken-2 {{ props.item.description }} - td.caption /{{ props.item.path }} - td.grey--text.text--darken-2(width='250') - .caption: strong Updated {{ props.item.updatedAt | moment('from') }} - .caption Created {{ props.item.createdAt | moment('calendar') }} + template(slot='item', slot-scope='props') + tr.is-clickable(:active='props.selected', @click='$router.push(`/pages/` + props.item.id)') + td + .body-2: strong {{ props.item.title }} + td.admin-pages-path + v-chip(label, small, :color='$vuetify.theme.dark ? `grey darken-4` : `grey lighten-4`') {{ props.item.locale }} + span.ml-2.grey--text(:class='$vuetify.theme.dark ? `text--lighten-1` : `text--darken-2`') / {{ props.item.path }} + td.text-right(width='250') {{ props.item.updatedAt | moment('calendar') }} v-flex(xs12, xl6) v-card.radius-7.animated.fadeInUp.wait-p4s - v-card-title.subtitle-1(:class='$vuetify.theme.dark ? `grey darken-2` : `grey lighten-5`') Most Popular Pages + v-toolbar(:color='$vuetify.theme.dark ? `grey darken-2` : `grey lighten-5`', dense, flat) + v-spacer + .overline Most Popular Pages + v-spacer v-data-table.pb-2( :items='popularPages' hide-default-footer @@ -105,6 +112,8 @@ import _ from 'lodash' import AnimatedNumber from 'animated-number-vue' import { get } from 'vuex-pathify' +import recentPagesQuery from 'gql/admin/dashboard/dashboard-query-recentpages.gql' + export default { components: { AnimatedNumber @@ -112,7 +121,14 @@ export default { data() { return { recentPages: [], - popularPages: [] + recentPagesLoading: false, + popularPages: [], + headers: [ + { text: 'ID', value: 'id', width: 80 }, + { text: 'Title', value: 'title' }, + { text: 'Path', value: 'path' }, + { text: 'Last Updated', value: 'updatedAt', width: 250 } + ] } }, computed: { @@ -133,6 +149,16 @@ export default { return _.includes(this.permissions, prm) } } + }, + apollo: { + recentPages: { + query: recentPagesQuery, + update: (data) => data.pages.list, + watchLoading (isLoading) { + this.recentPagesLoading = isLoading + this.$store.commit(`loading${isLoading ? 'Start' : 'Stop'}`, 'admin-dashboard-recentpages') + } + } } } diff --git a/client/components/admin/admin-groups.vue b/client/components/admin/admin-groups.vue index 2beebd99..cfbfd6f5 100644 --- a/client/components/admin/admin-groups.vue +++ b/client/components/admin/admin-groups.vue @@ -78,7 +78,7 @@ export default { pageCount: 0, groups: [], headers: [ - { text: 'ID', value: 'id', width: 50, align: 'right' }, + { text: 'ID', value: 'id', width: 80, sortable: true }, { text: 'Name', value: 'name' }, { text: 'Users', value: 'userCount', width: 200 }, { text: 'Created', value: 'createdAt', width: 250 }, diff --git a/client/components/admin/admin-locale.vue b/client/components/admin/admin-locale.vue index c5edd554..9cbeb5da 100644 --- a/client/components/admin/admin-locale.vue +++ b/client/components/admin/admin-locale.vue @@ -187,7 +187,7 @@ export default { align: 'center', value: 'availability', sortable: false, - width: 100 + width: 120 }, { text: this.$t('admin:locale.download'), diff --git a/client/components/admin/admin-pages.vue b/client/components/admin/admin-pages.vue index 81959757..b5507c52 100644 --- a/client/components/admin/admin-pages.vue +++ b/client/components/admin/admin-pages.vue @@ -56,11 +56,11 @@ tr.is-clickable(:active='props.selected', @click='$router.push(`/pages/` + props.item.id)') td.text-xs-right {{ props.item.id }} td - .body-2 {{ props.item.title }} + .body-2: strong {{ props.item.title }} .caption {{ props.item.description }} td.admin-pages-path v-chip(label, small, :color='$vuetify.theme.dark ? `grey darken-4` : `grey lighten-4`') {{ props.item.locale }} - span.ml-2.grey--text(:class='$vuetify.theme.dark ? `text--lighten-1` : `text--darken-2`') {{ props.item.path }} + span.ml-2.grey--text(:class='$vuetify.theme.dark ? `text--lighten-1` : `text--darken-2`') / {{ props.item.path }} td {{ props.item.createdAt | moment('calendar') }} td {{ props.item.updatedAt | moment('calendar') }} template(slot='no-data') @@ -80,7 +80,7 @@ export default { pagination: 1, pages: [], headers: [ - { text: 'ID', value: 'id', width: 50, align: 'right' }, + { text: 'ID', value: 'id', width: 80, sortable: true }, { text: 'Title', value: 'title' }, { text: 'Path', value: 'path' }, { text: 'Created', value: 'createdAt', width: 250 }, diff --git a/client/graph/admin/dashboard/dashboard-query-recentpages.gql b/client/graph/admin/dashboard/dashboard-query-recentpages.gql new file mode 100644 index 00000000..c8959484 --- /dev/null +++ b/client/graph/admin/dashboard/dashboard-query-recentpages.gql @@ -0,0 +1,17 @@ +query { + pages { + list(limit: 10, orderBy: UPDATED, orderByDirection: DESC) { + id + locale + path + title + description + contentType + isPublished + isPrivate + privateNS + createdAt + updatedAt + } + } +} diff --git a/dev/webpack/webpack.dev.js b/dev/webpack/webpack.dev.js index afb19ed5..f0073f0c 100644 --- a/dev/webpack/webpack.dev.js +++ b/dev/webpack/webpack.dev.js @@ -3,7 +3,6 @@ const path = require('path') const fs = require('fs-extra') const yargs = require('yargs').argv const _ = require('lodash') -const Fiber = require('fibers') const { VueLoaderPlugin } = require('vue-loader') const CopyWebpackPlugin = require('copy-webpack-plugin') @@ -85,7 +84,6 @@ module.exports = { loader: 'sass-loader', options: { implementation: require('sass'), - fiber: Fiber, sourceMap: false } } @@ -107,7 +105,6 @@ module.exports = { loader: 'sass-loader', options: { implementation: require('sass'), - fiber: Fiber, sourceMap: false } }, diff --git a/dev/webpack/webpack.prod.js b/dev/webpack/webpack.prod.js index d394b7e6..db6e5a6c 100644 --- a/dev/webpack/webpack.prod.js +++ b/dev/webpack/webpack.prod.js @@ -3,7 +3,6 @@ const path = require('path') const fs = require('fs-extra') const yargs = require('yargs').argv const _ = require('lodash') -const Fiber = require('fibers') const { VueLoaderPlugin } = require('vue-loader') const { CleanWebpackPlugin } = require('clean-webpack-plugin') @@ -88,7 +87,6 @@ module.exports = { loader: 'sass-loader', options: { implementation: require('sass'), - fiber: Fiber, sourceMap: false } } @@ -111,7 +109,6 @@ module.exports = { loader: 'sass-loader', options: { implementation: require('sass'), - fiber: Fiber, sourceMap: false } }, diff --git a/package.json b/package.json index d3fb934e..04adbf76 100644 --- a/package.json +++ b/package.json @@ -37,12 +37,12 @@ "@aoberoi/passport-slack": "1.0.5", "@bugsnag/js": "6.4.0", "@exlinc/keycloak-passport": "1.0.2", - "algoliasearch": "3.33.0", + "algoliasearch": "3.34.0", "apollo-fetch": "0.7.0", - "apollo-server": "2.9.0", - "apollo-server-express": "2.9.0", + "apollo-server": "2.9.2", + "apollo-server-express": "2.9.2", "auto-load": "3.0.4", - "aws-sdk": "2.518.0", + "aws-sdk": "2.521.0", "axios": "0.19.0", "azure-search-client": "3.1.5", "bcryptjs-then": "1.0.1", @@ -72,13 +72,13 @@ "filesize": "4.1.2", "fs-extra": "8.1.0", "getos": "3.1.1", - "graphql": "14.5.3", + "graphql": "14.5.4", "graphql-list-fields": "2.0.2", "graphql-rate-limit-directive": "1.1.0", "graphql-subscriptions": "1.1.0", "graphql-tools": "4.0.5", "highlight.js": "9.15.10", - "i18next": "17.0.12", + "i18next": "17.0.13", "i18next-express-middleware": "1.8.1", "i18next-node-fs-backend": "2.1.3", "image-size": "0.7.4", @@ -87,7 +87,7 @@ "js-yaml": "3.13.1", "jsonwebtoken": "8.5.1", "klaw": "3.0.0", - "knex": "0.19.2", + "knex": "0.19.3", "lodash": "4.17.15", "markdown-it": "9.1.0", "markdown-it-abbr": "1.0.4", @@ -107,11 +107,11 @@ "mime-types": "2.1.24", "moment": "2.24.0", "moment-timezone": "0.5.26", - "mongodb": "3.3.1", + "mongodb": "3.3.2", "mssql": "5.1.0", "multer": "1.4.2", - "mysql2": "1.6.5", - "nanoid": "2.0.4", + "mysql2": "1.7.0", + "nanoid": "2.1.0", "node-2fa": "1.1.2", "node-cache": "4.2.1", "nodemailer": "6.3.0", @@ -148,10 +148,10 @@ "request-promise": "4.2.4", "safe-regex": "2.0.2", "sanitize-filename": "1.6.3", - "scim-query-filter-parser": "1.1.0", + "scim-query-filter-parser": "1.1.1", "semver": "6.3.0", "serve-favicon": "2.5.0", - "simple-git": "1.124.0", + "simple-git": "1.126.0", "solr-node": "1.2.1", "sqlite3": "4.1.0", "striptags": "3.1.1", @@ -212,17 +212,17 @@ "cssnano": "4.1.10", "duplicate-package-checker-webpack-plugin": "3.0.0", "epic-spinners": "1.1.0", - "eslint": "6.2.2", + "eslint": "6.3.0", "eslint-config-requarks": "1.0.7", - "eslint-config-standard": "14.0.1", + "eslint-config-standard": "14.1.0", "eslint-plugin-import": "2.18.2", - "eslint-plugin-node": "9.1.0", + "eslint-plugin-node": "9.2.0", "eslint-plugin-promise": "4.2.1", "eslint-plugin-standard": "4.0.1", "eslint-plugin-vue": "5.2.3", "fibers": "4.0.1", "file-loader": "4.2.0", - "filepond": "4.5.0", + "filepond": "4.5.1", "filepond-plugin-file-validate-type": "1.2.4", "filesize.js": "1.0.2", "grapesjs": "0.15.3", @@ -259,7 +259,7 @@ "react-dom": "16.9.0", "resolve-url-loader": "3.1.0", "sass": "1.22.10", - "sass-loader": "7.3.1", + "sass-loader": "8.0.0", "sass-resources-loader": "2.0.1", "script-ext-html-webpack-plugin": "2.1.4", "simple-progress-webpack-plugin": "1.1.2", @@ -280,7 +280,7 @@ "vue-loader": "15.7.1", "vue-material-design-icons": "3.4.0", "vue-moment": "4.0.0", - "vue-router": "3.1.2", + "vue-router": "3.1.3", "vue-simple-breakpoints": "1.0.3", "vue-status-indicator": "1.2.1", "vue-template-compiler": "2.6.10", @@ -288,17 +288,17 @@ "vue2-animate": "2.1.2", "vuedraggable": "2.23.0", "vuescroll": "4.14.0", - "vuetify": "2.0.10", + "vuetify": "2.0.11", "vuetify-loader": "1.3.0", "vuex": "3.1.1", "vuex-pathify": "1.2.4", "vuex-persistedstate": "2.5.4", - "webpack": "4.39.2", + "webpack": "4.39.3", "webpack-bundle-analyzer": "3.4.1", "webpack-cli": "3.3.7", "webpack-dev-middleware": "3.7.0", "webpack-hot-middleware": "2.25.0", - "webpack-merge": "4.2.1", + "webpack-merge": "4.2.2", "webpack-subresource-integrity": "1.3.2", "webpackbar": "4.0.0", "whatwg-fetch": "3.0.0", diff --git a/server/graph/resolvers/page.js b/server/graph/resolvers/page.js index a41314b7..db7f84e5 100644 --- a/server/graph/resolvers/page.js +++ b/server/graph/resolvers/page.js @@ -41,7 +41,29 @@ module.exports = { 'contentType', 'createdAt', 'updatedAt' - ]) + ]).modify(queryBuilder => { + if (args.limit) { + queryBuilder.limit(args.limit) + } + const orderDir = args.orderByDirection === 'DESC' ? 'desc' : 'asc' + switch (args.orderBy) { + case 'CREATED': + queryBuilder.orderBy('createdAt', orderDir) + break + case 'PATH': + queryBuilder.orderBy('path', orderDir) + break + case 'TITLE': + queryBuilder.orderBy('title', orderDir) + break + case 'UPDATED': + queryBuilder.orderBy('updatedAt', orderDir) + break + default: + queryBuilder.orderBy('id', orderDir) + break + } + }) }, async single (obj, args, context, info) { let page = await WIKI.models.pages.getPageFromDb(args.id) diff --git a/server/graph/schemas/page.graphql b/server/graph/schemas/page.graphql index ee47c420..c3d1b29d 100644 --- a/server/graph/schemas/page.graphql +++ b/server/graph/schemas/page.graphql @@ -27,7 +27,11 @@ type PageQuery { locale: String ): PageSearchResponse! @auth(requires: ["manage:system", "read:pages"]) - list: [PageListItem!]! @auth(requires: ["manage:system"]) + list( + limit: Int + orderBy: PageOrderBy + orderByDirection: PageOrderByDirection + ): [PageListItem!]! @auth(requires: ["manage:system"]) single( id: Int! @@ -163,3 +167,16 @@ type PageListItem { createdAt: Date! updatedAt: Date! } + +enum PageOrderBy { + CREATED + ID + PATH + TITLE + UPDATED +} + +enum PageOrderByDirection { + ASC + DESC +} diff --git a/yarn.lock b/yarn.lock index f56faca1..13c4fae7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1267,6 +1267,13 @@ resolved "https://registry.yarnpkg.com/@csstools/convert-colors/-/convert-colors-1.4.0.tgz#ad495dc41b12e75d588c6db8b9834f08fa131eb7" integrity sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw== +"@exlinc/keycloak-passport@1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@exlinc/keycloak-passport/-/keycloak-passport-1.0.2.tgz#ce3f20185b26abdcd33e340068479b1c2149c2fe" + integrity sha512-mUZdBq5peaHRNf8pd6XxgNWk4aY477Gy9XqF0WGHBmCygA2tX4EOvnoI/yHhu0ceAY08g3ng9BbEFKlSMRHWcg== + dependencies: + passport-oauth2 "^1.4.0" + "@f/animate@^1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@f/animate/-/animate-1.0.1.tgz#a031398adadf9a0bd3a56398cec931f877d88485" @@ -2416,10 +2423,10 @@ ajv@^6.10.2: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -algoliasearch@3.33.0: - version "3.33.0" - resolved "https://registry.yarnpkg.com/algoliasearch/-/algoliasearch-3.33.0.tgz#83b541124ebb0db54643009d4e660866b3177cdf" - integrity sha512-9DaVmOd7cvcZeYyV0BWAeJHVWJmgOL2DNUEBY/DTR4MzD1wCWs4Djl7LAlfvkGwGBdRHZCG+l0HA1572w3T8zg== +algoliasearch@3.34.0: + version "3.34.0" + resolved "https://registry.yarnpkg.com/algoliasearch/-/algoliasearch-3.34.0.tgz#02eb97bd6718e3a2c71121b9c3b655a35a4ba645" + integrity sha512-s8LDedkTWTAWR5uCWgJzGxDkCrqiej5iE4Tc2iCV+ONOO35i5qnVdieKg5gv2VDXBE7IP0YoqfAq/CC0V8PA+Q== dependencies: agentkeepalive "^2.2.0" debug "^2.6.9" @@ -2546,13 +2553,13 @@ anymatch@^3.0.1: normalize-path "^3.0.0" picomatch "^2.0.4" -apollo-cache-control@0.8.1: - version "0.8.1" - resolved "https://registry.yarnpkg.com/apollo-cache-control/-/apollo-cache-control-0.8.1.tgz#707c0b958c02c5b47ddf49a02f60ea88a64783fb" - integrity sha512-yQy5KB/OuX90PsdztWc4vfc4R//ZmW/AxNgXKWga0xW5OzEsysdJWHAsTzb40/rkJ9VNeQ+0N5wGikiS+jSCzg== +apollo-cache-control@^0.8.3: + version "0.8.3" + resolved "https://registry.yarnpkg.com/apollo-cache-control/-/apollo-cache-control-0.8.3.tgz#50c2d652aa2962b6d5bde27400558a9fbc771b63" + integrity sha512-SAjWxMsSYqfADIW6Ti1KmMKXJQMKzuZcvbi358u5caEx9Nj2PRpieO4WCKcaLuJpjHTUukS+2BJp1Icfx8ZjHw== dependencies: - apollo-server-env "2.4.1" - graphql-extensions "0.8.1" + apollo-server-env "^2.4.3" + graphql-extensions "^0.10.2" apollo-cache-inmemory@1.6.3: version "1.6.3" @@ -2602,33 +2609,33 @@ apollo-client@^1.1: optionalDependencies: "@types/graphql" "0.10.2" -apollo-datasource@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/apollo-datasource/-/apollo-datasource-0.6.1.tgz#697870f564da90bee53fa30d07875cb46c4d6b06" - integrity sha512-oy7c+9Up8PSZwJ1qTK9Idh1acDpIocvw+C0zcHg14ycvNz7qWHSwLUSaAjuQMd9SYFzB3sxfyEhyfyhIogT2+Q== +apollo-datasource@^0.6.3: + version "0.6.3" + resolved "https://registry.yarnpkg.com/apollo-datasource/-/apollo-datasource-0.6.3.tgz#b31e089e52adb92fabb536ab8501c502573ffe13" + integrity sha512-gRYyFVpJgHE2hhS+VxMeOerxXQ/QYxWG7T6QddfugJWYAG9DRCl65e2b7txcGq2NP3r+O1iCm4GNwhRBDJbd8A== dependencies: - apollo-server-caching "0.5.0" - apollo-server-env "2.4.1" + apollo-server-caching "^0.5.0" + apollo-server-env "^2.4.3" -apollo-engine-reporting-protobuf@0.4.0: +apollo-engine-reporting-protobuf@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/apollo-engine-reporting-protobuf/-/apollo-engine-reporting-protobuf-0.4.0.tgz#e34c192d86493b33a73181fd6be75721559111ec" integrity sha512-cXHZSienkis8v4RhqB3YG3DkaksqLpcxApRLTpRMs7IXNozgV7CUPYGFyFBEra1ZFgUyHXx4G9MpelV+n2cCfA== dependencies: protobufjs "^6.8.6" -apollo-engine-reporting@1.4.3: - version "1.4.3" - resolved "https://registry.yarnpkg.com/apollo-engine-reporting/-/apollo-engine-reporting-1.4.3.tgz#0fcb67de7a24bef4e7e59990981f923267ffdd00" - integrity sha512-xv27qfc9dhi1yaWOhNQRmfF+SoLy74hl+M42arpIWdkoDe22fVTmTIqxqGwo4TFR3Z2OkAV5tNzuuOI/icd0Rg== +apollo-engine-reporting@^1.4.5: + version "1.4.5" + resolved "https://registry.yarnpkg.com/apollo-engine-reporting/-/apollo-engine-reporting-1.4.5.tgz#a77a8eae64e2f511ae48e79a58469b8d6b6b9b49" + integrity sha512-cdqQ5CtH+WflhYeBzkIuQOv+AK7s8ny69+G6PT/3P0m0eTQvEKmreiyNiNtCtRimlgs3kFP071oc8W3Jo8xdHA== dependencies: - apollo-engine-reporting-protobuf "0.4.0" + apollo-engine-reporting-protobuf "^0.4.0" apollo-graphql "^0.3.3" - apollo-server-caching "0.5.0" - apollo-server-env "2.4.1" - apollo-server-types "0.2.1" + apollo-server-caching "^0.5.0" + apollo-server-env "^2.4.3" + apollo-server-types "^0.2.3" async-retry "^1.2.1" - graphql-extensions "0.9.1" + graphql-extensions "^0.10.2" apollo-env@0.5.1: version "0.5.1" @@ -2741,33 +2748,33 @@ apollo-link@^1.0.0, apollo-link@^1.2.1, apollo-link@^1.2.3: dependencies: zen-observable-ts "^0.8.15" -apollo-server-caching@0.5.0: +apollo-server-caching@^0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/apollo-server-caching/-/apollo-server-caching-0.5.0.tgz#446a37ce2d4e24c81833e276638330a634f7bd46" integrity sha512-l7ieNCGxUaUAVAAp600HjbUJxVaxjJygtPV0tPTe1Q3HkPy6LEWoY6mNHV7T268g1hxtPTxcdRu7WLsJrg7ufw== dependencies: lru-cache "^5.0.0" -apollo-server-core@2.9.0: - version "2.9.0" - resolved "https://registry.yarnpkg.com/apollo-server-core/-/apollo-server-core-2.9.0.tgz#5db251093ee121a5f4d90a24d51aa4c21e421243" - integrity sha512-IvKIgqOqEEB8nszlpHWzlhAu4376So2PgNhFP6UrlfNTllt/WDti5YMOHnVimPWIDHmLPKFan0+wfzpsoRCRdg== +apollo-server-core@^2.9.2: + version "2.9.2" + resolved "https://registry.yarnpkg.com/apollo-server-core/-/apollo-server-core-2.9.2.tgz#087101fc1a1cd98a79f4b605ca6a476de3986047" + integrity sha512-uPjdw1KhyB2vrcBhXoAjQ0d3qT9tstRy1/boCz4gz7InnLpSlCGu5c35RIG2KuXtdQLGB0OHyi7cUt7R8GxK6g== 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" + apollo-cache-control "^0.8.3" + apollo-datasource "^0.6.3" + apollo-engine-reporting "^1.4.5" + apollo-server-caching "^0.5.0" + apollo-server-env "^2.4.3" + apollo-server-errors "^2.3.3" + apollo-server-plugin-base "^0.6.3" + apollo-server-types "^0.2.3" + apollo-tracing "^0.8.3" fast-json-stable-stringify "^2.0.0" - graphql-extensions "0.10.0" + graphql-extensions "^0.10.2" graphql-tag "^2.9.2" graphql-tools "^4.0.0" graphql-upload "^8.0.2" @@ -2775,23 +2782,23 @@ apollo-server-core@2.9.0: subscriptions-transport-ws "^0.9.11" ws "^6.0.0" -apollo-server-env@2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/apollo-server-env/-/apollo-server-env-2.4.1.tgz#58264ecfeb151919e0f480320b4e3769be9f18f3" - integrity sha512-J4G1Q6qyb7KjjqvQdVM5HUH3QDb52VK1Rv+MWL0rHcstJx9Fh/NK0sS+nujrMfKw57NVUs2d4KuYtl/EnW/txg== +apollo-server-env@^2.4.3: + version "2.4.3" + resolved "https://registry.yarnpkg.com/apollo-server-env/-/apollo-server-env-2.4.3.tgz#9bceedaae07eafb96becdfd478f8d92617d825d2" + integrity sha512-23R5Xo9OMYX0iyTu2/qT0EUb+AULCBriA9w8HDfMoChB8M+lFClqUkYtaTTHDfp6eoARLW8kDBhPOBavsvKAjA== dependencies: node-fetch "^2.1.2" util.promisify "^1.0.0" -apollo-server-errors@2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/apollo-server-errors/-/apollo-server-errors-2.3.1.tgz#033cf331463ebb99a563f8354180b41ac6714eb6" - integrity sha512-errZvnh0vUQChecT7M4A/h94dnBSRL213dNxpM5ueMypaLYgnp4hiCTWIEaooo9E4yMGd1qA6WaNbLDG2+bjcg== +apollo-server-errors@^2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/apollo-server-errors/-/apollo-server-errors-2.3.3.tgz#83763b00352c10dc68fbb0d41744ade66de549ff" + integrity sha512-MO4oJ129vuCcbqwr5ZwgxqGGiLz3hCyowz0bstUF7MR+vNGe4oe3DWajC9lv4CxrhcqUHQOeOPViOdIo1IxE3g== -apollo-server-express@2.9.0: - version "2.9.0" - resolved "https://registry.yarnpkg.com/apollo-server-express/-/apollo-server-express-2.9.0.tgz#9d2a2d9823422ef26bca15931669d3153dc8a08b" - integrity sha512-+057V6Ui1BX69jUlV6YDQ7Xw9CCBfowN/GauvyF09KnsjYUJ+cB1xf4mkj/HAjaz4ReXQaALJNr2qPYPXS4R6w== +apollo-server-express@2.9.2, apollo-server-express@^2.9.2: + version "2.9.2" + resolved "https://registry.yarnpkg.com/apollo-server-express/-/apollo-server-express-2.9.2.tgz#8b68ad4687b715441652e2c821bfe8a4a306509f" + integrity sha512-W8FIJfqnpm4Vc2x7ztp1jZwd4mfgjGAPxVZ7rBubOskjZB8CJqP+YSpN7bPwlmwnD56USbcet9dBMlMkaI0oYA== dependencies: "@apollographql/graphql-playground-html" "1.6.24" "@types/accepts" "^1.3.5" @@ -2799,8 +2806,8 @@ apollo-server-express@2.9.0: "@types/cors" "^2.8.4" "@types/express" "4.17.1" accepts "^1.3.5" - apollo-server-core "2.9.0" - apollo-server-types "0.2.1" + apollo-server-core "^2.9.2" + apollo-server-types "^0.2.3" body-parser "^1.18.3" cors "^2.8.4" graphql-subscriptions "^1.0.0" @@ -2809,40 +2816,40 @@ apollo-server-express@2.9.0: subscriptions-transport-ws "^0.9.16" type-is "^1.6.16" -apollo-server-plugin-base@0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/apollo-server-plugin-base/-/apollo-server-plugin-base-0.6.1.tgz#b9c209aa2102a26c6134f51bfa1e4a8307b63b11" - integrity sha512-gLLF0kz4QOOyczDGWuR2ZNDfa1nHfyFNG76ue8Es0/0ujnMT9KoSokXkx1hDh0X7FFTMj/MelYYoNEqgTH88zw== +apollo-server-plugin-base@^0.6.3: + version "0.6.3" + resolved "https://registry.yarnpkg.com/apollo-server-plugin-base/-/apollo-server-plugin-base-0.6.3.tgz#e2eda552804cd96d4e1cc7ad42f7637e55512d92" + integrity sha512-tuVWd8F8e2ifsBy/AEMFx9Yqlc2CHYOCA8dA28zwWfH4g7fupgPF4s2WYxrD9zz7A/EUsbbgYdkpLLbKHxBKYw== dependencies: - apollo-server-types "0.2.1" + apollo-server-types "^0.2.3" -apollo-server-types@0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/apollo-server-types/-/apollo-server-types-0.2.1.tgz#553da40ea1ad779ef0390c250ddad7eb782fdf64" - integrity sha512-ls26d6jjY7x91ctLWtbpQHGW0lcFR1LcOpDvBQUC2aCwQzuW/6yV7F3hfcEdLR9pjIxcA4yAtFQcKf5olDWVkA== +apollo-server-types@^0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/apollo-server-types/-/apollo-server-types-0.2.3.tgz#de442395f2944eab67a10ac70ac987e41e72a290" + integrity sha512-Yq01w7nsLv46nBm+F9xda+bs+FNs2yc5I3AmHe2ZdsCKmWD2msIJA7+JpWU8h95wWumgutvmLgYNnvhiuHk+EQ== dependencies: - apollo-engine-reporting-protobuf "0.4.0" - apollo-server-caching "0.5.0" - apollo-server-env "2.4.1" + apollo-engine-reporting-protobuf "^0.4.0" + apollo-server-caching "^0.5.0" + apollo-server-env "^2.4.3" -apollo-server@2.9.0: - version "2.9.0" - resolved "https://registry.yarnpkg.com/apollo-server/-/apollo-server-2.9.0.tgz#32685712215d420ff5f3298b3b34e972e21ec1c6" - integrity sha512-KouRjMWn8pnR4KvVsFXT1GZYzH53J0+v9KwnLUKrLNo2G4KiZu5KhP+tEkF7uTlpHzdPMQAIbwjdXKzOH/r6ew== +apollo-server@2.9.2: + version "2.9.2" + resolved "https://registry.yarnpkg.com/apollo-server/-/apollo-server-2.9.2.tgz#4b2787a249a943c0f0a558923f92028f7eb5f3ed" + integrity sha512-ExTbd550Ps/TLIq2Lc3EwGim8S2IpUfzV4TwoKivrEVzMaRF5+OC4u+qQmUehWtqIW11EZSsxP3/7Y4cWzyAhw== dependencies: - apollo-server-core "2.9.0" - apollo-server-express "2.9.0" + apollo-server-core "^2.9.2" + apollo-server-express "^2.9.2" express "^4.0.0" graphql-subscriptions "^1.0.0" graphql-tools "^4.0.0" -apollo-tracing@0.8.1: - version "0.8.1" - resolved "https://registry.yarnpkg.com/apollo-tracing/-/apollo-tracing-0.8.1.tgz#220aeac6ad598c67f9333739155b7a56bd63ccab" - integrity sha512-zhVNC7N6hg9IJEeSEXFDxcnXD5GJQAbHxaoKVBKEolcIIsz6EGd700ORdagJgFKLReVp9O65HPrZJCg66sVx7g== +apollo-tracing@^0.8.3: + version "0.8.3" + resolved "https://registry.yarnpkg.com/apollo-tracing/-/apollo-tracing-0.8.3.tgz#4b985eb6cf31fc0b7b9d345eebf573c9ac961a73" + integrity sha512-Zmc5WptmipQ2cUllg3qZuNql0fZyj0GY9OE1OBLrMpllbgzxtmHmNeth33W9mmqoj2o+qk62TYfzO/ztbOiyWQ== dependencies: - apollo-server-env "2.4.1" - graphql-extensions "0.8.1" + apollo-server-env "^2.4.3" + graphql-extensions "^0.10.2" apollo-utilities@1.3.2, apollo-utilities@^1.3.2: version "1.3.2" @@ -3097,10 +3104,10 @@ autoprefixer@^7.1.1: postcss "^6.0.17" postcss-value-parser "^3.2.3" -aws-sdk@2.518.0: - version "2.518.0" - resolved "https://registry.yarnpkg.com/aws-sdk/-/aws-sdk-2.518.0.tgz#a0412cfcb41fd02e18d9e8b20c1dce356160fcc2" - integrity sha512-hwtKKf93TFyd3qugDW54ElpkUXhPe+ArPIHadre6IAFjCJiv08L8DaZKLRyclDnKfTavKe+f/PhdSEYo1QUHiA== +aws-sdk@2.521.0: + version "2.521.0" + resolved "https://registry.yarnpkg.com/aws-sdk/-/aws-sdk-2.521.0.tgz#b7b41084fdc9e8b134520f054c06e3908df9321a" + integrity sha512-YRViGahZoHq0lEsy0Cq7bqaLzP8OTzjg35Hz08Rv88ltk+b5UWVpDgIWls7mXCBNTBTYjbfbeGXzNaHJBLKlpA== dependencies: buffer "4.9.1" events "1.1.1" @@ -4356,6 +4363,11 @@ colorette@1.0.8: resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.0.8.tgz#421ff11c80b7414027ebed922396bc1833d1903c" integrity sha512-X6Ck90ReaF+EfKdVGB7vdIQ3dr651BbIrBwY5YBKg13fjH+940sTtp7/Pkx33C6ntYfQcRumOs/aUQhaRPpbTQ== +colorette@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.1.0.tgz#1f943e5a357fac10b4e0f5aaef3b14cdc1af6ec7" + integrity sha512-6S062WDQUXi6hOfkO/sBPVwE5ASXY4G2+b4atvhJfSsuUUhIaUKlkjLe9692Ipyt5/a+IPF5aVTu3V5gvXq5cg== + colornames@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/colornames/-/colornames-1.1.1.tgz#f8889030685c7c4ff9e2a559f5077eb76a816f96" @@ -5194,7 +5206,7 @@ delegates@^1.0.0: resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= -denque@^1.4.0: +denque@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/denque/-/denque-1.4.1.tgz#6744ff7641c148c3f8a69c307e51235c1f4a37cf" integrity sha512-OfzPuSZKGcgr96rf1oODnfjqBFmr1DVoc/TrItj3Ohe0Ah1C5WX5Baquw/9U9KovnQ88EqmJbD66rKYUQYN1tQ== @@ -5745,10 +5757,10 @@ eslint-config-requarks@1.0.7: resolved "https://registry.yarnpkg.com/eslint-config-requarks/-/eslint-config-requarks-1.0.7.tgz#d2f1495ace70d5c88961c8bec4741efddd03458a" integrity sha512-Qx1Ase/ryjVQxjwR6O+3d/u5hn/+vO4ixATPcZ0NYzHORaiXtAAiJ0ZkaGCjl2yM3LUcIW28z8e6lzUFv3s8PA== -eslint-config-standard@14.0.1: - version "14.0.1" - resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-14.0.1.tgz#375c3636fb4bd453cb95321d873de12e4eef790b" - integrity sha512-1RWsAKTDTZgA8bIM6PSC9aTGDAUlKqNkYNJlTZ5xYD/HYkIM6GlcefFvgcJ8xi0SWG5203rttKYX28zW+rKNOg== +eslint-config-standard@14.1.0: + version "14.1.0" + resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-14.1.0.tgz#b23da2b76fe5a2eba668374f246454e7058f15d4" + integrity sha512-EF6XkrrGVbvv8hL/kYa/m6vnvmUT+K82pJJc4JJVMM6+Qgqh0pnwprSxdduDLB9p/7bIxD+YV5O0wfb8lmcPbA== eslint-import-resolver-node@^0.3.2: version "0.3.2" @@ -5766,12 +5778,12 @@ eslint-module-utils@^2.4.0: debug "^2.6.8" pkg-dir "^2.0.0" -eslint-plugin-es@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-1.4.0.tgz#475f65bb20c993fc10e8c8fe77d1d60068072da6" - integrity sha512-XfFmgFdIUDgvaRAlaXUkxrRg5JSADoRC8IkKLc/cISeR3yHVMefFHQZpcyXXEUUPHfy5DwviBcrfqlyqEwlQVw== +eslint-plugin-es@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-1.4.1.tgz#12acae0f4953e76ba444bfd1b2271081ac620998" + integrity sha512-5fa/gR2yR3NxQf+UXkeLeP8FBBl6tSgdrAz1+cF84v1FMM4twGwQoqTnn+QxFLcPOrF4pdKEJKDB/q9GoyJrCA== dependencies: - eslint-utils "^1.3.0" + eslint-utils "^1.4.2" regexpp "^2.0.1" eslint-plugin-import@2.18.2: @@ -5791,13 +5803,13 @@ eslint-plugin-import@2.18.2: read-pkg-up "^2.0.0" resolve "^1.11.0" -eslint-plugin-node@9.1.0: - version "9.1.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-9.1.0.tgz#f2fd88509a31ec69db6e9606d76dabc5adc1b91a" - integrity sha512-ZwQYGm6EoV2cfLpE1wxJWsfnKUIXfM/KM09/TlorkukgCAwmkgajEJnPCmyzoFPQQkmvo5DrW/nyKutNIw36Mw== +eslint-plugin-node@9.2.0: + version "9.2.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-9.2.0.tgz#b1911f111002d366c5954a6d96d3cd5bf2a3036a" + integrity sha512-2abNmzAH/JpxI4gEOwd6K8wZIodK3BmHbTxz4s79OIYwwIt2gkpEXlAouJXu4H1c9ySTnRso0tsuthSOZbUMlA== dependencies: - eslint-plugin-es "^1.4.0" - eslint-utils "^1.3.1" + eslint-plugin-es "^1.4.1" + eslint-utils "^1.4.2" ignore "^5.1.1" minimatch "^3.0.4" resolve "^1.10.1" @@ -5844,11 +5856,6 @@ eslint-scope@^5.0.0: esrecurse "^4.1.0" estraverse "^4.1.1" -eslint-utils@^1.3.0, eslint-utils@^1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.3.1.tgz#9a851ba89ee7c460346f97cf8939c7298827e512" - integrity sha512-Z7YjnIldX+2XMcjr7ZkgEsOj/bREONV60qYeB/bjMAqqqZ4zxKyWX+BOUkdmRmA9riiIPVvo5x86m5elviOk0Q== - eslint-utils@^1.4.2: version "1.4.2" resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.2.tgz#166a5180ef6ab7eb462f162fd0e6f2463d7309ab" @@ -5866,10 +5873,10 @@ eslint-visitor-keys@^1.1.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2" integrity sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A== -eslint@6.2.2: - version "6.2.2" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-6.2.2.tgz#03298280e7750d81fcd31431f3d333e43d93f24f" - integrity sha512-mf0elOkxHbdyGX1IJEUsNBzCDdyoUgljF3rRlgfyYh0pwGnreLc0jjD6ZuleOibjmnUWZLY2eXwSooeOgGJ2jw== +eslint@6.3.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-6.3.0.tgz#1f1a902f67bfd4c354e7288b81e40654d927eb6a" + integrity sha512-ZvZTKaqDue+N8Y9g0kp6UPZtS4FSY3qARxBs7p4f0H0iof381XHduqVerFWtK8DPtKmemqbqCFENWSQgPR/Gow== dependencies: "@babel/code-frame" "^7.0.0" ajv "^6.10.0" @@ -6292,10 +6299,10 @@ filepond-plugin-file-validate-type@1.2.4: resolved "https://registry.yarnpkg.com/filepond-plugin-file-validate-type/-/filepond-plugin-file-validate-type-1.2.4.tgz#ce7f5f469dbc7ce0da12fdef7b0f24e4c263c410" integrity sha512-K1qD8mfahJoz2zRlWWvYoHuy4k/8tHggsoGbm/blpTp63OyahOdJBzMN3VK7USYn5OZ58uOFdMTMyi8ibFpW/Q== -filepond@4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/filepond/-/filepond-4.5.0.tgz#e74113b576a9c2e873fbfcebbfb408d578ae3261" - integrity sha512-ICkOPT2bY59danNY6P82okwRTIjq0lO10bsom+wQCsi57WvLCYDAb+GHYay5r62N5xunyqjprdT1K6Jrqc2+Uw== +filepond@4.5.1: + version "4.5.1" + resolved "https://registry.yarnpkg.com/filepond/-/filepond-4.5.1.tgz#5291cbd46481f8f83859e0924d19127f63096ec1" + integrity sha512-JslAp3HiHyrYPod43ULTp3+ICgLc8Yvx2oV5nB0PEeqhM1wECGyHdxQPjarKrkPaG3mJitVlVXwyJeucr8FWnw== filesize.js@1.0.2: version "1.0.2" @@ -6686,6 +6693,11 @@ getopts@2.2.4: resolved "https://registry.yarnpkg.com/getopts/-/getopts-2.2.4.tgz#3137fe8a5fddf304904059a851bdc1c22f0f54fb" integrity sha512-Rz7DGyomZjrenu9Jx4qmzdlvJgvrEFHXHvjK0FcZtcTC1U5FmES7OdZHUwMuSnEE6QvBvwse1JODKj7TgbSEjQ== +getopts@2.2.5: + version "2.2.5" + resolved "https://registry.yarnpkg.com/getopts/-/getopts-2.2.5.tgz#67a0fe471cacb9c687d817cab6450b96dde8313b" + integrity sha512-9jb7AW5p3in+IiJWhQiZmmwkpLaR/ccTWdWQCtZM66HJcHHLegowh4q4tSD7gouUyeNvFWRavfK9GXosQHDpFA== + getos@3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/getos/-/getos-3.1.1.tgz#967a813cceafee0156b0483f7cffa5b3eff029c5" @@ -6883,32 +6895,14 @@ graphql-config@2.2.1: lodash "^4.17.4" minimatch "^3.0.4" -graphql-extensions@0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/graphql-extensions/-/graphql-extensions-0.10.0.tgz#ceafc42e16554930b0dc90f64d5727ee2a9e9cf9" - integrity sha512-qz9Ev0NgsRxdTYqYSCpYwBWS9r1imm+vCBt3PmHzqZlE7SEpUPGddn9oKcLRB/P8uXT6dsr60hDmDHukIxiVOw== - dependencies: - "@apollographql/apollo-tools" "^0.4.0" - apollo-server-env "2.4.1" - apollo-server-types "0.2.1" - -graphql-extensions@0.8.1: - version "0.8.1" - resolved "https://registry.yarnpkg.com/graphql-extensions/-/graphql-extensions-0.8.1.tgz#f5f1fed5fe49620c4e70c5d08bdbd0039e91c402" - integrity sha512-d/L4x7/PPWhviJqi7jIWOVJPzfzagYgPizSQUpa+3hozbWhwpWEnfxwgL5/If5MnPUikBnqlkOLCyjHMNdipYA== - dependencies: - "@apollographql/apollo-tools" "^0.4.0" - apollo-server-env "2.4.1" - apollo-server-types "0.2.1" - -graphql-extensions@0.9.1: - version "0.9.1" - resolved "https://registry.yarnpkg.com/graphql-extensions/-/graphql-extensions-0.9.1.tgz#5d40b2c2cf57a35b686121d5e63783369dade5ef" - integrity sha512-JR/KStdwALd48B/xSG/Mi85zamuJd8THvVlzGM5juznPDN0wTYG5SARGzzvoqHxgxuUHYdzpvESwMAisORJdCQ== +graphql-extensions@^0.10.2: + version "0.10.2" + resolved "https://registry.yarnpkg.com/graphql-extensions/-/graphql-extensions-0.10.2.tgz#231654fe3c2959fd9a40717f5d46bfa22be7108c" + integrity sha512-8c1+Ih8E7zd4vf5sFGEzgz/1CBa410XEyCo/CxRq8bYqPzNKLm24dJonrQNTSwz3+/HVt5xQIPvLzMbVBUBV1g== dependencies: "@apollographql/apollo-tools" "^0.4.0" - apollo-server-env "2.4.1" - apollo-server-types "0.2.1" + apollo-server-env "^2.4.3" + apollo-server-types "^0.2.3" graphql-import@^0.7.1: version "0.7.1" @@ -7047,10 +7041,10 @@ graphql-voyager@1.0.0-rc.27: svg-pan-zoom "^3.6.0" viz.js "2.1.2" -graphql@14.5.3: - version "14.5.3" - resolved "https://registry.yarnpkg.com/graphql/-/graphql-14.5.3.tgz#e025851cc413e153220f4edbbb25d49f55104fa0" - integrity sha512-W8A8nt9BsMg0ZK2qA3DJIVU6muWhxZRYLTmc+5XGwzWzVdUdPVlAAg5hTBjiTISEnzsKL/onasu6vl3kgGTbYg== +graphql@14.5.4: + version "14.5.4" + resolved "https://registry.yarnpkg.com/graphql/-/graphql-14.5.4.tgz#b33fe957854e90c10d4c07c7d26b6c8e9f159a13" + integrity sha512-dPLvHoxy5m9FrkqWczPPRnH0X80CyvRE6e7Fa5AWEqEAzg9LpxHvKh24po/482E6VWHigOkAmb4xCp6P9yT9gw== dependencies: iterall "^1.2.2" @@ -7428,10 +7422,10 @@ i18next-xhr-backend@3.1.2: dependencies: "@babel/runtime" "^7.5.5" -i18next@17.0.12: - version "17.0.12" - resolved "https://registry.yarnpkg.com/i18next/-/i18next-17.0.12.tgz#d732a6c1131fc3b02305a8241eac25ec0d1cf663" - integrity sha512-FoYYnORcAMNznVXSpwJ1zVGL8kXcv1JUmvTqoQyuPPRncBq9rd7Mi0I/oVXkGR3YIek5dDiunvA/NGG2o+mMuw== +i18next@17.0.13: + version "17.0.13" + resolved "https://registry.yarnpkg.com/i18next/-/i18next-17.0.13.tgz#3c639e15de86e0523f8f286f6cf07db355ee0a4f" + integrity sha512-tCBpekVs95IsN3kdi/6HhnfzHDlpXerOmOsf2ZMWtct9YbMYKI54HVdQ6XxsHGXBxY+UgjbQJwqghKCd2sYQWw== dependencies: "@babel/runtime" "^7.3.1" @@ -7449,6 +7443,13 @@ iconv-lite@0.4.24, iconv-lite@^0.4.23, iconv-lite@^0.4.24, iconv-lite@^0.4.4, ic dependencies: safer-buffer ">= 2.1.2 < 3" +iconv-lite@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.5.0.tgz#59cdde0a2a297cc2aeb0c6445a195ee89f127550" + integrity sha512-NnEhI9hIEKHOzJ4f697DMz9IQEXr/MMJ5w64vN2/4Ai+wRnvV7SBrL0KLoRlwaKVghOc7LQ5YkPLuX146b6Ydw== + dependencies: + safer-buffer ">= 2.1.2 < 3" + icss-utils@^4.0.0, icss-utils@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-4.1.1.tgz#21170b53789ee27447c2f47dd683081403f9a467" @@ -8859,25 +8860,25 @@ kleur@^3.0.2: resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== -knex@0.19.2: - version "0.19.2" - resolved "https://registry.yarnpkg.com/knex/-/knex-0.19.2.tgz#056efdb33fb8c77d3d76266b5d1d12dc483c21b5" - integrity sha512-TVYvlp2esS4LjjJSz8XuE48bPJq4N3lWnETQVgJ3hXPEqjiDjxcTa3bCn6F5ipQuBaMAAaFHNrqsZm7BttogdA== +knex@0.19.3: + version "0.19.3" + resolved "https://registry.yarnpkg.com/knex/-/knex-0.19.3.tgz#b5d85b29a127f631a6924e8727c76e53e26cc713" + integrity sha512-HN32QB5PVkUYfvE4UoK/Tbf6UQ7CLEgS0PL8EP6xfonsP0IPZr2M84dy1dIy2KnB5dx+XO6NNEPgfzo8Y8BYzA== dependencies: bluebird "^3.5.5" - colorette "1.0.8" + colorette "1.1.0" commander "^2.20.0" debug "4.1.1" - getopts "2.2.4" + getopts "2.2.5" inherits "~2.0.4" interpret "^1.2.0" liftoff "3.1.0" lodash "^4.17.15" mkdirp "^0.5.1" - pg-connection-string "2.0.0" + pg-connection-string "2.1.0" tarn "^2.0.0" tildify "2.0.0" - uuid "^3.3.2" + uuid "^3.3.3" v8flags "^3.1.3" knex@^0.17: @@ -9062,7 +9063,7 @@ loader-utils@0.2.x: json5 "^0.5.0" object-assign "^4.0.1" -loader-utils@1.2.3, loader-utils@^1.0.1, loader-utils@^1.0.2, loader-utils@^1.0.4, loader-utils@^1.1.0, loader-utils@^1.2.0, loader-utils@^1.2.3: +loader-utils@1.2.3, loader-utils@^1.0.2, loader-utils@^1.0.4, loader-utils@^1.1.0, loader-utils@^1.2.0, loader-utils@^1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.2.3.tgz#1ff5dc6911c9f0a062531a4c04b609406108c2c7" integrity sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA== @@ -9734,10 +9735,10 @@ moment@2.24.0, "moment@>= 2.9.0", moment@^2.10.2, moment@^2.10.6, moment@^2.11.1 resolved "https://registry.yarnpkg.com/moment/-/moment-2.24.0.tgz#0d055d53f5052aa653c9f6eb68bb5d12bf5c2b5b" integrity sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg== -mongodb@3.3.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-3.3.1.tgz#31947e3050872d325415694f89119f37d2107a91" - integrity sha512-Q92LLlPUTBj/Z4DyeznwPJjvgOYUcxZsBfek3Ba9mVhzH41n70vSubo+BmemI98kOefHTSncrTyb3OaxdLSgDw== +mongodb@3.3.2: + version "3.3.2" + resolved "https://registry.yarnpkg.com/mongodb/-/mongodb-3.3.2.tgz#ff086b5f552cf07e24ce098694210f3d42d668b2" + integrity sha512-fqJt3iywelk4yKu/lfwQg163Bjpo5zDKhXiohycvon4iQHbrfflSAz9AIlRE6496Pm/dQKQK5bMigdVo2s6gBg== dependencies: bson "^1.1.1" require_optional "^1.0.1" @@ -9807,16 +9808,16 @@ mv@~2: ncp "~2.0.0" rimraf "~2.4.0" -mysql2@1.6.5: - version "1.6.5" - resolved "https://registry.yarnpkg.com/mysql2/-/mysql2-1.6.5.tgz#6695304fa2ce793dda5c98e8bbec65cbd2e6cb9d" - integrity sha512-zedaOOyb3msuuZcJJnxIX/EGOpmljDG7B+UevRH5lqcv+yhy9eCwkArBz8/AO+/rlY3/oCsOdG8R5oD6k0hNfg== +mysql2@1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/mysql2/-/mysql2-1.7.0.tgz#2fbf314da016a61d038ffcd57a2a0aa3b7b8eacc" + integrity sha512-xTWWQPjP5rcrceZQ7CSTKR/4XIDeH/cRkNH/uzvVGQ7W5c7EJ0dXeJUusk7OKhIoHj7uFKUxDVSCfLIl+jluog== dependencies: - denque "^1.4.0" + denque "^1.4.1" generate-function "^2.3.1" - iconv-lite "^0.4.24" + iconv-lite "^0.5.0" long "^4.0.0" - lru-cache "^4.1.3" + lru-cache "^5.1.1" named-placeholders "^1.1.2" seq-queue "^0.0.5" sqlstring "^2.3.1" @@ -9838,10 +9839,10 @@ nan@^2.12.1: resolved "https://registry.yarnpkg.com/nan/-/nan-2.13.2.tgz#f51dc7ae66ba7d5d55e1e6d4d8092e802c9aefe7" integrity sha512-TghvYc72wlMGMVMluVo9WRJc0mB8KxxF/gZ4YYFy7V2ZQX9l7rgbPg7vjS9mt6U5HXODVFVI2bOduCzwOMv/lw== -nanoid@2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-2.0.4.tgz#4889355c9ce8e24efad7c65945a4a2875ac3e8f4" - integrity sha512-sOJnBmY3TJQBVIBqKHoifuwygrocXg3NjS9rZSMnVl05XWSHK7Qxb177AIZQyMDjP86bz+yneozj/h9qsPLcCA== +nanoid@2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-2.1.0.tgz#3de3dbd68cfb2f3bd52550e2bfd439cf75040eb2" + integrity sha512-g5WwS+p6Cm+zQhO2YOpRbQThZVnNb7DDq74h8YDCLfAGynrEOrbx2E16dc8ciENiP1va5sqaAruqn2sN+xpkWg== nanomatch@^1.2.9: version "1.2.13" @@ -11008,6 +11009,11 @@ pg-connection-string@2.0.0: resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-2.0.0.tgz#3eefe5997e06d94821e4d502e42b6a1c73f8df82" integrity sha1-Pu/lmX4G2Ugh5NUC5CtqHHP434I= +pg-connection-string@2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-2.1.0.tgz#e07258f280476540b24818ebb5dca29e101ca502" + integrity sha512-bhlV7Eq09JrRIvo1eKngpwuqKtJnNhZdpdOlvrPrA4dxqXPjxSrbNrfnIDmTpwMyRszrcV4kU5ZA4mMsQUrjdg== + pg-cursor@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/pg-cursor/-/pg-cursor-2.0.0.tgz#1e11532613d2d4c61057a5705a1536b1052d1698" @@ -13363,15 +13369,15 @@ sanitize-filename@1.6.3: dependencies: truncate-utf8-bytes "^1.0.0" -sass-loader@7.3.1: - version "7.3.1" - resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-7.3.1.tgz#a5bf68a04bcea1c13ff842d747150f7ab7d0d23f" - integrity sha512-tuU7+zm0pTCynKYHpdqaPpe+MMTQ76I9TPZ7i4/5dZsigE350shQWe5EZNl5dBidM49TPET75tNqRbcsUZWeNA== +sass-loader@8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-8.0.0.tgz#e7b07a3e357f965e6b03dd45b016b0a9746af797" + integrity sha512-+qeMu563PN7rPdit2+n5uuYVR0SSVwm0JsOUsaJXzgYcClWSlmX0iHDnmeOobPkf5kUglVot3QS6SyLyaQoJ4w== dependencies: clone-deep "^4.0.1" - loader-utils "^1.0.1" - neo-async "^2.5.0" - pify "^4.0.1" + loader-utils "^1.2.3" + neo-async "^2.6.1" + schema-utils "^2.1.0" semver "^6.3.0" sass-resources-loader@2.0.1: @@ -13431,10 +13437,18 @@ schema-utils@^2.0.0, schema-utils@^2.0.1: ajv "^6.1.0" ajv-keywords "^3.1.0" -scim-query-filter-parser@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/scim-query-filter-parser/-/scim-query-filter-parser-1.1.0.tgz#00ddfa0065e01d05715841eeba94d5ff364fa0d6" - integrity sha1-AN36AGXgHQVxWEHuupTV/zZPoNY= +schema-utils@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.1.0.tgz#940363b6b1ec407800a22951bdcc23363c039393" + integrity sha512-g6SViEZAfGNrToD82ZPUjq52KUPDYc+fN5+g6Euo5mLokl/9Yx14z0Cu4RR1m55HtBXejO0sBt+qw79axN+Fiw== + dependencies: + ajv "^6.1.0" + ajv-keywords "^3.1.0" + +scim-query-filter-parser@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/scim-query-filter-parser/-/scim-query-filter-parser-1.1.1.tgz#203dba62d45a62df06d558ebbed4d663e967f6e8" + integrity sha512-Fh9Zd7b/IGxXDDwwzFkNnDCXHLgL5x7Y8K875uDHO14TQgsYOshS6QIH8t1+qes0lrzzqtxQJrM0mX7T/l6O3A== script-ext-html-webpack-plugin@2.1.4: version "2.1.4" @@ -13639,10 +13653,10 @@ simple-breakpoints@^1.1.1: resolved "https://registry.yarnpkg.com/simple-breakpoints/-/simple-breakpoints-1.1.3.tgz#5b5b09f1e96c5f8873e8ac23915323fbd7051516" integrity sha512-Io4J/9HyjAp6ITTBgOLU0BAronZKPC36znZoiiUSq5zlOfGPSdDFgWbpKyt9ASxGj5WXm2fhGx9+XtK3a+4dHw== -simple-git@1.124.0: - version "1.124.0" - resolved "https://registry.yarnpkg.com/simple-git/-/simple-git-1.124.0.tgz#10a73cc1af303832b5c11720d4256e134fba35ca" - integrity sha512-ks9mBoO4ODQy/xGLC8Cc+YDvj/hho/IKgPhi6h5LI/sA+YUdHc3v0DEoHzM29VmulubpGCxMJUSFmyXNsjNMEA== +simple-git@1.126.0: + version "1.126.0" + resolved "https://registry.yarnpkg.com/simple-git/-/simple-git-1.126.0.tgz#0c345372275139c8433b8277f4b3e155092aa434" + integrity sha512-47mqHxgZnN8XRa9HbpWprzUv3Ooqz9RY/LSZgvA7jCkW8jcwLahMz7LKugY91KZehfG0sCVPtgXiU72hd6b1Bw== dependencies: debug "^4.0.1" @@ -14873,7 +14887,7 @@ uuid@3.3.2, uuid@^3.1.0, uuid@^3.3.2: resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== -uuid@3.3.3: +uuid@3.3.3, uuid@^3.3.3: version "3.3.3" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.3.tgz#4568f0216e78760ee1dbf3a4d2cf53e224112866" integrity sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ== @@ -15074,10 +15088,10 @@ vue-moment@4.0.0: dependencies: moment "^2.11.1" -vue-router@3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/vue-router/-/vue-router-3.1.2.tgz#2e0904703545dabdd42b2b7a2e617f02f99a1969" - integrity sha512-WssQEHSEvIS1/CI4CO2T8LJdoK4Q9Ngox28K7FDNMTfzNTk2WS5D0dDlqYCaPG+AG4Z8wJkn1KrBc7AhspZJUQ== +vue-router@3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/vue-router/-/vue-router-3.1.3.tgz#e6b14fabc0c0ee9fda0e2cbbda74b350e28e412b" + integrity sha512-8iSa4mGNXBjyuSZFCCO4fiKfvzqk+mhL0lnKuGcQtO1eoj8nq3CmbEG8FwK5QqoqwDgsjsf1GDuisDX4cdb/aQ== vue-simple-breakpoints@1.0.3: version "1.0.3" @@ -15158,10 +15172,10 @@ vuetify-loader@1.3.0: dependencies: loader-utils "^1.2.0" -vuetify@2.0.10: - version "2.0.10" - resolved "https://registry.yarnpkg.com/vuetify/-/vuetify-2.0.10.tgz#652a687bda080f92f9ad784e018f8171cb479100" - integrity sha512-JgJJnD4e1/relDtu/448+nBn3J2ncXyk0YH4uZAAGM6XyUOpKMnLvv3Q+ZCnIxA1D6yp+wEknyzsfx2N9MgVwg== +vuetify@2.0.11: + version "2.0.11" + resolved "https://registry.yarnpkg.com/vuetify/-/vuetify-2.0.11.tgz#4679d6d37e4594daec930b28f1bc7083bcc76ca6" + integrity sha512-H5g0Wf/KHS1t29X+kh5hkj25dZNITCDtOb3UGl1YXx5Ua3xXUfXBRjKP50BJ7uZtQ3Jk9CiwoA6k3Lstv6zFow== vuex-pathify@1.2.4: version "1.2.4" @@ -15297,12 +15311,12 @@ webpack-log@^2.0.0: ansi-colors "^3.0.0" uuid "^3.3.2" -webpack-merge@4.2.1: - version "4.2.1" - resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-4.2.1.tgz#5e923cf802ea2ace4fd5af1d3247368a633489b4" - integrity sha512-4p8WQyS98bUJcCvFMbdGZyZmsKuWjWVnVHnAS3FFg0HDaRVrPbkivx2RYCre8UiemD67RsiFFLfn4JhLAin8Vw== +webpack-merge@4.2.2: + version "4.2.2" + resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-4.2.2.tgz#a27c52ea783d1398afd2087f547d7b9d2f43634d" + integrity sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g== dependencies: - lodash "^4.17.5" + lodash "^4.17.15" webpack-sources@^1.1.0, webpack-sources@^1.3.0: version "1.3.0" @@ -15327,10 +15341,10 @@ webpack-subresource-integrity@1.3.2: dependencies: webpack-sources "^1.3.0" -webpack@4.39.2: - version "4.39.2" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.39.2.tgz#c9aa5c1776d7c309d1b3911764f0288c8c2816aa" - integrity sha512-AKgTfz3xPSsEibH00JfZ9sHXGUwIQ6eZ9tLN8+VLzachk1Cw2LVmy+4R7ZiwTa9cZZ15tzySjeMui/UnSCAZhA== +webpack@4.39.3: + version "4.39.3" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.39.3.tgz#a02179d1032156b713b6ec2da7e0df9d037def50" + integrity sha512-BXSI9M211JyCVc3JxHWDpze85CvjC842EvpRsVTc/d15YJGlox7GIDd38kJgWrb3ZluyvIjgenbLDMBQPDcxYQ== dependencies: "@webassemblyjs/ast" "1.8.5" "@webassemblyjs/helper-module-context" "1.8.5"