From 597678184b278b64f60af243d127b9b824ca8b32 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 16 Aug 2021 10:30:20 -0400 Subject: [PATCH 001/284] update dependency vite to v2.5.0 (#7425) Co-authored-by: Renovate Bot --- app/package.json | 2 +- package-lock.json | 34 +++++++++++++++++----------------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/app/package.json b/app/package.json index f0474552a6..9328bc28dc 100644 --- a/app/package.json +++ b/app/package.json @@ -93,7 +93,7 @@ "sass": "1.37.5", "tinymce": "5.8.2", "typescript": "4.3.5", - "vite": "2.4.4", + "vite": "2.5.0", "vue": "3.2.2", "vue-i18n": "9.1.7", "vue-router": "4.0.11", diff --git a/package-lock.json b/package-lock.json index bf506aec85..0f0d2ea583 100644 --- a/package-lock.json +++ b/package-lock.json @@ -383,7 +383,7 @@ "sass": "1.37.5", "tinymce": "5.8.2", "typescript": "4.3.5", - "vite": "2.4.4", + "vite": "2.5.0", "vue": "3.2.2", "vue-i18n": "9.1.7", "vue-router": "4.0.11", @@ -19360,9 +19360,9 @@ } }, "node_modules/esbuild": { - "version": "0.12.15", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.12.15.tgz", - "integrity": "sha512-72V4JNd2+48eOVCXx49xoSWHgC3/cCy96e7mbXKY+WOWghN00cCmlGnwVLRhRHorvv0dgCyuMYBZlM2xDM5OQw==", + "version": "0.12.20", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.12.20.tgz", + "integrity": "sha512-u7+0qTo9Z64MD9PhooEngCmzyEYJ6ovFhPp8PLNh3UasR5Ihjv6HWVXqm8uHmasdQlpsAf0IsY4U0YVUfCpt4Q==", "dev": true, "hasInstallScript": true, "bin": { @@ -50986,12 +50986,12 @@ } }, "node_modules/vite": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/vite/-/vite-2.4.4.tgz", - "integrity": "sha512-m1wK6pFJKmaYA6AeZIUXyiAgUAAJzVXhIMYCdZUpCaFMGps0v0IlNJtbmPvkUhVEyautalajmnW5X6NboUPsnw==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/vite/-/vite-2.5.0.tgz", + "integrity": "sha512-Dn4B+g54PJsMG5WCc4QeFy1ygMXRdTtFrUPegqfk4+vzVQcbF/DqqmI/1bxezArzbujBJg/67QeT5wz8edfJVQ==", "dev": true, "dependencies": { - "esbuild": "^0.12.8", + "esbuild": "^0.12.17", "postcss": "^8.3.6", "resolve": "^1.20.0", "rollup": "^2.38.5" @@ -51000,7 +51000,7 @@ "vite": "bin/vite.js" }, "engines": { - "node": ">=12.0.0" + "node": ">=12.2.0" }, "optionalDependencies": { "fsevents": "~2.3.2" @@ -60688,7 +60688,7 @@ "sass": "1.37.5", "tinymce": "5.8.2", "typescript": "4.3.5", - "vite": "2.4.4", + "vite": "2.5.0", "vue": "3.2.2", "vue-i18n": "9.1.7", "vue-router": "4.0.11", @@ -77437,9 +77437,9 @@ } }, "esbuild": { - "version": "0.12.15", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.12.15.tgz", - "integrity": "sha512-72V4JNd2+48eOVCXx49xoSWHgC3/cCy96e7mbXKY+WOWghN00cCmlGnwVLRhRHorvv0dgCyuMYBZlM2xDM5OQw==", + "version": "0.12.20", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.12.20.tgz", + "integrity": "sha512-u7+0qTo9Z64MD9PhooEngCmzyEYJ6ovFhPp8PLNh3UasR5Ihjv6HWVXqm8uHmasdQlpsAf0IsY4U0YVUfCpt4Q==", "dev": true }, "escalade": { @@ -102258,12 +102258,12 @@ } }, "vite": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/vite/-/vite-2.4.4.tgz", - "integrity": "sha512-m1wK6pFJKmaYA6AeZIUXyiAgUAAJzVXhIMYCdZUpCaFMGps0v0IlNJtbmPvkUhVEyautalajmnW5X6NboUPsnw==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/vite/-/vite-2.5.0.tgz", + "integrity": "sha512-Dn4B+g54PJsMG5WCc4QeFy1ygMXRdTtFrUPegqfk4+vzVQcbF/DqqmI/1bxezArzbujBJg/67QeT5wz8edfJVQ==", "dev": true, "requires": { - "esbuild": "^0.12.8", + "esbuild": "^0.12.17", "fsevents": "~2.3.2", "postcss": "^8.3.6", "resolve": "^1.20.0", From 243b8223bd001caf8826376dbf5a77af6f8af4ac Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 16 Aug 2021 10:30:45 -0400 Subject: [PATCH 002/284] update dependency dompurify to v2.3.1 (#7407) Co-authored-by: Renovate Bot --- app/package.json | 2 +- package-lock.json | 16 ++++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/app/package.json b/app/package.json index 9328bc28dc..790c817702 100644 --- a/app/package.json +++ b/app/package.json @@ -73,7 +73,7 @@ "copyfiles": "2.4.1", "cropperjs": "1.5.12", "date-fns": "2.23.0", - "dompurify": "2.3.0", + "dompurify": "2.3.1", "escape-string-regexp": "5.0.0", "front-matter": "4.0.2", "html-entities": "2.3.2", diff --git a/package-lock.json b/package-lock.json index 0f0d2ea583..dd34e971b5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -363,7 +363,7 @@ "copyfiles": "2.4.1", "cropperjs": "1.5.12", "date-fns": "2.23.0", - "dompurify": "2.3.0", + "dompurify": "2.3.1", "escape-string-regexp": "5.0.0", "front-matter": "4.0.2", "html-entities": "2.3.2", @@ -18818,9 +18818,9 @@ } }, "node_modules/dompurify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.3.0.tgz", - "integrity": "sha512-VV5C6Kr53YVHGOBKO/F86OYX6/iLTw2yVSI721gKetxpHCK/V5TaLEf9ODjRgl1KLSWRMY6cUhAbv/c+IUnwQw==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.3.1.tgz", + "integrity": "sha512-xGWt+NHAQS+4tpgbOAI08yxW0Pr256Gu/FNE2frZVTbgrBUn8M7tz7/ktS/LZ2MHeGqz6topj0/xY+y8R5FBFw==", "dev": true }, "node_modules/domutils": { @@ -60668,7 +60668,7 @@ "copyfiles": "2.4.1", "cropperjs": "1.5.12", "date-fns": "2.23.0", - "dompurify": "2.3.0", + "dompurify": "2.3.1", "escape-string-regexp": "5.0.0", "front-matter": "4.0.2", "html-entities": "2.3.2", @@ -76995,9 +76995,9 @@ } }, "dompurify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.3.0.tgz", - "integrity": "sha512-VV5C6Kr53YVHGOBKO/F86OYX6/iLTw2yVSI721gKetxpHCK/V5TaLEf9ODjRgl1KLSWRMY6cUhAbv/c+IUnwQw==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.3.1.tgz", + "integrity": "sha512-xGWt+NHAQS+4tpgbOAI08yxW0Pr256Gu/FNE2frZVTbgrBUn8M7tz7/ktS/LZ2MHeGqz6topj0/xY+y8R5FBFw==", "dev": true }, "domutils": { From 33f71a42940b05b97b6cd59074a517b7878b03af Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 16 Aug 2021 10:32:59 -0400 Subject: [PATCH 003/284] update dependency marked to v3 (#7424) Co-authored-by: Renovate Bot --- app/package.json | 2 +- package-lock.json | 46 ++++++++++++++++++++++++++++++++++----- packages/cli/package.json | 2 +- 3 files changed, 43 insertions(+), 7 deletions(-) diff --git a/app/package.json b/app/package.json index 790c817702..fc25df69a9 100644 --- a/app/package.json +++ b/app/package.json @@ -79,7 +79,7 @@ "html-entities": "2.3.2", "jsonlint-mod": "1.7.6", "maplibre-gl": "1.15.2", - "marked": "2.1.3", + "marked": "3.0.0", "micromustache": "8.0.3", "mime": "2.5.2", "mitt": "3.0.0", diff --git a/package-lock.json b/package-lock.json index dd34e971b5..ecfe7793b9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -369,7 +369,7 @@ "html-entities": "2.3.2", "jsonlint-mod": "1.7.6", "maplibre-gl": "1.15.2", - "marked": "2.1.3", + "marked": "3.0.0", "micromustache": "8.0.3", "mime": "2.5.2", "mitt": "3.0.0", @@ -416,6 +416,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "app/node_modules/marked": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/marked/-/marked-3.0.0.tgz", + "integrity": "sha512-IF2MYfFafPsLIhzLTu63secRBwOmIY+vwS+ei6qg8F+bTS+MxH6ONYRmuseGdZqF44qvoi3nP/rlpClBdgLbiQ==", + "dev": true, + "bin": { + "marked": "bin/marked" + }, + "engines": { + "node": ">= 12" + } + }, "app/node_modules/p-queue": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-7.1.0.tgz", @@ -32025,6 +32037,7 @@ "version": "2.1.3", "resolved": "https://registry.npmjs.org/marked/-/marked-2.1.3.tgz", "integrity": "sha512-/Q+7MGzaETqifOMWYEA7HVMaZb4XbcRfaOzcSsHZEith83KGlvaSG33u0SKu89Mj5h+T8V2hM+8O45Qc5XTgwA==", + "peer": true, "bin": { "marked": "bin/marked" }, @@ -54588,7 +54601,7 @@ "js-yaml": "^4.1.0", "json5": "^2.2.0", "liquidjs": "^9.25.0", - "marked": "^2.0.7", + "marked": "^3.0.0", "marked-terminal": "^4.1.1", "merge-options": "^3.0.4", "open": "^8.2.0", @@ -54678,6 +54691,17 @@ "js-yaml": "bin/js-yaml.js" } }, + "packages/cli/node_modules/marked": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/marked/-/marked-3.0.0.tgz", + "integrity": "sha512-IF2MYfFafPsLIhzLTu63secRBwOmIY+vwS+ei6qg8F+bTS+MxH6ONYRmuseGdZqF44qvoi3nP/rlpClBdgLbiQ==", + "bin": { + "marked": "bin/marked" + }, + "engines": { + "node": ">= 12" + } + }, "packages/cli/node_modules/open": { "version": "8.2.1", "resolved": "https://registry.npmjs.org/open/-/open-8.2.1.tgz", @@ -60674,7 +60698,7 @@ "html-entities": "2.3.2", "jsonlint-mod": "1.7.6", "maplibre-gl": "1.15.2", - "marked": "2.1.3", + "marked": "3.0.0", "micromustache": "8.0.3", "mime": "2.5.2", "mitt": "3.0.0", @@ -60708,6 +60732,12 @@ "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", "dev": true }, + "marked": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/marked/-/marked-3.0.0.tgz", + "integrity": "sha512-IF2MYfFafPsLIhzLTu63secRBwOmIY+vwS+ei6qg8F+bTS+MxH6ONYRmuseGdZqF44qvoi3nP/rlpClBdgLbiQ==", + "dev": true + }, "p-queue": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-7.1.0.tgz", @@ -60758,7 +60788,7 @@ "js-yaml": "^4.1.0", "json5": "^2.2.0", "liquidjs": "^9.25.0", - "marked": "^2.0.7", + "marked": "^3.0.0", "marked-terminal": "^4.1.1", "merge-options": "^3.0.4", "nock": "13.1.1", @@ -60818,6 +60848,11 @@ "argparse": "^2.0.1" } }, + "marked": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/marked/-/marked-3.0.0.tgz", + "integrity": "sha512-IF2MYfFafPsLIhzLTu63secRBwOmIY+vwS+ei6qg8F+bTS+MxH6ONYRmuseGdZqF44qvoi3nP/rlpClBdgLbiQ==" + }, "open": { "version": "8.2.1", "resolved": "https://registry.npmjs.org/open/-/open-8.2.1.tgz", @@ -87364,7 +87399,8 @@ "marked": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/marked/-/marked-2.1.3.tgz", - "integrity": "sha512-/Q+7MGzaETqifOMWYEA7HVMaZb4XbcRfaOzcSsHZEith83KGlvaSG33u0SKu89Mj5h+T8V2hM+8O45Qc5XTgwA==" + "integrity": "sha512-/Q+7MGzaETqifOMWYEA7HVMaZb4XbcRfaOzcSsHZEith83KGlvaSG33u0SKu89Mj5h+T8V2hM+8O45Qc5XTgwA==", + "peer": true }, "marked-terminal": { "version": "4.1.1", diff --git a/packages/cli/package.json b/packages/cli/package.json index e9eb57a431..0585a86ab0 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -63,7 +63,7 @@ "js-yaml": "^4.1.0", "json5": "^2.2.0", "liquidjs": "^9.25.0", - "marked": "^2.0.7", + "marked": "^3.0.0", "marked-terminal": "^4.1.1", "merge-options": "^3.0.4", "open": "^8.2.0", From 718addd2b85aa24b448df1592cdd5cd0981e57e1 Mon Sep 17 00:00:00 2001 From: rijkvanzanten Date: Mon, 16 Aug 2021 13:39:29 -0400 Subject: [PATCH 004/284] Handle non-existing relations in m2o --- .../select-dropdown-m2o.vue | 38 +++++++++++++------ 1 file changed, 27 insertions(+), 11 deletions(-) diff --git a/app/src/interfaces/select-dropdown-m2o/select-dropdown-m2o.vue b/app/src/interfaces/select-dropdown-m2o/select-dropdown-m2o.vue index 87a022b310..3857d9a96b 100644 --- a/app/src/interfaces/select-dropdown-m2o/select-dropdown-m2o.vue +++ b/app/src/interfaces/select-dropdown-m2o/select-dropdown-m2o.vue @@ -211,13 +211,14 @@ export default defineComponent({ const currentPrimaryKey = computed(() => { if (!currentItem.value) return '+'; if (!props.value) return '+'; + if (!relatedPrimaryKeyField.value) return '+'; if (typeof props.value === 'number' || typeof props.value === 'string') { - return props.value; + return props.value!; } - if (typeof props.value === 'object' && relatedPrimaryKeyField.value.field in props.value) { - return props.value[relatedPrimaryKeyField.value.field]; + if (typeof props.value === 'object' && relatedPrimaryKeyField.value.field in (props.value ?? {})) { + return props.value?.[relatedPrimaryKeyField.value.field] ?? '+'; } return '+'; @@ -226,11 +227,14 @@ export default defineComponent({ return { setCurrent, currentItem, loading, currentPrimaryKey }; function setCurrent(item: Record) { + if (!relatedPrimaryKeyField.value) return; currentItem.value = item; emit('input', item[relatedPrimaryKeyField.value.field]); } async function fetchCurrent() { + if (!relatedPrimaryKeyField.value || !relatedCollection.value) return; + loading.value = true; const fields = requiredFields.value || []; @@ -242,7 +246,7 @@ export default defineComponent({ try { const endpoint = relatedCollection.value.collection.startsWith('directus_') ? `/${relatedCollection.value.collection.substring(9)}/${props.value}` - : `/items/${relatedCollection.value.collection}/${encodeURIComponent(props.value)}`; + : `/items/${relatedCollection.value.collection}/${encodeURIComponent(props.value!)}`; const response = await api.get(endpoint, { params: { @@ -274,6 +278,7 @@ export default defineComponent({ async function fetchItems() { if (items.value !== null) return; + if (!relatedCollection.value || !relatedPrimaryKeyField.value) return; loading.value = true; @@ -304,6 +309,8 @@ export default defineComponent({ } async function fetchTotalCount() { + if (!relatedCollection.value) return; + const endpoint = relatedCollection.value.collection.startsWith('directus_') ? `/${relatedCollection.value.collection.substring(9)}` : `/items/${relatedCollection.value.collection}`; @@ -325,10 +332,15 @@ export default defineComponent({ }); const relatedCollection = computed(() => { - return collectionsStore.getCollection(relation.value.related_collection!)!; + if (!relation.value?.related_collection) return null; + return collectionsStore.getCollection(relation.value.related_collection)!; }); - const { primaryKeyField: relatedPrimaryKeyField } = useCollection(relatedCollection.value.collection); + const relatedPrimaryKeyField = computed(() => { + if (!relatedCollection.value?.collection) return null; + const { primaryKeyField } = useCollection(relatedCollection.value?.collection); + return primaryKeyField.value; + }); return { relation, relatedCollection, relatedPrimaryKeyField }; } @@ -350,11 +362,12 @@ export default defineComponent({ function usePreview() { const displayTemplate = computed(() => { if (props.template !== null) return props.template; - return collectionInfo.value?.meta?.display_template || `{{ ${relatedPrimaryKeyField.value.field} }}`; + return collectionInfo.value?.meta?.display_template || `{{ ${relatedPrimaryKeyField?.value?.field || ''} }}`; }); const requiredFields = computed(() => { - if (!displayTemplate.value) return null; + if (!displayTemplate.value || !relatedCollection.value) return null; + return adjustFieldsForDisplays( getFieldsFromTemplate(displayTemplate.value), relatedCollection.value.collection @@ -381,13 +394,14 @@ export default defineComponent({ const selection = computed<(number | string)[]>(() => { if (!props.value) return []; + if (!relatedPrimaryKeyField.value) return []; - if (typeof props.value === 'object' && relatedPrimaryKeyField.value.field in props.value) { - return [props.value[relatedPrimaryKeyField.value.field]]; + if (typeof props.value === 'object' && relatedPrimaryKeyField.value.field in (props.value ?? {})) { + return [props.value![relatedPrimaryKeyField.value.field]]; } if (typeof props.value === 'string' || typeof props.value === 'number') { - return [props.value]; + return [props.value!]; } return []; @@ -418,6 +432,8 @@ export default defineComponent({ return { edits, stageEdits }; function stageEdits(newEdits: Record) { + if (!relatedPrimaryKeyField.value) return; + // Make sure we stage the primary key if it exists. This is needed to have the API // update the existing item instead of create a new one if (currentPrimaryKey.value && currentPrimaryKey.value !== '+') { From eaa2f47453e1ab978443703165ed8ebe4caf149e Mon Sep 17 00:00:00 2001 From: rijkvanzanten Date: Mon, 16 Aug 2021 13:43:22 -0400 Subject: [PATCH 005/284] Fix translations not fetching all translation previews --- app/src/interfaces/translations/translations.vue | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/src/interfaces/translations/translations.vue b/app/src/interfaces/translations/translations.vue index ae919dccc1..ef115d8b26 100644 --- a/app/src/interfaces/translations/translations.vue +++ b/app/src/interfaces/translations/translations.vue @@ -293,6 +293,7 @@ export default defineComponent({ _in: existingPrimaryKeys.value, }, }, + limit: -1, }, }); @@ -399,6 +400,7 @@ export default defineComponent({ _eq: props.primaryKey, }, }, + limit: -1, }, }); From 1532fa811ec98838213ca7208da9b84037b8948d Mon Sep 17 00:00:00 2001 From: Azri Kahar <42867097+azrikahar@users.noreply.github.com> Date: Tue, 17 Aug 2021 05:36:20 +0800 Subject: [PATCH 006/284] remove list-style for v-list (#7439) --- app/src/components/v-list/v-list.vue | 1 + 1 file changed, 1 insertion(+) diff --git a/app/src/components/v-list/v-list.vue b/app/src/components/v-list/v-list.vue index fa840624a6..1d32877e91 100644 --- a/app/src/components/v-list/v-list.vue +++ b/app/src/components/v-list/v-list.vue @@ -65,6 +65,7 @@ export default defineComponent({ .v-list { position: static; display: block; + list-style: none; min-width: var(--v-list-min-width); max-width: var(--v-list-max-width); min-height: var(--v-list-min-height); From 027fd1a761cbf2a1b51c3fa2c6c560f154b5f710 Mon Sep 17 00:00:00 2001 From: rijkvanzanten Date: Mon, 16 Aug 2021 19:13:30 -0400 Subject: [PATCH 007/284] Fix linter warning --- app/src/components/v-list/v-list.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/components/v-list/v-list.vue b/app/src/components/v-list/v-list.vue index 1d32877e91..8a69b2d946 100644 --- a/app/src/components/v-list/v-list.vue +++ b/app/src/components/v-list/v-list.vue @@ -65,7 +65,6 @@ export default defineComponent({ .v-list { position: static; display: block; - list-style: none; min-width: var(--v-list-min-width); max-width: var(--v-list-max-width); min-height: var(--v-list-min-height); @@ -74,6 +73,7 @@ export default defineComponent({ overflow: auto; color: var(--v-list-color); line-height: 22px; + list-style: none; border-radius: var(--border-radius); } From 19424feefafe5a32f7f34f8c39b1d8da1ddf1828 Mon Sep 17 00:00:00 2001 From: Sam Milledge Date: Tue, 17 Aug 2021 09:16:41 +1000 Subject: [PATCH 008/284] Fixes for GraphQL variables in HTTP GET requests (#7416) * Fix missing GraphQL variables in HTTP GET requests * Fix GraphQL query request caching - Fix incorrect response when the query contains variables - Added tests for cache keys and cache middleware * Update api/src/utils/get-cache-key.test.ts Co-authored-by: Rijk van Zanten --- api/.gitignore | 2 +- api/jest.config.js | 9 ++++ api/package.json | 7 ++- api/src/__mocks__/cache.ts | 6 +++ api/src/middleware/cache.test.ts | 76 +++++++++++++++++++++++++++++ api/src/middleware/graphql.ts | 2 +- api/src/utils/get-cache-key.test.ts | 60 +++++++++++++++++++++++ api/src/utils/get-cache-key.ts | 4 +- 8 files changed, 162 insertions(+), 4 deletions(-) create mode 100644 api/jest.config.js create mode 100644 api/src/__mocks__/cache.ts create mode 100644 api/src/middleware/cache.test.ts create mode 100644 api/src/utils/get-cache-key.test.ts diff --git a/api/.gitignore b/api/.gitignore index c813612f69..16f3a346cc 100644 --- a/api/.gitignore +++ b/api/.gitignore @@ -10,4 +10,4 @@ test dist tmp keys.json - +coverage diff --git a/api/jest.config.js b/api/jest.config.js new file mode 100644 index 0000000000..a33930c5cd --- /dev/null +++ b/api/jest.config.js @@ -0,0 +1,9 @@ +require('dotenv').config(); + +module.exports = { + preset: 'ts-jest', + verbose: true, + setupFiles: ['dotenv/config'], + testURL: process.env.TEST_URL || 'http://localhost', + collectCoverageFrom: ['src/**/*.ts'], +}; diff --git a/api/package.json b/api/package.json index 6b1667bd88..dea8c59c19 100644 --- a/api/package.json +++ b/api/package.json @@ -56,7 +56,9 @@ "build": "tsc --build && copyfiles \"src/**/*.*\" -e \"src/**/*.ts\" -u 1 dist", "cleanup": "rimraf dist", "dev": "cross-env NODE_ENV=development SERVE_APP=false ts-node-dev --files --transpile-only --respawn --watch \".env\" --inspect --exit-child -- src/start.ts", - "cli": "cross-env NODE_ENV=development SERVE_APP=false ts-node --script-mode --transpile-only src/cli/index.ts" + "cli": "cross-env NODE_ENV=development SERVE_APP=false ts-node --script-mode --transpile-only src/cli/index.ts", + "test": "jest --coverage", + "test:watch": "jest --watchAll" }, "engines": { "node": ">=12.20.0" @@ -170,6 +172,7 @@ "@types/express-session": "1.17.4", "@types/fs-extra": "9.0.12", "@types/inquirer": "7.3.3", + "@types/jest": "27.0.1", "@types/js-yaml": "4.0.2", "@types/json2csv": "5.0.3", "@types/jsonwebtoken": "8.5.4", @@ -189,6 +192,8 @@ "@types/wellknown": "0.5.1", "copyfiles": "2.4.1", "cross-env": "7.0.3", + "jest": "27.0.6", + "ts-jest": "27.0.4", "ts-node-dev": "1.1.8", "typescript": "4.3.5" } diff --git a/api/src/__mocks__/cache.ts b/api/src/__mocks__/cache.ts new file mode 100644 index 0000000000..ff7440d3b1 --- /dev/null +++ b/api/src/__mocks__/cache.ts @@ -0,0 +1,6 @@ +export const cache = { + get: jest.fn().mockResolvedValue(undefined), + set: jest.fn().mockResolvedValue(true), +}; + +export const getCache = jest.fn().mockReturnValue({ cache }); diff --git a/api/src/middleware/cache.test.ts b/api/src/middleware/cache.test.ts new file mode 100644 index 0000000000..08450d0876 --- /dev/null +++ b/api/src/middleware/cache.test.ts @@ -0,0 +1,76 @@ +import express from 'express'; +import request from 'supertest'; +import checkCacheMiddleware from './cache'; + +jest.mock('../cache'); +jest.mock('../env', () => ({ + CACHE_ENABLED: true, + CACHE_NAMESPACE: 'test', + CACHE_STORE: 'memory', + CACHE_TTL: '5s', + CACHE_CONTROL_S_MAXAGE: true, +})); + +const { cache } = jest.requireMock('../cache'); +const env = jest.requireMock('../env'); + +const handler = jest.fn((req, res) => res.json({ data: 'Uncached value' })); +const setup = () => express().use(checkCacheMiddleware).all('/items/test', handler); + +beforeEach(jest.clearAllMocks); + +describe('cache middleware', () => { + test('should return the cached response for a request', async () => { + cache.get.mockResolvedValueOnce({ data: 'Cached value' }); + cache.get.mockResolvedValueOnce(new Date().getTime() + 1000 * 60); + + const res = await request(setup()).get('/items/test').send(); + + expect(res.body.data).toBe('Cached value'); + expect(res.headers['vary']).toBe('Origin, Cache-Control'); + expect(res.headers['cache-control']).toMatch(/public, max-age=\d+, s-maxage=\d+/); + expect(handler).not.toHaveBeenCalled(); + }); + + test('should call the handler when there is no cached value', async () => { + cache.get.mockResolvedValueOnce(undefined); + + const res = await request(setup()).get('/items/test').send(); + + expect(res.body.data).toBe('Uncached value'); + expect(cache.get).toHaveBeenCalledTimes(1); + expect(handler).toHaveBeenCalledTimes(1); + }); + + test('should not cache requests then the cache is disabled', async () => { + env.CACHE_ENABLED = false; + + const res = await request(setup()).get('/items/test').send(); + + expect(res.body.data).toBe('Uncached value'); + expect(cache.get).not.toHaveBeenCalled(); + expect(handler).toHaveBeenCalledTimes(1); + + env.CACHE_ENABLED = true; + }); + + test('should not use cache when the "Cache-Control" header is set to "no-store"', async () => { + const res = await request(setup()).get('/items/test').set('Cache-Control', 'no-store').send(); + + expect(res.body.data).toBe('Uncached value'); + expect(cache.get).not.toHaveBeenCalled(); + expect(handler).toHaveBeenCalledTimes(1); + }); + + test('should only cache get requests', async () => { + const app = setup(); + + await request(app).post('/items/test').send(); + await request(app).put('/items/test').send(); + await request(app).patch('/items/test').send(); + await request(app).delete('/items/test').send(); + + expect(cache.get).not.toHaveBeenCalled(); + expect(handler).toHaveBeenCalledTimes(4); + }); +}); diff --git a/api/src/middleware/graphql.ts b/api/src/middleware/graphql.ts index 3374e61d5c..8f1346356a 100644 --- a/api/src/middleware/graphql.ts +++ b/api/src/middleware/graphql.ts @@ -17,7 +17,7 @@ export const parseGraphQL: RequestHandler = asyncHandler(async (req, res, next) if (req.method === 'GET') { query = (req.query.query as string | undefined) || null; - if (req.params.variables) { + if (req.query.variables) { try { variables = JSON.parse(req.query.variables as string); } catch { diff --git a/api/src/utils/get-cache-key.test.ts b/api/src/utils/get-cache-key.test.ts new file mode 100644 index 0000000000..82f528a20f --- /dev/null +++ b/api/src/utils/get-cache-key.test.ts @@ -0,0 +1,60 @@ +import { Request } from 'express'; +import { getCacheKey } from './get-cache-key'; + +const restUrl = 'http://localhost/items/example'; +const graphQlUrl = 'http://localhost/graphql'; +const accountability = { user: '00000000-0000-0000-0000-000000000000' }; + +const requests = [ + { + name: 'as unauthenticated request', + params: { originalUrl: restUrl }, + key: '17da8272c9a0ec6eea38a37d6d78bddeb7c79045', + }, + { + name: 'as authenticated request', + params: { originalUrl: restUrl, accountability }, + key: '99a6394222a3d7d149ac1662fc2fff506932db58', + }, + { + name: 'a request with a fields query', + params: { originalUrl: restUrl, sanitizedQuery: { fields: ['id', 'name'] } }, + key: 'aa6e2d8a78de4dfb4af6eaa230d1cd9b7d31ed19', + }, + { + name: 'a request with a filter query', + params: { originalUrl: restUrl, sanitizedQuery: { filter: { name: { _eq: 'test' } } } }, + key: 'd7eb8970f0429e1cf85e12eb5bb8669f618b09d3', + }, + { + name: 'a GraphQL query request', + params: { originalUrl: graphQlUrl, query: { query: 'query { test { id } }' } }, + key: '201731b75c627c60554512d819b6935b54c73814', + }, +]; + +const cases = requests.map(({ name, params, key }) => [name, params, key]); + +describe('get cache key', () => { + test.each(cases)('should create a cache key for %s', (_, params, key) => { + expect(getCacheKey(params as unknown as Request)).toEqual(key); + }); + + test('should create a unique key for each request', () => { + const keys = requests.map((r) => r.key); + const hasDuplicate = keys.some((key) => keys.indexOf(key) !== keys.lastIndexOf(key)); + + expect(hasDuplicate).toBeFalsy(); + }); + + test('should create a unique key for GraphQL requests with different variables', () => { + const query = 'query Test ($name: String) { test (filter: { name: { _eq: $name } }) { id } }'; + const operationName = 'test'; + const variables1 = JSON.stringify({ name: 'test 1' }); + const variables2 = JSON.stringify({ name: 'test 2' }); + const req1: any = { originalUrl: graphQlUrl, query: { query, operationName, variables: variables1 } }; + const req2: any = { originalUrl: graphQlUrl, query: { query, operationName, variables: variables2 } }; + + expect(getCacheKey(req1)).not.toEqual(getCacheKey(req2)); + }); +}); diff --git a/api/src/utils/get-cache-key.ts b/api/src/utils/get-cache-key.ts index 99f83e54f3..99087518bd 100644 --- a/api/src/utils/get-cache-key.ts +++ b/api/src/utils/get-cache-key.ts @@ -1,14 +1,16 @@ import { Request } from 'express'; import url from 'url'; import hash from 'object-hash'; +import { pick } from 'lodash'; export function getCacheKey(req: Request): string { const path = url.parse(req.originalUrl).pathname; + const isGraphQl = path?.includes('/graphql'); const info = { user: req.accountability?.user || null, path, - query: path?.includes('/graphql') ? req.query.query : req.sanitizedQuery, + query: isGraphQl ? pick(req.query, ['query', 'variables']) : req.sanitizedQuery, }; const key = hash(info); From 3a97505b53ce68d13c6bf53e652a92b25d21a484 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 17 Aug 2021 09:36:40 -0400 Subject: [PATCH 009/284] update dependency sass to v1.38.0 (#7448) Co-authored-by: Renovate Bot --- app/package.json | 2 +- package-lock.json | 129 +++++++++++++++++++++++++++++++++++++++++++--- 2 files changed, 122 insertions(+), 9 deletions(-) diff --git a/app/package.json b/app/package.json index fc25df69a9..843ce472db 100644 --- a/app/package.json +++ b/app/package.json @@ -90,7 +90,7 @@ "pretty-ms": "7.0.1", "qrcode": "1.4.4", "rimraf": "3.0.2", - "sass": "1.37.5", + "sass": "1.38.0", "tinymce": "5.8.2", "typescript": "4.3.5", "vite": "2.5.0", diff --git a/package-lock.json b/package-lock.json index ecfe7793b9..9e6bfe7611 100644 --- a/package-lock.json +++ b/package-lock.json @@ -150,6 +150,7 @@ "@types/express-session": "1.17.4", "@types/fs-extra": "9.0.12", "@types/inquirer": "7.3.3", + "@types/jest": "27.0.1", "@types/js-yaml": "4.0.2", "@types/json2csv": "5.0.3", "@types/jsonwebtoken": "8.5.4", @@ -169,6 +170,8 @@ "@types/wellknown": "0.5.1", "copyfiles": "2.4.1", "cross-env": "7.0.3", + "jest": "27.0.6", + "ts-jest": "27.0.4", "ts-node-dev": "1.1.8", "typescript": "4.3.5" }, @@ -190,6 +193,28 @@ "tedious": "^11.0.8" } }, + "api/node_modules/@types/jest": { + "version": "27.0.1", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-27.0.1.tgz", + "integrity": "sha512-HTLpVXHrY69556ozYkcq47TtQJXpcWAWfkoqz+ZGz2JnmZhzlRjprCIyFnetSy8gpDWwTTGBcRVv1J1I1vBrHw==", + "dev": true, + "dependencies": { + "jest-diff": "^27.0.0", + "pretty-format": "^27.0.0" + } + }, + "api/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, "api/node_modules/argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -231,6 +256,15 @@ "url": "https://opencollective.com/date-fns" } }, + "api/node_modules/diff-sequences": { + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.0.6.tgz", + "integrity": "sha512-ag6wfpBFyNXZ0p8pcuIDS//D8H062ZQJ3fzYxjpmeKjnz8W4pekL3AI8VohmyZmsWW2PWaHgjsmqR6L13101VQ==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, "api/node_modules/fs-extra": { "version": "10.0.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.0.tgz", @@ -268,6 +302,21 @@ "node": ">=8.0.0" } }, + "api/node_modules/jest-diff": { + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.0.6.tgz", + "integrity": "sha512-Z1mqgkTCSYaFgwTlP/NUiRzdqgxmmhzHY1Tq17zL94morOHfHu3K4bgSgl+CR4GLhpV8VxkuOYuIWnQ9LnFqmg==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^27.0.6", + "jest-get-type": "^27.0.6", + "pretty-format": "^27.0.6" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, "api/node_modules/js-yaml": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", @@ -292,6 +341,21 @@ "node": ">= 6" } }, + "api/node_modules/pretty-format": { + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.0.6.tgz", + "integrity": "sha512-8tGD7gBIENgzqA+UBzObyWqQ5B778VIFZA/S66cclyd5YkFLYs2Js7gxDKf0MXtTc9zcS7t1xhdfcElJ3YIvkQ==", + "dev": true, + "dependencies": { + "@jest/types": "^27.0.6", + "ansi-regex": "^5.0.0", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, "api/node_modules/rxjs": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.2.0.tgz", @@ -380,7 +444,7 @@ "pretty-ms": "7.0.1", "qrcode": "1.4.4", "rimraf": "3.0.2", - "sass": "1.37.5", + "sass": "1.38.0", "tinymce": "5.8.2", "typescript": "4.3.5", "vite": "2.5.0", @@ -44489,9 +44553,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "node_modules/sass": { - "version": "1.37.5", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.37.5.tgz", - "integrity": "sha512-Cx3ewxz9QB/ErnVIiWg2cH0kiYZ0FPvheDTVC6BsiEGBTZKKZJ1Gq5Kq6jy3PKtL6+EJ8NIoaBW/RSd2R6cZOA==", + "version": "1.38.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.38.0.tgz", + "integrity": "sha512-WBccZeMigAGKoI+NgD7Adh0ab1HUq+6BmyBUEaGxtErbUtWUevEbdgo5EZiJQofLUGcKtlNaO2IdN73AHEua5g==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0" @@ -60709,7 +60773,7 @@ "pretty-ms": "7.0.1", "qrcode": "1.4.4", "rimraf": "3.0.2", - "sass": "1.37.5", + "sass": "1.38.0", "tinymce": "5.8.2", "typescript": "4.3.5", "vite": "2.5.0", @@ -76686,6 +76750,7 @@ "@types/express-session": "1.17.4", "@types/fs-extra": "9.0.12", "@types/inquirer": "7.3.3", + "@types/jest": "27.0.1", "@types/js-yaml": "4.0.2", "@types/json2csv": "5.0.3", "@types/jsonwebtoken": "8.5.4", @@ -76735,6 +76800,7 @@ "graphql-compose": "^9.0.1", "inquirer": "^8.1.1", "ioredis": "^4.27.6", + "jest": "27.0.6", "joi": "^17.3.0", "js-yaml": "^4.1.0", "js2xmlparser": "^4.0.1", @@ -76773,6 +76839,7 @@ "sqlite3": "^5.0.2", "stream-json": "^1.7.1", "tedious": "^11.0.8", + "ts-jest": "27.0.4", "ts-node-dev": "1.1.8", "typescript": "4.3.5", "update-check": "^1.5.4", @@ -76781,6 +76848,22 @@ "wellknown": "^0.5.0" }, "dependencies": { + "@types/jest": { + "version": "27.0.1", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-27.0.1.tgz", + "integrity": "sha512-HTLpVXHrY69556ozYkcq47TtQJXpcWAWfkoqz+ZGz2JnmZhzlRjprCIyFnetSy8gpDWwTTGBcRVv1J1I1vBrHw==", + "dev": true, + "requires": { + "jest-diff": "^27.0.0", + "pretty-format": "^27.0.0" + } + }, + "ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true + }, "argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -76806,6 +76889,12 @@ "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.22.1.tgz", "integrity": "sha512-yUFPQjrxEmIsMqlHhAhmxkuH769baF21Kk+nZwZGyrMoyLA+LugaQtC0+Tqf9CBUUULWwUJt6Q5ySI3LJDDCGg==" }, + "diff-sequences": { + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.0.6.tgz", + "integrity": "sha512-ag6wfpBFyNXZ0p8pcuIDS//D8H062ZQJ3fzYxjpmeKjnz8W4pekL3AI8VohmyZmsWW2PWaHgjsmqR6L13101VQ==", + "dev": true + }, "fs-extra": { "version": "10.0.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.0.tgz", @@ -76837,6 +76926,18 @@ "through": "^2.3.6" } }, + "jest-diff": { + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.0.6.tgz", + "integrity": "sha512-Z1mqgkTCSYaFgwTlP/NUiRzdqgxmmhzHY1Tq17zL94morOHfHu3K4bgSgl+CR4GLhpV8VxkuOYuIWnQ9LnFqmg==", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "diff-sequences": "^27.0.6", + "jest-get-type": "^27.0.6", + "pretty-format": "^27.0.6" + } + }, "js-yaml": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", @@ -76855,6 +76956,18 @@ "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-2.2.0.tgz", "integrity": "sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==" }, + "pretty-format": { + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.0.6.tgz", + "integrity": "sha512-8tGD7gBIENgzqA+UBzObyWqQ5B778VIFZA/S66cclyd5YkFLYs2Js7gxDKf0MXtTc9zcS7t1xhdfcElJ3YIvkQ==", + "dev": true, + "requires": { + "@jest/types": "^27.0.6", + "ansi-regex": "^5.0.0", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + } + }, "rxjs": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.2.0.tgz", @@ -97131,9 +97244,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sass": { - "version": "1.37.5", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.37.5.tgz", - "integrity": "sha512-Cx3ewxz9QB/ErnVIiWg2cH0kiYZ0FPvheDTVC6BsiEGBTZKKZJ1Gq5Kq6jy3PKtL6+EJ8NIoaBW/RSd2R6cZOA==", + "version": "1.38.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.38.0.tgz", + "integrity": "sha512-WBccZeMigAGKoI+NgD7Adh0ab1HUq+6BmyBUEaGxtErbUtWUevEbdgo5EZiJQofLUGcKtlNaO2IdN73AHEua5g==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0" From 6f3f4e7dede96159f6f66dced1538fb39fd3eeae Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 17 Aug 2021 09:37:06 -0400 Subject: [PATCH 010/284] update dependency @mapbox/mapbox-gl-geocoder to v4.7.3 (#7437) Co-authored-by: Renovate Bot --- app/package.json | 2 +- package-lock.json | 492 ++++++++++++++++++++++++++++++++++++++++++---- 2 files changed, 457 insertions(+), 37 deletions(-) diff --git a/app/package.json b/app/package.json index 843ce472db..61c2f9fb3b 100644 --- a/app/package.json +++ b/app/package.json @@ -38,7 +38,7 @@ "@fullcalendar/timegrid": "5.9.0", "@mapbox/mapbox-gl-draw": "1.3.0", "@mapbox/mapbox-gl-draw-static-mode": "1.0.1", - "@mapbox/mapbox-gl-geocoder": "4.7.2", + "@mapbox/mapbox-gl-geocoder": "4.7.3", "@popperjs/core": "2.9.3", "@rollup/plugin-yaml": "3.1.0", "@sindresorhus/slugify": "2.1.0", diff --git a/package-lock.json b/package-lock.json index 9e6bfe7611..ec73c65014 100644 --- a/package-lock.json +++ b/package-lock.json @@ -392,7 +392,7 @@ "@fullcalendar/timegrid": "5.9.0", "@mapbox/mapbox-gl-draw": "1.3.0", "@mapbox/mapbox-gl-draw-static-mode": "1.0.1", - "@mapbox/mapbox-gl-geocoder": "4.7.2", + "@mapbox/mapbox-gl-geocoder": "4.7.3", "@popperjs/core": "2.9.3", "@rollup/plugin-yaml": "3.1.0", "@sindresorhus/slugify": "2.1.0", @@ -5766,12 +5766,12 @@ "dev": true }, "node_modules/@mapbox/mapbox-gl-geocoder": { - "version": "4.7.2", - "resolved": "https://registry.npmjs.org/@mapbox/mapbox-gl-geocoder/-/mapbox-gl-geocoder-4.7.2.tgz", - "integrity": "sha512-F571/nksxP2sPPWbsYR//yOP1WtEhp664n/0EQFePKqHcGrevnZksJNawAZhfiaNtqqbOQhkfgq9Tl3DrSIb7Q==", + "version": "4.7.3", + "resolved": "https://registry.npmjs.org/@mapbox/mapbox-gl-geocoder/-/mapbox-gl-geocoder-4.7.3.tgz", + "integrity": "sha512-sWSnjwtwFz7jjaV+ax7ov0DxGwR3mrWn5baLBhu0RFmOj6TCHFBHp/SPTHutLLV2+NJxBkKhamUerUG9FckCwg==", "dev": true, "dependencies": { - "@mapbox/mapbox-sdk": "^0.11.0", + "@mapbox/mapbox-sdk": "^0.13.1", "lodash.debounce": "^4.0.6", "nanoid": "^2.0.1", "subtag": "^0.5.0", @@ -5801,9 +5801,9 @@ } }, "node_modules/@mapbox/mapbox-sdk": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/@mapbox/mapbox-sdk/-/mapbox-sdk-0.11.0.tgz", - "integrity": "sha512-NNFctJEq2JmcIXBRoQe5QZi2XbxgFFKxnbrD4M7Mb/HRFMetb6jq7+eAwCzgb0UVQM+nXP7YCO43hINq/SuT6g==", + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/@mapbox/mapbox-sdk/-/mapbox-sdk-0.13.1.tgz", + "integrity": "sha512-ByLkT+njc6zUrp4tZYnXs3mWsO411+uGGTGjn96ZBTMdKm3MBK46mFxJok+Tyr7ltrIUZnHPDWwJ695QOXdKHQ==", "dev": true, "dependencies": { "@mapbox/fusspot": "^0.4.0", @@ -5811,7 +5811,7 @@ "@mapbox/polyline": "^1.0.0", "eventemitter3": "^3.1.0", "form-data": "^3.0.0", - "got": "^8.3.2", + "got": "^10.7.0", "is-plain-obj": "^1.1.0", "xtend": "^4.0.1" }, @@ -5819,12 +5819,167 @@ "node": ">=6" } }, + "node_modules/@mapbox/mapbox-sdk/node_modules/@sindresorhus/is": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-2.1.1.tgz", + "integrity": "sha512-/aPsuoj/1Dw/kzhkgz+ES6TxG0zfTMGLwuK2ZG00k/iJzYHTLCE8mVU8EPqEOp/lmxPoq1C1C9RYToRKb2KEfg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } + }, + "node_modules/@mapbox/mapbox-sdk/node_modules/@szmarczak/http-timer": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", + "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", + "dev": true, + "dependencies": { + "defer-to-connect": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@mapbox/mapbox-sdk/node_modules/cacheable-request": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.2.tgz", + "integrity": "sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==", + "dev": true, + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^4.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^6.0.1", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@mapbox/mapbox-sdk/node_modules/decompress-response": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-5.0.0.tgz", + "integrity": "sha512-TLZWWybuxWgoW7Lykv+gq9xvzOsUjQ9tF09Tj6NSTYGMTCHNXzrPnD6Hi+TgZq19PyTAGH4Ll/NIM/eTGglnMw==", + "dev": true, + "dependencies": { + "mimic-response": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@mapbox/mapbox-sdk/node_modules/defer-to-connect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", + "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==", + "dev": true, + "engines": { + "node": ">=10" + } + }, "node_modules/@mapbox/mapbox-sdk/node_modules/eventemitter3": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.2.tgz", "integrity": "sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==", "dev": true }, + "node_modules/@mapbox/mapbox-sdk/node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dev": true, + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@mapbox/mapbox-sdk/node_modules/got": { + "version": "10.7.0", + "resolved": "https://registry.npmjs.org/got/-/got-10.7.0.tgz", + "integrity": "sha512-aWTDeNw9g+XqEZNcTjMMZSy7B7yE9toWOFYip7ofFTLleJhvZwUxxTxkTpKvF+p1SAA4VHmuEy7PiHTHyq8tJg==", + "dev": true, + "dependencies": { + "@sindresorhus/is": "^2.0.0", + "@szmarczak/http-timer": "^4.0.0", + "@types/cacheable-request": "^6.0.1", + "cacheable-lookup": "^2.0.0", + "cacheable-request": "^7.0.1", + "decompress-response": "^5.0.0", + "duplexer3": "^0.1.4", + "get-stream": "^5.0.0", + "lowercase-keys": "^2.0.0", + "mimic-response": "^2.1.0", + "p-cancelable": "^2.0.0", + "p-event": "^4.0.0", + "responselike": "^2.0.0", + "to-readable-stream": "^2.0.0", + "type-fest": "^0.10.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/got?sponsor=1" + } + }, + "node_modules/@mapbox/mapbox-sdk/node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@mapbox/mapbox-sdk/node_modules/p-cancelable": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", + "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@mapbox/mapbox-sdk/node_modules/responselike": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.0.tgz", + "integrity": "sha512-xH48u3FTB9VsZw7R+vvgaKeLKzT6jOogbQhEe/jewwnZgzPcnyWui2Av6JpoYZF/91uueC+lqhWqeURw5/qhCw==", + "dev": true, + "dependencies": { + "lowercase-keys": "^2.0.0" + } + }, + "node_modules/@mapbox/mapbox-sdk/node_modules/to-readable-stream": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-2.1.0.tgz", + "integrity": "sha512-o3Qa6DGg1CEXshSdvWNX2sN4QHqg03SPq7U6jPXRahlQdl5dK8oXjkU/2/sGrnOZKeGV1zLSO8qPwyKklPPE7w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@mapbox/mapbox-sdk/node_modules/type-fest": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.10.0.tgz", + "integrity": "sha512-EUV9jo4sffrwlg8s0zDhP0T2WD3pru5Xi0+HTE3zTUmBaZNhfkite9PdSJwdXLwPVW0jnAHT56pZHIOYckPEiw==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/@mapbox/node-pre-gyp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.5.tgz", @@ -7099,6 +7254,7 @@ "version": "0.7.0", "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.7.0.tgz", "integrity": "sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow==", + "peer": true, "engines": { "node": ">=4" } @@ -7552,6 +7708,18 @@ "integrity": "sha512-lOGyCnw+2JVPKU3wIV0srU0NyALwTBJlVSx5DfMQOFuuohA8y9S8orImpuIQikZ0uIQ8gehrRjxgQC1rLRi11w==", "dev": true }, + "node_modules/@types/cacheable-request": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.2.tgz", + "integrity": "sha512-B3xVo+dlKM6nnKTcmm5ZtY/OL8bOAOd2Olee9M1zft65ox50OzjEHW91sDiU9j6cvW8Ejg1/Qkf4xd2kugApUA==", + "dev": true, + "dependencies": { + "@types/http-cache-semantics": "*", + "@types/keyv": "*", + "@types/node": "*", + "@types/responselike": "*" + } + }, "node_modules/@types/codemirror": { "version": "5.60.2", "resolved": "https://registry.npmjs.org/@types/codemirror/-/codemirror-5.60.2.tgz", @@ -7913,6 +8081,12 @@ "@types/node": "*" } }, + "node_modules/@types/http-cache-semantics": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz", + "integrity": "sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==", + "dev": true + }, "node_modules/@types/http-proxy": { "version": "1.17.7", "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.7.tgz", @@ -8379,6 +8553,15 @@ "@types/node": "*" } }, + "node_modules/@types/responselike": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.0.tgz", + "integrity": "sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@types/rimraf": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/@types/rimraf/-/rimraf-2.0.5.tgz", @@ -14575,10 +14758,24 @@ "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", "peer": true }, + "node_modules/cacheable-lookup": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-2.0.1.tgz", + "integrity": "sha512-EMMbsiOTcdngM/K6gV/OxF2x0t07+vMOWxZNSCRQMjO2MY2nhZQ6OYhOOpyQrbhqsgtvKGI7hcq6xjnA92USjg==", + "dev": true, + "dependencies": { + "@types/keyv": "^3.1.1", + "keyv": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/cacheable-request": { "version": "2.1.4", "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-2.1.4.tgz", "integrity": "sha1-DYCIAbY0KtM8kd+dC0TcCbkeXD0=", + "peer": true, "dependencies": { "clone-response": "1.0.2", "get-stream": "3.0.0", @@ -14593,6 +14790,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "peer": true, "engines": { "node": ">=4" } @@ -14600,17 +14798,20 @@ "node_modules/cacheable-request/node_modules/http-cache-semantics": { "version": "3.8.1", "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", - "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==" + "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==", + "peer": true }, "node_modules/cacheable-request/node_modules/json-buffer": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=" + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=", + "peer": true }, "node_modules/cacheable-request/node_modules/keyv": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.0.0.tgz", "integrity": "sha512-eguHnq22OE3uVoSYG0LVWNP+4ppamWr9+zWBe1bsNcovIMy6huUJFPgy4mGwCd/rnl3vOLGW1MTlu4c57CT1xA==", + "peer": true, "dependencies": { "json-buffer": "3.0.0" } @@ -14619,6 +14820,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz", "integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY=", + "peer": true, "engines": { "node": ">=0.10.0" } @@ -14627,6 +14829,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-2.0.1.tgz", "integrity": "sha512-D6MUW4K/VzoJ4rJ01JFKxDrtY1v9wrgzCX5f2qj/lzH1m/lW6MhUZFKerVsnyjOhOsYzI9Kqqak+10l4LvLpMw==", + "peer": true, "dependencies": { "prepend-http": "^2.0.0", "query-string": "^5.0.1", @@ -14640,6 +14843,7 @@ "version": "5.1.1", "resolved": "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz", "integrity": "sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==", + "peer": true, "dependencies": { "decode-uri-component": "^0.2.0", "object-assign": "^4.1.0", @@ -14653,6 +14857,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", + "peer": true, "dependencies": { "is-plain-obj": "^1.0.0" }, @@ -14664,6 +14869,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=", + "peer": true, "engines": { "node": ">=0.10.0" } @@ -26039,6 +26245,7 @@ "version": "8.3.2", "resolved": "https://registry.npmjs.org/got/-/got-8.3.2.tgz", "integrity": "sha512-qjUJ5U/hawxosMryILofZCkm3C84PLJS/0grRIpjAwu+Lkxxj5cxeCU25BG0/3mDSpXKTyZr8oh8wIgLaH0QCw==", + "peer": true, "dependencies": { "@sindresorhus/is": "^0.7.0", "cacheable-request": "^2.1.1", @@ -26066,6 +26273,7 @@ "version": "3.3.0", "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "peer": true, "dependencies": { "mimic-response": "^1.0.0" }, @@ -26077,6 +26285,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "peer": true, "engines": { "node": ">=4" } @@ -26085,6 +26294,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "peer": true, "engines": { "node": ">=4" } @@ -26093,6 +26303,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-2.0.1.tgz", "integrity": "sha512-88em58dDVB/KzPEx1X0N3LwFfYZPyDc4B6eF38M1rk9VTZMbxXXgjugz8mmwpS9Ox4BDZ+t6t3QP5+/gazweIA==", + "peer": true, "dependencies": { "p-finally": "^1.0.0" }, @@ -26104,6 +26315,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "peer": true, "engines": { "node": ">=4" } @@ -26443,6 +26655,7 @@ "version": "1.4.2", "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz", "integrity": "sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==", + "peer": true, "engines": { "node": "*" } @@ -26462,6 +26675,7 @@ "version": "1.4.1", "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", "integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==", + "peer": true, "dependencies": { "has-symbol-support-x": "^1.4.1" }, @@ -27584,6 +27798,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/into-stream/-/into-stream-3.1.0.tgz", "integrity": "sha1-lvsKk2wSur1v8XUqF9BWFqvQlMY=", + "peer": true, "dependencies": { "from2": "^2.1.1", "p-is-promise": "^1.1.0" @@ -28093,6 +28308,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz", "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==", + "peer": true, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -28239,6 +28455,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==", + "peer": true, "engines": { "node": ">=0.10.0" } @@ -28512,6 +28729,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", "integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==", + "peer": true, "dependencies": { "has-to-string-tag-x": "^1.2.0", "is-object": "^1.0.1" @@ -35932,6 +36150,7 @@ "version": "0.4.1", "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.4.1.tgz", "integrity": "sha512-HNa1A8LvB1kie7cERyy21VNeHb2CWJJYqyyC2o3klWFfMGlFmWv2Z7sFgZH8ZiaYL95ydToKTFVXgMV/Os0bBQ==", + "peer": true, "engines": { "node": ">=4" } @@ -35957,6 +36176,21 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/p-event": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/p-event/-/p-event-4.2.0.tgz", + "integrity": "sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==", + "dev": true, + "dependencies": { + "p-timeout": "^3.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/p-finally": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", @@ -35969,6 +36203,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz", "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=", + "peer": true, "engines": { "node": ">=4" } @@ -49254,6 +49489,7 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", + "peer": true, "engines": { "node": ">=0.10.0" } @@ -50825,6 +51061,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz", "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=", + "peer": true, "engines": { "node": ">= 4" } @@ -60721,7 +60958,7 @@ "@fullcalendar/timegrid": "5.9.0", "@mapbox/mapbox-gl-draw": "1.3.0", "@mapbox/mapbox-gl-draw-static-mode": "1.0.1", - "@mapbox/mapbox-gl-geocoder": "4.7.2", + "@mapbox/mapbox-gl-geocoder": "4.7.3", "@popperjs/core": "2.9.3", "@rollup/plugin-yaml": "3.1.0", "@sindresorhus/slugify": "2.1.0", @@ -66107,12 +66344,12 @@ "dev": true }, "@mapbox/mapbox-gl-geocoder": { - "version": "4.7.2", - "resolved": "https://registry.npmjs.org/@mapbox/mapbox-gl-geocoder/-/mapbox-gl-geocoder-4.7.2.tgz", - "integrity": "sha512-F571/nksxP2sPPWbsYR//yOP1WtEhp664n/0EQFePKqHcGrevnZksJNawAZhfiaNtqqbOQhkfgq9Tl3DrSIb7Q==", + "version": "4.7.3", + "resolved": "https://registry.npmjs.org/@mapbox/mapbox-gl-geocoder/-/mapbox-gl-geocoder-4.7.3.tgz", + "integrity": "sha512-sWSnjwtwFz7jjaV+ax7ov0DxGwR3mrWn5baLBhu0RFmOj6TCHFBHp/SPTHutLLV2+NJxBkKhamUerUG9FckCwg==", "dev": true, "requires": { - "@mapbox/mapbox-sdk": "^0.11.0", + "@mapbox/mapbox-sdk": "^0.13.1", "lodash.debounce": "^4.0.6", "nanoid": "^2.0.1", "subtag": "^0.5.0", @@ -66136,9 +66373,9 @@ "requires": {} }, "@mapbox/mapbox-sdk": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/@mapbox/mapbox-sdk/-/mapbox-sdk-0.11.0.tgz", - "integrity": "sha512-NNFctJEq2JmcIXBRoQe5QZi2XbxgFFKxnbrD4M7Mb/HRFMetb6jq7+eAwCzgb0UVQM+nXP7YCO43hINq/SuT6g==", + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/@mapbox/mapbox-sdk/-/mapbox-sdk-0.13.1.tgz", + "integrity": "sha512-ByLkT+njc6zUrp4tZYnXs3mWsO411+uGGTGjn96ZBTMdKm3MBK46mFxJok+Tyr7ltrIUZnHPDWwJ695QOXdKHQ==", "dev": true, "requires": { "@mapbox/fusspot": "^0.4.0", @@ -66146,16 +66383,126 @@ "@mapbox/polyline": "^1.0.0", "eventemitter3": "^3.1.0", "form-data": "^3.0.0", - "got": "^8.3.2", + "got": "^10.7.0", "is-plain-obj": "^1.1.0", "xtend": "^4.0.1" }, "dependencies": { + "@sindresorhus/is": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-2.1.1.tgz", + "integrity": "sha512-/aPsuoj/1Dw/kzhkgz+ES6TxG0zfTMGLwuK2ZG00k/iJzYHTLCE8mVU8EPqEOp/lmxPoq1C1C9RYToRKb2KEfg==", + "dev": true + }, + "@szmarczak/http-timer": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", + "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", + "dev": true, + "requires": { + "defer-to-connect": "^2.0.0" + } + }, + "cacheable-request": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.2.tgz", + "integrity": "sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==", + "dev": true, + "requires": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^4.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^6.0.1", + "responselike": "^2.0.0" + } + }, + "decompress-response": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-5.0.0.tgz", + "integrity": "sha512-TLZWWybuxWgoW7Lykv+gq9xvzOsUjQ9tF09Tj6NSTYGMTCHNXzrPnD6Hi+TgZq19PyTAGH4Ll/NIM/eTGglnMw==", + "dev": true, + "requires": { + "mimic-response": "^2.0.0" + } + }, + "defer-to-connect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", + "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==", + "dev": true + }, "eventemitter3": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.2.tgz", "integrity": "sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==", "dev": true + }, + "get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "got": { + "version": "10.7.0", + "resolved": "https://registry.npmjs.org/got/-/got-10.7.0.tgz", + "integrity": "sha512-aWTDeNw9g+XqEZNcTjMMZSy7B7yE9toWOFYip7ofFTLleJhvZwUxxTxkTpKvF+p1SAA4VHmuEy7PiHTHyq8tJg==", + "dev": true, + "requires": { + "@sindresorhus/is": "^2.0.0", + "@szmarczak/http-timer": "^4.0.0", + "@types/cacheable-request": "^6.0.1", + "cacheable-lookup": "^2.0.0", + "cacheable-request": "^7.0.1", + "decompress-response": "^5.0.0", + "duplexer3": "^0.1.4", + "get-stream": "^5.0.0", + "lowercase-keys": "^2.0.0", + "mimic-response": "^2.1.0", + "p-cancelable": "^2.0.0", + "p-event": "^4.0.0", + "responselike": "^2.0.0", + "to-readable-stream": "^2.0.0", + "type-fest": "^0.10.0" + } + }, + "lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "dev": true + }, + "p-cancelable": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", + "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==", + "dev": true + }, + "responselike": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.0.tgz", + "integrity": "sha512-xH48u3FTB9VsZw7R+vvgaKeLKzT6jOogbQhEe/jewwnZgzPcnyWui2Av6JpoYZF/91uueC+lqhWqeURw5/qhCw==", + "dev": true, + "requires": { + "lowercase-keys": "^2.0.0" + } + }, + "to-readable-stream": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-2.1.0.tgz", + "integrity": "sha512-o3Qa6DGg1CEXshSdvWNX2sN4QHqg03SPq7U6jPXRahlQdl5dK8oXjkU/2/sGrnOZKeGV1zLSO8qPwyKklPPE7w==", + "dev": true + }, + "type-fest": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.10.0.tgz", + "integrity": "sha512-EUV9jo4sffrwlg8s0zDhP0T2WD3pru5Xi0+HTE3zTUmBaZNhfkite9PdSJwdXLwPVW0jnAHT56pZHIOYckPEiw==", + "dev": true } } }, @@ -67194,7 +67541,8 @@ "@sindresorhus/is": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.7.0.tgz", - "integrity": "sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow==" + "integrity": "sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow==", + "peer": true }, "@sindresorhus/slugify": { "version": "2.1.0", @@ -67562,6 +67910,18 @@ "integrity": "sha512-lOGyCnw+2JVPKU3wIV0srU0NyALwTBJlVSx5DfMQOFuuohA8y9S8orImpuIQikZ0uIQ8gehrRjxgQC1rLRi11w==", "dev": true }, + "@types/cacheable-request": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.2.tgz", + "integrity": "sha512-B3xVo+dlKM6nnKTcmm5ZtY/OL8bOAOd2Olee9M1zft65ox50OzjEHW91sDiU9j6cvW8Ejg1/Qkf4xd2kugApUA==", + "dev": true, + "requires": { + "@types/http-cache-semantics": "*", + "@types/keyv": "*", + "@types/node": "*", + "@types/responselike": "*" + } + }, "@types/codemirror": { "version": "5.60.2", "resolved": "https://registry.npmjs.org/@types/codemirror/-/codemirror-5.60.2.tgz", @@ -67902,6 +68262,12 @@ "@types/node": "*" } }, + "@types/http-cache-semantics": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz", + "integrity": "sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==", + "dev": true + }, "@types/http-proxy": { "version": "1.17.7", "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.7.tgz", @@ -68357,6 +68723,15 @@ "@types/node": "*" } }, + "@types/responselike": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.0.tgz", + "integrity": "sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, "@types/rimraf": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/@types/rimraf/-/rimraf-2.0.5.tgz", @@ -73440,10 +73815,21 @@ } } }, + "cacheable-lookup": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-2.0.1.tgz", + "integrity": "sha512-EMMbsiOTcdngM/K6gV/OxF2x0t07+vMOWxZNSCRQMjO2MY2nhZQ6OYhOOpyQrbhqsgtvKGI7hcq6xjnA92USjg==", + "dev": true, + "requires": { + "@types/keyv": "^3.1.1", + "keyv": "^4.0.0" + } + }, "cacheable-request": { "version": "2.1.4", "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-2.1.4.tgz", "integrity": "sha1-DYCIAbY0KtM8kd+dC0TcCbkeXD0=", + "peer": true, "requires": { "clone-response": "1.0.2", "get-stream": "3.0.0", @@ -73457,22 +73843,26 @@ "get-stream": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "peer": true }, "http-cache-semantics": { "version": "3.8.1", "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", - "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==" + "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==", + "peer": true }, "json-buffer": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=" + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=", + "peer": true }, "keyv": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.0.0.tgz", "integrity": "sha512-eguHnq22OE3uVoSYG0LVWNP+4ppamWr9+zWBe1bsNcovIMy6huUJFPgy4mGwCd/rnl3vOLGW1MTlu4c57CT1xA==", + "peer": true, "requires": { "json-buffer": "3.0.0" } @@ -73480,12 +73870,14 @@ "lowercase-keys": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz", - "integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY=" + "integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY=", + "peer": true }, "normalize-url": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-2.0.1.tgz", "integrity": "sha512-D6MUW4K/VzoJ4rJ01JFKxDrtY1v9wrgzCX5f2qj/lzH1m/lW6MhUZFKerVsnyjOhOsYzI9Kqqak+10l4LvLpMw==", + "peer": true, "requires": { "prepend-http": "^2.0.0", "query-string": "^5.0.1", @@ -73496,6 +73888,7 @@ "version": "5.1.1", "resolved": "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz", "integrity": "sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==", + "peer": true, "requires": { "decode-uri-component": "^0.2.0", "object-assign": "^4.1.0", @@ -73506,6 +73899,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", + "peer": true, "requires": { "is-plain-obj": "^1.0.0" } @@ -73513,7 +73907,8 @@ "strict-uri-encode": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", - "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=" + "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=", + "peer": true } } }, @@ -82760,6 +83155,7 @@ "version": "8.3.2", "resolved": "https://registry.npmjs.org/got/-/got-8.3.2.tgz", "integrity": "sha512-qjUJ5U/hawxosMryILofZCkm3C84PLJS/0grRIpjAwu+Lkxxj5cxeCU25BG0/3mDSpXKTyZr8oh8wIgLaH0QCw==", + "peer": true, "requires": { "@sindresorhus/is": "^0.7.0", "cacheable-request": "^2.1.1", @@ -82784,6 +83180,7 @@ "version": "3.3.0", "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "peer": true, "requires": { "mimic-response": "^1.0.0" } @@ -82791,17 +83188,20 @@ "get-stream": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "peer": true }, "mimic-response": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "peer": true }, "p-timeout": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-2.0.1.tgz", "integrity": "sha512-88em58dDVB/KzPEx1X0N3LwFfYZPyDc4B6eF38M1rk9VTZMbxXXgjugz8mmwpS9Ox4BDZ+t6t3QP5+/gazweIA==", + "peer": true, "requires": { "p-finally": "^1.0.0" } @@ -82809,7 +83209,8 @@ "pify": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "peer": true } } }, @@ -83069,7 +83470,8 @@ "has-symbol-support-x": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz", - "integrity": "sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==" + "integrity": "sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==", + "peer": true }, "has-symbols": { "version": "1.0.2", @@ -83080,6 +83482,7 @@ "version": "1.4.1", "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", "integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==", + "peer": true, "requires": { "has-symbol-support-x": "^1.4.1" } @@ -83972,6 +84375,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/into-stream/-/into-stream-3.1.0.tgz", "integrity": "sha1-lvsKk2wSur1v8XUqF9BWFqvQlMY=", + "peer": true, "requires": { "from2": "^2.1.1", "p-is-promise": "^1.1.0" @@ -84308,7 +84712,8 @@ "is-object": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz", - "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==" + "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==", + "peer": true }, "is-observable": { "version": "1.1.0", @@ -84417,7 +84822,8 @@ "is-retry-allowed": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", - "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==" + "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==", + "peer": true }, "is-root": { "version": "1.0.0", @@ -84617,6 +85023,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", "integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==", + "peer": true, "requires": { "has-to-string-tag-x": "^1.2.0", "is-object": "^1.0.1" @@ -90464,7 +90871,8 @@ "p-cancelable": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.4.1.tgz", - "integrity": "sha512-HNa1A8LvB1kie7cERyy21VNeHb2CWJJYqyyC2o3klWFfMGlFmWv2Z7sFgZH8ZiaYL95ydToKTFVXgMV/Os0bBQ==" + "integrity": "sha512-HNa1A8LvB1kie7cERyy21VNeHb2CWJJYqyyC2o3klWFfMGlFmWv2Z7sFgZH8ZiaYL95ydToKTFVXgMV/Os0bBQ==", + "peer": true }, "p-defer": { "version": "3.0.0", @@ -90478,6 +90886,15 @@ "integrity": "sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA==", "dev": true }, + "p-event": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/p-event/-/p-event-4.2.0.tgz", + "integrity": "sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==", + "dev": true, + "requires": { + "p-timeout": "^3.1.0" + } + }, "p-finally": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", @@ -90486,7 +90903,8 @@ "p-is-promise": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz", - "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=" + "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=", + "peer": true }, "p-limit": { "version": "2.3.0", @@ -101027,7 +101445,8 @@ "timed-out": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=" + "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", + "peer": true }, "timers-browserify": { "version": "2.0.12", @@ -102222,7 +102641,8 @@ "url-to-options": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz", - "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=" + "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=", + "peer": true }, "use": { "version": "3.1.1", From f91d8254c925829a9352ec9f4e2fe7bde3ab0431 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 17 Aug 2021 09:37:20 -0400 Subject: [PATCH 011/284] update dependency @types/mime-types to v2.1.1 (#7440) Co-authored-by: Renovate Bot --- api/package.json | 2 +- app/package.json | 2 +- package-lock.json | 20 ++++++++++---------- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/api/package.json b/api/package.json index dea8c59c19..3f45545c96 100644 --- a/api/package.json +++ b/api/package.json @@ -178,7 +178,7 @@ "@types/jsonwebtoken": "8.5.4", "@types/keyv": "3.1.2", "@types/lodash": "4.14.172", - "@types/mime-types": "2.1.0", + "@types/mime-types": "2.1.1", "@types/ms": "0.7.31", "@types/node": "15.12.2", "@types/node-cron": "2.0.4", diff --git a/app/package.json b/app/package.json index 61c2f9fb3b..d51b3a046a 100644 --- a/app/package.json +++ b/app/package.json @@ -56,7 +56,7 @@ "@types/mapbox__mapbox-gl-geocoder": "4.7.1", "@types/markdown-it": "12.2.0", "@types/marked": "2.0.4", - "@types/mime-types": "2.1.0", + "@types/mime-types": "2.1.1", "@types/ms": "0.7.31", "@types/qrcode": "1.4.1", "@types/wellknown": "0.5.1", diff --git a/package-lock.json b/package-lock.json index ec73c65014..1f1ab799d3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -156,7 +156,7 @@ "@types/jsonwebtoken": "8.5.4", "@types/keyv": "3.1.2", "@types/lodash": "4.14.172", - "@types/mime-types": "2.1.0", + "@types/mime-types": "2.1.1", "@types/ms": "0.7.31", "@types/node": "15.12.2", "@types/node-cron": "2.0.4", @@ -410,7 +410,7 @@ "@types/mapbox__mapbox-gl-geocoder": "4.7.1", "@types/markdown-it": "12.2.0", "@types/marked": "2.0.4", - "@types/mime-types": "2.1.0", + "@types/mime-types": "2.1.1", "@types/ms": "0.7.31", "@types/qrcode": "1.4.1", "@types/wellknown": "0.5.1", @@ -8351,9 +8351,9 @@ "dev": true }, "node_modules/@types/mime-types": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@types/mime-types/-/mime-types-2.1.0.tgz", - "integrity": "sha1-nKUs2jY/aZxpRmwqbM2q2RPqenM=", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@types/mime-types/-/mime-types-2.1.1.tgz", + "integrity": "sha512-vXOTGVSLR2jMw440moWTC7H19iUyLtP3Z1YTj7cSsubOICinjMxFeb/V57v9QdyyPGbbWolUFSSmSiRSn94tFw==", "dev": true }, "node_modules/@types/minimatch": { @@ -60976,7 +60976,7 @@ "@types/mapbox__mapbox-gl-geocoder": "4.7.1", "@types/markdown-it": "12.2.0", "@types/marked": "2.0.4", - "@types/mime-types": "2.1.0", + "@types/mime-types": "2.1.1", "@types/ms": "0.7.31", "@types/qrcode": "1.4.1", "@types/wellknown": "0.5.1", @@ -68519,9 +68519,9 @@ "dev": true }, "@types/mime-types": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@types/mime-types/-/mime-types-2.1.0.tgz", - "integrity": "sha1-nKUs2jY/aZxpRmwqbM2q2RPqenM=", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@types/mime-types/-/mime-types-2.1.1.tgz", + "integrity": "sha512-vXOTGVSLR2jMw440moWTC7H19iUyLtP3Z1YTj7cSsubOICinjMxFeb/V57v9QdyyPGbbWolUFSSmSiRSn94tFw==", "dev": true }, "@types/minimatch": { @@ -77151,7 +77151,7 @@ "@types/jsonwebtoken": "8.5.4", "@types/keyv": "3.1.2", "@types/lodash": "4.14.172", - "@types/mime-types": "2.1.0", + "@types/mime-types": "2.1.1", "@types/ms": "0.7.31", "@types/node": "15.12.2", "@types/node-cron": "2.0.4", From cf69cc814a59bac3527ed9e6b53fe9ffcd4332ec Mon Sep 17 00:00:00 2001 From: rijkvanzanten Date: Tue, 17 Aug 2021 10:51:01 -0400 Subject: [PATCH 012/284] Don't read icc information Save some space, we don't need the color profile information --- api/src/services/files.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/api/src/services/files.ts b/api/src/services/files.ts index 80b03f0b0d..4dc1eebe79 100644 --- a/api/src/services/files.ts +++ b/api/src/services/files.ts @@ -88,7 +88,7 @@ export class FilesService extends ItemsService { try { payload.metadata = await exifr.parse(buffer.content, { - icc: true, + icc: false, iptc: true, ifd1: true, interop: true, From 53dbecc38afbe540b63c81d1467ccc6801edac06 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 17 Aug 2021 10:56:57 -0400 Subject: [PATCH 013/284] update dependency simple-git-hooks to v2.6.1 (#7449) Co-authored-by: Renovate Bot --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 1f1ab799d3..73c893d5ba 100644 --- a/package-lock.json +++ b/package-lock.json @@ -37,7 +37,7 @@ "oracledb": "5.2.0", "pg": "8.7.1", "prettier": "2.3.2", - "simple-git-hooks": "2.5.1", + "simple-git-hooks": "2.6.1", "sqlite3": "5.0.2", "stylelint": "13.13.1", "stylelint-config-prettier": "8.0.2", @@ -45285,9 +45285,9 @@ } }, "node_modules/simple-git-hooks": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/simple-git-hooks/-/simple-git-hooks-2.5.1.tgz", - "integrity": "sha512-iI/MEEVObv45slsxz+BT+5NCS2UDgVIqfQKmNjL4/XnEfacpdYAHd71Imc5Nw/FY100A+i1PIXdIdkLHYcC2Bg==", + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/simple-git-hooks/-/simple-git-hooks-2.6.1.tgz", + "integrity": "sha512-nvqaNfgvcjN3cGSYJSdjwB+tP8YKRCyvuUvQ24luIjIpGhUCPpZDTJ+p+hcJiwc0lZlTCl0NayfBVDoIMG7Jpg==", "dev": true, "hasInstallScript": true, "bin": { @@ -98069,9 +98069,9 @@ } }, "simple-git-hooks": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/simple-git-hooks/-/simple-git-hooks-2.5.1.tgz", - "integrity": "sha512-iI/MEEVObv45slsxz+BT+5NCS2UDgVIqfQKmNjL4/XnEfacpdYAHd71Imc5Nw/FY100A+i1PIXdIdkLHYcC2Bg==", + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/simple-git-hooks/-/simple-git-hooks-2.6.1.tgz", + "integrity": "sha512-nvqaNfgvcjN3cGSYJSdjwB+tP8YKRCyvuUvQ24luIjIpGhUCPpZDTJ+p+hcJiwc0lZlTCl0NayfBVDoIMG7Jpg==", "dev": true }, "simple-lru-cache": { diff --git a/package.json b/package.json index c458458580..81ab53d220 100644 --- a/package.json +++ b/package.json @@ -52,7 +52,7 @@ "oracledb": "5.2.0", "pg": "8.7.1", "prettier": "2.3.2", - "simple-git-hooks": "2.5.1", + "simple-git-hooks": "2.6.1", "sqlite3": "5.0.2", "stylelint": "13.13.1", "stylelint-config-prettier": "8.0.2", From 9d9e2800d14faf31edf1fe91d0b979d43b74c79e Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 17 Aug 2021 10:57:26 -0400 Subject: [PATCH 014/284] update vue monorepo to v3.2.3 (#7444) Co-authored-by: Renovate Bot --- app/package.json | 4 +- package-lock.json | 188 +++++++++++++++++------------------ packages/shared/package.json | 2 +- 3 files changed, 97 insertions(+), 97 deletions(-) diff --git a/app/package.json b/app/package.json index d51b3a046a..5221e8013d 100644 --- a/app/package.json +++ b/app/package.json @@ -66,7 +66,7 @@ "@vue/cli-plugin-typescript": "4.5.13", "@vue/cli-plugin-vuex": "4.5.13", "@vue/cli-service": "4.5.13", - "@vue/compiler-sfc": "3.2.2", + "@vue/compiler-sfc": "3.2.3", "axios": "0.21.1", "base-64": "1.0.0", "codemirror": "5.62.2", @@ -94,7 +94,7 @@ "tinymce": "5.8.2", "typescript": "4.3.5", "vite": "2.5.0", - "vue": "3.2.2", + "vue": "3.2.3", "vue-i18n": "9.1.7", "vue-router": "4.0.11", "vuedraggable": "4.0.3", diff --git a/package-lock.json b/package-lock.json index 73c893d5ba..739fd8a9c6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -420,7 +420,7 @@ "@vue/cli-plugin-typescript": "4.5.13", "@vue/cli-plugin-vuex": "4.5.13", "@vue/cli-service": "4.5.13", - "@vue/compiler-sfc": "3.2.2", + "@vue/compiler-sfc": "3.2.3", "axios": "0.21.1", "base-64": "1.0.0", "codemirror": "5.62.2", @@ -448,7 +448,7 @@ "tinymce": "5.8.2", "typescript": "4.3.5", "vite": "2.5.0", - "vue": "3.2.2", + "vue": "3.2.3", "vue-i18n": "9.1.7", "vue-router": "4.0.11", "vuedraggable": "4.0.3", @@ -10427,38 +10427,38 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.2.tgz", - "integrity": "sha512-QhCI0ZU5nAR0LMcLgzW3v75374tIrHGp8XG5CzJS7Nsy+iuignbE4MZ2XJfh5TGIrtpuzfWA4eTIfukZf/cRdg==", + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.3.tgz", + "integrity": "sha512-qQpACs40hClYqghS209OBh6NDArKPrS5emWMOH/hzDy0KtOV7Kfyy2ILWRfamIsygq8mg+xHcqtVXOjr21WvQw==", "dependencies": { "@babel/parser": "^7.12.0", "@babel/types": "^7.12.0", - "@vue/shared": "3.2.2", + "@vue/shared": "3.2.3", "estree-walker": "^2.0.1", "source-map": "^0.6.1" } }, "node_modules/@vue/compiler-dom": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.2.tgz", - "integrity": "sha512-ggcc+NV/ENIE0Uc3TxVE/sKrhYVpLepMAAmEiQ047332mbKOvUkowz4TTFZ+YkgOIuBOPP0XpCxmCMg7p874mA==", + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.3.tgz", + "integrity": "sha512-hEKd+h9eIT+et/l0Nmiup5CWFHC4KuhUcrdAIPLcv1uskVQA3gSDAAx9UGB/G9cRB2gmBpFONHEi8zKrlnsaWQ==", "dependencies": { - "@vue/compiler-core": "3.2.2", - "@vue/shared": "3.2.2" + "@vue/compiler-core": "3.2.3", + "@vue/shared": "3.2.3" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.2.tgz", - "integrity": "sha512-hrtqpQ5L6IPn5v7yVRo7uvLcQxv0z1+KBjZBWMBOcrXz4t+PKUxU/SWd6Tl9T8FDmYlunzKUh6lcx+2CLo6f5A==", + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.3.tgz", + "integrity": "sha512-TlaDOChFUzt3lqqaFNRD2XI0lrRWYA0/jTgWKUrCLVEPZ0tNP8Vyjmml3+1QlAo4pyjaOjYacq0OS4eCGVFJ3w==", "dependencies": { "@babel/parser": "^7.13.9", "@babel/types": "^7.13.0", "@types/estree": "^0.0.48", - "@vue/compiler-core": "3.2.2", - "@vue/compiler-dom": "3.2.2", - "@vue/compiler-ssr": "3.2.2", - "@vue/shared": "3.2.2", + "@vue/compiler-core": "3.2.3", + "@vue/compiler-dom": "3.2.3", + "@vue/compiler-ssr": "3.2.3", + "@vue/shared": "3.2.3", "consolidate": "^0.16.0", "estree-walker": "^2.0.1", "hash-sum": "^2.0.0", @@ -10472,12 +10472,12 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.2.tgz", - "integrity": "sha512-rVl1agMFhdEN3Go0bCriXo+3cysxKIuRP0yh1Wd8ysRrKfAmokyDhUA8PrGSq2Ymj/LdZTh+4OKfj3p2+C+hlA==", + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.3.tgz", + "integrity": "sha512-VMYXYBXPohxlPvg42tT8Gcc58Wo1fPP4IE+aLgpmnNmMFuTsGEKOBK4mZqtNpv9dxgF6ooro9gQlA6BfOy3lGg==", "dependencies": { - "@vue/compiler-dom": "3.2.2", - "@vue/shared": "3.2.2" + "@vue/compiler-dom": "3.2.3", + "@vue/shared": "3.2.3" } }, "node_modules/@vue/component-compiler-utils": { @@ -10666,36 +10666,36 @@ } }, "node_modules/@vue/reactivity": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.2.tgz", - "integrity": "sha512-IHjhtmrhK6dzacj/EnLQDWOaA3HuzzVk6w84qgV8EpS4uWGIJXiRalMRg6XvGW2ykJvIl3pLsF0aBFlTMRiLOA==", + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.3.tgz", + "integrity": "sha512-HGmciaVNb3VKn4f4wCswFWLXBcopKQbO1oEs+WunBtt5tym0SS2wFNEGvWfW0dzzlXRbM507ys09m68L+JTa/Q==", "dependencies": { - "@vue/shared": "3.2.2" + "@vue/shared": "3.2.3" } }, "node_modules/@vue/runtime-core": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.2.tgz", - "integrity": "sha512-/aUk1+GO/VPX0oVxhbzSWE1zrf3/wGCsO1ALNisVokYftKqfqLDjbJHE6mrI2hx3MiuwbHrWjJClkGUVTIOPEQ==", + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.3.tgz", + "integrity": "sha512-yn6FL2fCKi5dauJYm8u6iiGs7VoXoIWdr+icIFtEW4eObUKOzDwYpBaqCf8orhI1LEnyZO7rLplbfoJJColBwg==", "dependencies": { - "@vue/reactivity": "3.2.2", - "@vue/shared": "3.2.2" + "@vue/reactivity": "3.2.3", + "@vue/shared": "3.2.3" } }, "node_modules/@vue/runtime-dom": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.2.tgz", - "integrity": "sha512-1Le/NpCfawCOfePfJezvWUF+oCVLU8N+IHN4oFDOxRe6/PgHNJ+yT+YdxFifBfI+TIAoXI/9PsnqzmJZV+xsmw==", + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.3.tgz", + "integrity": "sha512-YpulzSn0ydzgbfE1i9O1MJAspUHTA9q6AmqRrDLIR5AP9jmoGA//TmnB90IhA7OOGpuSVm4f1VUZ+gm/URPPgA==", "dependencies": { - "@vue/runtime-core": "3.2.2", - "@vue/shared": "3.2.2", + "@vue/runtime-core": "3.2.3", + "@vue/shared": "3.2.3", "csstype": "^2.6.8" } }, "node_modules/@vue/shared": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.2.tgz", - "integrity": "sha512-dvYb318tk9uOzHtSaT3WII/HscQSIRzoCZ5GyxEb3JlkEXASpAUAQwKnvSe2CudnF8XHFRTB7VITWSnWNLZUtA==" + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.3.tgz", + "integrity": "sha512-1f8kyoabSgoga0E89itGIoaCo2Ayr6i6jQq/kHhhYrrBxoK7LNNwuWQghW0k/bapimyIzQiN891XzquYP78aqg==" }, "node_modules/@vue/web-component-wrapper": { "version": "1.3.0", @@ -51337,13 +51337,13 @@ } }, "node_modules/vue": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.2.2.tgz", - "integrity": "sha512-D/LuzAV30CgNJYGyNheE/VUs5N4toL2IgmS6c9qeOxvyh0xyn4exyRqizpXIrsvfx34zG9x5gCI2tdRHCGvF9w==", + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.2.3.tgz", + "integrity": "sha512-z3/maZr+As43eL42pJTLWG+mnOTXpdPvbhFN7cDs8ZpJgMWtKlbjInLcyOD2XRyH424yulupYhyEFITfybcKnw==", "dependencies": { - "@vue/compiler-dom": "3.2.2", - "@vue/runtime-dom": "3.2.2", - "@vue/shared": "3.2.2" + "@vue/compiler-dom": "3.2.3", + "@vue/runtime-dom": "3.2.3", + "@vue/shared": "3.2.3" } }, "node_modules/vue-demi": { @@ -59008,7 +59008,7 @@ "joi": "17.4.2", "knex-schema-inspector": "1.5.13", "lodash": "4.17.21", - "vue": "3.2.2", + "vue": "3.2.3", "vue-router": "4.0.11" }, "devDependencies": { @@ -60986,7 +60986,7 @@ "@vue/cli-plugin-typescript": "4.5.13", "@vue/cli-plugin-vuex": "4.5.13", "@vue/cli-service": "4.5.13", - "@vue/compiler-sfc": "3.2.2", + "@vue/compiler-sfc": "3.2.3", "axios": "0.21.1", "base-64": "1.0.0", "codemirror": "5.62.2", @@ -61014,7 +61014,7 @@ "tinymce": "5.8.2", "typescript": "4.3.5", "vite": "2.5.0", - "vue": "3.2.2", + "vue": "3.2.3", "vue-i18n": "9.1.7", "vue-router": "4.0.11", "vuedraggable": "4.0.3", @@ -64272,7 +64272,7 @@ "npm-run-all": "4.1.5", "rimraf": "3.0.2", "typescript": "4.3.5", - "vue": "3.2.2", + "vue": "3.2.3", "vue-router": "4.0.11" }, "dependencies": { @@ -70236,38 +70236,38 @@ } }, "@vue/compiler-core": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.2.tgz", - "integrity": "sha512-QhCI0ZU5nAR0LMcLgzW3v75374tIrHGp8XG5CzJS7Nsy+iuignbE4MZ2XJfh5TGIrtpuzfWA4eTIfukZf/cRdg==", + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.3.tgz", + "integrity": "sha512-qQpACs40hClYqghS209OBh6NDArKPrS5emWMOH/hzDy0KtOV7Kfyy2ILWRfamIsygq8mg+xHcqtVXOjr21WvQw==", "requires": { "@babel/parser": "^7.12.0", "@babel/types": "^7.12.0", - "@vue/shared": "3.2.2", + "@vue/shared": "3.2.3", "estree-walker": "^2.0.1", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.2.tgz", - "integrity": "sha512-ggcc+NV/ENIE0Uc3TxVE/sKrhYVpLepMAAmEiQ047332mbKOvUkowz4TTFZ+YkgOIuBOPP0XpCxmCMg7p874mA==", + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.3.tgz", + "integrity": "sha512-hEKd+h9eIT+et/l0Nmiup5CWFHC4KuhUcrdAIPLcv1uskVQA3gSDAAx9UGB/G9cRB2gmBpFONHEi8zKrlnsaWQ==", "requires": { - "@vue/compiler-core": "3.2.2", - "@vue/shared": "3.2.2" + "@vue/compiler-core": "3.2.3", + "@vue/shared": "3.2.3" } }, "@vue/compiler-sfc": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.2.tgz", - "integrity": "sha512-hrtqpQ5L6IPn5v7yVRo7uvLcQxv0z1+KBjZBWMBOcrXz4t+PKUxU/SWd6Tl9T8FDmYlunzKUh6lcx+2CLo6f5A==", + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.3.tgz", + "integrity": "sha512-TlaDOChFUzt3lqqaFNRD2XI0lrRWYA0/jTgWKUrCLVEPZ0tNP8Vyjmml3+1QlAo4pyjaOjYacq0OS4eCGVFJ3w==", "requires": { "@babel/parser": "^7.13.9", "@babel/types": "^7.13.0", "@types/estree": "^0.0.48", - "@vue/compiler-core": "3.2.2", - "@vue/compiler-dom": "3.2.2", - "@vue/compiler-ssr": "3.2.2", - "@vue/shared": "3.2.2", + "@vue/compiler-core": "3.2.3", + "@vue/compiler-dom": "3.2.3", + "@vue/compiler-ssr": "3.2.3", + "@vue/shared": "3.2.3", "consolidate": "^0.16.0", "estree-walker": "^2.0.1", "hash-sum": "^2.0.0", @@ -70281,12 +70281,12 @@ } }, "@vue/compiler-ssr": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.2.tgz", - "integrity": "sha512-rVl1agMFhdEN3Go0bCriXo+3cysxKIuRP0yh1Wd8ysRrKfAmokyDhUA8PrGSq2Ymj/LdZTh+4OKfj3p2+C+hlA==", + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.3.tgz", + "integrity": "sha512-VMYXYBXPohxlPvg42tT8Gcc58Wo1fPP4IE+aLgpmnNmMFuTsGEKOBK4mZqtNpv9dxgF6ooro9gQlA6BfOy3lGg==", "requires": { - "@vue/compiler-dom": "3.2.2", - "@vue/shared": "3.2.2" + "@vue/compiler-dom": "3.2.3", + "@vue/shared": "3.2.3" } }, "@vue/component-compiler-utils": { @@ -70437,36 +70437,36 @@ "requires": {} }, "@vue/reactivity": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.2.tgz", - "integrity": "sha512-IHjhtmrhK6dzacj/EnLQDWOaA3HuzzVk6w84qgV8EpS4uWGIJXiRalMRg6XvGW2ykJvIl3pLsF0aBFlTMRiLOA==", + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.3.tgz", + "integrity": "sha512-HGmciaVNb3VKn4f4wCswFWLXBcopKQbO1oEs+WunBtt5tym0SS2wFNEGvWfW0dzzlXRbM507ys09m68L+JTa/Q==", "requires": { - "@vue/shared": "3.2.2" + "@vue/shared": "3.2.3" } }, "@vue/runtime-core": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.2.tgz", - "integrity": "sha512-/aUk1+GO/VPX0oVxhbzSWE1zrf3/wGCsO1ALNisVokYftKqfqLDjbJHE6mrI2hx3MiuwbHrWjJClkGUVTIOPEQ==", + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.3.tgz", + "integrity": "sha512-yn6FL2fCKi5dauJYm8u6iiGs7VoXoIWdr+icIFtEW4eObUKOzDwYpBaqCf8orhI1LEnyZO7rLplbfoJJColBwg==", "requires": { - "@vue/reactivity": "3.2.2", - "@vue/shared": "3.2.2" + "@vue/reactivity": "3.2.3", + "@vue/shared": "3.2.3" } }, "@vue/runtime-dom": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.2.tgz", - "integrity": "sha512-1Le/NpCfawCOfePfJezvWUF+oCVLU8N+IHN4oFDOxRe6/PgHNJ+yT+YdxFifBfI+TIAoXI/9PsnqzmJZV+xsmw==", + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.3.tgz", + "integrity": "sha512-YpulzSn0ydzgbfE1i9O1MJAspUHTA9q6AmqRrDLIR5AP9jmoGA//TmnB90IhA7OOGpuSVm4f1VUZ+gm/URPPgA==", "requires": { - "@vue/runtime-core": "3.2.2", - "@vue/shared": "3.2.2", + "@vue/runtime-core": "3.2.3", + "@vue/shared": "3.2.3", "csstype": "^2.6.8" } }, "@vue/shared": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.2.tgz", - "integrity": "sha512-dvYb318tk9uOzHtSaT3WII/HscQSIRzoCZ5GyxEb3JlkEXASpAUAQwKnvSe2CudnF8XHFRTB7VITWSnWNLZUtA==" + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.3.tgz", + "integrity": "sha512-1f8kyoabSgoga0E89itGIoaCo2Ayr6i6jQq/kHhhYrrBxoK7LNNwuWQghW0k/bapimyIzQiN891XzquYP78aqg==" }, "@vue/web-component-wrapper": { "version": "1.3.0", @@ -102856,13 +102856,13 @@ } }, "vue": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.2.2.tgz", - "integrity": "sha512-D/LuzAV30CgNJYGyNheE/VUs5N4toL2IgmS6c9qeOxvyh0xyn4exyRqizpXIrsvfx34zG9x5gCI2tdRHCGvF9w==", + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.2.3.tgz", + "integrity": "sha512-z3/maZr+As43eL42pJTLWG+mnOTXpdPvbhFN7cDs8ZpJgMWtKlbjInLcyOD2XRyH424yulupYhyEFITfybcKnw==", "requires": { - "@vue/compiler-dom": "3.2.2", - "@vue/runtime-dom": "3.2.2", - "@vue/shared": "3.2.2" + "@vue/compiler-dom": "3.2.3", + "@vue/runtime-dom": "3.2.3", + "@vue/shared": "3.2.3" } }, "vue-demi": { diff --git a/packages/shared/package.json b/packages/shared/package.json index 2d8414541f..42cb2dd6c9 100644 --- a/packages/shared/package.json +++ b/packages/shared/package.json @@ -52,7 +52,7 @@ "joi": "17.4.2", "knex-schema-inspector": "1.5.13", "lodash": "4.17.21", - "vue": "3.2.2", + "vue": "3.2.3", "vue-router": "4.0.11" }, "devDependencies": { From a63809c21ff6998e17994bb692beaf5f122de114 Mon Sep 17 00:00:00 2001 From: Nicola Krumschmidt Date: Tue, 17 Aug 2021 17:03:27 +0200 Subject: [PATCH 015/284] Render href attributes on router-link (#7456) While props set to null aren't rendered to the DOM, they are passed to other components as attributes if not defined as props. This prevents vue-router from setting the attribute itself. --- app/src/components/v-button/v-button.vue | 14 +++++++------- app/src/components/v-list/v-list-item.vue | 10 +++++----- .../private/components/module-bar/module-bar.vue | 4 ++-- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/app/src/components/v-button/v-button.vue b/app/src/components/v-button/v-button.vue index 3809485642..e94c11012d 100644 --- a/app/src/components/v-button/v-button.vue +++ b/app/src/components/v-button/v-button.vue @@ -3,7 +3,7 @@ @@ -89,7 +89,7 @@ export default defineComponent({ }, href: { type: String, - default: null, + default: undefined, }, active: { type: Boolean, @@ -109,7 +109,7 @@ export default defineComponent({ }, value: { type: [Number, String], - default: null, + default: undefined, }, dashed: { type: Boolean, @@ -126,7 +126,7 @@ export default defineComponent({ }, download: { type: String, - default: null, + default: undefined, }, ...sizeProps, }, @@ -137,7 +137,7 @@ export default defineComponent({ const { route: linkRoute, isActive, isExactActive } = useLink(props); const sizeClass = useSizeClass(props); - const component = computed<'a' | 'router-link' | 'button'>(() => { + const component = computed(() => { if (props.disabled) return 'button'; if (notEmpty(props.href)) return 'a'; if (props.to) return 'router-link'; diff --git a/app/src/components/v-list/v-list-item.vue b/app/src/components/v-list/v-list-item.vue index fdac527bc4..82678525cb 100644 --- a/app/src/components/v-list/v-list-item.vue +++ b/app/src/components/v-list/v-list-item.vue @@ -2,7 +2,7 @@ @@ -43,7 +43,7 @@ export default defineComponent({ }, href: { type: String, - default: null, + default: undefined, }, disabled: { type: Boolean, @@ -71,7 +71,7 @@ export default defineComponent({ }, download: { type: String, - default: null, + default: undefined, }, value: { type: [String, Number], @@ -88,7 +88,7 @@ export default defineComponent({ const { route: linkRoute, isActive, isExactActive } = useLink(props); - const component = computed(() => { + const component = computed(() => { if (props.to) return 'router-link'; if (props.href) return 'a'; return 'li'; diff --git a/app/src/views/private/components/module-bar/module-bar.vue b/app/src/views/private/components/module-bar/module-bar.vue index 518218e2ff..078b53151f 100644 --- a/app/src/views/private/components/module-bar/module-bar.vue +++ b/app/src/views/private/components/module-bar/module-bar.vue @@ -52,8 +52,8 @@ export default defineComponent({ modules.value .map((module: ModuleConfig) => ({ ...module, - href: module.link || null, - to: module.link === undefined ? `/${module.id}` : null, + href: module.link, + to: module.link === undefined ? `/${module.id}` : '', })) .filter((module: ModuleConfig) => { if (module.hidden !== undefined && unref(module.hidden) === true) { From a9791227fdce822e2676db12c9d3f55312c3c4f8 Mon Sep 17 00:00:00 2001 From: Nitwel Date: Tue, 17 Aug 2021 17:03:59 +0200 Subject: [PATCH 016/284] add simple audio support (#7452) --- .../input-rich-text-html/useMedia.ts | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/app/src/interfaces/input-rich-text-html/useMedia.ts b/app/src/interfaces/input-rich-text-html/useMedia.ts index 837e3a1971..54be5fb19d 100644 --- a/app/src/interfaces/input-rich-text-html/useMedia.ts +++ b/app/src/interfaces/input-rich-text-html/useMedia.ts @@ -7,6 +7,8 @@ type MediaSelection = { source: string; width?: number; height?: number; + tag?: 'video' | 'audio'; + type?: string; }; type MediaButton = { @@ -34,7 +36,7 @@ type UsableMedia = { export default function useMedia(editor: Ref, imageToken: Ref): UsableMedia { const mediaDrawerOpen = ref(false); const mediaSelection = ref(null); - const openMediaTab = ref(['video']); + const openMediaTab = ref(['video', 'audio']); const embed = ref(''); const startEmbed = ref(''); @@ -100,12 +102,15 @@ export default function useMedia(editor: Ref, imageToken: Ref { if (embed.value === '') { if (vid === null) return; - embed.value = ``; + embed.value = `<${vid.tag} width="${vid.width}" height="${vid.height}" controls>`; } else { embed.value = embed.value .replace(/src=".*?"/g, `src="${vid?.source}"`) .replace(/width=".*?"/g, `width="${vid?.width}"`) - .replace(/height=".*?"/g, `height="${vid?.height}"`); + .replace(/height=".*?"/g, `height="${vid?.height}"`) + .replace(/type=".*?"/g, `type="${vid?.type}"`) + .replaceAll(/<(video|audio)/g, `<${vid?.tag}`) + .replaceAll(/<\/(video|audio)/g, `, imageToken: Ref, imageToken: Ref) { const url = getPublicURL() + 'assets/' + media.id; + const tag = media.type.startsWith('audio') ? 'audio' : 'video'; const source = imageToken.value ? addTokenToURL(url, imageToken.value) : url; mediaSelection.value = { source, width: media.width || 300, height: media.height || 150, + tag, + type: media.type, }; } From dfb91bbb0b6e71fe6bac259d905c1bf51d0295fe Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 17 Aug 2021 11:04:15 -0400 Subject: [PATCH 017/284] update typescript-eslint monorepo to v4.29.2 (#7438) Co-authored-by: Renovate Bot --- package-lock.json | 140 +++++++++++++++++++++++----------------------- package.json | 4 +- 2 files changed, 72 insertions(+), 72 deletions(-) diff --git a/package-lock.json b/package-lock.json index 739fd8a9c6..d80cfb4e81 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17,8 +17,8 @@ "@types/listr": "0.14.4", "@types/node": "15.12.2", "@types/supertest": "2.0.11", - "@typescript-eslint/eslint-plugin": "4.29.1", - "@typescript-eslint/parser": "4.29.1", + "@typescript-eslint/eslint-plugin": "4.29.2", + "@typescript-eslint/parser": "4.29.2", "axios": "0.21.1", "dockerode": "3.3.0", "eslint": "7.32.0", @@ -8887,12 +8887,12 @@ "integrity": "sha512-fbF6oTd4sGGy0xjHPKAt+eS2CrxJ3+6gQ3FGcBoIJR2TLAyCkCyI8JqZNy+FeON0AhVgNJoUumVoZQjBFUqHkw==" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.29.1.tgz", - "integrity": "sha512-AHqIU+SqZZgBEiWOrtN94ldR3ZUABV5dUG94j8Nms9rQnHFc8fvDOue/58K4CFz6r8OtDDc35Pw9NQPWo0Ayrw==", + "version": "4.29.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.29.2.tgz", + "integrity": "sha512-x4EMgn4BTfVd9+Z+r+6rmWxoAzBaapt4QFqE+d8L8sUtYZYLDTK6VG/y/SMMWA5t1/BVU5Kf+20rX4PtWzUYZg==", "dependencies": { - "@typescript-eslint/experimental-utils": "4.29.1", - "@typescript-eslint/scope-manager": "4.29.1", + "@typescript-eslint/experimental-utils": "4.29.2", + "@typescript-eslint/scope-manager": "4.29.2", "debug": "^4.3.1", "functional-red-black-tree": "^1.0.1", "regexpp": "^3.1.0", @@ -8917,14 +8917,14 @@ } }, "node_modules/@typescript-eslint/experimental-utils": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.29.1.tgz", - "integrity": "sha512-kl6QG6qpzZthfd2bzPNSJB2YcZpNOrP6r9jueXupcZHnL74WiuSjaft7WSu17J9+ae9zTlk0KJMXPUj0daBxMw==", + "version": "4.29.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.29.2.tgz", + "integrity": "sha512-P6mn4pqObhftBBPAv4GQtEK7Yos1fz/MlpT7+YjH9fTxZcALbiiPKuSIfYP/j13CeOjfq8/fr9Thr2glM9ub7A==", "dependencies": { "@types/json-schema": "^7.0.7", - "@typescript-eslint/scope-manager": "4.29.1", - "@typescript-eslint/types": "4.29.1", - "@typescript-eslint/typescript-estree": "4.29.1", + "@typescript-eslint/scope-manager": "4.29.2", + "@typescript-eslint/types": "4.29.2", + "@typescript-eslint/typescript-estree": "4.29.2", "eslint-scope": "^5.1.1", "eslint-utils": "^3.0.0" }, @@ -8940,13 +8940,13 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.29.1.tgz", - "integrity": "sha512-3fL5iN20hzX3Q4OkG7QEPFjZV2qsVGiDhEwwh+EkmE/w7oteiOvUNzmpu5eSwGJX/anCryONltJ3WDmAzAoCMg==", + "version": "4.29.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.29.2.tgz", + "integrity": "sha512-WQ6BPf+lNuwteUuyk1jD/aHKqMQ9jrdCn7Gxt9vvBnzbpj7aWEf+aZsJ1zvTjx5zFxGCt000lsbD9tQPEL8u6g==", "dependencies": { - "@typescript-eslint/scope-manager": "4.29.1", - "@typescript-eslint/types": "4.29.1", - "@typescript-eslint/typescript-estree": "4.29.1", + "@typescript-eslint/scope-manager": "4.29.2", + "@typescript-eslint/types": "4.29.2", + "@typescript-eslint/typescript-estree": "4.29.2", "debug": "^4.3.1" }, "engines": { @@ -8966,12 +8966,12 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.29.1.tgz", - "integrity": "sha512-Hzv/uZOa9zrD/W5mftZa54Jd5Fed3tL6b4HeaOpwVSabJK8CJ+2MkDasnX/XK4rqP5ZTWngK1ZDeCi6EnxPQ7A==", + "version": "4.29.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.29.2.tgz", + "integrity": "sha512-mfHmvlQxmfkU8D55CkZO2sQOueTxLqGvzV+mG6S/6fIunDiD2ouwsAoiYCZYDDK73QCibYjIZmGhpvKwAB5BOA==", "dependencies": { - "@typescript-eslint/types": "4.29.1", - "@typescript-eslint/visitor-keys": "4.29.1" + "@typescript-eslint/types": "4.29.2", + "@typescript-eslint/visitor-keys": "4.29.2" }, "engines": { "node": "^8.10.0 || ^10.13.0 || >=11.10.1" @@ -8982,9 +8982,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.29.1.tgz", - "integrity": "sha512-Jj2yu78IRfw4nlaLtKjVaGaxh/6FhofmQ/j8v3NXmAiKafbIqtAPnKYrf0sbGjKdj0hS316J8WhnGnErbJ4RCA==", + "version": "4.29.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.29.2.tgz", + "integrity": "sha512-K6ApnEXId+WTGxqnda8z4LhNMa/pZmbTFkDxEBLQAbhLZL50DjeY0VIDCml/0Y3FlcbqXZrABqrcKxq+n0LwzQ==", "engines": { "node": "^8.10.0 || ^10.13.0 || >=11.10.1" }, @@ -8994,12 +8994,12 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.29.1.tgz", - "integrity": "sha512-lIkkrR9E4lwZkzPiRDNq0xdC3f2iVCUjw/7WPJ4S2Sl6C3nRWkeE1YXCQ0+KsiaQRbpY16jNaokdWnm9aUIsfw==", + "version": "4.29.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.29.2.tgz", + "integrity": "sha512-TJ0/hEnYxapYn9SGn3dCnETO0r+MjaxtlWZ2xU+EvytF0g4CqTpZL48SqSNn2hXsPolnewF30pdzR9a5Lj3DNg==", "dependencies": { - "@typescript-eslint/types": "4.29.1", - "@typescript-eslint/visitor-keys": "4.29.1", + "@typescript-eslint/types": "4.29.2", + "@typescript-eslint/visitor-keys": "4.29.2", "debug": "^4.3.1", "globby": "^11.0.3", "is-glob": "^4.0.1", @@ -9020,11 +9020,11 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.29.1.tgz", - "integrity": "sha512-zLqtjMoXvgdZY/PG6gqA73V8BjqPs4af1v2kiiETBObp+uC6gRYnJLmJHxC0QyUrrHDLJPIWNYxoBV3wbcRlag==", + "version": "4.29.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.29.2.tgz", + "integrity": "sha512-bDgJLQ86oWHJoZ1ai4TZdgXzJxsea3Ee9u9wsTAvjChdj2WLcVsgWYAPeY7RQMn16tKrlQaBnpKv7KBfs4EQag==", "dependencies": { - "@typescript-eslint/types": "4.29.1", + "@typescript-eslint/types": "4.29.2", "eslint-visitor-keys": "^2.0.0" }, "engines": { @@ -69055,12 +69055,12 @@ "integrity": "sha512-fbF6oTd4sGGy0xjHPKAt+eS2CrxJ3+6gQ3FGcBoIJR2TLAyCkCyI8JqZNy+FeON0AhVgNJoUumVoZQjBFUqHkw==" }, "@typescript-eslint/eslint-plugin": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.29.1.tgz", - "integrity": "sha512-AHqIU+SqZZgBEiWOrtN94ldR3ZUABV5dUG94j8Nms9rQnHFc8fvDOue/58K4CFz6r8OtDDc35Pw9NQPWo0Ayrw==", + "version": "4.29.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.29.2.tgz", + "integrity": "sha512-x4EMgn4BTfVd9+Z+r+6rmWxoAzBaapt4QFqE+d8L8sUtYZYLDTK6VG/y/SMMWA5t1/BVU5Kf+20rX4PtWzUYZg==", "requires": { - "@typescript-eslint/experimental-utils": "4.29.1", - "@typescript-eslint/scope-manager": "4.29.1", + "@typescript-eslint/experimental-utils": "4.29.2", + "@typescript-eslint/scope-manager": "4.29.2", "debug": "^4.3.1", "functional-red-black-tree": "^1.0.1", "regexpp": "^3.1.0", @@ -69069,50 +69069,50 @@ } }, "@typescript-eslint/experimental-utils": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.29.1.tgz", - "integrity": "sha512-kl6QG6qpzZthfd2bzPNSJB2YcZpNOrP6r9jueXupcZHnL74WiuSjaft7WSu17J9+ae9zTlk0KJMXPUj0daBxMw==", + "version": "4.29.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.29.2.tgz", + "integrity": "sha512-P6mn4pqObhftBBPAv4GQtEK7Yos1fz/MlpT7+YjH9fTxZcALbiiPKuSIfYP/j13CeOjfq8/fr9Thr2glM9ub7A==", "requires": { "@types/json-schema": "^7.0.7", - "@typescript-eslint/scope-manager": "4.29.1", - "@typescript-eslint/types": "4.29.1", - "@typescript-eslint/typescript-estree": "4.29.1", + "@typescript-eslint/scope-manager": "4.29.2", + "@typescript-eslint/types": "4.29.2", + "@typescript-eslint/typescript-estree": "4.29.2", "eslint-scope": "^5.1.1", "eslint-utils": "^3.0.0" } }, "@typescript-eslint/parser": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.29.1.tgz", - "integrity": "sha512-3fL5iN20hzX3Q4OkG7QEPFjZV2qsVGiDhEwwh+EkmE/w7oteiOvUNzmpu5eSwGJX/anCryONltJ3WDmAzAoCMg==", + "version": "4.29.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.29.2.tgz", + "integrity": "sha512-WQ6BPf+lNuwteUuyk1jD/aHKqMQ9jrdCn7Gxt9vvBnzbpj7aWEf+aZsJ1zvTjx5zFxGCt000lsbD9tQPEL8u6g==", "requires": { - "@typescript-eslint/scope-manager": "4.29.1", - "@typescript-eslint/types": "4.29.1", - "@typescript-eslint/typescript-estree": "4.29.1", + "@typescript-eslint/scope-manager": "4.29.2", + "@typescript-eslint/types": "4.29.2", + "@typescript-eslint/typescript-estree": "4.29.2", "debug": "^4.3.1" } }, "@typescript-eslint/scope-manager": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.29.1.tgz", - "integrity": "sha512-Hzv/uZOa9zrD/W5mftZa54Jd5Fed3tL6b4HeaOpwVSabJK8CJ+2MkDasnX/XK4rqP5ZTWngK1ZDeCi6EnxPQ7A==", + "version": "4.29.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.29.2.tgz", + "integrity": "sha512-mfHmvlQxmfkU8D55CkZO2sQOueTxLqGvzV+mG6S/6fIunDiD2ouwsAoiYCZYDDK73QCibYjIZmGhpvKwAB5BOA==", "requires": { - "@typescript-eslint/types": "4.29.1", - "@typescript-eslint/visitor-keys": "4.29.1" + "@typescript-eslint/types": "4.29.2", + "@typescript-eslint/visitor-keys": "4.29.2" } }, "@typescript-eslint/types": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.29.1.tgz", - "integrity": "sha512-Jj2yu78IRfw4nlaLtKjVaGaxh/6FhofmQ/j8v3NXmAiKafbIqtAPnKYrf0sbGjKdj0hS316J8WhnGnErbJ4RCA==" + "version": "4.29.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.29.2.tgz", + "integrity": "sha512-K6ApnEXId+WTGxqnda8z4LhNMa/pZmbTFkDxEBLQAbhLZL50DjeY0VIDCml/0Y3FlcbqXZrABqrcKxq+n0LwzQ==" }, "@typescript-eslint/typescript-estree": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.29.1.tgz", - "integrity": "sha512-lIkkrR9E4lwZkzPiRDNq0xdC3f2iVCUjw/7WPJ4S2Sl6C3nRWkeE1YXCQ0+KsiaQRbpY16jNaokdWnm9aUIsfw==", + "version": "4.29.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.29.2.tgz", + "integrity": "sha512-TJ0/hEnYxapYn9SGn3dCnETO0r+MjaxtlWZ2xU+EvytF0g4CqTpZL48SqSNn2hXsPolnewF30pdzR9a5Lj3DNg==", "requires": { - "@typescript-eslint/types": "4.29.1", - "@typescript-eslint/visitor-keys": "4.29.1", + "@typescript-eslint/types": "4.29.2", + "@typescript-eslint/visitor-keys": "4.29.2", "debug": "^4.3.1", "globby": "^11.0.3", "is-glob": "^4.0.1", @@ -69121,11 +69121,11 @@ } }, "@typescript-eslint/visitor-keys": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.29.1.tgz", - "integrity": "sha512-zLqtjMoXvgdZY/PG6gqA73V8BjqPs4af1v2kiiETBObp+uC6gRYnJLmJHxC0QyUrrHDLJPIWNYxoBV3wbcRlag==", + "version": "4.29.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.29.2.tgz", + "integrity": "sha512-bDgJLQ86oWHJoZ1ai4TZdgXzJxsea3Ee9u9wsTAvjChdj2WLcVsgWYAPeY7RQMn16tKrlQaBnpKv7KBfs4EQag==", "requires": { - "@typescript-eslint/types": "4.29.1", + "@typescript-eslint/types": "4.29.2", "eslint-visitor-keys": "^2.0.0" } }, diff --git a/package.json b/package.json index 81ab53d220..b8b668a3f1 100644 --- a/package.json +++ b/package.json @@ -32,8 +32,8 @@ "@types/listr": "0.14.4", "@types/node": "15.12.2", "@types/supertest": "2.0.11", - "@typescript-eslint/eslint-plugin": "4.29.1", - "@typescript-eslint/parser": "4.29.1", + "@typescript-eslint/eslint-plugin": "4.29.2", + "@typescript-eslint/parser": "4.29.2", "axios": "0.21.1", "dockerode": "3.3.0", "eslint": "7.32.0", From d2888474d55b7a2bc8525b8cb3d7f5e816b79d41 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 17 Aug 2021 15:18:03 +0000 Subject: [PATCH 018/284] update dependency sharp to ^0.29.0 (#7461) Co-authored-by: Renovate Bot --- api/package.json | 2 +- package-lock.json | 70 +++++++++++++++++++++++++++++++++-------------- 2 files changed, 50 insertions(+), 22 deletions(-) diff --git a/api/package.json b/api/package.json index 3f45545c96..b83471271d 100644 --- a/api/package.json +++ b/api/package.json @@ -137,7 +137,7 @@ "rate-limiter-flexible": "^2.2.2", "resolve-cwd": "^3.0.0", "rollup": "^2.52.1", - "sharp": "^0.28.3", + "sharp": "^0.29.0", "stream-json": "^1.7.1", "update-check": "^1.5.4", "uuid": "^8.3.2", diff --git a/package-lock.json b/package-lock.json index d80cfb4e81..794356a09c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -127,7 +127,7 @@ "rate-limiter-flexible": "^2.2.2", "resolve-cwd": "^3.0.0", "rollup": "^2.52.1", - "sharp": "^0.28.3", + "sharp": "^0.29.0", "stream-json": "^1.7.1", "update-check": "^1.5.4", "uuid": "^8.3.2", @@ -41892,9 +41892,9 @@ } }, "node_modules/prebuild-install": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-6.1.3.tgz", - "integrity": "sha512-iqqSR84tNYQUQHRXalSKdIaM8Ov1QxOVuBNWI7+BzZWv6Ih9k75wOnH1rGQ9WWTaaLkTpxWKIciOF0KyfM74+Q==", + "version": "6.1.4", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-6.1.4.tgz", + "integrity": "sha512-Z4vpywnK1lBg+zdPCVCsKq0xO66eEV9rWo2zrROGGiRS4JtueBOdlB1FnY8lcy7JsUud/Q3ijUxyWN26Ika0vQ==", "dependencies": { "detect-libc": "^1.0.3", "expand-template": "^2.0.3", @@ -45171,22 +45171,22 @@ "peer": true }, "node_modules/sharp": { - "version": "0.28.3", - "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.28.3.tgz", - "integrity": "sha512-21GEP45Rmr7q2qcmdnjDkNP04Ooh5v0laGS5FDpojOO84D1DJwUijLiSq8XNNM6e8aGXYtoYRh3sVNdm8NodMA==", + "version": "0.29.0", + "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.29.0.tgz", + "integrity": "sha512-mdN1Up0eN+SwyForPls59dWO0nx64J1XRQYy5ZiKSADAccGYCB10UAGJHSVG9VObzJdhHqrVJzQcq6gx8USyoA==", "hasInstallScript": true, "dependencies": { - "color": "^3.1.3", + "color": "^4.0.1", "detect-libc": "^1.0.3", - "node-addon-api": "^3.2.0", - "prebuild-install": "^6.1.2", + "node-addon-api": "^4.0.0", + "prebuild-install": "^6.1.4", "semver": "^7.3.5", "simple-get": "^3.1.0", "tar-fs": "^2.1.1", "tunnel-agent": "^0.6.0" }, "engines": { - "node": ">=10" + "node": ">=12.13.0" }, "funding": { "url": "https://opencollective.com/libvips" @@ -45197,6 +45197,20 @@ "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" }, + "node_modules/sharp/node_modules/color": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/color/-/color-4.0.1.tgz", + "integrity": "sha512-rpZjOKN5O7naJxkH2Rx1sZzzBgaiWECc6BYXjeCE6kF0kcASJYbUq02u7JqIHwCb/j3NhV+QhRL2683aICeGZA==", + "dependencies": { + "color-convert": "^2.0.1", + "color-string": "^1.6.0" + } + }, + "node_modules/sharp/node_modules/node-addon-api": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-4.0.0.tgz", + "integrity": "sha512-ALmRVBFzfwldBfk3SbKfl6+PVMXiCPKZBEfsJqB/EjXAMAI+MfFrEHR+GMRBuI162DihZ1QjEZ8ieYKuRCJ8Hg==" + }, "node_modules/sharp/node_modules/tar-fs": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", @@ -77230,7 +77244,7 @@ "rate-limiter-flexible": "^2.2.2", "resolve-cwd": "^3.0.0", "rollup": "^2.52.1", - "sharp": "^0.28.3", + "sharp": "^0.29.0", "sqlite3": "^5.0.2", "stream-json": "^1.7.1", "tedious": "^11.0.8", @@ -95353,9 +95367,9 @@ "dev": true }, "prebuild-install": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-6.1.3.tgz", - "integrity": "sha512-iqqSR84tNYQUQHRXalSKdIaM8Ov1QxOVuBNWI7+BzZWv6Ih9k75wOnH1rGQ9WWTaaLkTpxWKIciOF0KyfM74+Q==", + "version": "6.1.4", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-6.1.4.tgz", + "integrity": "sha512-Z4vpywnK1lBg+zdPCVCsKq0xO66eEV9rWo2zrROGGiRS4JtueBOdlB1FnY8lcy7JsUud/Q3ijUxyWN26Ika0vQ==", "requires": { "detect-libc": "^1.0.3", "expand-template": "^2.0.3", @@ -97983,14 +97997,14 @@ "peer": true }, "sharp": { - "version": "0.28.3", - "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.28.3.tgz", - "integrity": "sha512-21GEP45Rmr7q2qcmdnjDkNP04Ooh5v0laGS5FDpojOO84D1DJwUijLiSq8XNNM6e8aGXYtoYRh3sVNdm8NodMA==", + "version": "0.29.0", + "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.29.0.tgz", + "integrity": "sha512-mdN1Up0eN+SwyForPls59dWO0nx64J1XRQYy5ZiKSADAccGYCB10UAGJHSVG9VObzJdhHqrVJzQcq6gx8USyoA==", "requires": { - "color": "^3.1.3", + "color": "^4.0.1", "detect-libc": "^1.0.3", - "node-addon-api": "^3.2.0", - "prebuild-install": "^6.1.2", + "node-addon-api": "^4.0.0", + "prebuild-install": "^6.1.4", "semver": "^7.3.5", "simple-get": "^3.1.0", "tar-fs": "^2.1.1", @@ -98002,6 +98016,20 @@ "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" }, + "color": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/color/-/color-4.0.1.tgz", + "integrity": "sha512-rpZjOKN5O7naJxkH2Rx1sZzzBgaiWECc6BYXjeCE6kF0kcASJYbUq02u7JqIHwCb/j3NhV+QhRL2683aICeGZA==", + "requires": { + "color-convert": "^2.0.1", + "color-string": "^1.6.0" + } + }, + "node-addon-api": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-4.0.0.tgz", + "integrity": "sha512-ALmRVBFzfwldBfk3SbKfl6+PVMXiCPKZBEfsJqB/EjXAMAI+MfFrEHR+GMRBuI162DihZ1QjEZ8ieYKuRCJ8Hg==" + }, "tar-fs": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", From 60fc455bbde4631790f9485514e7af6626c03cc2 Mon Sep 17 00:00:00 2001 From: Ben Haynes Date: Tue, 17 Aug 2021 11:19:05 -0400 Subject: [PATCH 019/284] Add FAQs to title formatter --- packages/format-title/src/acronyms.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/format-title/src/acronyms.ts b/packages/format-title/src/acronyms.ts index 638ff1ef13..f765a2aa4a 100644 --- a/packages/format-title/src/acronyms.ts +++ b/packages/format-title/src/acronyms.ts @@ -24,6 +24,7 @@ export default [ 'EIN', 'ESPN', 'FAQ', + 'FAQs', 'FTP', 'FPS', 'FORTRAN', From f12f9e0f02d35d5564e03d2bf330672c217c7dcb Mon Sep 17 00:00:00 2001 From: Nitwel Date: Tue, 17 Aug 2021 17:20:55 +0200 Subject: [PATCH 020/284] Allow cancelling the creation of custom permissions (#7459) * remove custom permissions if they are empty * Add return type Co-authored-by: Rijk van Zanten --- .../components/permissions-overview-toggle.vue | 11 +---------- .../permissions-detail/components/actions.vue | 8 +++++++- .../permissions-detail/components/fields.vue | 15 ++++----------- .../permissions-detail/permissions-detail.vue | 9 +++++++-- app/src/utils/is-permission-empty.ts | 9 +++++++++ 5 files changed, 28 insertions(+), 24 deletions(-) create mode 100644 app/src/utils/is-permission-empty.ts diff --git a/app/src/modules/settings/routes/roles/item/components/permissions-overview-toggle.vue b/app/src/modules/settings/routes/roles/item/components/permissions-overview-toggle.vue index 271032cd5e..49690fda38 100644 --- a/app/src/modules/settings/routes/roles/item/components/permissions-overview-toggle.vue +++ b/app/src/modules/settings/routes/roles/item/components/permissions-overview-toggle.vue @@ -111,18 +111,9 @@ export default defineComponent({ const permissionLevel = computed<'all' | 'none' | 'custom'>(() => { if (permission.value === undefined) return 'none'; - if (hasAll() === true) return 'all'; + if (permission.value.fields?.includes('*')) return 'all'; return 'custom'; - - function hasAll() { - if (!permission.value) return false; - if (permission.value.fields?.includes('*') === false) return false; - if (Object.keys(permission.value.permissions || {}).length > 0) return false; - if (Object.keys(permission.value.validation || {}).length > 0) return false; - - return true; - } }); const saving = ref(false); diff --git a/app/src/modules/settings/routes/roles/permissions-detail/components/actions.vue b/app/src/modules/settings/routes/roles/permissions-detail/components/actions.vue index f40e882483..ffee9ce89b 100644 --- a/app/src/modules/settings/routes/roles/permissions-detail/components/actions.vue +++ b/app/src/modules/settings/routes/roles/permissions-detail/components/actions.vue @@ -13,6 +13,7 @@ import { Permission } from '@directus/shared/types'; import api from '@/api'; import { useRouter } from 'vue-router'; import { unexpectedError } from '@/utils/unexpected-error'; +import { isPermissionEmpty } from '@/utils/is-permission-empty'; export default defineComponent({ props: { @@ -39,7 +40,12 @@ export default defineComponent({ loading.value = true; try { - await api.patch(`/permissions/${props.permission.id}`, props.permission); + if (isPermissionEmpty(props.permission)) { + await api.delete(`/permissions/${props.permission.id}`); + } else { + await api.patch(`/permissions/${props.permission.id}`, props.permission); + } + emit('refresh'); router.push(`/settings/roles/${props.roleKey || 'public'}`); } catch (err) { diff --git a/app/src/modules/settings/routes/roles/permissions-detail/components/fields.vue b/app/src/modules/settings/routes/roles/permissions-detail/components/fields.vue index e2ba4246a5..25820233b6 100644 --- a/app/src/modules/settings/routes/roles/permissions-detail/components/fields.vue +++ b/app/src/modules/settings/routes/roles/permissions-detail/components/fields.vue @@ -79,17 +79,10 @@ export default defineComponent({ }, set(newFields: string[] | null) { if (newFields && newFields.length > 0) { - if (newFields.length === fieldsInCollection.value.length) { - internalPermission.value = { - ...internalPermission.value, - fields: ['*'], - }; - } else { - internalPermission.value = { - ...internalPermission.value, - fields: newFields, - }; - } + internalPermission.value = { + ...internalPermission.value, + fields: newFields, + }; } else { internalPermission.value = { ...internalPermission.value, diff --git a/app/src/modules/settings/routes/roles/permissions-detail/permissions-detail.vue b/app/src/modules/settings/routes/roles/permissions-detail/permissions-detail.vue index bfa821032c..6bca8e7e7e 100644 --- a/app/src/modules/settings/routes/roles/permissions-detail/permissions-detail.vue +++ b/app/src/modules/settings/routes/roles/permissions-detail/permissions-detail.vue @@ -39,7 +39,7 @@ @@ -61,6 +61,7 @@ import Presets from './components/presets.vue'; import { unexpectedError } from '@/utils/unexpected-error'; import { appMinimalPermissions } from '../app-permissions'; import { useDialogRoute } from '@/composables/use-dialog-route'; +import { isPermissionEmpty } from '@/utils/is-permission-empty'; export default defineComponent({ components: { Actions, Tabs, Permissions, Fields, Validation, Presets }, @@ -175,7 +176,11 @@ export default defineComponent({ return { isOpen, permission, role, loading, modalTitle, tabs, currentTab, currentTabInfo, appMinimal, close }; - function close() { + async function close() { + if (permission.value && isPermissionEmpty(permission.value)) { + await api.delete(`/permissions/${permission.value.id}`); + } + router.push(`/settings/roles/${props.roleKey || 'public'}`); } diff --git a/app/src/utils/is-permission-empty.ts b/app/src/utils/is-permission-empty.ts new file mode 100644 index 0000000000..ab0d6b0d68 --- /dev/null +++ b/app/src/utils/is-permission-empty.ts @@ -0,0 +1,9 @@ +import { Permission } from '../../../packages/shared/types'; + +export function isPermissionEmpty(perm: Permission): boolean { + return ( + (perm.fields || []).length === 0 && + Object.keys(perm.validation || {}).length === 0 && + Object.keys(perm.presets || {}).length === 0 + ); +} From e6559c6f9c7b795d7eb6853f90ce22c5ca214448 Mon Sep 17 00:00:00 2001 From: Nitwel Date: Tue, 17 Aug 2021 18:47:12 +0200 Subject: [PATCH 021/284] Improve conditional fields (#7462) * fix item not rendering on empty condition * add placeholder to rule field --- app/src/components/v-form/v-form.vue | 1 + .../routes/data-model/field-detail/components/conditions.vue | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/app/src/components/v-form/v-form.vue b/app/src/components/v-form/v-form.vue index 1b93c7f1fc..e672827201 100644 --- a/app/src/components/v-form/v-form.vue +++ b/app/src/components/v-form/v-form.vue @@ -236,6 +236,7 @@ export default defineComponent({ const conditions = [...field.meta.conditions].reverse(); const matchingCondition = conditions.find((condition) => { + if (!condition.rule) return; const errors = validatePayload(condition.rule, values.value, { requireAll: true }); return errors.length === 0; }); diff --git a/app/src/modules/settings/routes/data-model/field-detail/components/conditions.vue b/app/src/modules/settings/routes/data-model/field-detail/components/conditions.vue index 6fcbb04f9e..0ee3d83dec 100644 --- a/app/src/modules/settings/routes/data-model/field-detail/components/conditions.vue +++ b/app/src/modules/settings/routes/data-model/field-detail/components/conditions.vue @@ -55,6 +55,11 @@ export default defineComponent({ interface: 'input-code', options: { language: 'json', + placeholder: `{ + "myField": { + "_eq": "Some Text" + } +}`, }, }, }, From 07f4acdaca351a46ab74e55a513a39e3b56d0f62 Mon Sep 17 00:00:00 2001 From: Nitwel Date: Tue, 17 Aug 2021 18:56:41 +0200 Subject: [PATCH 022/284] Add edge case using mysql for tinyint as boolean (#7460) * revert #7287 * add edge case for mysql to tinyint/boolean Co-authored-by: Rijk van Zanten --- api/src/utils/get-local-type.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/api/src/utils/get-local-type.ts b/api/src/utils/get-local-type.ts index 6650225b47..bd21bd6b2a 100644 --- a/api/src/utils/get-local-type.ts +++ b/api/src/utils/get-local-type.ts @@ -145,8 +145,12 @@ export default function getLocalType( return { type: 'text' }; } - /** Handle Boolean as TINYINT*/ - if (column.data_type.toLowerCase() === 'tinyint(1)' || column.data_type.toLowerCase() === 'tinyint(0)') { + /** Handle Boolean as TINYINT and edgecase MySQL where it still is just tinyint */ + if ( + (database.client.constructor.name === 'Client_MySQL' && column.data_type.toLowerCase() === 'tinyint') || + column.data_type.toLowerCase() === 'tinyint(1)' || + column.data_type.toLowerCase() === 'tinyint(0)' + ) { return { type: 'boolean' }; } From e4d50c5f56183261e04575fdfcfab7c5e1e33097 Mon Sep 17 00:00:00 2001 From: Nitwel Date: Tue, 17 Aug 2021 20:27:49 +0200 Subject: [PATCH 023/284] fix @ alias (#7463) Co-authored-by: Rijk van Zanten --- app/vite.config.js | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/app/vite.config.js b/app/vite.config.js index d8ab80a3d5..f5c4e323e8 100644 --- a/app/vite.config.js +++ b/app/vite.config.js @@ -22,9 +22,7 @@ export default defineConfig({ }), ], resolve: { - alias: { - '@': path.resolve(__dirname, '/src'), - }, + alias: [{ find: '@', replacement: path.resolve(__dirname, 'src') }], }, base: process.env.NODE_ENV === 'production' ? '' : '/admin/', server: { From 6144b5b815ede57094fa7118a2f0aac2d5d489d3 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 17 Aug 2021 14:29:55 -0400 Subject: [PATCH 024/284] update vue monorepo to v3.2.4 (#7467) Co-authored-by: Renovate Bot Co-authored-by: Rijk van Zanten --- app/package.json | 4 +- package-lock.json | 188 +++++++++++++++++------------------ packages/shared/package.json | 2 +- 3 files changed, 97 insertions(+), 97 deletions(-) diff --git a/app/package.json b/app/package.json index 5221e8013d..f5adb3b09d 100644 --- a/app/package.json +++ b/app/package.json @@ -66,7 +66,7 @@ "@vue/cli-plugin-typescript": "4.5.13", "@vue/cli-plugin-vuex": "4.5.13", "@vue/cli-service": "4.5.13", - "@vue/compiler-sfc": "3.2.3", + "@vue/compiler-sfc": "3.2.4", "axios": "0.21.1", "base-64": "1.0.0", "codemirror": "5.62.2", @@ -94,7 +94,7 @@ "tinymce": "5.8.2", "typescript": "4.3.5", "vite": "2.5.0", - "vue": "3.2.3", + "vue": "3.2.4", "vue-i18n": "9.1.7", "vue-router": "4.0.11", "vuedraggable": "4.0.3", diff --git a/package-lock.json b/package-lock.json index 794356a09c..3b741264dc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -420,7 +420,7 @@ "@vue/cli-plugin-typescript": "4.5.13", "@vue/cli-plugin-vuex": "4.5.13", "@vue/cli-service": "4.5.13", - "@vue/compiler-sfc": "3.2.3", + "@vue/compiler-sfc": "3.2.4", "axios": "0.21.1", "base-64": "1.0.0", "codemirror": "5.62.2", @@ -448,7 +448,7 @@ "tinymce": "5.8.2", "typescript": "4.3.5", "vite": "2.5.0", - "vue": "3.2.3", + "vue": "3.2.4", "vue-i18n": "9.1.7", "vue-router": "4.0.11", "vuedraggable": "4.0.3", @@ -10427,38 +10427,38 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.3.tgz", - "integrity": "sha512-qQpACs40hClYqghS209OBh6NDArKPrS5emWMOH/hzDy0KtOV7Kfyy2ILWRfamIsygq8mg+xHcqtVXOjr21WvQw==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.4.tgz", + "integrity": "sha512-c8NuQq7mUXXxA4iqD5VUKpyVeklK53+DMbojYMyZ0VPPrb0BUWrZWFiqSDT+MFDv0f6Hv3QuLiHWb1BWMXBbrw==", "dependencies": { "@babel/parser": "^7.12.0", "@babel/types": "^7.12.0", - "@vue/shared": "3.2.3", + "@vue/shared": "3.2.4", "estree-walker": "^2.0.1", "source-map": "^0.6.1" } }, "node_modules/@vue/compiler-dom": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.3.tgz", - "integrity": "sha512-hEKd+h9eIT+et/l0Nmiup5CWFHC4KuhUcrdAIPLcv1uskVQA3gSDAAx9UGB/G9cRB2gmBpFONHEi8zKrlnsaWQ==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.4.tgz", + "integrity": "sha512-uj1nwO4794fw2YsYas5QT+FU/YGrXbS0Qk+1c7Kp1kV7idhZIghWLTjyvYibpGoseFbYLPd+sW2/noJG5H04EQ==", "dependencies": { - "@vue/compiler-core": "3.2.3", - "@vue/shared": "3.2.3" + "@vue/compiler-core": "3.2.4", + "@vue/shared": "3.2.4" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.3.tgz", - "integrity": "sha512-TlaDOChFUzt3lqqaFNRD2XI0lrRWYA0/jTgWKUrCLVEPZ0tNP8Vyjmml3+1QlAo4pyjaOjYacq0OS4eCGVFJ3w==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.4.tgz", + "integrity": "sha512-GM+ouDdDzhqgkLmBH4bgq4kiZxJQArSppJiZHWHIx9XRaefHLmc1LBNPmN8ivm4SVfi2i7M2t9k8ZnjsScgzPQ==", "dependencies": { "@babel/parser": "^7.13.9", "@babel/types": "^7.13.0", "@types/estree": "^0.0.48", - "@vue/compiler-core": "3.2.3", - "@vue/compiler-dom": "3.2.3", - "@vue/compiler-ssr": "3.2.3", - "@vue/shared": "3.2.3", + "@vue/compiler-core": "3.2.4", + "@vue/compiler-dom": "3.2.4", + "@vue/compiler-ssr": "3.2.4", + "@vue/shared": "3.2.4", "consolidate": "^0.16.0", "estree-walker": "^2.0.1", "hash-sum": "^2.0.0", @@ -10472,12 +10472,12 @@ } }, "node_modules/@vue/compiler-ssr": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.3.tgz", - "integrity": "sha512-VMYXYBXPohxlPvg42tT8Gcc58Wo1fPP4IE+aLgpmnNmMFuTsGEKOBK4mZqtNpv9dxgF6ooro9gQlA6BfOy3lGg==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.4.tgz", + "integrity": "sha512-bKZuXu9/4XwsFHFWIKQK+5kN7mxIIWmMmT2L4VVek7cvY/vm3p4WTsXYDGZJy0htOTXvM2ifr6sflg012T0hsw==", "dependencies": { - "@vue/compiler-dom": "3.2.3", - "@vue/shared": "3.2.3" + "@vue/compiler-dom": "3.2.4", + "@vue/shared": "3.2.4" } }, "node_modules/@vue/component-compiler-utils": { @@ -10666,36 +10666,36 @@ } }, "node_modules/@vue/reactivity": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.3.tgz", - "integrity": "sha512-HGmciaVNb3VKn4f4wCswFWLXBcopKQbO1oEs+WunBtt5tym0SS2wFNEGvWfW0dzzlXRbM507ys09m68L+JTa/Q==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.4.tgz", + "integrity": "sha512-ljWTR0hr8Tn09hM2tlmWxZzCBPlgGLnq/k8K8X6EcJhtV+C8OzFySnbWqMWataojbrQOocThwsC8awKthSl2uQ==", "dependencies": { - "@vue/shared": "3.2.3" + "@vue/shared": "3.2.4" } }, "node_modules/@vue/runtime-core": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.3.tgz", - "integrity": "sha512-yn6FL2fCKi5dauJYm8u6iiGs7VoXoIWdr+icIFtEW4eObUKOzDwYpBaqCf8orhI1LEnyZO7rLplbfoJJColBwg==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.4.tgz", + "integrity": "sha512-W6PtEOs8P8jKYPo3JwaMAozZQivxInUleGfNwI2pK1t8ZLZIxn4kAf7p4VF4jJdQB8SZBzpfWdLUc06j7IOmpQ==", "dependencies": { - "@vue/reactivity": "3.2.3", - "@vue/shared": "3.2.3" + "@vue/reactivity": "3.2.4", + "@vue/shared": "3.2.4" } }, "node_modules/@vue/runtime-dom": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.3.tgz", - "integrity": "sha512-YpulzSn0ydzgbfE1i9O1MJAspUHTA9q6AmqRrDLIR5AP9jmoGA//TmnB90IhA7OOGpuSVm4f1VUZ+gm/URPPgA==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.4.tgz", + "integrity": "sha512-HcVtLyn2SGwsf6BFPwkvDPDOhOqkOKcfHDpBp5R1coX+qMsOFrY8lJnGXIY+JnxqFjND00E9+u+lq5cs/W7ooA==", "dependencies": { - "@vue/runtime-core": "3.2.3", - "@vue/shared": "3.2.3", + "@vue/runtime-core": "3.2.4", + "@vue/shared": "3.2.4", "csstype": "^2.6.8" } }, "node_modules/@vue/shared": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.3.tgz", - "integrity": "sha512-1f8kyoabSgoga0E89itGIoaCo2Ayr6i6jQq/kHhhYrrBxoK7LNNwuWQghW0k/bapimyIzQiN891XzquYP78aqg==" + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.4.tgz", + "integrity": "sha512-j2j1MRmjalVKr3YBTxl/BClSIc8UQ8NnPpLYclxerK65JIowI4O7n8O8lElveEtEoHxy1d7BelPUDI0Q4bumqg==" }, "node_modules/@vue/web-component-wrapper": { "version": "1.3.0", @@ -51351,13 +51351,13 @@ } }, "node_modules/vue": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.2.3.tgz", - "integrity": "sha512-z3/maZr+As43eL42pJTLWG+mnOTXpdPvbhFN7cDs8ZpJgMWtKlbjInLcyOD2XRyH424yulupYhyEFITfybcKnw==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.2.4.tgz", + "integrity": "sha512-rNCFmoewm8IwmTK0nj3ysKq53iRpNEFKoBJ4inar6tIh7Oj7juubS39RI8UI+VE7x+Cs2z6PBsadtZu7z2qppg==", "dependencies": { - "@vue/compiler-dom": "3.2.3", - "@vue/runtime-dom": "3.2.3", - "@vue/shared": "3.2.3" + "@vue/compiler-dom": "3.2.4", + "@vue/runtime-dom": "3.2.4", + "@vue/shared": "3.2.4" } }, "node_modules/vue-demi": { @@ -59022,7 +59022,7 @@ "joi": "17.4.2", "knex-schema-inspector": "1.5.13", "lodash": "4.17.21", - "vue": "3.2.3", + "vue": "3.2.4", "vue-router": "4.0.11" }, "devDependencies": { @@ -61000,7 +61000,7 @@ "@vue/cli-plugin-typescript": "4.5.13", "@vue/cli-plugin-vuex": "4.5.13", "@vue/cli-service": "4.5.13", - "@vue/compiler-sfc": "3.2.3", + "@vue/compiler-sfc": "3.2.4", "axios": "0.21.1", "base-64": "1.0.0", "codemirror": "5.62.2", @@ -61028,7 +61028,7 @@ "tinymce": "5.8.2", "typescript": "4.3.5", "vite": "2.5.0", - "vue": "3.2.3", + "vue": "3.2.4", "vue-i18n": "9.1.7", "vue-router": "4.0.11", "vuedraggable": "4.0.3", @@ -64286,7 +64286,7 @@ "npm-run-all": "4.1.5", "rimraf": "3.0.2", "typescript": "4.3.5", - "vue": "3.2.3", + "vue": "3.2.4", "vue-router": "4.0.11" }, "dependencies": { @@ -70250,38 +70250,38 @@ } }, "@vue/compiler-core": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.3.tgz", - "integrity": "sha512-qQpACs40hClYqghS209OBh6NDArKPrS5emWMOH/hzDy0KtOV7Kfyy2ILWRfamIsygq8mg+xHcqtVXOjr21WvQw==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.4.tgz", + "integrity": "sha512-c8NuQq7mUXXxA4iqD5VUKpyVeklK53+DMbojYMyZ0VPPrb0BUWrZWFiqSDT+MFDv0f6Hv3QuLiHWb1BWMXBbrw==", "requires": { "@babel/parser": "^7.12.0", "@babel/types": "^7.12.0", - "@vue/shared": "3.2.3", + "@vue/shared": "3.2.4", "estree-walker": "^2.0.1", "source-map": "^0.6.1" } }, "@vue/compiler-dom": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.3.tgz", - "integrity": "sha512-hEKd+h9eIT+et/l0Nmiup5CWFHC4KuhUcrdAIPLcv1uskVQA3gSDAAx9UGB/G9cRB2gmBpFONHEi8zKrlnsaWQ==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.4.tgz", + "integrity": "sha512-uj1nwO4794fw2YsYas5QT+FU/YGrXbS0Qk+1c7Kp1kV7idhZIghWLTjyvYibpGoseFbYLPd+sW2/noJG5H04EQ==", "requires": { - "@vue/compiler-core": "3.2.3", - "@vue/shared": "3.2.3" + "@vue/compiler-core": "3.2.4", + "@vue/shared": "3.2.4" } }, "@vue/compiler-sfc": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.3.tgz", - "integrity": "sha512-TlaDOChFUzt3lqqaFNRD2XI0lrRWYA0/jTgWKUrCLVEPZ0tNP8Vyjmml3+1QlAo4pyjaOjYacq0OS4eCGVFJ3w==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.4.tgz", + "integrity": "sha512-GM+ouDdDzhqgkLmBH4bgq4kiZxJQArSppJiZHWHIx9XRaefHLmc1LBNPmN8ivm4SVfi2i7M2t9k8ZnjsScgzPQ==", "requires": { "@babel/parser": "^7.13.9", "@babel/types": "^7.13.0", "@types/estree": "^0.0.48", - "@vue/compiler-core": "3.2.3", - "@vue/compiler-dom": "3.2.3", - "@vue/compiler-ssr": "3.2.3", - "@vue/shared": "3.2.3", + "@vue/compiler-core": "3.2.4", + "@vue/compiler-dom": "3.2.4", + "@vue/compiler-ssr": "3.2.4", + "@vue/shared": "3.2.4", "consolidate": "^0.16.0", "estree-walker": "^2.0.1", "hash-sum": "^2.0.0", @@ -70295,12 +70295,12 @@ } }, "@vue/compiler-ssr": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.3.tgz", - "integrity": "sha512-VMYXYBXPohxlPvg42tT8Gcc58Wo1fPP4IE+aLgpmnNmMFuTsGEKOBK4mZqtNpv9dxgF6ooro9gQlA6BfOy3lGg==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.4.tgz", + "integrity": "sha512-bKZuXu9/4XwsFHFWIKQK+5kN7mxIIWmMmT2L4VVek7cvY/vm3p4WTsXYDGZJy0htOTXvM2ifr6sflg012T0hsw==", "requires": { - "@vue/compiler-dom": "3.2.3", - "@vue/shared": "3.2.3" + "@vue/compiler-dom": "3.2.4", + "@vue/shared": "3.2.4" } }, "@vue/component-compiler-utils": { @@ -70451,36 +70451,36 @@ "requires": {} }, "@vue/reactivity": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.3.tgz", - "integrity": "sha512-HGmciaVNb3VKn4f4wCswFWLXBcopKQbO1oEs+WunBtt5tym0SS2wFNEGvWfW0dzzlXRbM507ys09m68L+JTa/Q==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.4.tgz", + "integrity": "sha512-ljWTR0hr8Tn09hM2tlmWxZzCBPlgGLnq/k8K8X6EcJhtV+C8OzFySnbWqMWataojbrQOocThwsC8awKthSl2uQ==", "requires": { - "@vue/shared": "3.2.3" + "@vue/shared": "3.2.4" } }, "@vue/runtime-core": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.3.tgz", - "integrity": "sha512-yn6FL2fCKi5dauJYm8u6iiGs7VoXoIWdr+icIFtEW4eObUKOzDwYpBaqCf8orhI1LEnyZO7rLplbfoJJColBwg==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.4.tgz", + "integrity": "sha512-W6PtEOs8P8jKYPo3JwaMAozZQivxInUleGfNwI2pK1t8ZLZIxn4kAf7p4VF4jJdQB8SZBzpfWdLUc06j7IOmpQ==", "requires": { - "@vue/reactivity": "3.2.3", - "@vue/shared": "3.2.3" + "@vue/reactivity": "3.2.4", + "@vue/shared": "3.2.4" } }, "@vue/runtime-dom": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.3.tgz", - "integrity": "sha512-YpulzSn0ydzgbfE1i9O1MJAspUHTA9q6AmqRrDLIR5AP9jmoGA//TmnB90IhA7OOGpuSVm4f1VUZ+gm/URPPgA==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.4.tgz", + "integrity": "sha512-HcVtLyn2SGwsf6BFPwkvDPDOhOqkOKcfHDpBp5R1coX+qMsOFrY8lJnGXIY+JnxqFjND00E9+u+lq5cs/W7ooA==", "requires": { - "@vue/runtime-core": "3.2.3", - "@vue/shared": "3.2.3", + "@vue/runtime-core": "3.2.4", + "@vue/shared": "3.2.4", "csstype": "^2.6.8" } }, "@vue/shared": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.3.tgz", - "integrity": "sha512-1f8kyoabSgoga0E89itGIoaCo2Ayr6i6jQq/kHhhYrrBxoK7LNNwuWQghW0k/bapimyIzQiN891XzquYP78aqg==" + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.4.tgz", + "integrity": "sha512-j2j1MRmjalVKr3YBTxl/BClSIc8UQ8NnPpLYclxerK65JIowI4O7n8O8lElveEtEoHxy1d7BelPUDI0Q4bumqg==" }, "@vue/web-component-wrapper": { "version": "1.3.0", @@ -102884,13 +102884,13 @@ } }, "vue": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.2.3.tgz", - "integrity": "sha512-z3/maZr+As43eL42pJTLWG+mnOTXpdPvbhFN7cDs8ZpJgMWtKlbjInLcyOD2XRyH424yulupYhyEFITfybcKnw==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.2.4.tgz", + "integrity": "sha512-rNCFmoewm8IwmTK0nj3ysKq53iRpNEFKoBJ4inar6tIh7Oj7juubS39RI8UI+VE7x+Cs2z6PBsadtZu7z2qppg==", "requires": { - "@vue/compiler-dom": "3.2.3", - "@vue/runtime-dom": "3.2.3", - "@vue/shared": "3.2.3" + "@vue/compiler-dom": "3.2.4", + "@vue/runtime-dom": "3.2.4", + "@vue/shared": "3.2.4" } }, "vue-demi": { diff --git a/packages/shared/package.json b/packages/shared/package.json index 42cb2dd6c9..8e5cec5069 100644 --- a/packages/shared/package.json +++ b/packages/shared/package.json @@ -52,7 +52,7 @@ "joi": "17.4.2", "knex-schema-inspector": "1.5.13", "lodash": "4.17.21", - "vue": "3.2.3", + "vue": "3.2.4", "vue-router": "4.0.11" }, "devDependencies": { From f933663972c0788acc364f55a2787e8bcce5cba9 Mon Sep 17 00:00:00 2001 From: Nicola Krumschmidt Date: Tue, 17 Aug 2021 22:55:32 +0200 Subject: [PATCH 025/284] Add basic support for a config file to extension building (#7332) The config file has to be a file inside the cwd. It should be named "extension.config.(m|c)?js". Right now it only supports specifying a plugins array. --- .../extension-sdk/src/cli/commands/build.ts | 12 ++++++++---- .../src/cli/utils/load-config.ts | 19 +++++++++++++++++++ 2 files changed, 27 insertions(+), 4 deletions(-) create mode 100644 packages/extension-sdk/src/cli/utils/load-config.ts diff --git a/packages/extension-sdk/src/cli/commands/build.ts b/packages/extension-sdk/src/cli/commands/build.ts index 58edb18f85..3ee46f7fc1 100644 --- a/packages/extension-sdk/src/cli/commands/build.ts +++ b/packages/extension-sdk/src/cli/commands/build.ts @@ -2,7 +2,7 @@ import path from 'path'; import chalk from 'chalk'; import fse from 'fs-extra'; import ora from 'ora'; -import { OutputOptions as RollupOutputOptions, rollup, RollupOptions } from 'rollup'; +import { OutputOptions as RollupOutputOptions, rollup, RollupOptions, Plugin } from 'rollup'; import { nodeResolve } from '@rollup/plugin-node-resolve'; import commonjs from '@rollup/plugin-commonjs'; import { terser } from 'rollup-plugin-terser'; @@ -12,6 +12,7 @@ import { EXTENSION_PKG_KEY, EXTENSION_TYPES, APP_SHARED_DEPS, API_SHARED_DEPS } import { isAppExtension, isExtension, validateExtensionManifest } from '@directus/shared/utils'; import { ExtensionManifestRaw } from '@directus/shared/types'; import log from '../utils/logger'; +import loadConfig from '../utils/load-config'; type BuildOptions = { type: string; input: string; output: string; force: boolean }; @@ -55,11 +56,13 @@ export default async function build(options: BuildOptions): Promise { process.exit(1); } + const config = await loadConfig(); + const isApp = isAppExtension(type); const spinner = ora('Building Directus extension...').start(); - const rollupOptions = getRollupOptions(isApp, input); + const rollupOptions = getRollupOptions(isApp, input, config.plugins); const rollupOutputOptions = getRollupOutputOptions(isApp, output); const bundle = await rollup(rollupOptions); @@ -71,7 +74,7 @@ export default async function build(options: BuildOptions): Promise { spinner.succeed('Done'); } -function getRollupOptions(isApp: boolean, input: string): RollupOptions { +function getRollupOptions(isApp: boolean, input: string, plugins: Plugin[] = []): RollupOptions { if (isApp) { return { input, @@ -79,6 +82,7 @@ function getRollupOptions(isApp: boolean, input: string): RollupOptions { plugins: [ vue({ preprocessStyles: true }), styles(), + ...plugins, nodeResolve(), commonjs({ esmExternals: true, sourceMap: false }), terser(), @@ -88,7 +92,7 @@ function getRollupOptions(isApp: boolean, input: string): RollupOptions { return { input, external: API_SHARED_DEPS, - plugins: [nodeResolve(), commonjs({ sourceMap: false }), terser()], + plugins: [...plugins, nodeResolve(), commonjs({ sourceMap: false }), terser()], }; } } diff --git a/packages/extension-sdk/src/cli/utils/load-config.ts b/packages/extension-sdk/src/cli/utils/load-config.ts new file mode 100644 index 0000000000..7f41726999 --- /dev/null +++ b/packages/extension-sdk/src/cli/utils/load-config.ts @@ -0,0 +1,19 @@ +import path from 'path'; +import fse from 'fs-extra'; + +const CONFIG_FILE_NAMES = ['extension.config.js', 'extension.config.mjs', 'extension.config.cjs']; + +// This is needed to work around Typescript always transpiling import() to require() for CommonJS targets. +const _import = new Function('url', 'return import(url)'); + +export default async function loadConfig(): Promise> { + for (const fileName of CONFIG_FILE_NAMES) { + if (await fse.pathExists(fileName)) { + const configFile = await _import(path.join(process.cwd(), fileName)); + + return configFile.default; + } + } + + return {}; +} From 3ec8d6443d7baa940eefa6e6a766f49fcd2bb8b6 Mon Sep 17 00:00:00 2001 From: rijkvanzanten Date: Tue, 17 Aug 2021 17:45:13 -0400 Subject: [PATCH 026/284] Re-enable the default retrystrategy --- api/src/cache.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/api/src/cache.ts b/api/src/cache.ts index 813fc9a7da..682bd5cf94 100644 --- a/api/src/cache.ts +++ b/api/src/cache.ts @@ -52,7 +52,6 @@ function getConfig(store: 'memory' | 'redis' | 'memcache' = 'memory', ttl: numbe config.store = new KeyvRedis(env.CACHE_REDIS || getConfigFromEnv('CACHE_REDIS_'), { commandTimeout: 500, - retryStrategy: false, }); } From 02cf1741bbd7cf8c0611465d3b27693872775cbd Mon Sep 17 00:00:00 2001 From: Oreille <33065839+Oreilles@users.noreply.github.com> Date: Wed, 18 Aug 2021 15:14:46 +0200 Subject: [PATCH 027/284] Fix server error when a postgres view contains geometry columns (#7486) --- packages/schema/src/dialects/postgres.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/schema/src/dialects/postgres.ts b/packages/schema/src/dialects/postgres.ts index 0aa476ef8d..527267e25d 100644 --- a/packages/schema/src/dialects/postgres.ts +++ b/packages/schema/src/dialects/postgres.ts @@ -57,7 +57,10 @@ export default class Postgres extends KnexPostgres implements SchemaInspector { SELECT f_table_name as table_name , f_geometry_column as column_name , type as data_type - FROM geometries + FROM geometries g + JOIN information_schema.tables + ON g.f_table_name = t.table_name + AND t.table_type = 'BASE TABLE' WHERE f_table_schema in (?) `, [this.explodedSchema.join(',')] From d66d55a6bfd72c53f60df512cada6bce6a31ccee Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 18 Aug 2021 14:14:06 -0400 Subject: [PATCH 028/284] update dependency ts-node to v10.2.1 (#7495) Co-authored-by: Renovate Bot --- package-lock.json | 22 +++++++++++----------- package.json | 2 +- packages/cli/package.json | 2 +- packages/sdk/package.json | 2 +- 4 files changed, 14 insertions(+), 14 deletions(-) diff --git a/package-lock.json b/package-lock.json index 3b741264dc..a6ca130423 100644 --- a/package-lock.json +++ b/package-lock.json @@ -48,7 +48,7 @@ "supertest": "6.1.5", "tedious": "11.4.0", "ts-jest": "27.0.4", - "ts-node": "10.2.0" + "ts-node": "10.2.1" }, "engines": { "node": ">=16.0.0", @@ -49973,9 +49973,9 @@ } }, "node_modules/ts-node": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.2.0.tgz", - "integrity": "sha512-FstYHtQz6isj8rBtYMN4bZdnXN1vq4HCbqn9vdNQcInRqtB86PePJQIxE6es0PhxKWhj2PHuwbG40H+bxkZPmg==", + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.2.1.tgz", + "integrity": "sha512-hCnyOyuGmD5wHleOQX6NIjJtYVIO8bPP8F2acWkB4W06wdlkgyvJtubO/I9NkI88hCFECbsEgoLc0VNkYmcSfw==", "dev": true, "dependencies": { "@cspotcode/source-map-support": "0.6.1", @@ -54943,7 +54943,7 @@ "prettier": "2.3.2", "rimraf": "3.0.2", "ts-jest": "27.0.4", - "ts-node": "10.2.0", + "ts-node": "10.2.1", "typescript": "4.3.5" } }, @@ -58835,7 +58835,7 @@ "rollup-plugin-terser": "7.0.2", "rollup-plugin-typescript2": "0.30.0", "ts-jest": "27.0.4", - "ts-node": "10.2.0", + "ts-node": "10.2.1", "typescript": "4.3.5" } }, @@ -61116,7 +61116,7 @@ "strip-ansi": "^7.0.0", "strip-indent": "^4.0.0", "ts-jest": "27.0.4", - "ts-node": "10.2.0", + "ts-node": "10.2.1", "typescript": "4.3.5", "yargs": "^17.0.1", "yargs-parser": "^20.2.7" @@ -64112,7 +64112,7 @@ "rollup-plugin-terser": "7.0.2", "rollup-plugin-typescript2": "0.30.0", "ts-jest": "27.0.4", - "ts-node": "10.2.0", + "ts-node": "10.2.1", "typescript": "4.3.5" }, "dependencies": { @@ -101828,9 +101828,9 @@ } }, "ts-node": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.2.0.tgz", - "integrity": "sha512-FstYHtQz6isj8rBtYMN4bZdnXN1vq4HCbqn9vdNQcInRqtB86PePJQIxE6es0PhxKWhj2PHuwbG40H+bxkZPmg==", + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.2.1.tgz", + "integrity": "sha512-hCnyOyuGmD5wHleOQX6NIjJtYVIO8bPP8F2acWkB4W06wdlkgyvJtubO/I9NkI88hCFECbsEgoLc0VNkYmcSfw==", "dev": true, "requires": { "@cspotcode/source-map-support": "0.6.1", diff --git a/package.json b/package.json index b8b668a3f1..982ba4bfb3 100644 --- a/package.json +++ b/package.json @@ -63,7 +63,7 @@ "supertest": "6.1.5", "tedious": "11.4.0", "ts-jest": "27.0.4", - "ts-node": "10.2.0" + "ts-node": "10.2.1" }, "simple-git-hooks": { "pre-commit": "npx lint-staged" diff --git a/packages/cli/package.json b/packages/cli/package.json index 0585a86ab0..00bba5fd83 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -86,7 +86,7 @@ "prettier": "2.3.2", "rimraf": "3.0.2", "ts-jest": "27.0.4", - "ts-node": "10.2.0", + "ts-node": "10.2.1", "typescript": "4.3.5" }, "gitHead": "24621f3934dc77eb23441331040ed13c676ceffd" diff --git a/packages/sdk/package.json b/packages/sdk/package.json index 1ae4c4582f..79767be881 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -64,7 +64,7 @@ "rollup-plugin-terser": "7.0.2", "rollup-plugin-typescript2": "0.30.0", "ts-jest": "27.0.4", - "ts-node": "10.2.0", + "ts-node": "10.2.1", "typescript": "4.3.5" }, "gitHead": "24621f3934dc77eb23441331040ed13c676ceffd" From b9f4579067a9186e267aa2432bf2f66e1e2b1d6f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 18 Aug 2021 14:14:26 -0400 Subject: [PATCH 029/284] update dependency supertest to v6.1.6 (#7472) Co-authored-by: Renovate Bot --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index a6ca130423..7e4f1bb5ed 100644 --- a/package-lock.json +++ b/package-lock.json @@ -45,7 +45,7 @@ "stylelint-config-standard": "22.0.0", "stylelint-order": "4.1.0", "stylelint-scss": "3.20.1", - "supertest": "6.1.5", + "supertest": "6.1.6", "tedious": "11.4.0", "ts-jest": "27.0.4", "ts-node": "10.2.1" @@ -48580,9 +48580,9 @@ } }, "node_modules/supertest": { - "version": "6.1.5", - "resolved": "https://registry.npmjs.org/supertest/-/supertest-6.1.5.tgz", - "integrity": "sha512-Is3pFB2TxSFPohDS2tIM8h2JOMvUQwbJ9TvTfsWAm89ZZv1CF4VTLAsQz+5+5S1wOgaMqFqSpFriU15L3e2AXQ==", + "version": "6.1.6", + "resolved": "https://registry.npmjs.org/supertest/-/supertest-6.1.6.tgz", + "integrity": "sha512-0hACYGNJ8OHRg8CRITeZOdbjur7NLuNs0mBjVhdpxi7hP6t3QIbOzLON5RTUmZcy2I9riuII3+Pr2C7yztrIIg==", "dev": true, "dependencies": { "methods": "^1.1.2", @@ -100749,9 +100749,9 @@ } }, "supertest": { - "version": "6.1.5", - "resolved": "https://registry.npmjs.org/supertest/-/supertest-6.1.5.tgz", - "integrity": "sha512-Is3pFB2TxSFPohDS2tIM8h2JOMvUQwbJ9TvTfsWAm89ZZv1CF4VTLAsQz+5+5S1wOgaMqFqSpFriU15L3e2AXQ==", + "version": "6.1.6", + "resolved": "https://registry.npmjs.org/supertest/-/supertest-6.1.6.tgz", + "integrity": "sha512-0hACYGNJ8OHRg8CRITeZOdbjur7NLuNs0mBjVhdpxi7hP6t3QIbOzLON5RTUmZcy2I9riuII3+Pr2C7yztrIIg==", "dev": true, "requires": { "methods": "^1.1.2", diff --git a/package.json b/package.json index 982ba4bfb3..6ad7846540 100644 --- a/package.json +++ b/package.json @@ -60,7 +60,7 @@ "stylelint-config-standard": "22.0.0", "stylelint-order": "4.1.0", "stylelint-scss": "3.20.1", - "supertest": "6.1.5", + "supertest": "6.1.6", "tedious": "11.4.0", "ts-jest": "27.0.4", "ts-node": "10.2.1" From 2ad07b27b48449669feb376beb09c7a242b5689c Mon Sep 17 00:00:00 2001 From: Tanc Date: Wed, 18 Aug 2021 20:16:36 +0200 Subject: [PATCH 030/284] Add docker compose update instructions (#7479) Co-authored-by: Rijk van Zanten --- docs/guides/installation/docker.md | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/docs/guides/installation/docker.md b/docs/guides/installation/docker.md index 29c184fe0a..2986639caf 100644 --- a/docs/guides/installation/docker.md +++ b/docs/guides/installation/docker.md @@ -116,6 +116,24 @@ networks: directus: ``` +### Updating with Docker Compose + +If you are not using the `latest` tag for directus you need to adjust your `docker-compose.yml` file to increment the tag version number, e.g. + +``` +- image: directus/directus:9.0.0-rc.89 ++ image: directus/directus:9.0.0-rc.90 +``` + +You can then issue the following two commands (from your docker-compose root): + +``` +docker-compose pull +docker-compose up -d +``` + +The images will be pulled and the containers recreated. Migrations will happen automatically so once the containers have started you will be on the newest version (or the version you specified). + ## Supported Databases The Directus Docker Image contains all optional dependencies supported in the API. This means the Docker image can be From fb64df54be9fbb80c0de306c9be85f2d083c84a5 Mon Sep 17 00:00:00 2001 From: Oreille <33065839+Oreilles@users.noreply.github.com> Date: Wed, 18 Aug 2021 21:19:12 +0200 Subject: [PATCH 031/284] Fix server error when a postgres view contains geometry columns (#7487) * Fix server error when a postgres view contains geometry columns * Fixed typo Co-authored-by: Rijk van Zanten --- packages/schema/src/dialects/postgres.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/schema/src/dialects/postgres.ts b/packages/schema/src/dialects/postgres.ts index 527267e25d..3741277713 100644 --- a/packages/schema/src/dialects/postgres.ts +++ b/packages/schema/src/dialects/postgres.ts @@ -58,7 +58,7 @@ export default class Postgres extends KnexPostgres implements SchemaInspector { , f_geometry_column as column_name , type as data_type FROM geometries g - JOIN information_schema.tables + JOIN information_schema.tables t ON g.f_table_name = t.table_name AND t.table_type = 'BASE TABLE' WHERE f_table_schema in (?) From 67e9b94f106456f58eafe0e14c409ff614d35cf6 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 18 Aug 2021 15:19:26 -0400 Subject: [PATCH 032/284] update dependency gatsby-source-filesystem to v3.12.0 (#7482) Co-authored-by: Renovate Bot --- package-lock.json | 144 +++++++++---------- packages/gatsby-source-directus/package.json | 2 +- 2 files changed, 73 insertions(+), 73 deletions(-) diff --git a/package-lock.json b/package-lock.json index 7e4f1bb5ed..44b63703e8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7540,9 +7540,9 @@ } }, "node_modules/@tokenizer/token": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.1.1.tgz", - "integrity": "sha512-XO6INPbZCxdprl+9qa/AAbFFOMzzwqYxpjPgLICrMD6C2FCw6qfJOPcBk6JqqPLSaZ/Qx87qn4rpPmPMwaAK6w==" + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", + "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==" }, "node_modules/@tootallnate/once": { "version": "1.1.2", @@ -21347,13 +21347,13 @@ } }, "node_modules/file-type": { - "version": "16.5.2", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-16.5.2.tgz", - "integrity": "sha512-lnHRZj2USLF3v4C5ZY7/vQQeoTVA1YV9TtD6UUCr9z5Cd0uyutqxPBJxkXzM6lufPNuSfefq/yFmnSPz0C3wNw==", + "version": "16.5.3", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-16.5.3.tgz", + "integrity": "sha512-uVsl7iFhHSOY4bEONLlTK47iAHtNsFHWP5YE4xJfZ4rnX7S1Q3wce09XgqSC7E/xh8Ncv/be1lNoyprlUH/x6A==", "dependencies": { "readable-web-to-node-stream": "^3.0.0", - "strtok3": "6.1.3", - "token-types": "^3.0.0" + "strtok3": "^6.2.4", + "token-types": "^4.1.1" }, "engines": { "node": ">=10" @@ -34750,9 +34750,9 @@ } }, "node_modules/node-object-hash": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/node-object-hash/-/node-object-hash-2.3.7.tgz", - "integrity": "sha512-ybV3ZKZZoHJPSelxgRY5LYRHQToMtxvJxNbkY8WtWCy5Z/t3V0gyy/6O6kGoh0PrzZIATxVVDG2q+eM6iZMjKQ==", + "version": "2.3.9", + "resolved": "https://registry.npmjs.org/node-object-hash/-/node-object-hash-2.3.9.tgz", + "integrity": "sha512-NQt1YURrMPeQGZzW4lRbshUEF2PqxJEZYY4XJ/L+q33dI8yPYvnb7QXmwUcl1EuXluzeY4TEV+H6H0EmtI6f5g==", "engines": { "node": ">=0.10.0" } @@ -37122,9 +37122,9 @@ } }, "node_modules/peek-readable": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-3.1.4.tgz", - "integrity": "sha512-DX7ec7frSMtCWw+zMd27f66hcxIz/w9LQTY2RflB4WNHCVPAye1pJiP2t3gvaaOhu7IOhtPbHw8MemMj+F5lrg==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.0.1.tgz", + "integrity": "sha512-7qmhptnR0WMSpxT5rMHG9bW/mYSR1uqaPFj2MHvT+y/aOUu6msJijpKt5SkTDKySwg65OWG2JwTMBlgcbwMHrQ==", "engines": { "node": ">=8" }, @@ -46735,12 +46735,12 @@ } }, "node_modules/strtok3": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.1.3.tgz", - "integrity": "sha512-ssWSKFOeUTurMSucgyUf+a6Z9mVTYrsYiyEK5RLnh8BM6sFrKSljVlnjZXIDxMguYfdQI+mUPFHo88FYTxq1XA==", + "version": "6.2.4", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.2.4.tgz", + "integrity": "sha512-GO8IcFF9GmFDvqduIspUBwCzCbqzegyVKIsSymcMgiZKeCfrN9SowtUoi8+b59WZMAjIzVZic/Ft97+pynR3Iw==", "dependencies": { - "@tokenizer/token": "^0.1.1", - "peek-readable": "^3.1.4" + "@tokenizer/token": "^0.3.0", + "peek-readable": "^4.0.1" }, "engines": { "node": ">=10" @@ -49651,11 +49651,11 @@ } }, "node_modules/token-types": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/token-types/-/token-types-3.1.0.tgz", - "integrity": "sha512-WhoeIW7UTn7NC7L0t/4x3vU/YYSS1oeUxYgiGXQLd82Kaf1qtlxOex3ETY0+o2QuRgAdyursMlUhQBKDCfMUkQ==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/token-types/-/token-types-4.1.1.tgz", + "integrity": "sha512-hD+QyuUAyI2spzsI0B7gf/jJ2ggR4RjkAo37j3StuePhApJUwcWDjnHDOFdIWYSwNR28H14hpwm4EI+V1Ted1w==", "dependencies": { - "@tokenizer/token": "^0.1.1", + "@tokenizer/token": "^0.3.0", "ieee754": "^1.2.1" }, "engines": { @@ -55328,7 +55328,7 @@ "@directus/sdk-js": "9.0.0-rc.53", "@lnfusion/gatsby-source-graphql": "0.0.4", "chalk": "4.1.2", - "gatsby-source-filesystem": "3.11.0", + "gatsby-source-filesystem": "3.12.0", "invariant": "2.2.4", "ms": "2.1.3" } @@ -56687,16 +56687,16 @@ } }, "packages/gatsby-source-directus/node_modules/gatsby-core-utils": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-2.11.0.tgz", - "integrity": "sha512-t5PL1/MvTPSG6IeJn+Yd3Fxp0L3HfLI1vvVsmxXvxEiwDp5MJjjtZbrSnWpST1oylMSKI/UECUEKQUax9UJW+A==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-2.12.0.tgz", + "integrity": "sha512-aN9fub3XX/uEqAstxG3mr8BH6hMGhTmAzANZH3HSV4tyG1Y4a4FKisZA0ggmy/dKOy5cyeuoMHmzAr8+qtHcAw==", "dependencies": { "ci-info": "2.0.0", "configstore": "^5.0.1", - "file-type": "^16.2.0", + "file-type": "^16.5.3", "fs-extra": "^8.1.0", - "node-object-hash": "^2.0.0", - "proper-lockfile": "^4.1.1", + "node-object-hash": "^2.3.8", + "proper-lockfile": "^4.1.2", "tmp": "^0.2.1", "xdg-basedir": "^4.0.0" }, @@ -56929,19 +56929,19 @@ "peer": true }, "packages/gatsby-source-directus/node_modules/gatsby-source-filesystem": { - "version": "3.11.0", - "resolved": "https://registry.npmjs.org/gatsby-source-filesystem/-/gatsby-source-filesystem-3.11.0.tgz", - "integrity": "sha512-cKQ4yhzLfw8Gs0B1FtgsLu51iqF+BUu/UewLBtu61I7Qyym797ESqeAvBd0bdHYckXmWl7c3qhBd1531iOXp2w==", + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/gatsby-source-filesystem/-/gatsby-source-filesystem-3.12.0.tgz", + "integrity": "sha512-Rs++VHDiyop/yFiNnJhn4+ot3DRwzrjE5fNnrxScTGk0GT8wqcne/c3PFCcQcVOmnu01N2DL1BdPmQP/jF6xAw==", "dependencies": { - "@babel/runtime": "^7.14.6", + "@babel/runtime": "^7.14.8", "better-queue": "^3.8.10", "chokidar": "^3.4.3", "file-type": "^16.0.0", "fs-extra": "^8.1.0", - "gatsby-core-utils": "^2.11.0", + "gatsby-core-utils": "^2.12.0", "got": "^9.6.0", "md5-file": "^5.0.0", - "mime": "^2.4.6", + "mime": "^2.5.2", "pretty-bytes": "^5.4.1", "progress": "^2.0.3", "valid-url": "^1.0.9", @@ -61491,7 +61491,7 @@ "@directus/sdk-js": "9.0.0-rc.53", "@lnfusion/gatsby-source-graphql": "0.0.4", "chalk": "4.1.2", - "gatsby-source-filesystem": "3.11.0", + "gatsby-source-filesystem": "3.12.0", "invariant": "2.2.4", "ms": "2.1.3" }, @@ -62559,16 +62559,16 @@ } }, "gatsby-core-utils": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-2.11.0.tgz", - "integrity": "sha512-t5PL1/MvTPSG6IeJn+Yd3Fxp0L3HfLI1vvVsmxXvxEiwDp5MJjjtZbrSnWpST1oylMSKI/UECUEKQUax9UJW+A==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-2.12.0.tgz", + "integrity": "sha512-aN9fub3XX/uEqAstxG3mr8BH6hMGhTmAzANZH3HSV4tyG1Y4a4FKisZA0ggmy/dKOy5cyeuoMHmzAr8+qtHcAw==", "requires": { "ci-info": "2.0.0", "configstore": "^5.0.1", - "file-type": "^16.2.0", + "file-type": "^16.5.3", "fs-extra": "^8.1.0", - "node-object-hash": "^2.0.0", - "proper-lockfile": "^4.1.1", + "node-object-hash": "^2.3.8", + "proper-lockfile": "^4.1.2", "tmp": "^0.2.1", "xdg-basedir": "^4.0.0" } @@ -62752,19 +62752,19 @@ } }, "gatsby-source-filesystem": { - "version": "3.11.0", - "resolved": "https://registry.npmjs.org/gatsby-source-filesystem/-/gatsby-source-filesystem-3.11.0.tgz", - "integrity": "sha512-cKQ4yhzLfw8Gs0B1FtgsLu51iqF+BUu/UewLBtu61I7Qyym797ESqeAvBd0bdHYckXmWl7c3qhBd1531iOXp2w==", + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/gatsby-source-filesystem/-/gatsby-source-filesystem-3.12.0.tgz", + "integrity": "sha512-Rs++VHDiyop/yFiNnJhn4+ot3DRwzrjE5fNnrxScTGk0GT8wqcne/c3PFCcQcVOmnu01N2DL1BdPmQP/jF6xAw==", "requires": { - "@babel/runtime": "^7.14.6", + "@babel/runtime": "^7.14.8", "better-queue": "^3.8.10", "chokidar": "^3.4.3", "file-type": "^16.0.0", "fs-extra": "^8.1.0", - "gatsby-core-utils": "^2.11.0", + "gatsby-core-utils": "^2.12.0", "got": "^9.6.0", "md5-file": "^5.0.0", - "mime": "^2.4.6", + "mime": "^2.5.2", "pretty-bytes": "^5.4.1", "progress": "^2.0.3", "valid-url": "^1.0.9", @@ -67771,9 +67771,9 @@ "requires": {} }, "@tokenizer/token": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.1.1.tgz", - "integrity": "sha512-XO6INPbZCxdprl+9qa/AAbFFOMzzwqYxpjPgLICrMD6C2FCw6qfJOPcBk6JqqPLSaZ/Qx87qn4rpPmPMwaAK6w==" + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", + "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==" }, "@tootallnate/once": { "version": "1.1.2", @@ -79309,13 +79309,13 @@ } }, "file-type": { - "version": "16.5.2", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-16.5.2.tgz", - "integrity": "sha512-lnHRZj2USLF3v4C5ZY7/vQQeoTVA1YV9TtD6UUCr9z5Cd0uyutqxPBJxkXzM6lufPNuSfefq/yFmnSPz0C3wNw==", + "version": "16.5.3", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-16.5.3.tgz", + "integrity": "sha512-uVsl7iFhHSOY4bEONLlTK47iAHtNsFHWP5YE4xJfZ4rnX7S1Q3wce09XgqSC7E/xh8Ncv/be1lNoyprlUH/x6A==", "requires": { "readable-web-to-node-stream": "^3.0.0", - "strtok3": "6.1.3", - "token-types": "^3.0.0" + "strtok3": "^6.2.4", + "token-types": "^4.1.1" } }, "file-uri-to-path": { @@ -89789,9 +89789,9 @@ "dev": true }, "node-object-hash": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/node-object-hash/-/node-object-hash-2.3.7.tgz", - "integrity": "sha512-ybV3ZKZZoHJPSelxgRY5LYRHQToMtxvJxNbkY8WtWCy5Z/t3V0gyy/6O6kGoh0PrzZIATxVVDG2q+eM6iZMjKQ==" + "version": "2.3.9", + "resolved": "https://registry.npmjs.org/node-object-hash/-/node-object-hash-2.3.9.tgz", + "integrity": "sha512-NQt1YURrMPeQGZzW4lRbshUEF2PqxJEZYY4XJ/L+q33dI8yPYvnb7QXmwUcl1EuXluzeY4TEV+H6H0EmtI6f5g==" }, "node-pre-gyp": { "version": "0.11.0", @@ -91655,9 +91655,9 @@ } }, "peek-readable": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-3.1.4.tgz", - "integrity": "sha512-DX7ec7frSMtCWw+zMd27f66hcxIz/w9LQTY2RflB4WNHCVPAye1pJiP2t3gvaaOhu7IOhtPbHw8MemMj+F5lrg==" + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.0.1.tgz", + "integrity": "sha512-7qmhptnR0WMSpxT5rMHG9bW/mYSR1uqaPFj2MHvT+y/aOUu6msJijpKt5SkTDKySwg65OWG2JwTMBlgcbwMHrQ==" }, "performance-now": { "version": "2.1.0", @@ -99270,12 +99270,12 @@ } }, "strtok3": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.1.3.tgz", - "integrity": "sha512-ssWSKFOeUTurMSucgyUf+a6Z9mVTYrsYiyEK5RLnh8BM6sFrKSljVlnjZXIDxMguYfdQI+mUPFHo88FYTxq1XA==", + "version": "6.2.4", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.2.4.tgz", + "integrity": "sha512-GO8IcFF9GmFDvqduIspUBwCzCbqzegyVKIsSymcMgiZKeCfrN9SowtUoi8+b59WZMAjIzVZic/Ft97+pynR3Iw==", "requires": { - "@tokenizer/token": "^0.1.1", - "peek-readable": "^3.1.4" + "@tokenizer/token": "^0.3.0", + "peek-readable": "^4.0.1" } }, "stubs": { @@ -101594,11 +101594,11 @@ "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" }, "token-types": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/token-types/-/token-types-3.1.0.tgz", - "integrity": "sha512-WhoeIW7UTn7NC7L0t/4x3vU/YYSS1oeUxYgiGXQLd82Kaf1qtlxOex3ETY0+o2QuRgAdyursMlUhQBKDCfMUkQ==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/token-types/-/token-types-4.1.1.tgz", + "integrity": "sha512-hD+QyuUAyI2spzsI0B7gf/jJ2ggR4RjkAo37j3StuePhApJUwcWDjnHDOFdIWYSwNR28H14hpwm4EI+V1Ted1w==", "requires": { - "@tokenizer/token": "^0.1.1", + "@tokenizer/token": "^0.3.0", "ieee754": "^1.2.1" } }, diff --git a/packages/gatsby-source-directus/package.json b/packages/gatsby-source-directus/package.json index 8211f883c8..0664a20bd0 100644 --- a/packages/gatsby-source-directus/package.json +++ b/packages/gatsby-source-directus/package.json @@ -13,7 +13,7 @@ "@directus/sdk-js": "9.0.0-rc.53", "@lnfusion/gatsby-source-graphql": "0.0.4", "chalk": "4.1.2", - "gatsby-source-filesystem": "3.11.0", + "gatsby-source-filesystem": "3.12.0", "invariant": "2.2.4", "ms": "2.1.3" }, From 49e4a9b0de288f618a882e3cf13e12daf7266030 Mon Sep 17 00:00:00 2001 From: Oreille <33065839+Oreilles@users.noreply.github.com> Date: Thu, 19 Aug 2021 16:02:54 +0200 Subject: [PATCH 033/284] Don't allow `empty` filter for non-string types. Add `null` filter. (#7501) --- api/src/utils/apply-query.ts | 6 ++-- .../get-available-operators-for-type.ts | 22 +++++++++---- .../utils/get-filter-operators-for-type.ts | 32 ++++++++++++++++--- 3 files changed, 45 insertions(+), 15 deletions(-) diff --git a/api/src/utils/apply-query.ts b/api/src/utils/apply-query.ts index d12df2ddcd..86e13bc107 100644 --- a/api/src/utils/apply-query.ts +++ b/api/src/utils/apply-query.ts @@ -300,15 +300,13 @@ export function applyFilter( if (operator === '_empty' || (operator === '_nempty' && compareValue === false)) { dbQuery[logical].andWhere((query) => { - query.whereNull(key); - query.orWhere(key, '=', ''); + query.where(key, '=', ''); }); } if (operator === '_nempty' || (operator === '_empty' && compareValue === false)) { dbQuery[logical].andWhere((query) => { - query.whereNotNull(key); - query.orWhere(key, '!=', ''); + query.where(key, '!=', ''); }); } diff --git a/app/src/views/private/components/filter-sidebar-detail/get-available-operators-for-type.ts b/app/src/views/private/components/filter-sidebar-detail/get-available-operators-for-type.ts index 9a2d103449..7868e55b03 100644 --- a/app/src/views/private/components/filter-sidebar-detail/get-available-operators-for-type.ts +++ b/app/src/views/private/components/filter-sidebar-detail/get-available-operators-for-type.ts @@ -11,7 +11,6 @@ export default function getAvailableOperatorsForType(type: Type): OperatorType { switch (type) { // Text case 'binary': - case 'json': case 'hash': case 'string': return { @@ -27,27 +26,36 @@ export default function getAvailableOperatorsForType(type: Type): OperatorType { 'neq', 'empty', 'nempty', + 'null', + 'nnull', 'in', 'nin', ], }; + // JSON + case 'json': + return { + type, + operators: ['eq', 'neq', 'null', 'nnull', 'in', 'nin'], + }; + // UUID case 'uuid': return { type, - operators: ['eq', 'neq', 'empty', 'nempty', 'in', 'nin'], + operators: ['eq', 'neq', 'null', 'nnull', 'in', 'nin'], }; // Boolean case 'boolean': return { type, - operators: ['eq', 'neq', 'empty', 'nempty'], + operators: ['eq', 'neq', 'null', 'nnull'], }; // Numbers case 'integer': case 'decimal': return { type, - operators: ['eq', 'neq', 'lt', 'lte', 'gt', 'gte', 'between', 'nbetween', 'empty', 'nempty', 'in', 'nin'], + operators: ['eq', 'neq', 'lt', 'lte', 'gt', 'gte', 'between', 'nbetween', 'null', 'nnull', 'in', 'nin'], }; // Datetime case 'dateTime': @@ -55,13 +63,13 @@ export default function getAvailableOperatorsForType(type: Type): OperatorType { case 'time': return { type, - operators: ['eq', 'neq', 'lt', 'lte', 'gt', 'gte', 'between', 'nbetween', 'empty', 'nempty', 'in', 'nin'], + operators: ['eq', 'neq', 'lt', 'lte', 'gt', 'gte', 'between', 'nbetween', 'null', 'nnull', 'in', 'nin'], }; // Geometry case 'geometry': return { type, - operators: ['eq', 'neq', 'intersects', 'nintersects', 'intersects_bbox', 'nintersects_bbox'], + operators: ['eq', 'neq', 'null', 'nnull', 'intersects', 'nintersects', 'intersects_bbox', 'nintersects_bbox'], }; default: return { @@ -79,6 +87,8 @@ export default function getAvailableOperatorsForType(type: Type): OperatorType { 'nbetween', 'empty', 'nempty', + 'null', + 'nnull', 'in', 'nin', ], diff --git a/packages/shared/src/utils/get-filter-operators-for-type.ts b/packages/shared/src/utils/get-filter-operators-for-type.ts index a1a753b2b0..2058481909 100644 --- a/packages/shared/src/utils/get-filter-operators-for-type.ts +++ b/packages/shared/src/utils/get-filter-operators-for-type.ts @@ -4,7 +4,6 @@ export function getFilterOperatorsForType(type: Type): ClientFilterOperator[] { switch (type) { // Text case 'binary': - case 'json': case 'hash': case 'string': case 'csv': @@ -22,23 +21,44 @@ export function getFilterOperatorsForType(type: Type): ClientFilterOperator[] { 'in', 'nin', ]; + + // JSON + case 'json': + return ['eq', 'neq', 'null', 'nnull', 'in', 'nin']; + + // UUID case 'uuid': - return ['eq', 'neq', 'empty', 'nempty', 'in', 'nin']; + return ['eq', 'neq', 'null', 'nnull', 'in', 'nin']; // Boolean case 'boolean': - return ['eq', 'neq', 'empty', 'nempty']; + return ['eq', 'neq', 'null', 'nnull']; // Numbers case 'integer': case 'decimal': - return ['eq', 'neq', 'lt', 'lte', 'gt', 'gte', 'between', 'nbetween', 'empty', 'nempty', 'in', 'nin']; + return ['eq', 'neq', 'lt', 'lte', 'gt', 'gte', 'between', 'nbetween', 'null', 'nnull', 'in', 'nin']; // Datetime case 'dateTime': case 'date': case 'time': - return ['eq', 'neq', 'lt', 'lte', 'gt', 'gte', 'between', 'nbetween', 'empty', 'nempty', 'in', 'nin']; + return [ + 'eq', + 'neq', + 'null', + 'nnull', + 'lt', + 'lte', + 'gt', + 'gte', + 'between', + 'nbetween', + 'null', + 'nnull', + 'in', + 'nin', + ]; case 'geometry': return ['eq', 'neq', 'intersects', 'nintersects', 'intersects_bbox', 'nintersects_bbox']; @@ -57,6 +77,8 @@ export function getFilterOperatorsForType(type: Type): ClientFilterOperator[] { 'nbetween', 'empty', 'nempty', + 'null', + 'nnull', 'in', 'nin', ]; From 7cfe9a7b70fb996f2de8aa96b954f76cdba7f7f1 Mon Sep 17 00:00:00 2001 From: Rijk van Zanten Date: Thu, 19 Aug 2021 16:34:58 +0200 Subject: [PATCH 034/284] New Crowdin updates (#7408) * New translations en-US.yaml (Bulgarian) * New translations en-US.yaml (Russian) * New translations en-US.yaml (Russian) * New translations en-US.yaml (Russian) * New translations en-US.yaml (Russian) * New translations en-US.yaml (Russian) * New translations en-US.yaml (Catalan) * New translations en-US.yaml (Catalan) * New translations en-US.yaml (Catalan) * New translations en-US.yaml (Catalan) * New translations en-US.yaml (Slovenian) * New translations en-US.yaml (Catalan) * New translations en-US.yaml (Catalan) * New translations en-US.yaml (Catalan) * New translations en-US.yaml (Catalan) * New translations en-US.yaml (Catalan) * New translations en-US.yaml (Catalan) * New translations en-US.yaml (Catalan) * New translations en-US.yaml (German) * New translations en-US.yaml (Catalan) * New translations en-US.yaml (German) * New translations en-US.yaml (Chinese Simplified) * New translations en-US.yaml (Catalan) * New translations en-US.yaml (Catalan) * New translations en-US.yaml (Catalan) * New translations en-US.yaml (Portuguese, Brazilian) * New translations en-US.yaml (Portuguese, Brazilian) * New translations en-US.yaml (Portuguese, Brazilian) * New translations en-US.yaml (Catalan) * New translations en-US.yaml (Catalan) * New translations en-US.yaml (Russian) --- app/src/lang/translations/bg-BG.yaml | 32 + app/src/lang/translations/ca-ES.yaml | 1079 +++++++++++++++++++++++++- app/src/lang/translations/de-DE.yaml | 60 ++ app/src/lang/translations/pt-BR.yaml | 73 +- app/src/lang/translations/ru-RU.yaml | 131 +++- app/src/lang/translations/sl-SI.yaml | 37 + app/src/lang/translations/zh-CN.yaml | 65 ++ 7 files changed, 1433 insertions(+), 44 deletions(-) diff --git a/app/src/lang/translations/bg-BG.yaml b/app/src/lang/translations/bg-BG.yaml index bffc7f417c..bace0b9a33 100644 --- a/app/src/lang/translations/bg-BG.yaml +++ b/app/src/lang/translations/bg-BG.yaml @@ -21,10 +21,12 @@ #'Proxy', 'Intl' edit_field: Редактиране на поле conditions: Условия +maps: Географски карти item_revision: Ревизии на запис duplicate_field: Дублиране на поле half_width: Половин ширина full_width: Пълна ширина +limit: Лимит group: Групиране and: И or: Или @@ -182,6 +184,7 @@ time: Час timestamp: Времеви печат uuid: UUID hash: Хеш +geometry: Геометрия not_available_for_type: Не е налично за типа create_translations: Създаване на преводи auto_refresh: Автоматично опресняване @@ -380,6 +383,7 @@ no_users_copy: Все още няма потребители в тази рол webhooks_count: "Няма уеб-куки | 1 уеб-кука | {count} уеб-куки\n" no_webhooks_copy: Все още няма уеб-куки. all_items: Всички записи +any: Който и да е csv: CSV no_collections: Няма колекции create_collection: Създаване на колекция @@ -497,6 +501,7 @@ color: Цвят circle: Кръг empty_item: Празен запис log_in_with: 'Вход чрез {provider}' +advanced_settings: Разширени настройки advanced_filter: Разширен филтър delete_advanced_filter: Изтриване на филтър change_advanced_filter_operator: Промяна на оператор @@ -523,6 +528,8 @@ operators: nempty: Не е празно all: Съдържа следните ключове has: Съдържа някои от + intersects: Пресичане + nintersects: Няма пресичане loading: Зареждане... drop_to_upload: Пускане за качване item: Запис @@ -1052,7 +1059,20 @@ interfaces: imageToken: Токън за изображенията imageToken_label: Какъв (статичен) токън да се добави, към адресите на изображенията map: + map: Географска карта + description: Избор на позиция по картата zoom: Мащабиране + geometry_type: Тип + geometry_format: Формат + default_view: Изглед по подразбиране + invalid_options: Невалидни опции + invalid_format: Невалиден формат ({format}) + unexpected_geometry: Очаква се {expected}, но има {got}. + fit_bounds: Напасване на изгледа към данните + geojson: GeoJSON + lnglat: Географски дължина/ширина + wkt: WKT + wkb: WKB presentation-notice: notice: Пояснение description: Показване на кратко пояснение @@ -1261,3 +1281,15 @@ layouts: calendar: Календар start_date_field: Начална дата end_date_field: Крайна дата + map: + map: Географска карта + layers: Слоеве + edit_custom_layers: Редактиране на слоевете + cluster_options: Настройки за групиране + cluster: Активиране на групирането + cluster_radius: Радиус за групиране + cluster_minpoints: Минимален размер при групиране + cluster_maxzoom: Максимално увеличение при групиране + fit_data: Напасване към рамката + field: Геометрия + invalid_geometry: Невалидна геометрия diff --git a/app/src/lang/translations/ca-ES.yaml b/app/src/lang/translations/ca-ES.yaml index 23d37537e9..51ade61bd6 100644 --- a/app/src/lang/translations/ca-ES.yaml +++ b/app/src/lang/translations/ca-ES.yaml @@ -1,29 +1,69 @@ --- +## Be aware: +#Due to the way this is imported, JavaScript reserved words, including "delete", "private", +#"void", etc are stripped out. See +#https://github.com/rollup/plugins/blob/8748b8cd3bbab3c5ac6190556930219f19060e63/packages/pluginutils/src/makeLegalIdentifier.ts#L4 +#and +#https://github.com/rollup/plugins/blob/8748b8cd3bbab3c5ac6190556930219f19060e63/packages/yaml/src/index.js#L45 +#Illegal words: +#'break', 'case', 'class', 'catch', 'const', 'continue', 'debugger', 'default', 'delete', 'do', +#'else', 'export', 'extends', 'finally', 'for', 'function', 'if', 'import', 'in', 'instanceof', +#'let', 'new', 'return', 'super', 'switch', 'this', 'throw', 'try', 'typeof', 'var', 'void', +#'while', 'with', 'yield', 'enum', 'await', 'implements', 'package', 'protected', 'static', +#'interface', 'private', 'public', 'arguments', 'Infinity', 'NaN', 'undefined', 'null', 'true', +#'false', 'eval', 'uneval', 'isFinite', 'isNaN', 'parseFloat', 'parseInt', 'decodeURI', +#'decodeURIComponent', 'encodeURI', 'encodeURIComponent', 'escape', 'unescape', 'Object', +#'Function', 'Boolean', 'Symbol', 'Error', 'EvalError', 'InternalError', 'RangeError', +#'ReferenceError', 'SyntaxError', 'TypeError', 'URIError', 'Number', 'Math', 'Date', 'String', +#'RegExp', 'Array', 'Int8Array', 'Uint8Array', 'Uint8ClampedArray', 'Int16Array', 'Uint16Array', +#'Int32Array', 'Uint32Array', 'Float32Array', 'Float64Array', 'Map', 'Set', 'WeakMap', 'WeakSet', +#'SIMD', 'ArrayBuffer', 'DataView', 'JSON', 'Promise', 'Generator', 'GeneratorFunction', 'Reflect', +#'Proxy', 'Intl' +edit_field: Edita el camp +conditions: Condicions +maps: Mapes +item_revision: Revisió de l'element duplicate_field: Camp duplicat half_width: Mitja amplada full_width: Amplada Completa +limit: Límit +group: Grup +and: I +or: O fill_width: Amplada de l'emplenat field_name_translations: Traducció de noms de camps enter_password_to_enable_tfa: Introdueix la contrasenya per activar l'autenticació de dos factors add_field: Afegeix camp role_name: Nom del Rol +branch: Branca +leaf: Fulla +indeterminate: Indeterminat +exclusive: Exclusiu +children: Fills db_only_click_to_configure: 'Base de dades només: Feu clic per configurar ' show_archived_items: Mostra els elements arxivats +edited: Valor editat required: Requerit +required_for_app_access: Requerit per l'accés a l'aplicació requires_value: Requereix valor -create_preset: Crear un Predefinit +create_preset: Crear un predefinit create_role: Crea un rol create_user: Crear usuari create_webhook: Crear Webhook invite_users: Convidar usuaris +email_examples: "admin{'@'}example.com, user{'@'}example.com..." invite: Convida +email_already_invited: El correu "{email}" ja s'ha convidat emails: Correus electrònics connection_excellent: Connexió excel·lent connection_good: Connexió bona connection_fair: Connexió justa connection_poor: Connexió pobra +primary: Primari rename_folder: Renombra carpeta delete_folder: Suprimeix carpeta +prefix: Prefix +suffix: Sufix reset_bookmark: Reinicia marcador rename_bookmark: Renombra marcador update_bookmark: Actualitza marcador @@ -33,6 +73,7 @@ delete_bookmark_copy: >- logoutReason: SIGN_OUT: S'ha desconnectat SESSION_EXPIRED: Sessió caducada +public_label: Públic public_description: Controla quines dades API estan disponibles sense autenticar. not_allowed: No permès directus_version: Versió de Directus @@ -46,69 +87,647 @@ archive: Arxiu archive_confirm: Estàs segur de que vols arxivar aquest element? archive_confirm_count: >- No hi ha elements seleccionats | Segur que voleu arxivar aquest element? | Segur que voleu arxivar aquests {count} elements? -unarchive: Desarxivar -unarchive_confirm: Segur que voleu desarxivar aquest element? +reset_system_permissions_to: 'Restableix els permisos del sistema a:' +reset_system_permissions_copy: Aquesta acció rescriurà qualsevol permís personalitzat que hagis aplicat a les col·leccions del sistema. Estàs sgur? +the_following_are_minimum_permissions: Els següents són els mínims permisos requerits quan l'"Accés a l'aplicació" està habilitat. Pots estendre els permisos a partir d'aquí, però no els de més abaix. +app_access_minimum: Accés a l'aplicació mínim +recommended_defaults: Predeterminats recomanats +unarchive: Desarxiva +unarchive_confirm: Segur que vols desarxivar aquest element? +nested_files_folders_will_be_moved: Els fitxers i carpetes anidats es mouran un nivell amunt. +unknown_validation_errors: 'Hi ha errors de validació pels següents camps amagats:' +validationError: + eq: El valor ha de ser {valid} + neq: El valor no pot ser {invalid} + in: El valor ha de ser un dels {valid} + nin: El valor no pot ser un de {invalid} + contains: El valor ha de contenir {substring} + ncontains: El valor no pot contenir {substring} + gt: El valor ha de ser major que {valid} + gte: El valor ha de ser major o igual a {valid} + lt: El valor ha de ser menor que {valid} + lte: El valor ha de ser menor o igual a {valid} + empty: El valor ha de ser buit + nempty: El valor no pot ser buit + null: El valor ha de ser null + nnull: El valor no pot ser null + required: El valor es requerit + unique: El valor ha de ser únic + regex: El valor no té el format correcte +all_access: Accés complet +no_access: Sense accés +use_custom: Personalitzat +nullable: Nullable +allow_null_value: Permet valors nuls +allow_multiple: Permet múltiples +allow_multiple_to_be_open: Permet que s'obrin múltiples +enter_value_to_replace_nulls: Si us plau, introdueix un nou valor per reemplaçar qualsevol NULL que hi hagi en aquest camp. +field_standard: Estàndard +field_presentation: Presentació i àlies +field_file: Un fitxer +field_files: Multiples fitxers +field_m2o: Relació M2O +field_m2a: Relació M2A +field_o2m: Relació O2M +field_m2m: Relació M2M +field_translations: Traduccions +field_group: Agrupació de camps +item_permissions: Permisos de l'element +field_permissions: Permisos del camp +field_validation: Validació del camp +field_presets: Predefinits del camp +permissions_for_role: 'Elements {role} poden {action}.' +fields_for_role: 'Camps del {role} poden {action}.' +validation_for_role: 'El camp {action} determina que el rol {role} ha de obeir.' +presets_for_role: 'Valor de camp predeterminat per al rol {role}.' +presentation_and_aliases: Presentació i àlies +revision_post_update: Així és com queda l'element després d'actualitzar... +changes_made: Aquests són els canvis específics que s'han fet... +no_relational_data: Tingues present que això no inclou dades relacionals. +hide_field_on_detail: Amaga el camp en el detall +show_field_on_detail: Mostra el camp en el detall +delete_field: Elimina el camp +fields_and_layout: Camps i disposició +field_create_success: 'Camp creat: "{field}"' +field_update_success: 'Camp actualitzat: "{field}"' +duplicate_where_to: A on t'agradaria duplicar aquest camp? language: Idioma +global: Global +admins_have_all_permissions: Els administradors tenen tots els permisos +camera: Càmera +exposure: Exposició +shutter: Obturador +iso: ISO +focal_length: Distancia focal +schema_setup_key: Aquest nom de columna del camp i clau de l'API create_field: Crea un camp +creating_new_field: 'Nou camp ({collection})' +field_in_collection: '{field} ({collection})' +reset_page_preferences: Restableix la pàgina de preferències +hidden_field: Camp ocult +hidden_on_detail: Amagat al detall +disabled_editing_value: Deshabilita l'edició del valor +key: Clau +alias: Àlies +bigInteger: Big Integer +boolean: Boolean date: Data +datetime: DateTime decimal: Decimal +float: Float +integer: Integer +json: JSON +xml: XML +string: String text: Text +time: Time +timestamp: Timestamp +uuid: UUID +hash: Hash +geometry: Geometria +not_available_for_type: No disponible per aquest Tipus +create_translations: Crea traduccions +auto_refresh: Refrescament automàtic +refresh_interval: Interval de refresc +no_refresh: No refresquis +refresh_interval_seconds: Refresca immediatament | Cada Segon | Cada {seconds} segons +refresh_interval_minutes: Cada minut | Cada {minutes} minuts auto_generate: Generar automàticament +this_will_auto_setup_fields_relations: Això establirà automàticament tots els camps requerits i les relacions. +click_here: Fes clic aquí +to_manually_setup_translations: per establir les traduccions. +click_to_manage_translated_fields: >- + Encara no s'han traduït els camps. Fes clic aquí per crear-los. | Hi ha un camp traduït. Fes clic per gestionar-lo. | Hi ha {count} camps traduïts. Fes clic aquí per gestionar-los. +fields_group: Agrupació de camps +no_collections_found: No s'han trobat col·leccions. +new_data_alert: 'Es crearà el següent en el teu Model de dades:' +search_collection: Cerca la col·lecció... +new_field: 'Nou camp' +new_collection: 'Nova col·lecció' +add_m2o_to_collection: 'Afegeix Molts-a-Un a "{collection}"' +add_o2m_to_collection: 'Afegeix Un-a-Molts a "{collection}"' +add_m2m_to_collection: 'Afegeix Molts-a-Molts a "{collection}"' +choose_a_type: Tria un tipus... +determined_by_relationship: Determinat per la relació add_note: Afegiu una nota útil per als usuaris... default_value: Valor per defecte +standard_field: Camp estàndard +single_file: Un fitxer +multiple_files: Multiples fitxers +m2o_relationship: Relació Molts a Un +o2m_relationship: Relació Un a molts +m2m_relationship: Relació Molts a molts +m2a_relationship: Relació Molts a qualsevol +invalid_item: Element invàlid +next: Següent +field_name: Nom del camp +translations: Traduccions +note: Nota +enter_a_value: Introdueix un valor... +enter_a_placeholder: Introdueix un placeholder... +length: Mida +precision_scale: Precisió i escala +readonly: Només lectura unique: Únic +updated_on: Actualitzat el +updated_by: Actualitzat per +primary_key: Clau primària +foreign_key: Clau forana +finish_setup: Finalitza la configuració +dismiss: Descarta +raw_value: Valor en brut +edit_raw_value: Edita valor en brut +enter_raw_value: Introdueix valor en brut... clear_value: Esborra el valor +reset_to_default: Restableix valors predeterminats undo_changes: Desfer els canvis +notifications: Notificacions +show_all_activity: Mostra tota l'activitat +page_not_found: Pàgina no trobada +page_not_found_body: No hem trobat la pàgina que cerques. +confirm_revert: Confirma Revertir +confirm_revert_body: Això revertirà l'element a l'estat seleccionat. display: Mostra +settings_update_success: Ajustaments actualitzats title: Títol +revision_delta_created: Creat +revision_delta_created_externally: Creat externament +revision_delta_updated: 'Actualitzat 1 camp | Actualitzats {count} camps' +revision_delta_deleted: Eliminat +revision_delta_reverted: Revertit +revision_delta_other: Revisió +revision_delta_by: '{date} per {user}' +private_user: Usuari privat +revision_preview: Vista preliminar de la revisió +updates_made: Actualitzacions fetes +leave_comment: Deixa un comentari... +post_comment_success: Comentari publicat +item_create_success: Element creat | Elements creats +item_update_success: Element actualitzat | Elements actualitzats +item_delete_success: Element eliminat | Elements eliminats this_collection: Aquesta col·lecció +related_collection: Col·lecció relacionada +related_collections: Col·leccions relacionades +translations_collection: Col·lecció de traduccions +languages_collection: Col·lecció de idiomes +export_data: Exporta les dades format: Format +use_current_filters_settings: Utilitza els filtres i ajustaments actuals +export_collection: 'Exporta {collection}' +last_page: Última pàgina +last_access: Últim accés +fill_template: Emplena amb el valor de plantilla +a_unique_table_name: Un nom de taula únic... +a_unique_column_name: Un nom de columna únic... +enable_custom_values: Habilita valors personalitzats +submit: Envia +move_to_folder: Mou a la carpeta +move: Mou +system: Sistema +add_field_related: Afegeix camps a la col·lecció relacionada +interface_label: Interfície +today: Avui +yesterday: Ahir +delete_comment: Elimina comentari +date-fns_date: PPP +date-fns_time: 'h:mm:ss a' +date-fns_time_no_seconds: 'h.mm a' +date-fns_date_short: 'MMM d, u' +date-fns_time_short: 'h:mma' +date-fns_date_short_no_year: MMM d +month: Mes +year: Any +select_all: Marca totes +months: + january: Gener + february: Febrer + march: Març + april: Abril + may: Maig + june: Juny + july: Juliol + august: Agost + september: Setembre + october: Octubre + november: Novembre + december: Desembre +drag_mode: Mode d'arrossegament +cancel_crop: Cancel·la el retall +original: Original +url: URL +import_label: Importa +file_details: Detalls del fitxer +dimensions: Dimensions size: Mida +created: Creat +modified: Modificat checksum: Checksum owner: Propietari +edited_by: Editat per +folder: Carpeta +zoom: Zoom +download: Descarrega +open: Obre +open_in_new_window: Obre en una nova finestra +foreground_color: Color de primer pla +background_color: Color de fons +upload_from_device: Carrega el fitxer des del dispositiu +choose_from_library: Tria de la biblioteca +import_from_url: Importa el fitxer des de la URL +replace_from_device: Reemplaça el fitxer des del dispositiu +replace_from_library: Reemplaça el fitxer des de la biblioteca +replace_from_url: Reemplaça el fitxer des d'una URL +no_file_selected: Cap fitxer seleccionat +download_file: Descarrega el fitxer +collection_key: Clau de la col·lecció +name: Nom +primary_key_field: Camp de clau primària +type: Tipus +creating_new_collection: Creant una nova col·lecció created_by: Creat per created_on: Creat el +creating_collection_info: Fica nom a la col·lecció i estableix la seu camp "clau" únic... +creating_collection_system: Habilita i reanomena qualsevol d'aquests camps opcionals. +auto_increment_integer: Sencer auto-incremental +generated_uuid: UUID Generat +manual_string: String entrada manualment +save_and_create_new: Desa i crea un nou +save_and_stay: Desa i queda't +save_as_copy: Desa com a còpia +add_existing: Afegeix existent +creating_items: Creant elements +enable_create_button: Habilita el botó de creació +selecting_items: Seleccionant elements +enable_select_button: Habilita el botó de selecció comments: Comentaris +no_comments: No hi ha comentaris, encara +click_to_expand: Fes clic per ampliar +select_item: Selecciona element +no_items: No hi ha elements +search_items: Cerca elements... +disabled: Deshabilitat +information: Informació +report_bug: Informa d'un error +request_feature: Sol·licita una millora +interface_not_found: 'Interficie "{interface}" no trobada.' +reset_interface: Restableix la interfície +display_not_found: 'Disposició "{display}" no trobada.' +reset_display: Restableix disposició +list-m2a: Constructor (M2A) +item_count: 'No hi ha elements | Un element | {count} elements' +no_items_copy: Encara no hi ha elements en aquesta col·lecció. +file_count: 'No hi ha fitxers | Un fitxer | {count} fitxers' +no_files_copy: No hi ha fitxers aquí. +user_count: 'No hi ha usuaris | Un usuari | {count} usuaris' +no_users_copy: Encara no hi ha usuaris en aquest rol. +webhooks_count: 'No hi ha webhooks | Un webhook | {count} webhooks' +no_webhooks_copy: Encara no hi ha webhooks. +all_items: Tots els elements +any: Qualsevol +csv: CSV +no_collections: No hi ha col·leccions create_collection: Crea una col·lecció +no_collections_copy_admin: Encara no hi ha cap col·lecció. Fes clic al botó següent per començar. +no_collections_copy: Encara no hi ha cap col·lecció. Posa't en contacte amb l'administrador del sistema. relationship_not_setup: La relació no s'ha configurat correctament +display_template_not_setup: L'opció de plantilla de disposió no està configurada +collection_field_not_setup: L'opció de camp de col·lecció no està configurada +select_a_collection: Selecciona una col·lecció +active: Activa +inactive: Inactiva users: Usuaris activity: Activitat +webhooks: Webhooks +field_width: Amplada del camp +add_filter: Afegeix un filtre +upper_limit: Límit superior... +lower_limit: Límit inferior... user_directory: Directori de l'usuari +documentation: Documentació +sidebar: Barra lateral duration: Durada +charset: Conjunt de caràcters +second: segon +file_moved: Fitxer mogut +collection_created: Col·lecció creada +modified_on: Modificat el +card_size: Mida de la targeta sort_field: Camp d'ordenació +add_sort_field: Afegeix el camp d'ordenació +sort: Ordre status: Estat +remove: Elimina +toggle_manual_sorting: Activa l'ordenació manual +bookmark_doesnt_exist: No existeix el marcador +bookmark_doesnt_exist_copy: El marcador que estàs intentant obrir no pot ser trobat. +bookmark_doesnt_exist_cta: Torna a la col·lecció +select_an_item: Selecciona un element... edit: Edita +enabled: Habilitat +disable_tfa: Desactiva 2FA +tfa_scan_code: Escaneja el codi a l'aplicació d'autenticació per acabar d'establir el 2Fa +enter_otp_to_disable_tfa: Introdueix el OTP per deshabilitar el 2FA +create_account: Crea un compte +account_created_successfully: Compte creat amb èxit +auto_fill: Omple automàticament +corresponding_field: Camp corresponent +errors: + COLLECTION_NOT_FOUND: "La col·lecció no existeix" + FIELD_NOT_FOUND: Camp no trobat + FORBIDDEN: Prohibit + INVALID_CREDENTIALS: Identificador o contrasenya incorrectes + INVALID_OTP: Contrasenya d'un sol ús errònia + INVALID_PAYLOAD: Payload invàlid + INVALID_QUERY: Consulta invàlida + ITEM_LIMIT_REACHED: Límit d'elements assolit + ITEM_NOT_FOUND: Element no trobat + ROUTE_NOT_FOUND: No trobat + RECORD_NOT_UNIQUE: Valor duplicat detectat + USER_SUSPENDED: Usuari suspès + CONTAINS_NULL_VALUES: El camp conté valors nuls + UNKNOWN: Error inesperat + UNPROCESSABLE_ENTITY: Entitat no processable + INTERNAL_SERVER_ERROR: Error inesperat + NOT_NULL_VIOLATION: El valor no pot ser null +security: Seguretat +value_hashed: Aplicat hash segur al valor +bookmark_name: Nom del marcador... +create_bookmark: Crea un marcador +edit_bookmark: Edita el marcador bookmarks: Favorits +presets: Predefinits +unexpected_error: Error inesperat +unexpected_error_copy: Hi ha hagut un error inesperat. Si us plau, prova més tard. +copy_details: Copia detalls +no_app_access: Sense accés a l'aplicació +no_app_access_copy: Aquest usuari no pot administrar l'aplicació. +password_reset_sent: T'hem enviat un enllaç segur per restablir la teva contrasenya +password_reset_successful: Contrasenya restablerta correctament back: Enrere +editing_image: Editant imatge +square: Quadrat +free: Lliure +flip_horizontal: Capgira horitzontalment +flip_vertical: Capgira verticalment +aspect_ratio: Relació d'aspecte +rotate: Gira all_users: Tots els usuaris +delete_collection: Elimina la col·lecció +update_collection_success: Actualitza la col·lecció +delete_collection_success: Col·lecció eliminada +start_end_of_count_items: '{start}-{end} de {count} elements' +start_end_of_count_filtered_items: '{start}-{end} de {count} elements filtrats' +one_item: '1 element' +one_filtered_item: '1 element filtrat' +delete_collection_are_you_sure: >- + Estàs segur d'eliminar aquesta col·lecció? Això també eliminarà tots els elements que conté. Aquesta acció és permanent. +collections_shown: Col·leccions mostrades +visible_collections: Col·leccions visibles +hidden_collections: Col·leccions amagades +show_hidden_collections: Mosta les col·leccions amagades +hide_hidden_collections: Amaga les col·leccions amagades +unmanaged_collections: Col·leccions no configurades +system_collections: Col·leccions del sistema placeholder: Referència icon_left: Icona a l'esquerra icon_right: Icona a la dreta +count_other_revisions: '{count} revisions més' +font: Font +sans_serif: Sans Serif +serif: Serif monospace: Espai únic divider: Separador color: Color +circle: Cercle +empty_item: Element buit +log_in_with: 'Inicia sessió amb {provider}' +advanced_settings: Ajustaments avançats +advanced_filter: Filtre avançat +delete_advanced_filter: Elimina filtre +change_advanced_filter_operator: Operador Canvia operators: + eq: És igual + neq: No és igual + lt: Menor que + gt: Major que + lte: Menor o igual que + gte: Major o igual que + in: És un de + nin: No és un de + null: És nul + nnull: No és null contains: Conté + ncontains: No conté + starts_with: Comença amb + nstarts_with: No comença amb + ends_with: Acaba amb + nends_with: No acaba amb + between: És entre + nbetween: No és entre + empty: Es buida + nempty: No es buida + all: Conté aquestes claus + has: Conté alguna d'aquestes claus + intersects: Intersecta + nintersects: No intersecta + intersects_bbox: Intersecta la caixa delimitadora + nintersects_bbox: No intersecta la caixa delimitadora +loading: Carregant... +drop_to_upload: Deixa anar per carregar +item: Element +items: Elements +upload_file: Carrega un fitxer +upload_file_indeterminate: Carregant el fitxer... +upload_file_success: Fitxer carregat +upload_files_indeterminate: 'Carregant fitxers {done}/{total}' +upload_files_success: '{count} fitxers carregats' +upload_pending: Càrrega pendent +drag_file_here: Arrossega i deixa anar un fitxer aquí +click_to_browse: Fes clic per a explorar +interface_options: Opcions d'Interfície +layout_options: Opcions de presentació +rows: Files +columns: Columnes +collection_setup: Configuració de la col·lecció +optional_system_fields: Camps del sistema opcionals +value_unique: El valor ha de ser únic +all_activity: Tota l'activitat +create_item: Crea un element display_template: Mostra la plantilla +language_display_template: Plantilla de visualització d'idioma +translations_display_template: Plantilla de visualització de traduccions +n_items_selected: 'No hi han elements seleccionats | Un element seleccionat | {n} Elements seleccionats' +per_page: Per pàgina +all_files: Tots els fitxers +my_files: Els meus fitxers +recent_files: Fitxers recents +create_folder: Crea una carpeta +folder_name: Nom de la carpeta... +add_file: Afegeix un fitxer +replace_file: Reemplaça el fitxer +no_results: Sense resultats +no_results_copy: Ajusta o neteja els filtres de cerca per veure els resultats. +clear_filters: Neteja els filtres +saves_automatically: Desa automàticament role: Rol +rule: Regla +user: Usuari +no_presets: Sense predefinits +no_presets_copy: Encara no s'han desat predefinits o marcadors. +no_presets_cta: Afegeix predefinit +presets_only: Només predefinit create: Crear +on_create: En la creació +on_update: En l'actualització +read: Llegir +update: Actualitzar +select_fields: Selecciona els camps +format_text: Formata el text +bold: Negreta +toggle: Canvia +icon_on: Icona activada +icon_off: Icona desactivada +label: Etiqueta +image_url: URL de la imatge +alt_text: Text alternatiu +media: Mèdia +quality: Qualitat width: Amplada height: Alçada +source: Origen +url_placeholder: Introdueix una URL... +display_text: Text a mostrar +display_text_placeholder: Introdueix el text a mostrar... +tooltip: Consell +tooltip_placeholder: Introdueix el consell... +unlimited: Il·limitat +open_link_in: Obre l'enllaç a +new_tab: Nova pestanya +current_tab: Pestanya actual wysiwyg_options: + aligncenter: Alinea al centre + alignjustify: Justifica + alignleft: Alinea a l'esquerra + alignnone: Cap alineament + alignright: Alinea a la dreta + forecolor: Color de primer pla + backcolor: Color de fons + bold: Negreta + italic: Cursiva + underline: Subratllat + strikethrough: Tatxat + subscript: Subíndex + superscript: Superíndex codeblock: Codi + blockquote: Bloc de cita + bullist: Llista amb vinyetes + numlist: Llista ordenada + hr: Regle horitzontal + link: Afegeix / Edita l'enllaç + unlink: Elimina l'enllaç + media: Afegeix / Edita el mèdia + image: Afegeix / Edita la imatge + copy: Copia + cut: Retalla + paste: Enganxa + heading: Encapçalament + h1: Capçalera 1 + h2: Encapçalament 2 + h3: Encapçalament 3 + h4: Encapçalament 4 + h5: Encapçalament 5 + h6: Heading 6 + fontselect: Selecciona font + fontsizeselect: Selecciona la mida de la font + indent: Sagna + outdent: Redueix el sagnat + undo: Desfés + redo: Refés + remove: Elimina + removeformat: Elimina el format + selectall: Marca totes table: Taula + visualaid: Visualitza els elements invisibles + source_code: Edita el codi font + fullscreen: Pantalla completa + directionality: Direcció dropdown: Desplegable choices: Opcions +choices_option_configured_incorrectly: Opcions configurades incorrectament deselect: Deselecciona +deselect_all: Deselecciona-ho tot +other: Altres... +adding_user: Afegint usuari +unknown_user: Usuari desconegut +creating_in: 'Creant element a {collection}' +editing_in: 'Editant l''element a {collection}' +creating_unit: 'Creant {unit}' +editing_unit: 'Editant {unit}' editing_in_batch: 'Editant {count} elements' +no_options_available: Sense opcions disponibles +settings_data_model: Model de dades +settings_permissions: Rols i permisos +settings_project: Ajustaments del projecte +settings_webhooks: Webhooks +settings_presets: Predefinits i Marcadors +one_or_more_options_are_missing: Falta una o més opcions +scope: Abast +select: Selecciona... +layout: Disposició +tree_view: Vista d'arbre +changes_are_permanent: Els canvis són permanents +preset_name_placeholder: Serveix com a predeterminat quan és buit... +preset_search_placeholder: Cerca consulta... +editing_preset: Editant el predefinit +layout_preview: Vista preliminar de la disposició +layout_setup: Configuració de la disposició +unsaved_changes: Canvis no desats +unsaved_changes_copy: Estàs segur que vols sortir d'aquesta pàgina? +discard_changes: Descarta els canvis +keep_editing: Continua editant +page_help_collections_overview: '** Visió general de les col·leccions **: Llistes de totes les col·leccions a les quals tens accés.' +page_help_collections_collection: >- + ** Cerca elements **: Llista de tots els elements de {collection} als quals tens accés. Personalitza el disseny, els filtres i l’ordenació per adaptar-la a la teva vista i, fins i tot, desa els marcadors d’aquestes diferents configuracions per accedir-hi ràpidament. +page_help_collections_item: >- + ** Detall de l'element **: Un formulari per visualitzar i gestionar aquest element. Aquesta barra lateral també conté un historial complet de revisions i comentaris incrustats. +page_help_activity_collection: >- + ** Activitat de navegació **: Llista completa de tota l'activitat de contingut i sistema del vostre usuari. +page_help_docs_global: >- + ** Informació general de la documentació **: Documents adaptats específicament a la versió i l'esquema d'aquest projecte. +page_help_files_collection: >- + ** Biblioteca de fitxers **: Llista de tots els recursos de fitxers carregats en aquest projecte. Personalitza el disseny, els filtres i l’ordenació per adaptar-la a la teva vista i, fins i tot, desa els marcadors d’aquestes configuracions per accedir-hi ràpidament. +page_help_files_item: >- + ** Detall de fitxer **: Formulari per gestionar metadades de fitxers, editar el recurs original i actualitzar la configuració d'accés. +page_help_settings_project: "** Configuració del projecte **: Opcions de configuració global del vostre projecte." +page_help_settings_datamodel_collections: >- + ** Model de dades: Col·leccions **: Llista de totes les col·leccions disponibles. Això inclou col·leccions visibles, ocultes i del sistema, així com taules de bases de dades no gestionades que es poden afegir. +page_help_settings_datamodel_fields: >- + ** Model de dades: col·lecció **: Un formulari per gestionar aquesta col·lecció i els seus camps. +page_help_settings_roles_collection: '** Fons d''exploració **: Llista dels rols Administrador, públic i personalitzats.' +page_help_settings_roles_item: "** Detalls del rol **: Gestiona els permisos i altres paràmetres d'un rol." +page_help_settings_presets_collection: >- + ** Cerca predefinits **: Llista de tots els predefinits del projecte, inclosos: marcadors d'usuaris, de rol i globals, així com les vistes predeterminades. +page_help_settings_presets_item: >- + ** Detall de predefinit **: Un formulari per gestionar adreces d'interès i predefinits de col·lecció predeterminats. +page_help_settings_webhooks_collection: '** Examinar Webhooks **: Llista tots els webhooks del projecte.' +page_help_settings_webhooks_item: '** Detall de webhook **: Un formulari per crear i gestionar webhooks del projecte.' page_help_users_collection: '**Directori de l''usuari**.' +page_help_users_item: >- + ** Detall de l'usuari **: Gestiona la informació del compte o consulta la informació d'altres usuaris. +activity_feed: Canal d'activitat add_new: Afegir nou +create_new: Crea un nou all: Tots +none: Cap +no_layout_collection_selected_yet: No s'ha seleccionat cap disposició / col·lecció batch_delete_confirm: >- No s'ha seleccionat cap element | Esteu segur que voleu suprimir aquest element? No es pot desfer aquesta acció. | Esteu segur que voleu suprimir aquests {count} elements? No es pot desfer aquesta acció. cancel: Cancel · la collection: Coŀlecció collections: Col·leccions +singleton: Singleton +singleton_label: Tracta com un objecte únic +system_fields_locked: Els camps del sistema estan bloquejats i no poden editar-se fields: directus_activity: item: Clau primaria de l'ítem @@ -118,25 +737,44 @@ fields: user: Acció de comment: Comentari user_agent: Agent de l'usuari - ip: Adressa IP + ip: Adreça IP + revisions: Revisions directus_collections: collection: Coŀlecció + icon: Icona + note: Nota display_template: Mostra la plantilla + hidden: Amagat + singleton: Singleton + translations: Traduccions de noms de col·lecció + archive_app_filter: Filtre d'arxivat de l'aplicació + archive_value: Valor d'arxivat + unarchive_value: Valor per desarxivar sort_field: Camp d'ordenació + accountability: Traça d'activitat i revisió directus_files: + $thumbnail: Miniatura title: Títol description: Descripció tags: Etiquetes location: Localització + storage: Emmagatzematge + filename_disk: Nom del fitxer (Disc) + filename_download: Nom del fitxer (Descàrrega) metadata: Metadades + type: Tipus Mime filesize: Mida + modified_by: Modificat per + modified_on: Modificat el created_on: Creat el created_by: Creat per embed: Inclou uploaded_by: Pujat per + folder: Carpeta width: Amplada uploaded_on: Pujat el height: Alçada + charset: Conjunt de caràcters duration: Durada directus_users: first_name: Nom @@ -148,82 +786,515 @@ fields: title: Títol description: Descripció tags: Etiquetes + user_preferences: Preferències de l'usuari language: Idioma theme: Tema + theme_auto: Automàtic (basat en el sistema) + theme_light: Mode clar + theme_dark: Mode fosc tfa_secret: Autenticació de doble factor + admin_options: Opcions d'administrador status: Estat + status_draft: Esborrany + status_invited: Inactiva + status_active: Activa + status_suspended: Suspès + status_archived: Arxivat role: Rol token: Token + token_placeholder: Entra un testimoni d'accés (token) segur... + last_page: Última pàgina + last_access: Últim accés + directus_settings: + project_name: Nom del projecte + project_url: URL del projecte + project_color: Color del projecte + project_logo: Logotip del projecte + public_pages: Pàgines públiques + public_foreground: Primer pla públic + public_background: Fons públic + public_note: Anotació de la vista pública + auth_password_policy: Política de contrasenyes + auth_login_attempts: Intents d'autenticació + files_and_thumbnails: Fitxers i miniatures + storage_default_folder: Carpeta predeterminada d'emmagatzematge + storage_asset_presets: Predefinits de recursos d'emmagatzematge + storage_asset_transform: Transformació de recursos d'emmagatzematge + overrides: Substitucións de l'aplicació + custom_css: CSS personalitzat directus_fields: + collection: Nom de la col·lecció + icon: Icona de la col·lecció + note: Nota + hidden: Amagat + singleton: Singleton translation: Traducció de noms de camps display_template: Plantilla directus_roles: name: Nom del Rol + icon: Icona del rol description: Descripció + app_access: Accés a l'aplicació + admin_access: Accés d'administrador + ip_access: Accés per IP + enforce_tfa: Requereix 2FA users: Usuaris al rol + module_list: Navegació dels mòduls + collection_list: Navegació de les col·leccions directus_webhooks: + name: Nom + method: Mètode status: Estat + data: Dades + data_label: Envia les dades de l'event + triggers: Disparadors + actions: Accions +field_options: + directus_collections: + track_activity_revisions: Traça l'activitat i revisions + only_track_activity: Només traça l'activitat + do_not_track_anything: No tracis res +no_fields_in_collection: 'Encara no hi ha camps a "{collection}"' +do_nothing: No facis res +generate_and_save_uuid: Genera i Desa UUID +save_current_user_id: Desa el ID d'usuari actual +save_current_user_role: Desa el rol d'usuari actual +save_current_datetime: Desa la Data/Hora actual +block: Block +inline: Inline comment: Comentari +relational_triggers: Disparadors relacionals +referential_action_field_label_m2o: Si s'esborra de {collection}... +referential_action_field_label_o2m: Si es deselecciona de {collection}... +referential_action_no_action: Evita l'eliminació +referential_action_cascade: Elimina l'element de {collection} (cascada) +referential_action_set_null: Nullifica el camp {field} +referential_action_set_default: Assigna el camp {field} al valor per defecte +choose_action: Tria una acció +continue_label: Continua +continue_as: >- + {name} està autenticat. Si no reconeixes aquest compte, polsa continua. +editing_role: 'Rol {role}' +creating_webhook: Creant el webhook +default_label: Predeterminat +delete_label: Elimina +delete_are_you_sure: >- + Aquesta acció és permanent i no es pot desfer. Estàs segur que vols continuar? +delete_field_are_you_sure: >- + Segur que vols eliminar el camp "{field}"? Aquesta acció no es pot desfer. description: Descripció done: Fet duplicate: Duplicat email: Correu electrònic embed: Inclou +fallback_icon: Icona de reserva field: Camp | Camps +file: Fitxer +file_library: Biblioteca de fitxers +forgot_password: He oblidat la contrasenya +hidden: Amagat +icon: Icona +info: Informació +normal: Normal +success: Èxit +warning: Advertencia +danger: Perill +junction_collection: Unió de col·leccions +latency: Latència +login: Entra +my_activity: La meva activitat +not_authenticated: No autenticat +authenticated: Autenticat +options: Opcions otp: Contrasenya d'un sol ús password: Contrasenya +permissions: Permisos +relationship: Relacions +reset: Restablir +reset_password: Restableix la contrasenya +revisions: Revisions +revert: Desfés +save: Desa +schema: Esquema +search: Cerca +select_existing: Selecciona existent +select_field_type: Selecciona el tipus de camp +select_interface: Selecciona la interfície +settings: Configuració +sign_in: Inicia sessió +sign_out: Tanca la sessió +sign_out_confirm: Estàs segur que vols tancar la sessió? +something_went_wrong: Alguna cosa no ha anat bé. +sort_direction: Direcció de l'ordenació +sort_asc: Ordre ascendent +sort_desc: Ordre descendent template: Plantilla +require_value_to_be_set: Requereix un valor +translation: Traducció +value: Valor +view_project: Veure el projecte +weeks: { } +report_error: Notifica un error +start: Comença interfaces: + group-accordion: + name: Acordió + description: Mostra els camps o els grups com a seccions de l'acordió + start: Comença + all_closed: Tots tancats + first_opened: Primer obert + all_opened: Tots oberts + accordion_mode: Mode d'acordió + max_one_section_open: Màxim 1 secció oberta + presentation-links: + presentation-links: Botó d'enllaços + links: Enllaços + description: Botons d'enllaços configurables per a llançar URLs dinàmiques + style: Estil + primary: Primari + link: Enllaços + button: Botons + error: No es pot dur a terme l'acció + select-multiple-checkbox: + checkboxes: Camps de selecció (Checkboxes) + description: Selecciona entre múltiples opcions via camps de selecció + allow_other: Permet altres + show_more: 'Mostra {count} més' + items_shown: Elements mostrats + select-multiple-checkbox-tree: + name: Arbre de camps de selecció (checkboxes Tree) + description: Selecciona entre múltiples opcions via camps de selecció (checkboxes) + value_combining: Valor combinant + value_combining_note: Controla quin valor és emmagatzemant quan es fan les seleccions anidades. + show_all: Mostra-ho tot + show_selected: Mostra els seleccionts input-code: code: Codi + description: Escriu o comparteix snippets de codi + line_number: Número de línia + placeholder: Introdueix el codi aquí... system-collection: collection: Coŀlecció + description: Selecciona entre les següents col·leccions + include_system_collections: Inclou les col·leccions del sistema system-collections: collections: Col·leccions + description: Selecciona entre les següents col·leccions + include_system_collections: Inclou les col·leccions del sistema select-color: color: Color + description: Entra o selecciona un valor de color + placeholder: Tria un color... + preset_colors: Predefinit de colors + preset_colors_add_label: Afegeix un nou color... + name_placeholder: Introdueix un nom de color... datetime: datetime: Data i hora + description: Introdueix dates i hores + include_seconds: Inclou els segons + set_to_now: Fixa'l a "Ara" + use_24: Utilitza el format de 24 hores system-display-template: display-template: Mostra la plantilla + description: Barreja text estàtic i valors de camp dinàmic + collection_field: Camp de col·lecció + collection_field_not_setup: L'opció de camp de col·lecció no està configurada + select_a_collection: Selecciona una col·lecció presentation-divider: divider: Separador + description: Etiqueta i divideix els camps en seccions + title_placeholder: Introdueix un títol... + inline_title: Títol en línia + inline_title_label: Mostra el títol dins la línia + margin_top: Marge superior + margin_top_label: Incrementa el marge superior + select-dropdown: + description: Selecciona el valor del desplegable + choices_placeholder: Afegeix una nova opció + allow_other: Permet altres + allow_other_label: Permet altres valors + allow_none: No permetre cap + allow_none_label: Permet cap selecció + choices_name_placeholder: Introdueix un nom... + choices_value_placeholder: Introdueix un valor... + select-multiple-dropdown: + select-multiple-dropdown: Desplegable (Múltiple) + description: Selecciona múltiples valors des del desplegable + file: + file: Fitxer + description: Selecciona o carrega un fitxer files: files: Arxius + description: Selecciona o carrega múltiples fitxers + input-hash: + hash: Hash + description: Entra un valor per aplicar-hi hash + masked: Enmascarat + masked_label: Amaga els valors "cert" + select-icon: + icon: Icona + description: Selecciona la icona d'un desplegable + search_for_icon: Cerca una icona... + file-image: + image: Imatge + description: Selecciona o carrega una imatge + system-interface: + interface: Interfície + description: Selecciona una interfície existent + placeholder: Selecciona una interfície... + system-interface-options: + interface-options: Opcions d'Interfície + description: Un modal per la selecció de les opcions d'interfície + list-m2m: + many-to-many: Molts a molts + description: Selecciona múltiples elements d'unió relacionats select-dropdown-m2o: + many-to-one: Molts a un + description: Selecciona un únic element relacionat display_template: Mostra la plantilla + input-rich-text-md: + markdown: Markdown + description: Entra i previsualitza el markdown + customSyntax: Blocs personalitzats + customSyntax_label: Afegeix tipus de sintaxi personalitzats + customSyntax_add: Afegeix sintaxi personalitzada + box: Block / Inline + imageToken: Testimoni d'Imatge + imageToken_label: Quin testimoni (estàtic) a afegir a els origen de la imatge + map: + map: Mapa + description: Selecciona una localització al mapa + zoom: Zoom + geometry_type: Tipus geometria + geometry_format: Format geometria + default_view: Vista predeterminada + invalid_options: Opcions no vàlides + invalid_format: Format no vàlid ({format}) + unexpected_geometry: Esperat {expected}, obtingut {got}. + fit_bounds: Ajusta la vista a les dades + native: Nadiu + geojson: GeoJSON + lnglat: Longitud, Latitud + wkt: WKT + wkb: WKB + presentation-notice: + notice: Avís + description: Mostra un petit avís + text: Introdueix el contingut de l'avís aquí... + list-o2m: + one-to-many: Un a Molts + description: Selecciona múltiples elements relacionats + no_collection: No s'ha trobat la col·lecció + system-folder: + folder: Carpeta + description: Selecciona una carpeta + field_hint: Insereix els fitxers carregats recentment a la carpeta seleccionada. No afecta els fitxers existents seleccionats. + root_name: Arrel de la biblioteca de fitxers + system_default: Predeterminats del sistema + select-radio: + radio-buttons: Botons de selecció + description: Selecciona una de múltiples opcions + list: + repeater: Repetidor + description: Crea múltiples entrades de la mateixa estructura + edit_fields: Edita els camps + add_label: 'Etiqueta "Crea nou"' + field_name_placeholder: Introdueix nou camp... + field_note_placeholder: Introdueix una nota sobre el camp... + slider: + slider: Lliscador + description: Selecciona un número utilitzant el lliscador + always_show_value: Mostra el valor sempre tags: tags: Etiquetes + description: Selecciona o afegeix etiquetes + whitespace: Espai en blanc + hyphen: Substitueix per guionet + underscore: Substitueix per guió baix + remove: Elimina l'espai en blanc + capitalization: Majúscules + uppercase: Converteix majúscules + lowercase: Converteix minúscules + auto_formatter: Utilitza autoformatador del títol + alphabetize: Alfabètic + alphabetize_label: Força ordre alfabètic + add_tags: Afegeix etiquetes... + input: + input: Entrada + description: Entra manualment un valor + trim: Elimina espais + trim_label: Elimina espais de l'inici i el final + mask: Enmascarat + mask_label: Amaga el valor real + clear: Valor netejat + clear_label: Desa com una cadena buida + minimum_value: Valor mínim + maximum_value: Valor màxim + step_interval: Interval del pas + slug: Slugify + slug_label: Fes URL segura el valor entrat + input-multiline: + textarea: Textarea + description: Entra text multilínia + boolean: + toggle: Canvia + description: Canvia entre Encés i apagat + label_placeholder: Introdueix una etiqueta... + label_default: Habilitat translations: display_template: Mostra la plantilla + no_collection: No hi ha col·leccions + list-o2m-tree-view: + description: Vista d'arbre per a elements un-a-molts anidats recursivament + recursive_only: La interfície de vista d'arbre només funciona per a relacions recursives. user: + user: Usuari description: Seleccioneu un usuari existent + select_mode: Selecciona el mode modes: + auto: Auto dropdown: Desplegable + modal: Modal + input-rich-text-html: + wysiwyg: WYSIWYG + description: Un editor de text enriquit escrivint contingut HTML + toolbar: Barra d'eines + custom_formats: Formats personalitzats + options_override: Sobreescriptura d'opcions + input-autocomplete-api: + input-autocomplete-api: Entrada autocompleta (API) + description: Una cerca typeahead per valors d'API externes. + results_path: Camí dels resultats + value_path: Camí del Valor + trigger: Disparador + rate: Velocitat + group-raw: + name: Grup en brut + description: Mostra el contingut tal com és + group-detail: + name: Detall del grup + description: Mostra els camps com una secció plegable + show_header: Mostra la capçalera del grup + header_icon: Icona de la capçalera + header_color: Color de la capçalera + start_open: Comença obert + start_closed: Comená tancat displays: + boolean: + boolean: Boolean + description: Mostra els estats Activat i desactivat + label_on: Etiqueta activada + label_on_placeholder: Introdueix l'etiqueta activada... + label_off: Etiqueta desactivada + label_off_placeholder: Introdueix l'etiqueta desactivada... + icon_on: Icona activada + icon_off: Icona desactivada + color_on: Color activat + color_off: Color desactivat collection: collection: Coŀlecció + description: Mostra una col·lecció + icon_label: Mostra la icona de la col·lecció color: color: Color + description: Mostra un punt colorejat + default_color: Color predeterminat datetime: datetime: Data i hora + description: Mostra valors associats al temps format: Format + format_note: >- + El format personalitzat accepta __[Date Field Symbol Table](https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table)__ + long: Llarg + short: Curt + relative: Relatiu + relative_label: 'Mostra el temps relatiu, ex: fa 5 minuts' + file: + file: Fitxer + description: Mostra fitxers filesize: filesize: Mida del fitxer + description: Mostra la mida del fitxer + formatted-value: + formatted-value: Valor formatat + description: Mostra una versió formatada del text + format_title: Títol del format + format_title_label: Auto formata les minúscules i majúscules + bold_label: Utilitza text en negreta + formatted-json-value: + formatted-json-value: Valor JSON formatat + description: Mostra una versió formatada del l'objecte + icon: + icon: Icona + description: Mostra una icona + filled: Emplenat + filled_label: Utilitza una variant emplenada + image: + image: Imatge + description: Mostra una petita previsualització de la imatge + circle: Cercle + circle_label: Mostra com a cercle + labels: + labels: Etiquetes + description: Mostra un únic o bé una llista d'etiquetes + default_foreground: Primer pla predeterminat + default_background: Fons prederterminat + format_label: Formata cada etiqueta + show_as_dot: Mostra com a punt + choices_value_placeholder: Introdueix un valor... + choices_text_placeholder: Introdueix un text... + mime-type: + mime-type: TIpus MIME + description: Mostra el tipus MIME d'un fitxer + extension_only: Només l'extensió + extension_only_label: Mostra només l'extensió rating: rating: Puntuació + description: Visualitza un número d'estrelles relatiu al valor màxim + simple: Simple + simple_label: Mostra estrelles en un format simple + raw: + raw: Calor en brut + related-values: + related-values: Valors relacionats + description: Mostra valors relacionats user: + user: Usuari description: Mostra un usuari avatar: Foto + name: Nom both: Ambdós + circle_label: Mostra l'usuari en un cercle layouts: cards: cards: Targetes image_source: Recurs d'imatge + image_fit: Ajusta l'imatge + crop: Retalla + contain: Conté title: Títol subtitle: Subtítol tabular: tabular: Taula + fields: Camps + spacing: Espaiat comfortable: Còmoda compact: Compacta cozy: Acollidora + calendar: + calendar: Calendari + start_date_field: Camp de data d'inici + end_date_field: Camp de data de fi + map: + map: Mapa + basemap: Mapa base + layers: Capes + edit_custom_layers: Edita capes + cluster_options: Opcions de clustering + cluster: Activa el clustering + cluster_radius: Radi del cluster + cluster_minpoints: Mida mínima del clúster + cluster_maxzoom: Zoom màxim per clustering + fit_data: Ajusta les dades als límits de la vista + field: Geometria + invalid_geometry: Geometria invàlida diff --git a/app/src/lang/translations/de-DE.yaml b/app/src/lang/translations/de-DE.yaml index 8395acd136..1dacdbe5e4 100644 --- a/app/src/lang/translations/de-DE.yaml +++ b/app/src/lang/translations/de-DE.yaml @@ -20,15 +20,25 @@ #'SIMD', 'ArrayBuffer', 'DataView', 'JSON', 'Promise', 'Generator', 'GeneratorFunction', 'Reflect', #'Proxy', 'Intl' edit_field: Feld bearbeiten +conditions: Bedingungen item_revision: Element Revision duplicate_field: Feld duplizieren half_width: Halbe Breite full_width: Volle Breite +limit: Limit +group: Gruppe +and: Und +or: Oder fill_width: Breite füllen field_name_translations: Feldnamen-Übersetzungen enter_password_to_enable_tfa: Geben Sie Ihr Passwort ein, um die Zwei-Faktor-Authentifizierung zu aktivieren add_field: Feld hinzufügen role_name: Rollenname +branch: Branch +leaf: Blatt +indeterminate: Unbestimmt +exclusive: Exklusive +children: Untergeordnete db_only_click_to_configure: 'Nur in der Datenbank: Zum Konfigurieren klicken ' show_archived_items: Zeige archivierte Elemente edited: Bearbeiteter Wert @@ -62,6 +72,7 @@ delete_bookmark_copy: >- logoutReason: SIGN_OUT: Abgemeldet SESSION_EXPIRED: Sitzung abgelaufen +public_label: Öffentlich public_description: Bestimmt, welche API-Daten ohne Authentifizierung zugänglich sind. not_allowed: Nicht erlaubt directus_version: Directus Version @@ -107,6 +118,8 @@ no_access: Kein Zugriff use_custom: Benutzerdefiniert nullable: Nullbar allow_null_value: NULL-Wert erlauben +allow_multiple: Mehrere zulassen +allow_multiple_to_be_open: Gleichzeitiges Öffnen erlauben enter_value_to_replace_nulls: Bitte geben Sie einen neuen Wert ein, um alle NULLs zu ersetzen, die derzeit in diesem Feld liegen. field_standard: Standard field_presentation: Darstellung & Aliasse @@ -117,6 +130,7 @@ field_m2a: M2A Beziehung field_o2m: O2M Beziehung field_m2m: M2M Beziehung field_translations: Übersetzungen +field_group: Feldgruppe item_permissions: Item Berechtigungen field_permissions: Feldberechtigungen field_validation: Feldüberprüfung @@ -169,6 +183,7 @@ time: Zeit timestamp: Zeitstempel uuid: UUID hash: Hash +geometry: Dimensionen not_available_for_type: Nicht verfügbar für diesen Typ create_translations: Übersetzungen erstellen auto_refresh: Auto-Aktualisierung @@ -299,6 +314,7 @@ drag_mode: Drag-Modus cancel_crop: Zuschneiden abbrechen original: Original url: URL +import_label: Importieren file_details: Dateiinformationen dimensions: Dimensionen size: Größe @@ -366,6 +382,7 @@ no_users_copy: Es gibt noch keine Benutzer in dieser Rolle. webhooks_count: 'Keine Webhooks | Ein Webhook | {count} Webhooks' no_webhooks_copy: Es gibt noch keine Webhooks. all_items: Alle Elemente +any: Irgendein csv: CSV no_collections: Keine Sammlungen create_collection: Sammlung erstellen @@ -376,6 +393,7 @@ display_template_not_setup: Die Anzeige-Vorlage ist falsch konfiguriert collection_field_not_setup: Das Sammlungsfeld ist falsch konfiguriert select_a_collection: Sammlung auswählen active: Aktiv +inactive: Inaktiv users: Benutzer activity: Aktivität webhooks: Webhooks @@ -388,6 +406,7 @@ documentation: Dokumentation sidebar: Seitenleiste duration: Dauer charset: Zeichensatz +second: Sekunde file_moved: Datei verschoben collection_created: Sammlung erstellt modified_on: Geändert am @@ -426,8 +445,10 @@ errors: USER_SUSPENDED: Benutzer gesperrt CONTAINS_NULL_VALUES: Feld enthält NULL-Werte UNKNOWN: Unerwarteter Fehler + UNPROCESSABLE_ENTITY: Unverarbeitbares Objekt INTERNAL_SERVER_ERROR: Unerwarteter Fehler NOT_NULL_VIOLATION: Der Wert darf nicht leer sein +security: Sicherheit value_hashed: Wert sicher gehashed bookmark_name: Name des Lesezeichens... create_bookmark: Lesezeichen erstellen @@ -479,6 +500,7 @@ color: Farbe circle: Kreis empty_item: Leeres Element log_in_with: 'Einloggen mit {provider}' +advanced_settings: Erweiterte Einstellungen advanced_filter: Erweiterter Filter delete_advanced_filter: Filter zurücksetzen change_advanced_filter_operator: Operator ändern @@ -495,6 +517,7 @@ operators: nnull: Ist nicht null contains: Enthält ncontains: Enthält nicht + starts_with: Beginnt mit nstarts_with: Beginnt nicht mit ends_with: Endet mit nends_with: Endet nicht mit @@ -504,6 +527,10 @@ operators: nempty: Ist nicht leer all: Enthält diese Schlüssel has: Enthält einige dieser Schlüssel + intersects: schneidet + nintersects: Schneidet nicht + intersects_bbox: Schneidet Begrenzung + nintersects_bbox: Schneidet nicht Begrenzung loading: Wird geladen... drop_to_upload: Zum Hochladen ablegen item: Element @@ -542,10 +569,12 @@ no_results_copy: Suchfilter anpassen oder löschen um Ergebnisse zu sehen. clear_filters: Filter löschen saves_automatically: Automatisch speichern role: Rolle +rule: Regel user: Benutzer no_presets: Keine Voreinstellungen no_presets_copy: Es wurden noch keine Voreinstellungen oder Lesezeichen gespeichert. no_presets_cta: Voreinstellung hinzufügen +presets_only: Nur Vorlagen create: Erstellen on_create: Beim Erstellen on_update: Beim Aktualisieren @@ -561,6 +590,7 @@ label: Label image_url: Bild-Url alt_text: Alternativ-Text media: Medien +quality: Qualität width: Breite height: Höhe source: Quelle @@ -755,13 +785,23 @@ fields: title: Titel description: Beschreibung tags: Stichwörter + user_preferences: Benutzereinstellungen language: Sprache theme: Design + theme_auto: Automatisch (Systemeinstellung verwenden) + theme_light: Heller Modus + theme_dark: Nachtmodus tfa_secret: Zwei-Faktor-Authentifizierung + admin_options: Admin-Optionen status: Status + status_draft: Entwurf + status_invited: Inaktiv status_active: Aktiv + status_suspended: Angehalten + status_archived: Archiviert role: Rolle token: Token + token_placeholder: Einen sicheren Zugangs-Token eingeben... last_page: Letzte Seite last_access: Letzter Zugriff directus_settings: @@ -769,13 +809,17 @@ fields: project_url: Projekt URL project_color: Projekt Farbe project_logo: Projekt Logo + public_pages: Öffentliche Seiten public_foreground: Öffentlicher Vordergrund public_background: Öffentlicher Hintergrund public_note: Öffentliche Anmerkung auth_password_policy: Kennwortrichtlinie auth_login_attempts: Maximale Anmeldeversuche + files_and_thumbnails: Dateien & Vorschaubilder + storage_default_folder: Standardspeicherordner storage_asset_presets: Asset-Presets storage_asset_transform: Asset-Transformierung + overrides: App-Überschreibungen custom_css: Benutzerdefiniertes CSS directus_fields: collection: Sammlungsname @@ -798,7 +842,12 @@ fields: collection_list: Sammlungsnavigation directus_webhooks: name: Name + method: Methode status: Status + data: Daten + data_label: Ereignisdaten senden + triggers: Auslöser + actions: Aktionen field_options: directus_collections: track_activity_revisions: Verfolge Aktivitäten und Änderungen @@ -821,10 +870,13 @@ referential_action_cascade: Lösche das {collection} Element (Cascade) referential_action_set_null: '{field} auf Null setzen' referential_action_set_default: '{field} au Standardwert setzen' choose_action: Aktion auswählen +continue_label: Weiter continue_as: >- {name} ist derzeit authentifiziert. Wenn du dieses Konto erkennst, drücke fortfahren. editing_role: '{role} Rolle' creating_webhook: Webhook erstellen +default_label: Standard +delete_label: Löschen delete_are_you_sure: >- Diese Aktion kann nicht rückgängig gemacht werden. Sind Sie sicher, dass Sie fortfahren möchten? delete_field_are_you_sure: >- @@ -876,11 +928,17 @@ sort_direction: Sortierreihenfolge sort_asc: Aufsteigend sortieren sort_desc: Absteigend sortieren template: Vorlage +require_value_to_be_set: Wert muss gesetzt werden translation: Übersetzung value: Wert view_project: Projekt anzeigen report_error: Fehler melden +start: Start interfaces: + group-accordion: + name: Akkordeon + description: Felder oder Gruppen als Akkordeonabschnitte anzeigen + start: Start presentation-links: presentation-links: Button-Links links: Links @@ -1184,3 +1242,5 @@ layouts: calendar: Kalender start_date_field: Datumsfeld Start end_date_field: Datumsfeld Ende + map: + field: Dimensionen diff --git a/app/src/lang/translations/pt-BR.yaml b/app/src/lang/translations/pt-BR.yaml index b87ef80d69..20c89edd25 100644 --- a/app/src/lang/translations/pt-BR.yaml +++ b/app/src/lang/translations/pt-BR.yaml @@ -20,11 +20,16 @@ #'SIMD', 'ArrayBuffer', 'DataView', 'JSON', 'Promise', 'Generator', 'GeneratorFunction', 'Reflect', #'Proxy', 'Intl' edit_field: Editar campo +conditions: Condições +maps: Mapas item_revision: Revisão do item duplicate_field: Campo duplicado half_width: Meia largura full_width: Largura total +limit: Limite group: Grupos +and: E +or: Ou fill_width: Preencher field_name_translations: Traduções Dos Nomes Dos Campos enter_password_to_enable_tfa: Digite sua senha para ativar a Autenticação em Duas Etapas @@ -35,7 +40,7 @@ leaf: Folha indeterminate: Indeterminado exclusive: Exclusivo children: Filhos -db_only_click_to_configure: 'Apenas o banco de dados: clique para configurar' +db_only_click_to_configure: 'Apenas o banco de dados: clique para configurar ' show_archived_items: Mostrar itens arquivados edited: Valor editado required: Obrigatório @@ -44,7 +49,7 @@ requires_value: Requer valor create_preset: Criar predefinição create_role: Criar Função create_user: Criar usuário -create_webhook: Criar Webhook +create_webhook: Criar Webgancho invite_users: Convidar Usuários email_examples: "admin{'@'}exemplo.com, usuário{'@'}exemplo.com..." invite: Convidar @@ -66,8 +71,9 @@ delete_bookmark: Deletar Marcador delete_bookmark_copy: >- Tem certeza que deseja deletar o marcador "{bookmark}"? Esta ação não pode ser desfeita. logoutReason: - SIGN_OUT: Deslogado + SIGN_OUT: Desconectado SESSION_EXPIRED: Sessão expirada +public_label: Publico public_description: Controla quais dados da API estão disponíveis sem autenticação. not_allowed: Não permitido directus_version: Versão do Directus @@ -75,20 +81,20 @@ node_version: Versão Node node_uptime: Node Uptime os_type: Tipo de SO os_version: Versão do SO -os_uptime: Uptime do SO +os_uptime: Tempo de atividade do SO os_totalmem: Memória do SO archive: Arquivar archive_confirm: Tem certeza de que deseja arquivar este item? archive_confirm_count: >- Nenhum Item Selecionado | Tem certeza que deseja arquivar este item? | Você tem certeza que deseja arquivar estes {count} itens? -reset_system_permissions_to: 'Redefinir permissões do sistema para:' -reset_system_permissions_copy: Esta ação irá sobrescrever quaisquer permissões personalizadas que você pode ter aplicado às coleções do sistema. Tem certeza? -the_following_are_minimum_permissions: As seguintes são as permissões mínimas necessárias quando o "Acesso ao Aplicativo" estiver ativado. Você pode estender as permissões além disto, mas não abaixo. -app_access_minimum: Acesso ao App Mínimo +reset_system_permissions_to: 'Redefinir Permissões do Sistema Para:' +reset_system_permissions_copy: Esta ação irá sobrescrever quaisquer permissões personalizadas que você pode ter aplicado às coleções do sistema. Você tem certeza? +the_following_are_minimum_permissions: As permissões seguintes, são as mínimas necessárias quando o "Acesso ao Aplicativo" estiver ativado. Você pode estender as permissões além disso, mas não abaixo. +app_access_minimum: Acesso Mínimo ao App recommended_defaults: Padrões Recomendados unarchive: Desarquivar unarchive_confirm: Tem certeza de que deseja desarquivar este item? -nested_files_folders_will_be_moved: Arquivos e pastas aninhadas serão movidos a um nível acima. +nested_files_folders_will_be_moved: Arquivos e pastas aninhadas serão movidos para um nível acima. unknown_validation_errors: 'Houve erros de validação para os seguintes campos ocultos:' validationError: eq: O valor tem de ser {valid} @@ -113,6 +119,8 @@ no_access: Sem acesso use_custom: Usar Personalizado nullable: Aceita nulos allow_null_value: Permitir valores NULL +allow_multiple: Permitir Múltiplos +allow_multiple_to_be_open: Permissão para abrir vários enter_value_to_replace_nulls: Por favor digite um novo valor que substituirá todos os NULLs presentes neste campo. field_standard: Padrão field_presentation: Apresentação e pseudônimos @@ -176,6 +184,7 @@ time: Hora timestamp: Timestamp uuid: UUID hash: Hash +geometry: Geometria not_available_for_type: Não disponível para este tipo create_translations: Criar Traduções auto_refresh: Atualização automática @@ -306,6 +315,7 @@ drag_mode: Modo de arrastar cancel_crop: Cancelar Recorte original: Original url: URL +import_label: Importar file_details: Detalhes do Arquivo dimensions: Dimensões size: Tamanho @@ -373,6 +383,7 @@ no_users_copy: Não há usuários neste cargo ainda. webhooks_count: 'Nenhum Webhook | Um Webhook | {count} Webhooks' no_webhooks_copy: Ainda não possui Webhooks. all_items: Todos os itens +any: Qualquer csv: CSV no_collections: Sem coleções create_collection: Criar Coleção @@ -383,6 +394,7 @@ display_template_not_setup: A opção do modelo de exibição está configurada collection_field_not_setup: A opção do campo de coleção está configurada incorretamente select_a_collection: Selecione uma coleção active: Ativo +inactive: Inativo users: Usuários activity: Atividade webhooks: Webhooks @@ -395,6 +407,7 @@ documentation: Documentação sidebar: Barra lateral duration: Duração charset: Codificação de caracteres +second: segundo file_moved: Arquivo movido collection_created: Coleção criada modified_on: Modificado em @@ -433,8 +446,10 @@ errors: USER_SUSPENDED: Usuário suspenso CONTAINS_NULL_VALUES: O campo contém valores nulos UNKNOWN: Erro inesperado + UNPROCESSABLE_ENTITY: Entidade não processável INTERNAL_SERVER_ERROR: Erro inesperado NOT_NULL_VIOLATION: Valor não pode ser nulo +security: Segurança value_hashed: Valor secretamente salvo em hash bookmark_name: Nome do marcador... create_bookmark: Criar marcador @@ -486,6 +501,7 @@ color: Cor circle: Círculo empty_item: Item vazio log_in_with: 'Entrar com {provider}' +advanced_settings: Configurações Avançadas advanced_filter: Filtro avançado delete_advanced_filter: Excluir Filtro change_advanced_filter_operator: Modificar Operador @@ -512,6 +528,10 @@ operators: nempty: Não está vazio all: Contém essas chaves has: Contém algumas dessas chaves + intersects: Interseções + nintersects: Não interceptado + intersects_bbox: Cruza a caixa delimitadora + nintersects_bbox: Não cruza a caixa delimitadora loading: Carregando... drop_to_upload: Solte para enviar item: Item @@ -550,10 +570,12 @@ no_results_copy: Ajuste ou limpe os filtros de busca para ver resultados. clear_filters: Limpar filtros saves_automatically: Salva automaticamente role: Função +rule: Regra user: Usuário no_presets: Sem predefinições no_presets_copy: Nenhuma predefinição ou marcador foi salvo ainda. no_presets_cta: Adicionar predefinição +presets_only: Apenas predefinições create: Criar on_create: Ao Criar on_update: Pós-alteração @@ -569,6 +591,7 @@ label: Rótulo image_url: URL da Imagem alt_text: Texto Alternativo media: Mídia +quality: Qualidade width: Largura height: Altura source: Código @@ -763,13 +786,23 @@ fields: title: Título description: Descrição tags: Tags + user_preferences: Preferências do Usuário language: Idioma theme: Tema + theme_auto: Automático (Baseado no Sistema) + theme_light: Modo Claro + theme_dark: Modo Escuro tfa_secret: Autenticação em Duas Etapas + admin_options: Opções do Admin status: Status + status_draft: Rascunho + status_invited: Inativo status_active: Ativo + status_suspended: Suspenso + status_archived: Arquivado role: Função token: Token + token_placeholder: Digite um token de acesso seguro... last_page: Última página last_access: Último acesso directus_settings: @@ -777,13 +810,17 @@ fields: project_url: URL do projeto project_color: Cor do projeto project_logo: Logotipo do projeto + public_pages: Páginas Públicas public_foreground: Primeiro plano público public_background: Fundo público public_note: Nota pública auth_password_policy: Política de senha para autenticação auth_login_attempts: Tentativas de autenticação + files_and_thumbnails: Arquivos e Miniaturas + storage_default_folder: Pasta de Armazenamento Padrão storage_asset_presets: Predefinições de armazenamento storage_asset_transform: Transformação de arquivos + overrides: Substituições de Aplicativos custom_css: CSS Personalizado directus_fields: collection: Nome da coleção @@ -806,7 +843,12 @@ fields: collection_list: Navegação da Coleção directus_webhooks: name: Nome + method: Método status: Status + data: Dados + data_label: Enviar Dados do Evento + triggers: Gatilhos + actions: Ações field_options: directus_collections: track_activity_revisions: Rastrear Atividades e Revisões @@ -829,10 +871,13 @@ referential_action_cascade: Excluir o item {collection} (cascade) referential_action_set_null: Anular o campo {field} referential_action_set_default: Definir {field} para o seu valor padrão choose_action: Escolha uma ação +continue_label: Continuar continue_as: >- {name} está autenticado. Se você reconhece esta conta, clique em continuar. editing_role: 'Cargo {role}' creating_webhook: Criando Webhook +default_label: Padrão +delete_label: Excluir delete_are_you_sure: >- Esta ação é permanente e não pode ser desfeita. Tem certeza de que deseja prosseguir? delete_field_are_you_sure: >- @@ -884,11 +929,19 @@ sort_direction: Direção da ordenação sort_asc: Ordenação Crescente sort_desc: Ordenação Decrescente template: Template +require_value_to_be_set: Valor a ser definido é requerido translation: Tradução value: Valor view_project: Visualizar projeto report_error: Relatar erro +start: Início interfaces: + group-accordion: + name: Sanfonada + description: Exibir campos ou grupos como seções sanfonadas + start: Início + all_closed: Todos Fechados + first_opened: Primeiro Aberto presentation-links: presentation-links: Links do botão links: Links @@ -1201,3 +1254,5 @@ layouts: calendar: Calendário start_date_field: Campo de Data de Início end_date_field: Campo de Data Final + map: + field: Geometria diff --git a/app/src/lang/translations/ru-RU.yaml b/app/src/lang/translations/ru-RU.yaml index edd2687788..055681b970 100644 --- a/app/src/lang/translations/ru-RU.yaml +++ b/app/src/lang/translations/ru-RU.yaml @@ -21,14 +21,18 @@ #'Proxy', 'Intl' edit_field: Редактировать поле conditions: Условия +maps: Карты item_revision: Редакция duplicate_field: Клонировать поле half_width: Полширины full_width: Вся ширина +limit: Лимит group: Группа +and: и +or: или fill_width: В ширину -field_name_translations: Переводы Названия Поля -enter_password_to_enable_tfa: Введите свой пароль для включения Двухфакторной Аутентификации +field_name_translations: Переводы названия поля +enter_password_to_enable_tfa: Введите свой пароль для включения двухфакторной аутентификации add_field: Добавить поле role_name: Название роли branch: Ветка @@ -44,13 +48,14 @@ create_role: Создать роль create_user: Создать пользователя create_webhook: Создать веб-хук invite_users: Пригласить пользователей +email_examples: "admin{'@'}example.com, user{'@'}example.com..." invite: Пригласить email_already_invited: На адрес "{email}" уже было отправлено приглашение emails: Email-адреса connection_excellent: Отличное Подключение -connection_good: Хорошее Подключение -connection_fair: Нормальное Подключение -connection_poor: Плохое Подключение +connection_good: Хорошее соединение +connection_fair: Сносное соединение +connection_poor: Плохое соединение primary: Первичный rename_folder: Переименовать папку delete_folder: Удалить папку @@ -61,7 +66,7 @@ rename_bookmark: Переименовать закладку update_bookmark: Обновить закладку delete_bookmark: Удалить закладку delete_bookmark_copy: >- - Вы уверены, что хотите удалить закладку "{bookmark}"? Это действие не может быть отменено. + Точно удалить закладку «{bookmark}»? Ее нельзя будет восстановить. logoutReason: SIGN_OUT: Вы вышли SESSION_EXPIRED: Сессия истекла @@ -81,6 +86,7 @@ archive_confirm_count: >- Элементы не выбраны | Вы уверены, что хотите архивировать этот элемент? | Вы уверены, что хотите архивировать эти {count} элементов? reset_system_permissions_to: 'Сбросить системные разрешения для:' reset_system_permissions_copy: Это перезапишет любые индивидуальные разрешения, которые вы могли задать системным коллекциям. Вы уверены? +the_following_are_minimum_permissions: Ниже приведены разрешения, требуемые при включенном доступе к приложению. Их можно расширить, но не сократить. app_access_minimum: Минимальный доступ приложения recommended_defaults: Рекомендуемые значения по умолчанию unarchive: Извлечь их архива @@ -111,13 +117,14 @@ use_custom: Использовать Свой nullable: Разрешить NULL значение allow_null_value: Разрешить NULL значение allow_multiple: Разрешить несколько +allow_multiple_to_be_open: Можно открыть несколько field_standard: Стандарт field_presentation: Представление и Алиасы field_file: Один Файл -field_files: Несколько Файлов +field_files: Несколько файлов field_m2o: Отношение M2O field_m2a: Отношение M2A -field_o2m: Связка O2M +field_o2m: Один ко многим field_m2m: Отношение M2M field_translations: Переводы field_group: Группа полей @@ -142,7 +149,7 @@ field_update_success: 'Обновлено поле: "{field}"' duplicate_where_to: Куда вы хотите дублировать это поле? language: Язык global: Глобальный -admins_have_all_permissions: Администраторы имеют все права +admins_have_all_permissions: У администраторов есть все права camera: Камера exposure: Экспозиция shutter: Затвор @@ -172,6 +179,7 @@ time: Время timestamp: Отметка времени uuid: UUID hash: Хэш +geometry: Геометрия not_available_for_type: Недоступно для этого Типа create_translations: Создать Переводы auto_refresh: Авто обновление @@ -193,12 +201,12 @@ add_m2o_to_collection: 'Добавить Many-to-One в "{collection}"' add_o2m_to_collection: 'Добавить One-to-Many в "{collection}"' add_m2m_to_collection: 'Добавить Many-to-Many в "{collection}"' choose_a_type: Выберите Тип... -determined_by_relationship: Определяется Связкой +determined_by_relationship: Определяется отношением add_note: Добавить заметку для пользователей... default_value: Значение По умолчанию standard_field: Стандартное Поле single_file: Один Файл -multiple_files: Несколько Файлов +multiple_files: Несколько файлов m2o_relationship: Отношение Многие к Одному o2m_relationship: Связка One to Many m2m_relationship: Отношение Многие ко Многим @@ -275,11 +283,11 @@ today: Сегодня yesterday: Вчера delete_comment: Удалить комментарий date-fns_date: PPP -date-fns_time: 'h:mm:ss a' -date-fns_time_no_seconds: 'h:mm a' -date-fns_date_short: 'MMM d, u' -date-fns_time_short: 'h:mma' -date-fns_date_short_no_year: MMM d +date-fns_time: 'HH:mm:ss' +date-fns_time_no_seconds: 'HH:mm' +date-fns_date_short: 'd MMM u' +date-fns_time_short: 'HH:mm' +date-fns_date_short_no_year: d MMM month: Месяц year: Год select_all: Выбрать Все @@ -368,6 +376,7 @@ no_users_copy: В этой роли пока нет пользователей. webhooks_count: 'Нет Веб-хуков | Один Веб-хук | {count} Веб-хуков' no_webhooks_copy: Веб-хуков пока нет. all_items: Все Элементы +any: Любой csv: CSV no_collections: Нет Коллекций create_collection: Создать Коллекцию @@ -378,6 +387,7 @@ display_template_not_setup: Опция шаблона отображения н collection_field_not_setup: Опция поля коллекции настроена некорректно select_a_collection: Выберите Коллекцию active: Активный +inactive: Неактивный users: Пользователи activity: Активность webhooks: Веб-хуки @@ -431,6 +441,7 @@ errors: UNPROCESSABLE_ENTITY: Необрабатываемый объект INTERNAL_SERVER_ERROR: Неожиданная Ошибка NOT_NULL_VIOLATION: Значение не может быть null +security: Безопасность value_hashed: Значение Безопасно Хэшировано bookmark_name: Название закладки... create_bookmark: Создать Закладку @@ -480,6 +491,7 @@ color: Цвет circle: Круг empty_item: Пустой Элемент log_in_with: 'Войти с помощью {provider}' +advanced_settings: Дополнительные настройки advanced_filter: Расширенный Фильтр delete_advanced_filter: Удалить Фильтр change_advanced_filter_operator: Изменить Оператор @@ -506,6 +518,8 @@ operators: nempty: Не пустой all: Содержит эти ключи has: Содержит некоторые из этих ключей + intersects: Пересекает + nintersects: Не пересекает loading: Загрузка... drop_to_upload: Перетащите для Загрузки item: Элемент @@ -562,6 +576,7 @@ label: Метка image_url: URL изображения alt_text: Альтернативный текст media: Медиа +quality: Качество width: Ширина height: Высота source: Источник @@ -725,10 +740,10 @@ fields: title: Заголовок description: Описание tags: Теги - location: Местоположение - storage: Память + location: Локация + storage: Место хранения filename_disk: Имя файла (на диске) - filename_download: Имя файла (Загруженое) + filename_download: Имя файла (при загрузке) metadata: Метаданные type: MIME-тип filesize: Размер файла @@ -750,31 +765,45 @@ fields: email: Email password: Пароль avatar: Аватар - location: Местоположение + location: Локация title: Заголовок description: Описание tags: Теги + user_preferences: Пользовательские настройки language: Язык theme: Тема + theme_auto: Автоматически (как в системе) + theme_light: Светлая тема + theme_dark: Тёмная тема tfa_secret: Двухфакторная аутентификация + admin_options: Настройки администратора status: Статус + status_draft: Черновик + status_invited: Неактивный status_active: Активный + status_suspended: Приостановлен + status_archived: В архиве role: Роль - token: Жетон + token: Ключ доступа + token_placeholder: Укажите достаточно защищенный ключ доступа last_page: Последняя Страница last_access: Последний Доступ directus_settings: - project_name: Имя Проекта - project_url: URL Проекта + project_name: Название проекта + project_url: URL проекта project_color: Цвет Проекта - project_logo: Логотип Проекта - public_foreground: Публичный Передний План - public_background: Публичный Фон - public_note: Публичное Примечание - auth_password_policy: Политика Паролей Входа - auth_login_attempts: Попыток Входа + project_logo: Логотип проекта + public_pages: Публичные страницы + public_foreground: Изображение на переднем плане + public_background: Фоновое изображение + public_note: Заметка + auth_password_policy: Минимальная сложность пароля + auth_login_attempts: Попыток войти + files_and_thumbnails: Файлы и миниатюры + storage_default_folder: Основная папка storage_asset_presets: Пресеты Элементов Хранилища storage_asset_transform: Преобразование Элементов Хранилища + overrides: Переопределить заводские настройки custom_css: Пользовательский CSS directus_fields: collection: Название Коллекции @@ -782,7 +811,7 @@ fields: note: Заметка hidden: Скрыто singleton: Синглтон - translation: Переводы Названия Поля + translation: Переводы названия поля display_template: Шаблон directus_roles: name: Название роли @@ -797,7 +826,12 @@ fields: collection_list: Навигация по Коллекциям directus_webhooks: name: Имя + method: Метод status: Статус + data: Данные + data_label: Отправлять данные о событии + triggers: Триггеры + actions: Действия field_options: directus_collections: track_activity_revisions: Отслеживание активности и изменений @@ -944,6 +978,7 @@ interfaces: select_a_collection: Выберите Коллекцию presentation-divider: divider: Разделитель + description: Разделить поля на секции с заголовками title_placeholder: Введите название... inline_title: Строчный заголовок inline_title_label: Показать заголовок внутри строки @@ -953,7 +988,7 @@ interfaces: description: Выберите значение из выпадающего списка choices_placeholder: Добавить вариант allow_other: Разрешить другие - allow_other_label: Допускаются и другие значения + allow_other_label: Разрешить другие варианты allow_none: Может быть пустым allow_none_label: Можно не указывать значение choices_name_placeholder: Введите название... @@ -1000,18 +1035,34 @@ interfaces: customSyntax_add: Добавить произвольный синтаксис box: Блок / Строчный элемент imageToken: Ключ изображения + imageToken_label: Статичный ключ, добавляемый к адресам изображений map: + map: Карта + description: Указать место на карте zoom: Масштаб + geometry_type: Тип геометрии + geometry_format: Формат + default_view: Вид по умолчанию + invalid_options: Некорректные настройки + invalid_format: Некорректный формат ({format}) + unexpected_geometry: Ожидалось {expected}, а встретилось {got}. + native: Родной + geojson: GeoJSON + lnglat: Долгота, широта (Lon, Lat) + wkt: WKT + wkb: WKB presentation-notice: notice: Уведомление description: Показать короткое уведомление text: Введите содержание уведомления здесь... list-o2m: one-to-many: Один ко многим + description: Выберите связанные элементы no_collection: Коллекция не найдена system-folder: folder: Папка description: Выбрать папку + field_hint: Папка для новых файлов. Ранее загруженные файлы останутся на месте. root_name: Корень файловой библиотеки system_default: Системные настройки по умолчанию select-radio: @@ -1066,6 +1117,9 @@ interfaces: translations: display_template: Шаблон отображения no_collection: Нет Коллекций + list-o2m-tree-view: + description: В виде дерева рекурсивно вложенных элементов + recursive_only: Дерево можно выбрать для рекурсивных отношений user: user: Пользователь description: Выберите существующего пользователя directus @@ -1082,12 +1136,15 @@ interfaces: options_override: Переопределение параметров input-autocomplete-api: input-autocomplete-api: Автоматическое дополнение ввода (API) + results_path: Путь к результатам value_path: Путь значения trigger: Триггер group-detail: show_header: Показывать заголовок группы header_icon: Иконка заголовка header_color: Цвет заголовка + start_open: Раскрыта + start_closed: Свёрнута displays: boolean: boolean: Логическое @@ -1192,3 +1249,15 @@ layouts: calendar: Календарь start_date_field: Поле даты начала end_date_field: Поле даты окончания + map: + map: Карта + basemap: Основа карты + layers: Слои + edit_custom_layers: Редактировать слои + cluster_options: Настройки кластеров + cluster: Использовать кластеры + cluster_radius: Радиус кластера + cluster_minpoints: Минимальный размер кластера + cluster_maxzoom: Максимальный масштаб для кластеров + field: Геометрия + invalid_geometry: Некорректная геометрия diff --git a/app/src/lang/translations/sl-SI.yaml b/app/src/lang/translations/sl-SI.yaml index 4ba81cc0d2..dce00023a4 100644 --- a/app/src/lang/translations/sl-SI.yaml +++ b/app/src/lang/translations/sl-SI.yaml @@ -21,10 +21,12 @@ #'Proxy', 'Intl' edit_field: Uredi polje conditions: Pogoji +maps: Zemljevidi item_revision: Revizija postavke duplicate_field: Podvajanje polja half_width: Polovična širina full_width: Polna širina +limit: Omejitev group: Skupina and: in or: ali @@ -182,6 +184,7 @@ time: Ura timestamp: Časovni žig uuid: UUID hash: Hash +geometry: Geometrija not_available_for_type: Ni na razpolago za ta tip create_translations: Ustvari nove prevode auto_refresh: Samodejno osveži @@ -380,6 +383,7 @@ no_users_copy: Ta vloga še nima uporabnikov. webhooks_count: 'Ni prožilnikov | En prožilnik | Dva prožilnika | Trije prožilniki | Štirje prožilniki | {count} prožilnikov' no_webhooks_copy: Prožilniki ne obstajajo. all_items: Vsi zapisi +any: Katerokoli csv: CSV no_collections: Ni zbirk create_collection: Ustvari zbirko @@ -497,6 +501,7 @@ color: Barva circle: Krog empty_item: Prazen element log_in_with: 'Prijava z {provider}' +advanced_settings: Napredne nastavitve advanced_filter: Napredni filter delete_advanced_filter: Izbriši filter change_advanced_filter_operator: Spremeni operacijo @@ -523,6 +528,10 @@ operators: nempty: Ni prazno all: Vsebuje naslednje ključe has: Vsebuje nekatere ključe + intersects: Presek + nintersects: Ni preseka + intersects_bbox: Seka meje + nintersects_bbox: Ne seka mej loading: Nalaganje ... drop_to_upload: Spustite za prenos item: Zapis @@ -924,6 +933,7 @@ require_value_to_be_set: Zahtevaj vrednost translation: Prevod value: Vrednost view_project: Poglej projekt +weeks: { } report_error: Sporoči napako start: Začetek interfaces: @@ -1052,7 +1062,21 @@ interfaces: imageToken: Žeton slike imageToken_label: Kateri statični žeton se naj doda k sliki map: + map: Zemljevid + description: Izberite lokacijo zoom: Povečaj + geometry_type: Tip geometrije + geometry_format: Geometrijski format + default_view: Privzeti pogled + invalid_options: Neveljavne možnosti + invalid_format: Neveljavna oblika ({format}) + unexpected_geometry: Pričakovano {expected}, vsebina {got}. + fit_bounds: Prilagodi pogled podatkom + native: Izviren + geojson: GeoJSON + lnglat: Dolžina, višina + wkt: WKT + wkb: WKB presentation-notice: notice: Obvestilo description: Pokaži kratko obvestilo @@ -1261,3 +1285,16 @@ layouts: calendar: Koledar start_date_field: Polje začetnega datuma end_date_field: Polje končnega datuma + map: + map: Zemljevid + basemap: Osnovni zemljevid + layers: Plasti + edit_custom_layers: Uredi plasti + cluster_options: Možnosti gruče + cluster: Aktiviraj gruče + cluster_radius: Polmer gruče + cluster_minpoints: Minimalna velikost gruče + cluster_maxzoom: Največja povečava za gruče + fit_data: Prilagodi podatke pogledu + field: Geometrija + invalid_geometry: Neveljavna geometrija diff --git a/app/src/lang/translations/zh-CN.yaml b/app/src/lang/translations/zh-CN.yaml index 286fa6672d..ac645f236d 100644 --- a/app/src/lang/translations/zh-CN.yaml +++ b/app/src/lang/translations/zh-CN.yaml @@ -21,10 +21,12 @@ #'Proxy', 'Intl' edit_field: 编辑 conditions: 条件 +maps: 地图 item_revision: 项目调整 duplicate_field: 复制 half_width: 半宽 full_width: 全宽 +limit: 限制 group: 群组 and: 和 or: 或 @@ -71,6 +73,7 @@ delete_bookmark_copy: >- logoutReason: SIGN_OUT: 注销 SESSION_EXPIRED: 会话过期 +public_label: 公开 public_description: 设置哪些API无需身份验证。 not_allowed: 不允许 directus_version: Directus 版本 @@ -116,6 +119,8 @@ no_access: 禁止访问 use_custom: 自定义 nullable: 允许为空 allow_null_value: 允许NULL值 +allow_multiple: 允许多个 +allow_multiple_to_be_open: 允许打开多个 enter_value_to_replace_nulls: 请输入一个新的值来替换当前在此字段内的任何NULL。 field_standard: 基本设置 field_presentation: 别名 @@ -179,6 +184,7 @@ time: 时间 timestamp: Timestamp uuid: UUID hash: Hash +geometry: 几何 not_available_for_type: 此类型不可用 create_translations: 创建翻译 auto_refresh: 自动刷新 @@ -309,6 +315,7 @@ drag_mode: 拖动模式 cancel_crop: 取消裁剪。 original: 原始 url: URl +import_label: 导入 file_details: 文件信息 dimensions: 尺寸 size: 大小 @@ -376,6 +383,7 @@ no_users_copy: 该角色下还没有用户。 webhooks_count: '没有 Web钩子 | 一个钩子 | {count} 个Web钩子' no_webhooks_copy: 还没有任何web钩子。 all_items: 所有项目 +any: 任意 csv: CSV no_collections: 没有任何集合 create_collection: 创建集合 @@ -386,6 +394,7 @@ display_template_not_setup: 显示的模板选项配置错误 collection_field_not_setup: 集合的字段选项配置错误 select_a_collection: 选择一个集合 active: 激活 +inactive: 非活跃 users: 用户 activity: 活动 webhooks: Webhook @@ -398,6 +407,7 @@ documentation: 文档 sidebar: 侧边栏 duration: 持续时间 charset: 字符集 +second: 秒 file_moved: 文件已移动 collection_created: 集合已创建 modified_on: 修改于 @@ -439,6 +449,7 @@ errors: UNPROCESSABLE_ENTITY: 不可处理的实体 INTERNAL_SERVER_ERROR: 未知错误 NOT_NULL_VIOLATION: 值不能为null +security: 安全 value_hashed: 哈希值 bookmark_name: 书签名称 create_bookmark: 创建书签 @@ -490,6 +501,7 @@ color: 颜色 circle: 圆圈 empty_item: 空项 log_in_with: '使用 {provider} 登录' +advanced_settings: 高级设置 advanced_filter: 高级过滤器 delete_advanced_filter: 删除过滤器 change_advanced_filter_operator: 更改操作者 @@ -516,6 +528,10 @@ operators: nempty: 不是空的 all: 包含这些关键词 has: 包含其中之一的关键词 + intersects: 相交 + nintersects: 不相交 + intersects_bbox: 相交边框 + nintersects_bbox: 没有相交边框 loading: 正在载入... drop_to_upload: 拖拽文件并上传 item: 条目 @@ -559,6 +575,7 @@ user: 用户 no_presets: 无预设 no_presets_copy: 尚未保存预设或书签。 no_presets_cta: 添加预设 +presets_only: 仅预设 create: 创建 on_create: 创建时 on_update: 在更新操作上 @@ -574,6 +591,7 @@ label: 标签 image_url: 图片 Url alt_text: 替代文本 media: Media +quality: 质量 width: 宽 height: 高度 source: 来源 @@ -768,13 +786,23 @@ fields: title: 标题 description: 描述 tags: 标签 + user_preferences: 用户设置 language: 语言 theme: 主题 + theme_auto: 自动 (系统主题) + theme_light: 亮色模式 + theme_dark: 暗色模式 tfa_secret: 2FA(双因素身份验证) + admin_options: 管理员设置 status: 状态 + status_draft: 草稿 + status_invited: 非活跃 status_active: 激活 + status_suspended: 已停用 + status_archived: 已存档 role: 角色 token: Token + token_placeholder: 请输入安全访问令牌... last_page: 尾页 last_access: 上次访问 directus_settings: @@ -782,13 +810,17 @@ fields: project_url: 项目URL project_color: 项目颜色 project_logo: 项目 Logo + public_pages: 公开页面 public_foreground: 公共前景 public_background: 公共背景 public_note: 公共便笺 auth_password_policy: 认证密码策略 auth_login_attempts: 尝试认证登录次数 + files_and_thumbnails: 文件和缩略图 + storage_default_folder: 默认存储文件夹 storage_asset_presets: 存储资产预设 storage_asset_transform: 存储资产转换 + overrides: 应用设置覆盖 custom_css: 自定义 CSS directus_fields: collection: 集合名称 @@ -811,7 +843,12 @@ fields: collection_list: 集合导航 directus_webhooks: name: 名称 + method: 方法 status: 状态 + data: 数据 + data_label: 发送事件数据 + triggers: 触发条件 + actions: 操作 field_options: directus_collections: track_activity_revisions: 跟踪活动和历史修改版本 @@ -892,11 +929,21 @@ sort_direction: 排序 sort_asc: 升序 sort_desc: 降序 template: 模板 +require_value_to_be_set: 需要设置值 translation: 翻译 value: 值 view_project: 查看项目 report_error: 报告错误 +start: 开始 interfaces: + group-accordion: + name: 折叠 + description: 在折叠面板中显示字段或分组 + start: 开始 + all_closed: 全部已关闭 + first_opened: 最早打开 + all_opened: 全部已打开 + accordion_mode: 折叠模式 presentation-links: presentation-links: 按钮链接 links: 链接 @@ -917,6 +964,8 @@ interfaces: description: 通过复选框选择多个选项 value_combining: 组合值 value_combining_note: 控制嵌套选择时存储的值。 + show_all: 显示全部 + show_selected: 显示所选 input-code: code: 代码 description: 编辑或分享代码片段 @@ -1011,7 +1060,20 @@ interfaces: imageToken: 图像Token imageToken_label: 添加到源图片的Token map: + map: 地图 + description: 选择地图上的位置 zoom: 缩放 + geometry_type: 几何类型 + geometry_format: 几何格式 + default_view: 默认视图 + invalid_options: 无效选项 + invalid_format: 无效格式 ({format}) + unexpected_geometry: 需要 {expected},但收到 {got}。 + native: 原生 + geojson: GeoJSON + lnglat: 经度、纬度 + wkt: WKT + wkb: WKB presentation-notice: notice: 提示 description: 显示一个快捷提示 @@ -1209,3 +1271,6 @@ layouts: calendar: 日历 start_date_field: 开始日期 end_date_field: 结束日期 + map: + map: 地图 + field: 几何 From 8c965ba1e742fc16f410aad45a3d8f9f4be46664 Mon Sep 17 00:00:00 2001 From: Rob Date: Thu, 19 Aug 2021 07:51:45 -0700 Subject: [PATCH 035/284] Fix SDK Tests (#7469) * POST instead of PATCH for invite accept test * Replace Jest JSDOM environment Using `jest-environment-jsdom-global` didn't seem to bring any used advantages over the default `jest-environment-node` * remove mockdate, use modern jest fake timers * update package lock Co-authored-by: Rijk van Zanten Co-authored-by: Jay Cammarano <67079013+jaycammarano@users.noreply.github.com> --- package-lock.json | 338 +----------------- packages/sdk/package.json | 3 +- packages/sdk/tests/base/auth.browser.test.ts | 18 +- packages/sdk/tests/base/auth.node.test.ts | 20 +- .../sdk/tests/base/directus.browser.test.ts | 2 +- .../tests/base/storage/localstorage.test.ts | 2 +- packages/sdk/tests/handlers/invites.test.ts | 2 +- packages/sdk/tests/utils.ts | 30 +- 8 files changed, 48 insertions(+), 367 deletions(-) diff --git a/package-lock.json b/package-lock.json index 44b63703e8..4974123b5b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -33954,12 +33954,6 @@ "node": ">=10" } }, - "node_modules/mockdate": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/mockdate/-/mockdate-3.0.5.tgz", - "integrity": "sha512-iniQP4rj1FhBdBYS/+eQv7j1tadJ9lJtdzgOpvsOHng/GbcDh2Fhdeq+ZRldrPYdXvCyfFUmFeEwEGXZB5I/AQ==", - "dev": true - }, "node_modules/modify-values": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz", @@ -58824,8 +58818,7 @@ "argon2": "0.28.2", "dotenv": "10.0.0", "jest": "27.0.6", - "jest-environment-jsdom-global": "2.0.4", - "mockdate": "3.0.5", + "jest-environment-jsdom": "^27.0.6", "nock": "13.1.1", "npm-run-all": "4.1.5", "rimraf": "3.0.2", @@ -58839,178 +58832,6 @@ "typescript": "4.3.5" } }, - "packages/sdk/node_modules/@jest/environment": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-26.6.2.tgz", - "integrity": "sha512-nFy+fHl28zUrRsCeMB61VDThV1pVTtlEokBRgqPrcT1JNq4yRNIyTHfyht6PqtUvY9IsuLGTrbG8kPXjSZIZwA==", - "dev": true, - "peer": true, - "dependencies": { - "@jest/fake-timers": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "jest-mock": "^26.6.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "packages/sdk/node_modules/@jest/fake-timers": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-26.6.2.tgz", - "integrity": "sha512-14Uleatt7jdzefLPYM3KLcnUl1ZNikaKq34enpb5XG9i81JpppDb5muZvonvKyrl7ftEHkKS5L5/eB/kxJ+bvA==", - "dev": true, - "peer": true, - "dependencies": { - "@jest/types": "^26.6.2", - "@sinonjs/fake-timers": "^6.0.1", - "@types/node": "*", - "jest-message-util": "^26.6.2", - "jest-mock": "^26.6.2", - "jest-util": "^26.6.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "packages/sdk/node_modules/@jest/types": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", - "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", - "dev": true, - "peer": true, - "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^15.0.0", - "chalk": "^4.0.0" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "packages/sdk/node_modules/@sinonjs/fake-timers": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz", - "integrity": "sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA==", - "dev": true, - "peer": true, - "dependencies": { - "@sinonjs/commons": "^1.7.0" - } - }, - "packages/sdk/node_modules/@types/yargs": { - "version": "15.0.14", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", - "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", - "dev": true, - "peer": true, - "dependencies": { - "@types/yargs-parser": "*" - } - }, - "packages/sdk/node_modules/ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", - "dev": true, - "peer": true - }, - "packages/sdk/node_modules/is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", - "dev": true, - "peer": true, - "dependencies": { - "ci-info": "^2.0.0" - }, - "bin": { - "is-ci": "bin.js" - } - }, - "packages/sdk/node_modules/jest-environment-jsdom": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-26.6.2.tgz", - "integrity": "sha512-jgPqCruTlt3Kwqg5/WVFyHIOJHsiAvhcp2qiR2QQstuG9yWox5+iHpU3ZrcBxW14T4fe5Z68jAfLRh7joCSP2Q==", - "dev": true, - "peer": true, - "dependencies": { - "@jest/environment": "^26.6.2", - "@jest/fake-timers": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "jest-mock": "^26.6.2", - "jest-util": "^26.6.2", - "jsdom": "^16.4.0" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "packages/sdk/node_modules/jest-environment-jsdom-global": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom-global/-/jest-environment-jsdom-global-2.0.4.tgz", - "integrity": "sha512-1vB8q+PrszXW4Pf7Zgp3eQ4oNVbA7GY6+jmrg1qi6RtYRWDJ60/xdkhjqAbQpX8BRyvqQJYQi66LXER5YNeHXg==", - "dev": true, - "peerDependencies": { - "jest-environment-jsdom": "22.x || 23.x || 24.x || 25.x || 26.x" - } - }, - "packages/sdk/node_modules/jest-message-util": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", - "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", - "dev": true, - "peer": true, - "dependencies": { - "@babel/code-frame": "^7.0.0", - "@jest/types": "^26.6.2", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "micromatch": "^4.0.2", - "pretty-format": "^26.6.2", - "slash": "^3.0.0", - "stack-utils": "^2.0.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "packages/sdk/node_modules/jest-mock": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-26.6.2.tgz", - "integrity": "sha512-YyFjePHHp1LzpzYcmgqkJ0nm0gg/lJx2aZFzFy1S6eUqNjXsOqTK10zNRff2dNfssgokjkG65OlWNcIlgd3zew==", - "dev": true, - "peer": true, - "dependencies": { - "@jest/types": "^26.6.2", - "@types/node": "*" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "packages/sdk/node_modules/jest-util": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", - "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", - "dev": true, - "peer": true, - "dependencies": { - "@jest/types": "^26.6.2", - "@types/node": "*", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "is-ci": "^2.0.0", - "micromatch": "^4.0.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, "packages/shared": { "name": "@directus/shared", "version": "9.0.0-rc.90", @@ -64101,8 +63922,7 @@ "axios": "^0.21.1", "dotenv": "10.0.0", "jest": "27.0.6", - "jest-environment-jsdom-global": "2.0.4", - "mockdate": "3.0.5", + "jest-environment-jsdom": "^27.0.6", "nock": "13.1.1", "npm-run-all": "4.1.5", "rimraf": "3.0.2", @@ -64114,154 +63934,6 @@ "ts-jest": "27.0.4", "ts-node": "10.2.1", "typescript": "4.3.5" - }, - "dependencies": { - "@jest/environment": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-26.6.2.tgz", - "integrity": "sha512-nFy+fHl28zUrRsCeMB61VDThV1pVTtlEokBRgqPrcT1JNq4yRNIyTHfyht6PqtUvY9IsuLGTrbG8kPXjSZIZwA==", - "dev": true, - "peer": true, - "requires": { - "@jest/fake-timers": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "jest-mock": "^26.6.2" - } - }, - "@jest/fake-timers": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-26.6.2.tgz", - "integrity": "sha512-14Uleatt7jdzefLPYM3KLcnUl1ZNikaKq34enpb5XG9i81JpppDb5muZvonvKyrl7ftEHkKS5L5/eB/kxJ+bvA==", - "dev": true, - "peer": true, - "requires": { - "@jest/types": "^26.6.2", - "@sinonjs/fake-timers": "^6.0.1", - "@types/node": "*", - "jest-message-util": "^26.6.2", - "jest-mock": "^26.6.2", - "jest-util": "^26.6.2" - } - }, - "@jest/types": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", - "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", - "dev": true, - "peer": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^15.0.0", - "chalk": "^4.0.0" - } - }, - "@sinonjs/fake-timers": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz", - "integrity": "sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA==", - "dev": true, - "peer": true, - "requires": { - "@sinonjs/commons": "^1.7.0" - } - }, - "@types/yargs": { - "version": "15.0.14", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", - "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", - "dev": true, - "peer": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", - "dev": true, - "peer": true - }, - "is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", - "dev": true, - "peer": true, - "requires": { - "ci-info": "^2.0.0" - } - }, - "jest-environment-jsdom": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-26.6.2.tgz", - "integrity": "sha512-jgPqCruTlt3Kwqg5/WVFyHIOJHsiAvhcp2qiR2QQstuG9yWox5+iHpU3ZrcBxW14T4fe5Z68jAfLRh7joCSP2Q==", - "dev": true, - "peer": true, - "requires": { - "@jest/environment": "^26.6.2", - "@jest/fake-timers": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "jest-mock": "^26.6.2", - "jest-util": "^26.6.2", - "jsdom": "^16.4.0" - } - }, - "jest-environment-jsdom-global": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom-global/-/jest-environment-jsdom-global-2.0.4.tgz", - "integrity": "sha512-1vB8q+PrszXW4Pf7Zgp3eQ4oNVbA7GY6+jmrg1qi6RtYRWDJ60/xdkhjqAbQpX8BRyvqQJYQi66LXER5YNeHXg==", - "dev": true, - "requires": {} - }, - "jest-message-util": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", - "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", - "dev": true, - "peer": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@jest/types": "^26.6.2", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "micromatch": "^4.0.2", - "pretty-format": "^26.6.2", - "slash": "^3.0.0", - "stack-utils": "^2.0.2" - } - }, - "jest-mock": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-26.6.2.tgz", - "integrity": "sha512-YyFjePHHp1LzpzYcmgqkJ0nm0gg/lJx2aZFzFy1S6eUqNjXsOqTK10zNRff2dNfssgokjkG65OlWNcIlgd3zew==", - "dev": true, - "peer": true, - "requires": { - "@jest/types": "^26.6.2", - "@types/node": "*" - } - }, - "jest-util": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", - "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", - "dev": true, - "peer": true, - "requires": { - "@jest/types": "^26.6.2", - "@types/node": "*", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "is-ci": "^2.0.0", - "micromatch": "^4.0.2" - } - } } }, "@directus/sdk-js": { @@ -89082,12 +88754,6 @@ "mkdirp": "^1.0.3" } }, - "mockdate": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/mockdate/-/mockdate-3.0.5.tgz", - "integrity": "sha512-iniQP4rj1FhBdBYS/+eQv7j1tadJ9lJtdzgOpvsOHng/GbcDh2Fhdeq+ZRldrPYdXvCyfFUmFeEwEGXZB5I/AQ==", - "dev": true - }, "modify-values": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz", diff --git a/packages/sdk/package.json b/packages/sdk/package.json index 79767be881..46aba31d57 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -53,8 +53,7 @@ "argon2": "0.28.2", "dotenv": "10.0.0", "jest": "27.0.6", - "jest-environment-jsdom-global": "2.0.4", - "mockdate": "3.0.5", + "jest-environment-jsdom": "^27.0.6", "nock": "13.1.1", "npm-run-all": "4.1.5", "rimraf": "3.0.2", diff --git a/packages/sdk/tests/base/auth.browser.test.ts b/packages/sdk/tests/base/auth.browser.test.ts index 148ffb930d..f6fa2b4013 100644 --- a/packages/sdk/tests/base/auth.browser.test.ts +++ b/packages/sdk/tests/base/auth.browser.test.ts @@ -1,5 +1,5 @@ /** - * @jest-environment jest-environment-jsdom-global + * @jest-environment jsdom */ import { Auth, AxiosTransport, Directus, MemoryStorage } from '../../src'; @@ -73,7 +73,8 @@ describe('auth (browser)', function () { await timers(async ({ tick, flush }) => { const sdk = new Directus(url); - await sdk.auth.login( + + const loginPromise = sdk.auth.login( { email: 'wolfulus@gmail.com', password: 'password', @@ -88,12 +89,16 @@ describe('auth (browser)', function () { await tick(2000); + await loginPromise; + expect(scope.pendingMocks().length).toBe(1); expect(sdk.auth.expiring).toBe(false); - - await tick(500); + expect(sdk.storage.auth_token).toBe('access_token'); + expect(sdk.storage.auth_expires).toBe(107000); + await tick(5000); expect(scope.pendingMocks().length).toBe(1); + await flush(); expect(sdk.auth.expiring).toBe(true); await new Promise((resolve) => { @@ -102,9 +107,10 @@ describe('auth (browser)', function () { }); }); - expect(sdk.storage.auth_expires).toBe(107500); - + expect(sdk.storage.auth_expires).toBe(112000); expect(scope.pendingMocks().length).toBe(0); + expect(sdk.storage.auth_token).toBe('new_access_token'); + expect(sdk.auth.expiring).toBe(false); }, 100000); }); diff --git a/packages/sdk/tests/base/auth.node.test.ts b/packages/sdk/tests/base/auth.node.test.ts index 01bf3c3092..e35bb4bd32 100644 --- a/packages/sdk/tests/base/auth.node.test.ts +++ b/packages/sdk/tests/base/auth.node.test.ts @@ -58,9 +58,12 @@ describe('auth (node)', function () { }, }); + expect(scope.pendingMocks().length).toBe(2); + await timers(async ({ tick, flush }) => { const sdk = new Directus(url); - await sdk.auth.login( + + const loginPromise = sdk.auth.login( { email: 'wolfulus@gmail.com', password: 'password', @@ -75,12 +78,16 @@ describe('auth (node)', function () { await tick(2000); + await loginPromise; + expect(scope.pendingMocks().length).toBe(1); expect(sdk.auth.expiring).toBe(false); - - await tick(500); + expect(sdk.storage.auth_token).toBe('some_node_access_token'); + expect(sdk.storage.auth_expires).toBe(107000); + await tick(5000); expect(scope.pendingMocks().length).toBe(1); + await flush(); expect(sdk.auth.expiring).toBe(true); await new Promise((resolve) => { @@ -89,12 +96,11 @@ describe('auth (node)', function () { }); }); - expect(sdk.storage.auth_expires).toBe(107500); - + expect(sdk.storage.auth_expires).toBe(112000); + expect(scope.pendingMocks().length).toBe(0); + expect(sdk.storage.auth_token).toBe('a_new_node_access_token'); expect(sdk.auth.expiring).toBe(false); }, 100000); - - expect(scope.pendingMocks().length).toBe(0); }); test(`logout sends a refresh token in body`, async (url, nock) => { diff --git a/packages/sdk/tests/base/directus.browser.test.ts b/packages/sdk/tests/base/directus.browser.test.ts index 7176127daf..ee6764acbd 100644 --- a/packages/sdk/tests/base/directus.browser.test.ts +++ b/packages/sdk/tests/base/directus.browser.test.ts @@ -1,5 +1,5 @@ /** - * @jest-environment jest-environment-jsdom-global + * @jest-environment jsdom */ import { Directus, LocalStorage } from '../../src/base'; diff --git a/packages/sdk/tests/base/storage/localstorage.test.ts b/packages/sdk/tests/base/storage/localstorage.test.ts index 3421f3c108..33f3e6a9f6 100644 --- a/packages/sdk/tests/base/storage/localstorage.test.ts +++ b/packages/sdk/tests/base/storage/localstorage.test.ts @@ -1,5 +1,5 @@ /** - * @jest-environment jest-environment-jsdom-global + * @jest-environment jsdom */ import { LocalStorage } from '../../../src/base/storage'; diff --git a/packages/sdk/tests/handlers/invites.test.ts b/packages/sdk/tests/handlers/invites.test.ts index 87e4d1037a..1d3f7cadb3 100644 --- a/packages/sdk/tests/handlers/invites.test.ts +++ b/packages/sdk/tests/handlers/invites.test.ts @@ -22,7 +22,7 @@ describe('invites', function () { test(`accept`, async (url, nock) => { const scope = nock() - .patch('/users/invite/accept', { + .post('/users/invite/accept', { token: 'token', password: 'password1234', }) diff --git a/packages/sdk/tests/utils.ts b/packages/sdk/tests/utils.ts index f622481bf1..9f8ff7de67 100644 --- a/packages/sdk/tests/utils.ts +++ b/packages/sdk/tests/utils.ts @@ -1,5 +1,5 @@ -import md from 'mockdate'; import nock, { back, BackMode } from 'nock'; +import { setImmediate, setTimeout, clearImmediate } from 'timers'; export const URL = process.env.TEST_URL || 'http://localhost'; export const MODE = process.env.TEST_MODE || 'dryrun'; @@ -27,6 +27,10 @@ export function test(name: string, test: Test, settings?: TestSettings): void { await test(settings?.url || URL, scope); } + // `clearImmediate` doesn't exist in the jsdom environment and nock throws ReferenceError + if (global.clearImmediate !== typeof 'function') { + global.clearImmediate = clearImmediate; + } nock.abortPendingRequests(); nock.cleanAll(); }); @@ -42,40 +46,41 @@ export async function timers( initial: number = Date.now() ): Promise { const originals = { - setTimeout: global.setTimeout, - setImmediate: global.setImmediate, + setTimeout: setTimeout, + setImmediate: setImmediate, }; - md.set(new Date(initial)); + jest.useFakeTimers(); + jest.setSystemTime(new Date(initial)); let travel = 0; try { - jest.useFakeTimers(); const tick = async (ms: number) => { travel += ms; - md.set(initial + travel); await Promise.resolve().then(() => jest.advanceTimersByTime(ms)); }; const skip = async (func: () => Promise, date = false) => { - if (date) { - md.reset(); - } jest.useRealTimers(); try { await func(); } finally { if (date) { - md.set(initial + travel); + jest.setSystemTime(initial + travel); } jest.useFakeTimers(); } }; - const flush = () => new Promise((resolve) => originals.setImmediate(resolve)); + const flush = () => + new Promise((resolve) => { + jest.runAllTicks(); + + originals.setImmediate(resolve); + }); const sleep = (ms: number) => new Promise((resolve) => { travel += ms; - md.set(initial + travel); + jest.advanceTimersByTime(travel); originals.setTimeout(resolve, ms); }); @@ -86,7 +91,6 @@ export async function timers( sleep, }); } finally { - md.reset(); jest.clearAllTimers(); jest.useRealTimers(); } From d2823799f84a5578a3fa73c0ef989419e4cbcdc5 Mon Sep 17 00:00:00 2001 From: Oreille <33065839+Oreilles@users.noreply.github.com> Date: Thu, 19 Aug 2021 17:54:12 +0200 Subject: [PATCH 036/284] Set simple select mode when the value is loaded. (#7505) Co-authored-by: Rijk van Zanten --- app/src/interfaces/map/map.vue | 1 + 1 file changed, 1 insertion(+) diff --git a/app/src/interfaces/map/map.vue b/app/src/interfaces/map/map.vue index e6594f9e08..fc4e4d8a2f 100644 --- a/app/src/interfaces/map/map.vue +++ b/app/src/interfaces/map/map.vue @@ -218,6 +218,7 @@ export default defineComponent({ } else { if (!isEqual(value, currentGeometry && serialize(currentGeometry))) { loadValueFromProps(); + controls.draw.changeMode('simple_select'); } } if (props.disabled) { From 05b3f27b78d05aec0eb30132d8f0d36015969cb7 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 19 Aug 2021 12:52:43 -0400 Subject: [PATCH 037/284] pin dependency jest-environment-jsdom to 27.0.6 (#7504) Co-authored-by: Renovate Bot --- package-lock.json | 4 ++-- packages/sdk/package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4974123b5b..45cff8600b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -58818,7 +58818,7 @@ "argon2": "0.28.2", "dotenv": "10.0.0", "jest": "27.0.6", - "jest-environment-jsdom": "^27.0.6", + "jest-environment-jsdom": "27.0.6", "nock": "13.1.1", "npm-run-all": "4.1.5", "rimraf": "3.0.2", @@ -63922,7 +63922,7 @@ "axios": "^0.21.1", "dotenv": "10.0.0", "jest": "27.0.6", - "jest-environment-jsdom": "^27.0.6", + "jest-environment-jsdom": "27.0.6", "nock": "13.1.1", "npm-run-all": "4.1.5", "rimraf": "3.0.2", diff --git a/packages/sdk/package.json b/packages/sdk/package.json index 46aba31d57..576c290495 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -53,7 +53,7 @@ "argon2": "0.28.2", "dotenv": "10.0.0", "jest": "27.0.6", - "jest-environment-jsdom": "^27.0.6", + "jest-environment-jsdom": "27.0.6", "nock": "13.1.1", "npm-run-all": "4.1.5", "rimraf": "3.0.2", From 1982a08fdf41cfff793cc235f2c8604ab283cca9 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 19 Aug 2021 15:18:59 -0400 Subject: [PATCH 038/284] update dependency npm to v7.21.0 (#7506) Co-authored-by: Renovate Bot --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 6ad7846540..d99911cebb 100644 --- a/package.json +++ b/package.json @@ -75,6 +75,6 @@ }, "volta": { "node": "16.5.0", - "npm": "7.20.6" + "npm": "7.21.0" } } From 6efc916eb561f34565b7bf770caaece62fc1f660 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 19 Aug 2021 15:19:16 -0400 Subject: [PATCH 039/284] update dependency pinia to v2.0.0-rc.6 (#7503) Co-authored-by: Renovate Bot --- app/package.json | 2 +- package-lock.json | 22 +++++++++++----------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/app/package.json b/app/package.json index f5adb3b09d..fd7bfa7bd0 100644 --- a/app/package.json +++ b/app/package.json @@ -85,7 +85,7 @@ "mitt": "3.0.0", "nanoid": "3.1.25", "p-queue": "7.1.0", - "pinia": "2.0.0-rc.4", + "pinia": "2.0.0-rc.6", "prettier": "2.3.2", "pretty-ms": "7.0.1", "qrcode": "1.4.4", diff --git a/package-lock.json b/package-lock.json index 45cff8600b..8a458cc704 100644 --- a/package-lock.json +++ b/package-lock.json @@ -439,7 +439,7 @@ "mitt": "3.0.0", "nanoid": "3.1.25", "p-queue": "7.1.0", - "pinia": "2.0.0-rc.4", + "pinia": "2.0.0-rc.6", "prettier": "2.3.2", "pretty-ms": "7.0.1", "qrcode": "1.4.4", @@ -37255,19 +37255,19 @@ } }, "node_modules/pinia": { - "version": "2.0.0-rc.4", - "resolved": "https://registry.npmjs.org/pinia/-/pinia-2.0.0-rc.4.tgz", - "integrity": "sha512-I43V1TIFyDWT4UTi1CPLQXQZYXGQHQMKpDPI+oxC2fv0c+ej0fQBoKCn4WbfRWB+Vf5chhWM97GFLI+OWmUQEQ==", + "version": "2.0.0-rc.6", + "resolved": "https://registry.npmjs.org/pinia/-/pinia-2.0.0-rc.6.tgz", + "integrity": "sha512-IqArmLmWJB5wZzELZfFF42bMaulo6cjMvL1wgUjWfmzaGCt1HYOAXN86s6HrdAueeEWj9Ov6lNNOHB1DFQxthw==", "dev": true, "dependencies": { "@vue/devtools-api": "^6.0.0-beta.15", - "vue-demi": "latest" + "vue-demi": "*" }, "funding": { "url": "https://github.com/sponsors/posva" }, "peerDependencies": { - "@vue/composition-api": "^1.1.0", + "@vue/composition-api": "^1.1.1", "typescript": "^4.3.5", "vue": "^2.6.14 || ^3.2.0" }, @@ -60840,7 +60840,7 @@ "mitt": "3.0.0", "nanoid": "3.1.25", "p-queue": "7.1.0", - "pinia": "2.0.0-rc.4", + "pinia": "2.0.0-rc.6", "prettier": "2.3.2", "pretty-ms": "7.0.1", "qrcode": "1.4.4", @@ -91416,13 +91416,13 @@ "dev": true }, "pinia": { - "version": "2.0.0-rc.4", - "resolved": "https://registry.npmjs.org/pinia/-/pinia-2.0.0-rc.4.tgz", - "integrity": "sha512-I43V1TIFyDWT4UTi1CPLQXQZYXGQHQMKpDPI+oxC2fv0c+ej0fQBoKCn4WbfRWB+Vf5chhWM97GFLI+OWmUQEQ==", + "version": "2.0.0-rc.6", + "resolved": "https://registry.npmjs.org/pinia/-/pinia-2.0.0-rc.6.tgz", + "integrity": "sha512-IqArmLmWJB5wZzELZfFF42bMaulo6cjMvL1wgUjWfmzaGCt1HYOAXN86s6HrdAueeEWj9Ov6lNNOHB1DFQxthw==", "dev": true, "requires": { "@vue/devtools-api": "^6.0.0-beta.15", - "vue-demi": "latest" + "vue-demi": "*" } }, "pinkie": { From c1c05d4c4fbeb991f5c3069493ea9750c7cb6bb4 Mon Sep 17 00:00:00 2001 From: Rijk van Zanten Date: Thu, 19 Aug 2021 22:19:46 +0200 Subject: [PATCH 040/284] Allow fetching singleton content through pk route (#7509) Fixes #7351 --- api/src/controllers/items.ts | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/api/src/controllers/items.ts b/api/src/controllers/items.ts index 36121abd34..9d2a6f68b5 100644 --- a/api/src/controllers/items.ts +++ b/api/src/controllers/items.ts @@ -97,10 +97,6 @@ router.get( asyncHandler(async (req, res, next) => { if (req.params.collection.startsWith('directus_')) throw new ForbiddenException(); - if (req.singleton) { - throw new RouteNotFoundException(req.path); - } - const service = new ItemsService(req.collection, { accountability: req.accountability, schema: req.schema, @@ -111,6 +107,7 @@ router.get( res.locals.payload = { data: result || null, }; + return next(); }), respond From 256139ffd24e91e47daa20122531968043c26190 Mon Sep 17 00:00:00 2001 From: rijkvanzanten Date: Thu, 19 Aug 2021 17:11:49 -0400 Subject: [PATCH 041/284] Fix double drop relation --- api/src/database/index.ts | 5 +++++ api/src/services/collections.ts | 9 --------- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/api/src/database/index.ts b/api/src/database/index.ts index 9a3b2ed434..b2bd5037f2 100644 --- a/api/src/database/index.ts +++ b/api/src/database/index.ts @@ -54,7 +54,12 @@ export default function getDatabase(): Knex { connection: env.DB_CONNECTION_STRING || connectionConfig, log: { warn: (msg) => { + // Ignore warnings about returning not being supported in some DBs if (msg.startsWith('.returning()')) return; + + // Ignore warning about MySQL not supporting TRX for DDL + if (msg.startsWith('Transaction was implicitly committed, do not mix transactions and DDL with MySQL')) return; + return logger.warn(msg); }, error: (msg) => logger.error(msg), diff --git a/api/src/services/collections.ts b/api/src/services/collections.ts index df6a55d5bc..7bf1995a84 100644 --- a/api/src/services/collections.ts +++ b/api/src/services/collections.ts @@ -414,15 +414,6 @@ export class CollectionsService { if (relation.related_collection === collectionKey) { await fieldsService.deleteField(relation.collection, relation.field); } - - const isM2O = relation.collection === collectionKey; - - // Delete any fields that have a relationship to/from the current collection - if (isM2O && relation.related_collection && relation.meta?.one_field) { - await fieldsService.deleteField(relation.related_collection!, relation.meta.one_field); - } else { - await fieldsService.deleteField(relation.collection, relation.field); - } } const m2aRelationsThatIncludeThisCollection = this.schema.relations.filter((relation) => { From ebb810b9af24d9c08b390dcfd114f2504c48d7c9 Mon Sep 17 00:00:00 2001 From: Rijk van Zanten Date: Fri, 20 Aug 2021 00:15:43 +0200 Subject: [PATCH 042/284] Explicitly nullify user/role when the other is set in presets (#7512) Fixes #7366 --- app/src/layouts/map/index.ts | 5 +++-- app/src/modules/settings/routes/presets/item.vue | 2 ++ packages/shared/src/types/layouts.ts | 1 + 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/app/src/layouts/map/index.ts b/app/src/layouts/map/index.ts index aa523711d2..2fb6a57990 100644 --- a/app/src/layouts/map/index.ts +++ b/app/src/layouts/map/index.ts @@ -8,7 +8,8 @@ import { useI18n } from 'vue-i18n'; import { toRefs, computed, ref, watch, Ref } from 'vue'; import { CameraOptions, AnyLayer } from 'maplibre-gl'; -import { GeometryOptions, toGeoJSON } from '@/utils/geometry'; +import { toGeoJSON } from '@/utils/geometry'; +import { GeometryOptions } from '@directus/shared/types'; import { layers } from './style'; import { useRouter } from 'vue-router'; import { Filter } from '@directus/shared/types'; @@ -56,7 +57,7 @@ export default defineLayout({ const page = syncOption(layoutQuery, 'page', 1); const limit = syncOption(layoutQuery, 'limit', 1000); - const sort = syncOption(layoutQuery, 'sort', fieldsInCollection.value[0].field); + const sort = syncOption(layoutQuery, 'sort', fieldsInCollection.value?.[0]?.field); const customLayerDrawerOpen = ref(false); const layoutElement = ref(null); diff --git a/app/src/modules/settings/routes/presets/item.vue b/app/src/modules/settings/routes/presets/item.vue index fb1e120845..e10118c230 100644 --- a/app/src/modules/settings/routes/presets/item.vue +++ b/app/src/modules/settings/routes/presets/item.vue @@ -218,8 +218,10 @@ export default defineComponent({ if (edits.value.scope) { if (edits.value.scope.startsWith('role_')) { editsParsed.role = edits.value.scope.substring(5); + editsParsed.user = null; } else if (edits.value.scope.startsWith('user_')) { editsParsed.user = edits.value.scope.substring(5); + editsParsed.role = null; } else { editsParsed.role = null; editsParsed.user = null; diff --git a/packages/shared/src/types/layouts.ts b/packages/shared/src/types/layouts.ts index a9b85c17e5..36953c00b5 100644 --- a/packages/shared/src/types/layouts.ts +++ b/packages/shared/src/types/layouts.ts @@ -7,6 +7,7 @@ export interface LayoutConfig { name: string; icon: string; component: Component; + smallHeader?: boolean; slots: { options: Component; sidebar: Component; From 301db2e1206e046a9ecc5fcb45580a775d48a2f8 Mon Sep 17 00:00:00 2001 From: Rijk van Zanten Date: Fri, 20 Aug 2021 00:36:58 +0200 Subject: [PATCH 043/284] Prevent 400 error on translations load for to-be-created items (#7513) Fixes #7477 --- app/src/interfaces/translations/translations.vue | 1 + 1 file changed, 1 insertion(+) diff --git a/app/src/interfaces/translations/translations.vue b/app/src/interfaces/translations/translations.vue index ef115d8b26..8c1398e8d5 100644 --- a/app/src/interfaces/translations/translations.vue +++ b/app/src/interfaces/translations/translations.vue @@ -275,6 +275,7 @@ export default defineComponent({ async function fetchKeyMap() { if (!props.value) return; if (keyMap.value) return; + if (!existingPrimaryKeys.value?.length) return; const collection = translationsRelation.value?.collection; From cbefa740706b4a8241a5101e8e1f2750cd5cd27b Mon Sep 17 00:00:00 2001 From: Jacob Rienstra Date: Fri, 20 Aug 2021 09:45:37 -0400 Subject: [PATCH 044/284] Update dependencies of gatsby-source-directus (#7523) * basic gatsby source plugin fix * update import of sdk * remove tar Co-authored-by: Rijk van Zanten --- .../gatsby-source-directus/gatsby-node.js | 46 ++++++------------- packages/gatsby-source-directus/package.json | 4 +- 2 files changed, 16 insertions(+), 34 deletions(-) diff --git a/packages/gatsby-source-directus/gatsby-node.js b/packages/gatsby-source-directus/gatsby-node.js index e8f82ff8fc..24c449a5be 100644 --- a/packages/gatsby-source-directus/gatsby-node.js +++ b/packages/gatsby-source-directus/gatsby-node.js @@ -1,28 +1,11 @@ const invariant = require('invariant'); -const Directus = require('@directus/sdk-js'); -const { sourceNodes } = require('@lnfusion/gatsby-source-graphql'); +const { Directus } = require('@directus/sdk'); +const { sourceNodes } = require('gatsby-source-graphql/gatsby-node'); const { createRemoteFileNode } = require('gatsby-source-filesystem'); const ms = require('ms'); const chalk = require('chalk'); -/** - * Stores authentication data in memory - */ -class MemoryStore { - constructor() { - this.values = {}; - } - - async getItem(key) { - return this.values[key]; - } - - async setItem(key, value) { - this.values[key] = value; - } -} - /** * Normalizes Directus urls. */ @@ -114,17 +97,12 @@ exports.sourceNodes = async (gatsby, options) => { `can be either a number (seconds) or a string (5s, 1m, ...)` ); - const directus = new Directus(endpoints.base, { - auth: { - mode: 'json', - autoRefresh: true, - storage: new MemoryStore(), - }, - }); + const directus = new Directus(endpoints.base); + let authResult; if (hasAuth && !hasToken) { try { - await directus.auth.login({ + authResult = await directus.auth.login({ email: auth?.email, password: auth?.password, }); @@ -141,13 +119,17 @@ exports.sourceNodes = async (gatsby, options) => { Object.assign(obj, (await graphql?.headers()) || {}); } - if (!hasToken) { - return obj; + if (hasToken) { + return Object.assign(obj, { + Authorization: `Bearer ${auth?.token}`, + }); } - return Object.assign(obj, { - Authorization: `Bearer ${auth?.token}`, - }); + if (authResult?.access_token) { + return Object.assign(obj, { + Authorization: `Bearer ${authResult?.access_token}`, + }); + } }; return await sourceNodes(gatsby, { diff --git a/packages/gatsby-source-directus/package.json b/packages/gatsby-source-directus/package.json index 0664a20bd0..c588efc066 100644 --- a/packages/gatsby-source-directus/package.json +++ b/packages/gatsby-source-directus/package.json @@ -10,10 +10,10 @@ "directus" ], "dependencies": { - "@directus/sdk-js": "9.0.0-rc.53", - "@lnfusion/gatsby-source-graphql": "0.0.4", + "@directus/sdk": "^9.0.0-rc.90", "chalk": "4.1.2", "gatsby-source-filesystem": "3.12.0", + "gatsby-source-graphql": "^3.12.0", "invariant": "2.2.4", "ms": "2.1.3" }, From 1ef34d060de483afb1346a8fa5a8954169e01f4f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 20 Aug 2021 09:53:35 -0400 Subject: [PATCH 045/284] pin dependency gatsby-source-graphql to 3.12.0 (#7524) Co-authored-by: Renovate Bot --- package-lock.json | 7649 +----------------- packages/gatsby-source-directus/package.json | 2 +- 2 files changed, 193 insertions(+), 7458 deletions(-) diff --git a/package-lock.json b/package-lock.json index 8a458cc704..92ce58893e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3297,16 +3297,6 @@ "resolved": "packages/sdk", "link": true }, - "node_modules/@directus/sdk-js": { - "version": "9.0.0-rc.53", - "resolved": "https://registry.npmjs.org/@directus/sdk-js/-/sdk-js-9.0.0-rc.53.tgz", - "integrity": "sha512-P9Ga4zfAceIJtzt6fvhZ0L/IyJUUEKOEshcJnIYQQLbwpeQ6p9e3FYZhq7MciArQQ3DVj71c3BVSg+bcBYymVQ==", - "deprecated": "Moved to 'npm install @directus/sdk'", - "dependencies": { - "axios": "^0.21.1", - "openapi3-ts": "^2.0.0" - } - }, "node_modules/@directus/shared": { "resolved": "packages/shared", "link": true @@ -5613,29 +5603,6 @@ "node": ">= 10.18.0" } }, - "node_modules/@lnfusion/gatsby-source-graphql": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/@lnfusion/gatsby-source-graphql/-/gatsby-source-graphql-0.0.4.tgz", - "integrity": "sha512-N7xvAdC+oHr5ujp3cq7HLM12knxztVmU68OHKPTqBQaSnCXcp9/5XxT/+TLHVDy4RQmMJ5xxfpOdT9IlAkmjKw==", - "dependencies": { - "@babel/runtime": "^7.12.5", - "@graphql-tools/links": "^7.0.3", - "@graphql-tools/utils": "^7.0.2", - "@graphql-tools/wrap": "^7.0.1", - "apollo-link": "1.2.14", - "apollo-link-http": "^1.5.17", - "dataloader": "^2.0.0", - "invariant": "^2.2.4", - "node-fetch": "^2.6.1", - "uuid": "3.4.0" - }, - "engines": { - "node": ">=10.13.0" - }, - "peerDependencies": { - "gatsby": "^2.0.15" - } - }, "node_modules/@lukeed/csprng": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/@lukeed/csprng/-/csprng-1.0.0.tgz", @@ -6222,12 +6189,6 @@ "integrity": "sha512-W6CLUJ2eBMw3Rec70qrsEW0jOm/3twwJv21mrmj2yORiaVmVYGS4sSS5yUwvQc1ZlDLYGPnClVWmUUMagKNsfA==", "peer": true }, - "node_modules/@mikaelkristiansson/domready": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@mikaelkristiansson/domready/-/domready-1.0.11.tgz", - "integrity": "sha512-nEBLOa0JgtqahmPrnJZ18epLiFBzxhdKgo4uhN3TaBFRmM30pEVrS9FAEV4tg92d8PTdU+dYQx2lnpPyFMgMcg==", - "peer": true - }, "node_modules/@mrmlnc/readdir-enhanced": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", @@ -6915,156 +6876,6 @@ "node": ">=10" } }, - "node_modules/@pieh/friendly-errors-webpack-plugin": { - "version": "1.7.0-chalk-2", - "resolved": "https://registry.npmjs.org/@pieh/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-1.7.0-chalk-2.tgz", - "integrity": "sha512-65+vYGuDkHBCWWjqzzR/Ck318+d6yTI00EqII9qe3aPD1J3Olhvw0X38uM5moQb1PK/ksDXwSoPGt/5QhCiotw==", - "peer": true, - "dependencies": { - "chalk": "^2.4.2", - "error-stack-parser": "^2.0.0", - "string-width": "^2.0.0", - "strip-ansi": "^3" - }, - "peerDependencies": { - "webpack": "^2.0.0 || ^3.0.0 || ^4.0.0" - } - }, - "node_modules/@pieh/friendly-errors-webpack-plugin/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@pieh/friendly-errors-webpack-plugin/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "peer": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@pieh/friendly-errors-webpack-plugin/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "peer": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@pieh/friendly-errors-webpack-plugin/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "peer": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/@pieh/friendly-errors-webpack-plugin/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "peer": true - }, - "node_modules/@pieh/friendly-errors-webpack-plugin/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "peer": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/@pieh/friendly-errors-webpack-plugin/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "peer": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/@pieh/friendly-errors-webpack-plugin/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "peer": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/@pieh/friendly-errors-webpack-plugin/node_modules/string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "peer": true, - "dependencies": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@pieh/friendly-errors-webpack-plugin/node_modules/string-width/node_modules/ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "peer": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/@pieh/friendly-errors-webpack-plugin/node_modules/string-width/node_modules/strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "peer": true, - "dependencies": { - "ansi-regex": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@pieh/friendly-errors-webpack-plugin/node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "peer": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@pieh/friendly-errors-webpack-plugin/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "peer": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/@popperjs/core": { "version": "2.9.3", "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.9.3.tgz", @@ -7075,22 +6886,6 @@ "url": "https://opencollective.com/popperjs" } }, - "node_modules/@reach/router": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@reach/router/-/router-1.3.4.tgz", - "integrity": "sha512-+mtn9wjlB9NN2CNnnC/BRYtwdKBfSyyasPYraNAyvaV1occr/5NnB4CVzjEZipNHwYebQwcndGUmpFzxAUoqSA==", - "peer": true, - "dependencies": { - "create-react-context": "0.3.0", - "invariant": "^2.2.3", - "prop-types": "^15.6.1", - "react-lifecycles-compat": "^3.0.4" - }, - "peerDependencies": { - "react": "15.x || 16.x || 16.4.0-alpha.0911da3", - "react-dom": "15.x || 16.x || 16.4.0-alpha.0911da3" - } - }, "node_modules/@rollup/plugin-alias": { "version": "3.1.4", "resolved": "https://registry.npmjs.org/@rollup/plugin-alias/-/plugin-alias-3.1.4.tgz", @@ -7984,12 +7779,6 @@ "@types/estree": "*" } }, - "node_modules/@types/eslint-visitor-keys": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@types/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", - "integrity": "sha512-OCutwjDZ4aFS6PB1UZ988C4YgwlBHJd6wCeQqaLdmadZ/7e+w79+hbMUFC1QXDNCmdyoRfAFdm0RypzwR+Qpag==", - "peer": true - }, "node_modules/@types/estree": { "version": "0.0.48", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.48.tgz", @@ -13070,12 +12859,6 @@ "node": ">=0.10.0" } }, - "node_modules/array-filter": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz", - "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=", - "peer": true - }, "node_modules/array-find-index": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", @@ -13115,18 +12898,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/array-map": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz", - "integrity": "sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI=", - "peer": true - }, - "node_modules/array-reduce": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz", - "integrity": "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=", - "peer": true - }, "node_modules/array-slice": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz", @@ -13398,6 +13169,7 @@ "version": "9.8.6", "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.6.tgz", "integrity": "sha512-XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg==", + "dev": true, "dependencies": { "browserslist": "^4.12.0", "caniuse-lite": "^1.0.30001109", @@ -13419,6 +13191,7 @@ "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, "dependencies": { "color-convert": "^1.9.0" }, @@ -13430,6 +13203,7 @@ "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, "dependencies": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -13443,6 +13217,7 @@ "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, "dependencies": { "has-flag": "^3.0.0" }, @@ -13454,6 +13229,7 @@ "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, "dependencies": { "color-name": "1.1.3" } @@ -13461,12 +13237,14 @@ "node_modules/autoprefixer/node_modules/color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true }, "node_modules/autoprefixer/node_modules/escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true, "engines": { "node": ">=0.8.0" } @@ -13475,6 +13253,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true, "engines": { "node": ">=4" } @@ -13483,6 +13262,7 @@ "version": "7.0.36", "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", + "dev": true, "dependencies": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -13500,6 +13280,7 @@ "version": "6.1.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, "dependencies": { "has-flag": "^3.0.0" }, @@ -13623,6 +13404,7 @@ "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "dev": true, "dependencies": { "chalk": "^1.1.3", "esutils": "^2.0.2", @@ -13633,6 +13415,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true, "engines": { "node": ">=0.10.0" } @@ -13641,6 +13424,7 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true, "engines": { "node": ">=0.10.0" } @@ -13649,6 +13433,7 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, "dependencies": { "ansi-styles": "^2.2.1", "escape-string-regexp": "^1.0.2", @@ -13664,6 +13449,7 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true, "engines": { "node": ">=0.8.0" } @@ -13671,12 +13457,14 @@ "node_modules/babel-code-frame/node_modules/js-tokens": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true }, "node_modules/babel-code-frame/node_modules/strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, "dependencies": { "ansi-regex": "^2.0.0" }, @@ -13688,19 +13476,11 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true, "engines": { "node": ">=0.8.0" } }, - "node_modules/babel-core": { - "version": "7.0.0-bridge.0", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-7.0.0-bridge.0.tgz", - "integrity": "sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==", - "peer": true, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, "node_modules/babel-eslint": { "version": "10.1.0", "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz", @@ -13900,19 +13680,6 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-plugin-remove-graphql-queries": { - "version": "2.16.1", - "resolved": "https://registry.npmjs.org/babel-plugin-remove-graphql-queries/-/babel-plugin-remove-graphql-queries-2.16.1.tgz", - "integrity": "sha512-PkHJuRodMp4p617a/ZVhV8elBhRoFpOTpdu2DaApXJFIsDJWhjZ8d4BGbbFCT/yKJrhRDTdqg1r5AhWEaEUKkw==", - "peer": true, - "engines": { - "node": ">=10.13.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0", - "gatsby": "^2.0.0" - } - }, "node_modules/babel-plugin-transform-react-remove-prop-types": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-remove-prop-types/-/babel-plugin-transform-react-remove-prop-types-0.4.24.tgz", @@ -13942,36 +13709,6 @@ "@babel/core": "^7.0.0" } }, - "node_modules/babel-preset-gatsby": { - "version": "0.12.3", - "resolved": "https://registry.npmjs.org/babel-preset-gatsby/-/babel-preset-gatsby-0.12.3.tgz", - "integrity": "sha512-s/5Nkeeihu/oNUcLQakm+lwLCiNWcQamQliB+NqEVB/IgRVn1FQPxqmxNbEb0i2HrEBPKgOrXyt82IfzirCmgg==", - "peer": true, - "dependencies": { - "@babel/plugin-proposal-class-properties": "^7.12.1", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.12.1", - "@babel/plugin-proposal-optional-chaining": "^7.12.1", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-transform-classes": "^7.12.1", - "@babel/plugin-transform-runtime": "^7.12.1", - "@babel/plugin-transform-spread": "^7.12.1", - "@babel/preset-env": "^7.12.1", - "@babel/preset-react": "^7.12.5", - "@babel/runtime": "^7.12.5", - "babel-plugin-dynamic-import-node": "^2.3.3", - "babel-plugin-macros": "^2.8.0", - "babel-plugin-transform-react-remove-prop-types": "^0.4.24", - "gatsby-core-utils": "^1.10.1", - "gatsby-legacy-polyfills": "^0.7.1" - }, - "engines": { - "node": ">=10.13.0" - }, - "peerDependencies": { - "@babel/core": "^7.11.6", - "core-js": "^3.0.0" - } - }, "node_modules/babel-preset-jest": { "version": "27.0.6", "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.0.6.tgz", @@ -17040,15 +16777,6 @@ "elliptic": "^6.5.3" } }, - "node_modules/create-gatsby": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/create-gatsby/-/create-gatsby-0.5.1.tgz", - "integrity": "sha512-iQ3Z757x02uw9Z3ereR/+RNjiQPCKLEAh3GLqfcTNNVeGgRd07XdgIgGIZrbuNaKL/3EGdfejd7ElJ1UBLQSHQ==", - "peer": true, - "bin": { - "create-gatsby": "cli.js" - } - }, "node_modules/create-hash": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", @@ -17074,20 +16802,6 @@ "sha.js": "^2.4.8" } }, - "node_modules/create-react-context": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/create-react-context/-/create-react-context-0.3.0.tgz", - "integrity": "sha512-dNldIoSuNSvlTJ7slIKC/ZFGKexBMBrrcc+TTe1NdmROnaASuLPvqpwj9v4XS4uXZ8+YPu0sNmShX2rXI5LNsw==", - "peer": true, - "dependencies": { - "gud": "^1.0.0", - "warning": "^4.0.3" - }, - "peerDependencies": { - "prop-types": "^15.0.0", - "react": "^0.14.0 || ^15.0.0 || ^16.0.0" - } - }, "node_modules/create-require": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", @@ -17582,16 +17296,6 @@ "url": "https://github.com/fb55/entities?sponsor=1" } }, - "node_modules/css-selector-tokenizer": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.3.tgz", - "integrity": "sha512-jWQv3oCEL5kMErj4wRnK/OPoBi0D+P1FR2cDCKYPaMeD2eW3/mttav8HT4hT1CKopiJI/psEULjkClhvJo4Lvg==", - "peer": true, - "dependencies": { - "cssesc": "^3.0.0", - "fastparse": "^1.1.2" - } - }, "node_modules/css-tree": { "version": "1.0.0-alpha.37", "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz", @@ -18698,38 +18402,6 @@ "node": ">= 4.2.1" } }, - "node_modules/detect-port-alt": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.3.tgz", - "integrity": "sha1-pNLwYddXoDTs83xRQmCph1DysTE=", - "peer": true, - "dependencies": { - "address": "^1.0.1", - "debug": "^2.6.0" - }, - "bin": { - "detect": "bin/detect-port", - "detect-port": "bin/detect-port" - }, - "engines": { - "node": ">= 4.2.1" - } - }, - "node_modules/detect-port-alt/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "peer": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/detect-port-alt/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "peer": true - }, "node_modules/detect-port/node_modules/debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -19053,7 +18725,8 @@ "node_modules/dom-walk": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", - "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==" + "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==", + "dev": true }, "node_modules/domain-browser": { "version": "1.2.0", @@ -19959,21 +19632,6 @@ "node": ">=4" } }, - "node_modules/eslint-plugin-flowtype": { - "version": "3.13.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-flowtype/-/eslint-plugin-flowtype-3.13.0.tgz", - "integrity": "sha512-bhewp36P+t7cEV0b6OdmoRWJCBYRiHFlqPZAG1oS3SF+Y0LQkeDvFSM4oxoxvczD1OdONCXMlJfQFiWLcV9urw==", - "peer": true, - "dependencies": { - "lodash": "^4.17.15" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": ">=5.0.0" - } - }, "node_modules/eslint-plugin-graphql": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/eslint-plugin-graphql/-/eslint-plugin-graphql-4.0.0.tgz", @@ -20575,18 +20233,6 @@ "node": ">=0.8.x" } }, - "node_modules/eventsource": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-0.1.6.tgz", - "integrity": "sha1-Cs7ehJ7X3RzMMsgRuxG5RNTykjI=", - "peer": true, - "dependencies": { - "original": ">=0.0.5" - }, - "engines": { - "node": ">=0.8.0" - } - }, "node_modules/evp_bytestokey": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", @@ -20786,6 +20432,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", + "optional": true, "dependencies": { "homedir-polyfill": "^1.0.1" }, @@ -21230,12 +20877,6 @@ "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz", "integrity": "sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow==" }, - "node_modules/fastparse": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.2.tgz", - "integrity": "sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==", - "peer": true - }, "node_modules/fastq": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.11.1.tgz", @@ -21368,15 +21009,6 @@ "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", "optional": true }, - "node_modules/filesize": { - "version": "3.5.11", - "resolved": "https://registry.npmjs.org/filesize/-/filesize-3.5.11.tgz", - "integrity": "sha512-ZH7loueKBoDb7yG9esn1U+fgq7BzlzW6NRi5/rMdxIZ05dj7GFD/Xc5rq2CDt5Yq86CyfSYVyx4242QQNZbx1g==", - "peer": true, - "engines": { - "node": ">= 0.4.0" - } - }, "node_modules/fill-range": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", @@ -22333,1339 +21965,6 @@ "node": ">= 0.6.0" } }, - "node_modules/gatsby": { - "version": "2.32.13", - "resolved": "https://registry.npmjs.org/gatsby/-/gatsby-2.32.13.tgz", - "integrity": "sha512-BYfiI/k+t8m/IzSkWZH8Cc0v7rJw6giSjG5sX25LWdfkQMqUvg/Gn6OC8BWwRPXnEwe7x0n5jbH+peO0p34ZHQ==", - "hasInstallScript": true, - "peer": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/core": "^7.12.3", - "@babel/parser": "^7.12.5", - "@babel/runtime": "^7.12.5", - "@babel/traverse": "^7.12.5", - "@babel/types": "^7.12.6", - "@hapi/joi": "^15.1.1", - "@mikaelkristiansson/domready": "^1.0.10", - "@nodelib/fs.walk": "^1.2.4", - "@pieh/friendly-errors-webpack-plugin": "1.7.0-chalk-2", - "@pmmmwh/react-refresh-webpack-plugin": "^0.4.1", - "@reach/router": "^1.3.4", - "@types/http-proxy": "^1.17.4", - "@typescript-eslint/eslint-plugin": "^2.24.0", - "@typescript-eslint/parser": "^2.24.0", - "address": "1.1.2", - "anser": "^2.0.1", - "ansi-html": "^0.0.7", - "autoprefixer": "^9.8.4", - "axios": "^0.21.1", - "babel-core": "7.0.0-bridge.0", - "babel-eslint": "^10.1.0", - "babel-loader": "^8.1.0", - "babel-plugin-add-module-exports": "^1.0.4", - "babel-plugin-dynamic-import-node": "^2.3.3", - "babel-plugin-lodash": "^3.3.4", - "babel-plugin-remove-graphql-queries": "^2.16.1", - "babel-preset-gatsby": "^0.12.3", - "better-opn": "^2.0.0", - "better-queue": "^3.8.10", - "bluebird": "^3.7.2", - "body-parser": "^1.19.0", - "browserslist": "^4.12.2", - "cache-manager": "^2.11.1", - "chalk": "^4.1.0", - "chokidar": "^3.4.2", - "common-tags": "^1.8.0", - "compression": "^1.7.4", - "convert-hrtime": "^3.0.0", - "copyfiles": "^2.3.0", - "core-js": "^3.6.5", - "cors": "^2.8.5", - "css-loader": "^1.0.1", - "date-fns": "^2.14.0", - "debug": "^3.2.7", - "del": "^5.1.0", - "detect-port": "^1.3.0", - "devcert": "^1.1.3", - "dotenv": "^8.2.0", - "eslint": "^6.8.0", - "eslint-config-react-app": "^5.2.1", - "eslint-loader": "^2.2.1", - "eslint-plugin-flowtype": "^3.13.0", - "eslint-plugin-graphql": "^4.0.0", - "eslint-plugin-import": "^2.22.0", - "eslint-plugin-jsx-a11y": "^6.3.1", - "eslint-plugin-react": "^7.20.6", - "eslint-plugin-react-hooks": "^1.7.0", - "event-source-polyfill": "^1.0.15", - "execa": "^4.0.3", - "express": "^4.17.1", - "express-graphql": "^0.9.0", - "fastest-levenshtein": "^1.0.12", - "fastq": "^1.10.0", - "file-loader": "^1.1.11", - "find-cache-dir": "^3.3.1", - "fs-exists-cached": "1.0.0", - "fs-extra": "^8.1.0", - "gatsby-cli": "^2.19.3", - "gatsby-core-utils": "^1.10.1", - "gatsby-graphiql-explorer": "^0.11.0", - "gatsby-legacy-polyfills": "^0.7.1", - "gatsby-link": "^2.11.0", - "gatsby-plugin-page-creator": "^2.10.2", - "gatsby-plugin-typescript": "^2.12.1", - "gatsby-plugin-utils": "^0.9.0", - "gatsby-react-router-scroll": "^3.7.0", - "gatsby-telemetry": "^1.10.2", - "glob": "^7.1.6", - "got": "8.3.2", - "graphql": "^14.6.0", - "graphql-compose": "^6.3.8", - "graphql-playground-middleware-express": "^1.7.18", - "hasha": "^5.2.0", - "http-proxy": "^1.18.1", - "invariant": "^2.2.4", - "is-relative": "^1.0.0", - "is-relative-url": "^3.0.0", - "jest-worker": "^24.9.0", - "joi": "^17.2.1", - "json-loader": "^0.5.7", - "json-stringify-safe": "^5.0.1", - "latest-version": "5.1.0", - "lodash": "^4.17.20", - "md5-file": "^5.0.0", - "meant": "^1.0.1", - "memoizee": "^0.4.15", - "micromatch": "^4.0.2", - "mime": "^2.4.6", - "mini-css-extract-plugin": "^0.11.2", - "mitt": "^1.2.0", - "mkdirp": "^0.5.1", - "moment": "^2.27.0", - "name-all-modules-plugin": "^1.0.1", - "normalize-path": "^3.0.0", - "null-loader": "^3.0.0", - "opentracing": "^0.14.4", - "optimize-css-assets-webpack-plugin": "^5.0.3", - "p-defer": "^3.0.0", - "parseurl": "^1.3.3", - "physical-cpu-count": "^2.0.0", - "pnp-webpack-plugin": "^1.6.4", - "postcss-flexbugs-fixes": "^4.2.1", - "postcss-loader": "^3.0.0", - "prompts": "^2.3.2", - "prop-types": "^15.7.2", - "query-string": "^6.13.1", - "raw-loader": "^0.5.1", - "react-dev-utils": "^4.2.3", - "react-error-overlay": "^3.0.0", - "react-hot-loader": "^4.12.21", - "react-refresh": "^0.8.3", - "redux": "^4.0.5", - "redux-thunk": "^2.3.0", - "semver": "^7.3.2", - "shallow-compare": "^1.2.2", - "signal-exit": "^3.0.3", - "slugify": "^1.4.4", - "socket.io": "3.1.1", - "socket.io-client": "3.1.1", - "source-map": "^0.7.3", - "source-map-support": "^0.5.19", - "st": "^2.0.0", - "stack-trace": "^0.0.10", - "string-similarity": "^1.2.2", - "strip-ansi": "^5.2.0", - "style-loader": "^0.23.1", - "terser-webpack-plugin": "^2.3.8", - "tmp": "^0.2.1", - "true-case-path": "^2.2.1", - "type-of": "^2.0.1", - "url-loader": "^1.1.2", - "util.promisify": "^1.0.1", - "uuid": "3.4.0", - "v8-compile-cache": "^2.2.0", - "webpack": "^4.44.1", - "webpack-dev-middleware": "^3.7.2", - "webpack-dev-server": "^3.11.2", - "webpack-hot-middleware": "^2.25.0", - "webpack-merge": "^4.2.2", - "webpack-stats-plugin": "^0.3.2", - "webpack-virtual-modules": "^0.2.2", - "xstate": "^4.11.0", - "yaml-loader": "^0.6.0" - }, - "bin": { - "gatsby": "cli.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "peerDependencies": { - "react": "^16.4.2 || ^17.0.0", - "react-dom": "^16.4.2 || ^17.0.0" - } - }, - "node_modules/gatsby-cli": { - "version": "2.19.3", - "resolved": "https://registry.npmjs.org/gatsby-cli/-/gatsby-cli-2.19.3.tgz", - "integrity": "sha512-3xXe4y6DazWNYE2JFyErI7BGlgQjY4rRL5OTFWHvs6ULw7fu0xgoWXxKsoAp6S2xosKSS4zRVA6O7dDHAdidiw==", - "hasInstallScript": true, - "peer": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@hapi/joi": "^15.1.1", - "@types/common-tags": "^1.8.0", - "better-opn": "^2.0.0", - "chalk": "^4.1.0", - "clipboardy": "^2.3.0", - "common-tags": "^1.8.0", - "configstore": "^5.0.1", - "convert-hrtime": "^3.0.0", - "create-gatsby": "^0.5.1", - "envinfo": "^7.7.3", - "execa": "^3.4.0", - "fs-exists-cached": "^1.0.0", - "fs-extra": "^8.1.0", - "gatsby-core-utils": "^1.10.1", - "gatsby-recipes": "^0.9.3", - "gatsby-telemetry": "^1.10.2", - "hosted-git-info": "^3.0.6", - "is-valid-path": "^0.1.1", - "lodash": "^4.17.20", - "meant": "^1.0.2", - "node-fetch": "^2.6.1", - "opentracing": "^0.14.4", - "pretty-error": "^2.1.1", - "progress": "^2.0.3", - "prompts": "^2.3.2", - "redux": "^4.0.5", - "resolve-cwd": "^3.0.0", - "semver": "^7.3.2", - "signal-exit": "^3.0.3", - "source-map": "0.7.3", - "stack-trace": "^0.0.10", - "strip-ansi": "^5.2.0", - "update-notifier": "^5.0.1", - "uuid": "3.4.0", - "yargs": "^15.4.1", - "yoga-layout-prebuilt": "^1.9.6", - "yurnalist": "^2.1.0" - }, - "bin": { - "gatsby": "cli.js" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/gatsby-cli/node_modules/ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "peer": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/gatsby-cli/node_modules/cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "peer": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "node_modules/gatsby-cli/node_modules/cliui/node_modules/ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "peer": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/gatsby-cli/node_modules/cliui/node_modules/strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "peer": true, - "dependencies": { - "ansi-regex": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/gatsby-cli/node_modules/execa": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-3.4.0.tgz", - "integrity": "sha512-r9vdGQk4bmCuK1yKQu1KTwcT2zwfWdbdaXfCtAh+5nU/4fSX+JAb7vZGvI5naJrQlvONrEB20jeruESI69530g==", - "peer": true, - "dependencies": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "p-finally": "^2.0.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": "^8.12.0 || >=9.7.0" - } - }, - "node_modules/gatsby-cli/node_modules/fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "peer": true, - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" - } - }, - "node_modules/gatsby-cli/node_modules/get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "peer": true, - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/gatsby-cli/node_modules/hosted-git-info": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.8.tgz", - "integrity": "sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw==", - "peer": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/gatsby-cli/node_modules/human-signals": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", - "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", - "peer": true, - "engines": { - "node": ">=8.12.0" - } - }, - "node_modules/gatsby-cli/node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "peer": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/gatsby-cli/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "peer": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/gatsby-cli/node_modules/p-finally": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-2.0.1.tgz", - "integrity": "sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw==", - "peer": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/gatsby-cli/node_modules/source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "peer": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/gatsby-cli/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "peer": true, - "dependencies": { - "ansi-regex": "^4.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/gatsby-cli/node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "peer": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/gatsby-cli/node_modules/wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "peer": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/gatsby-cli/node_modules/wrap-ansi/node_modules/ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "peer": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/gatsby-cli/node_modules/wrap-ansi/node_modules/strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "peer": true, - "dependencies": { - "ansi-regex": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/gatsby-cli/node_modules/y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "peer": true - }, - "node_modules/gatsby-cli/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "peer": true - }, - "node_modules/gatsby-cli/node_modules/yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "peer": true, - "dependencies": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/gatsby-cli/node_modules/yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "peer": true, - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/gatsby-core-utils": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-1.10.1.tgz", - "integrity": "sha512-4P3feGCJckg+DRWWl2beFk7N9c63zmCryEGPaU1OHCp+ZT2bO0ihCBuXywDWuuEp6SYP9PZ1fs0YJ/Rt6q6lag==", - "peer": true, - "dependencies": { - "ci-info": "2.0.0", - "configstore": "^5.0.1", - "fs-extra": "^8.1.0", - "node-object-hash": "^2.0.0", - "proper-lockfile": "^4.1.1", - "tmp": "^0.2.1", - "xdg-basedir": "^4.0.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/gatsby-core-utils/node_modules/ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", - "peer": true - }, - "node_modules/gatsby-core-utils/node_modules/fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "peer": true, - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" - } - }, - "node_modules/gatsby-core-utils/node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "peer": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/gatsby-core-utils/node_modules/tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "peer": true, - "dependencies": { - "rimraf": "^3.0.0" - }, - "engines": { - "node": ">=8.17.0" - } - }, - "node_modules/gatsby-core-utils/node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "peer": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/gatsby-graphiql-explorer": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/gatsby-graphiql-explorer/-/gatsby-graphiql-explorer-0.11.0.tgz", - "integrity": "sha512-mmxQhQSDUkbtOhQUek9a9sSg6LpiQUytNNR2hec8iklau2D4MDA5CvHTk9GUGhjdUgtnHSe/MPyZVJGmXSnYAA==", - "peer": true, - "dependencies": { - "@babel/runtime": "^7.12.5" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/gatsby-legacy-polyfills": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/gatsby-legacy-polyfills/-/gatsby-legacy-polyfills-0.7.1.tgz", - "integrity": "sha512-yOQtX72GSJxloyUZEary3ZBihz/+a3uouLiaZKk6dHOeUHnRkQkXD+UT/zt7Xm+er/VD3KRsQQv+Re1krpbY7g==", - "peer": true, - "dependencies": { - "core-js-compat": "^3.6.5" - } - }, - "node_modules/gatsby-link": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/gatsby-link/-/gatsby-link-2.11.0.tgz", - "integrity": "sha512-AYXxndlSx5mnYv+/PBPdPBRvdv1LeSGE3WO8uYj2ReYDSbhiAlF3KKz30D62ErartXP0deySPtRKx4Dd3nCFYw==", - "peer": true, - "dependencies": { - "@babel/runtime": "^7.12.5", - "@types/reach__router": "^1.3.7", - "prop-types": "^15.7.2" - }, - "engines": { - "node": ">=10.13.0" - }, - "peerDependencies": { - "@reach/router": "^1.3.3", - "react": "^16.4.2 || ^17.0.0", - "react-dom": "^16.4.2 || ^17.0.0" - } - }, - "node_modules/gatsby-page-utils": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/gatsby-page-utils/-/gatsby-page-utils-0.9.1.tgz", - "integrity": "sha512-UHedSs64HXzoivCk7ZdE9139hi34CcZfexP+Vxe2Zt4aK+MeXowec8VdxKD3Pp08O/YEGKBv2TtSV9gSR/lt2g==", - "peer": true, - "dependencies": { - "@babel/runtime": "^7.12.5", - "bluebird": "^3.7.2", - "chokidar": "^3.5.1", - "fs-exists-cached": "^1.0.0", - "gatsby-core-utils": "^1.10.1", - "glob": "^7.1.6", - "lodash": "^4.17.20", - "micromatch": "^4.0.2" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/gatsby-plugin-page-creator": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/gatsby-plugin-page-creator/-/gatsby-plugin-page-creator-2.10.2.tgz", - "integrity": "sha512-XkHSOgI4ZPA4XgadjGGFSp4eu51G8HXEVKG5gaef1/w0bcktw+aEwgEyb8VtL61NfIH2zXquyvrmwsil89nVCw==", - "peer": true, - "dependencies": { - "@babel/traverse": "^7.12.5", - "@sindresorhus/slugify": "^1.1.0", - "chokidar": "^3.5.1", - "fs-exists-cached": "^1.0.0", - "gatsby-page-utils": "^0.9.1", - "gatsby-telemetry": "^1.10.2", - "globby": "^11.0.2", - "lodash": "^4.17.20" - }, - "engines": { - "node": ">=10.13.0" - }, - "peerDependencies": { - "gatsby": "^2.0.0" - } - }, - "node_modules/gatsby-plugin-page-creator/node_modules/@sindresorhus/slugify": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@sindresorhus/slugify/-/slugify-1.1.2.tgz", - "integrity": "sha512-V9nR/W0Xd9TSGXpZ4iFUcFGhuOJtZX82Fzxj1YISlbSgKvIiNa7eLEZrT0vAraPOt++KHauIVNYgGRgjc13dXA==", - "peer": true, - "dependencies": { - "@sindresorhus/transliterate": "^0.1.1", - "escape-string-regexp": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/gatsby-plugin-page-creator/node_modules/@sindresorhus/transliterate": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@sindresorhus/transliterate/-/transliterate-0.1.2.tgz", - "integrity": "sha512-5/kmIOY9FF32nicXH+5yLNTX4NJ4atl7jRgqAJuIn/iyDFXBktOKDxCvyGE/EzmF4ngSUvjXxQUQlQiZ5lfw+w==", - "peer": true, - "dependencies": { - "escape-string-regexp": "^2.0.0", - "lodash.deburr": "^4.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/gatsby-plugin-page-creator/node_modules/@sindresorhus/transliterate/node_modules/escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "peer": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/gatsby-plugin-typescript": { - "version": "2.12.1", - "resolved": "https://registry.npmjs.org/gatsby-plugin-typescript/-/gatsby-plugin-typescript-2.12.1.tgz", - "integrity": "sha512-p32qJVDi5Xw1Oo5vLMUXdRBxSDlMrfxTGb7etMAsVfyLRlRhMLb2YsuXJIvN1IfybQ6Z3EbhlH293cpxn5jozg==", - "peer": true, - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.12.1", - "@babel/plugin-proposal-numeric-separator": "^7.12.5", - "@babel/plugin-proposal-optional-chaining": "^7.12.1", - "@babel/preset-typescript": "^7.12.1", - "@babel/runtime": "^7.12.5", - "babel-plugin-remove-graphql-queries": "^2.16.1" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/gatsby-plugin-utils": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/gatsby-plugin-utils/-/gatsby-plugin-utils-0.9.0.tgz", - "integrity": "sha512-InM8PNHtx1kF87qQOlf4pVeNA8lSIsvSjImvN6dvpUjeQqOMRN1avY0W9Trh6LKTF/keWWj975Gk8Vcr+PYyDA==", - "peer": true, - "dependencies": { - "joi": "^17.2.1" - }, - "engines": { - "node": ">=10.13.0" - }, - "peerDependencies": { - "gatsby": "^2.24.79" - } - }, - "node_modules/gatsby-react-router-scroll": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/gatsby-react-router-scroll/-/gatsby-react-router-scroll-3.7.0.tgz", - "integrity": "sha512-8sm04EQac7fccJZlllFEo349wAlNEuPVu35juuL0hgMDTyWlk4nPwPH/ACdpn2MgpEmrTSfp2yPxyzaRKVyzeQ==", - "peer": true, - "dependencies": { - "@babel/runtime": "^7.12.5" - }, - "engines": { - "node": ">=10.13.0" - }, - "peerDependencies": { - "@reach/router": "^1.0.0", - "react": "^16.4.2 || ^17.0.0", - "react-dom": "^16.4.2 || ^17.0.0" - } - }, - "node_modules/gatsby-recipes": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/gatsby-recipes/-/gatsby-recipes-0.9.3.tgz", - "integrity": "sha512-ToYeGCica4390QFWsW6+3DM6hhkpKifUEFoKDUdsQGw4rmD8aYndj5oASKIsvPAU0GUbxe8IDsDnP3V5iMtyEQ==", - "peer": true, - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/generator": "^7.12.5", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-proposal-optional-chaining": "^7.12.1", - "@babel/plugin-transform-react-jsx": "^7.12.5", - "@babel/standalone": "^7.12.6", - "@babel/template": "^7.10.4", - "@babel/types": "^7.12.6", - "@graphql-tools/schema": "^7.0.0", - "@graphql-tools/utils": "^7.0.2", - "@hapi/hoek": "8.x.x", - "@hapi/joi": "^15.1.1", - "better-queue": "^3.8.10", - "chokidar": "^3.4.2", - "contentful-management": "^7.5.1", - "cors": "^2.8.5", - "debug": "^4.3.1", - "detect-port": "^1.3.0", - "dotenv": "^8.2.0", - "execa": "^4.0.2", - "express": "^4.17.1", - "express-graphql": "^0.9.0", - "fs-extra": "^8.1.0", - "gatsby-core-utils": "^1.10.1", - "gatsby-telemetry": "^1.10.2", - "glob": "^7.1.6", - "graphql": "^14.6.0", - "graphql-compose": "^6.3.8", - "graphql-subscriptions": "^1.1.0", - "graphql-type-json": "^0.3.2", - "hicat": "^0.8.0", - "is-binary-path": "^2.1.0", - "is-url": "^1.2.4", - "jest-diff": "^25.5.0", - "lock": "^1.0.0", - "lodash": "^4.17.20", - "mitt": "^1.2.0", - "mkdirp": "^0.5.1", - "node-fetch": "^2.5.0", - "pkg-dir": "^4.2.0", - "prettier": "^2.0.5", - "prop-types": "^15.6.1", - "remark-mdx": "^2.0.0-next.4", - "remark-mdxjs": "^2.0.0-next.4", - "remark-parse": "^6.0.3", - "remark-stringify": "^8.1.0", - "resolve-from": "^5.0.0", - "semver": "^7.3.2", - "single-trailing-newline": "^1.0.0", - "strip-ansi": "^6.0.0", - "style-to-object": "^0.3.0", - "unified": "^8.4.2", - "unist-util-remove": "^2.0.0", - "unist-util-visit": "^2.0.2", - "uuid": "3.4.0", - "ws": "^7.3.0", - "xstate": "^4.9.1", - "yoga-layout-prebuilt": "^1.9.6" - } - }, - "node_modules/gatsby-recipes/node_modules/@jest/types": { - "version": "25.5.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.5.0.tgz", - "integrity": "sha512-OXD0RgQ86Tu3MazKo8bnrkDRaDXXMGUqd+kTtLtK1Zb7CRzQcaSRPPPV37SvYTdevXEBVxe0HXylEjs8ibkmCw==", - "peer": true, - "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - }, - "engines": { - "node": ">= 8.3" - } - }, - "node_modules/gatsby-recipes/node_modules/@types/istanbul-reports": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-1.1.2.tgz", - "integrity": "sha512-P/W9yOX/3oPZSpaYOCQzGqgCQRXn0FFO/V8bWrCQs+wLmvVVxk6CRBXALEvNs9OHIatlnlFokfhuDo2ug01ciw==", - "peer": true, - "dependencies": { - "@types/istanbul-lib-coverage": "*", - "@types/istanbul-lib-report": "*" - } - }, - "node_modules/gatsby-recipes/node_modules/@types/yargs": { - "version": "15.0.14", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", - "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", - "peer": true, - "dependencies": { - "@types/yargs-parser": "*" - } - }, - "node_modules/gatsby-recipes/node_modules/chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "peer": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/gatsby-recipes/node_modules/diff-sequences": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-25.2.6.tgz", - "integrity": "sha512-Hq8o7+6GaZeoFjtpgvRBUknSXNeJiCx7V9Fr94ZMljNiCr9n9L8H8aJqgWOQiDDGdyn29fRNcDdRVJ5fdyihfg==", - "peer": true, - "engines": { - "node": ">= 8.3" - } - }, - "node_modules/gatsby-recipes/node_modules/dotenv": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz", - "integrity": "sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==", - "peer": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/gatsby-recipes/node_modules/execa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", - "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", - "peer": true, - "dependencies": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/gatsby-recipes/node_modules/express-graphql": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/express-graphql/-/express-graphql-0.9.0.tgz", - "integrity": "sha512-wccd9Lb6oeJ8yHpUs/8LcnGjFUUQYmOG9A5BNLybRdCzGw0PeUrtBxsIR8bfiur6uSW4OvPkVDoYH06z6/N9+w==", - "peer": true, - "dependencies": { - "accepts": "^1.3.7", - "content-type": "^1.0.4", - "http-errors": "^1.7.3", - "raw-body": "^2.4.1" - }, - "engines": { - "node": ">= 8.x" - }, - "peerDependencies": { - "graphql": "^14.4.1" - } - }, - "node_modules/gatsby-recipes/node_modules/fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "peer": true, - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" - } - }, - "node_modules/gatsby-recipes/node_modules/get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "peer": true, - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/gatsby-recipes/node_modules/graphql": { - "version": "14.7.0", - "resolved": "https://registry.npmjs.org/graphql/-/graphql-14.7.0.tgz", - "integrity": "sha512-l0xWZpoPKpppFzMfvVyFmp9vLN7w/ZZJPefUicMCepfJeQ8sMcztloGYY9DfjVPo6tIUDzU5Hw3MUbIjj9AVVA==", - "peer": true, - "dependencies": { - "iterall": "^1.2.2" - }, - "engines": { - "node": ">= 6.x" - } - }, - "node_modules/gatsby-recipes/node_modules/graphql-compose": { - "version": "6.3.8", - "resolved": "https://registry.npmjs.org/graphql-compose/-/graphql-compose-6.3.8.tgz", - "integrity": "sha512-o0/jzQEMIpSjryLKwmD1vGrCubiPxD0LxlGTgWDSu38TBepu2GhugC9gYgTEbtiCZAHPtvkZ90SzzABOWZyQLA==", - "peer": true, - "dependencies": { - "graphql-type-json": "^0.2.4", - "object-path": "^0.11.4" - }, - "engines": { - "node": ">= 6" - }, - "peerDependencies": { - "graphql": ">=0.13.0 || >=14.0.0 || >=14.1.0" - } - }, - "node_modules/gatsby-recipes/node_modules/graphql-compose/node_modules/graphql-type-json": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/graphql-type-json/-/graphql-type-json-0.2.4.tgz", - "integrity": "sha512-/tq02ayMQjrG4oDFDRLLrPk0KvJXue0nVXoItBe7uAdbNXjQUu+HYCBdAmPLQoseVzUKKMzrhq2P/sfI76ON6w==", - "peer": true, - "peerDependencies": { - "graphql": ">=0.8.0" - } - }, - "node_modules/gatsby-recipes/node_modules/http-errors": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.0.tgz", - "integrity": "sha512-4I8r0C5JDhT5VkvI47QktDW75rNlGVsUf/8hzjCC/wkWI/jdTRmBb9aI7erSG82r1bjKY3F6k28WnsVxB1C73A==", - "peer": true, - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/gatsby-recipes/node_modules/human-signals": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", - "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", - "peer": true, - "engines": { - "node": ">=8.12.0" - } - }, - "node_modules/gatsby-recipes/node_modules/is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", - "peer": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/gatsby-recipes/node_modules/jest-diff": { - "version": "25.5.0", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-25.5.0.tgz", - "integrity": "sha512-z1kygetuPiREYdNIumRpAHY6RXiGmp70YHptjdaxTWGmA085W3iCnXNx0DhflK3vwrKmrRWyY1wUpkPMVxMK7A==", - "peer": true, - "dependencies": { - "chalk": "^3.0.0", - "diff-sequences": "^25.2.6", - "jest-get-type": "^25.2.6", - "pretty-format": "^25.5.0" - }, - "engines": { - "node": ">= 8.3" - } - }, - "node_modules/gatsby-recipes/node_modules/jest-get-type": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", - "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", - "peer": true, - "engines": { - "node": ">= 8.3" - } - }, - "node_modules/gatsby-recipes/node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "peer": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/gatsby-recipes/node_modules/markdown-table": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-2.0.0.tgz", - "integrity": "sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==", - "peer": true, - "dependencies": { - "repeat-string": "^1.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/gatsby-recipes/node_modules/mdast-util-compact": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-compact/-/mdast-util-compact-2.0.1.tgz", - "integrity": "sha512-7GlnT24gEwDrdAwEHrU4Vv5lLWrEer4KOkAiKT9nYstsTad7Oc1TwqT2zIMKRdZF7cTuaf+GA1E4Kv7jJh8mPA==", - "peer": true, - "dependencies": { - "unist-util-visit": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/gatsby-recipes/node_modules/mitt": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mitt/-/mitt-1.2.0.tgz", - "integrity": "sha512-r6lj77KlwqLhIUku9UWYes7KJtsczvolZkzp8hbaDPPaE24OmWl5s539Mytlj22siEQKosZ26qCBgda2PKwoJw==", - "peer": true - }, - "node_modules/gatsby-recipes/node_modules/mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "peer": true, - "dependencies": { - "minimist": "^1.2.5" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/gatsby-recipes/node_modules/pretty-format": { - "version": "25.5.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", - "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", - "peer": true, - "dependencies": { - "@jest/types": "^25.5.0", - "ansi-regex": "^5.0.0", - "ansi-styles": "^4.0.0", - "react-is": "^16.12.0" - }, - "engines": { - "node": ">= 8.3" - } - }, - "node_modules/gatsby-recipes/node_modules/raw-body": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz", - "integrity": "sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==", - "peer": true, - "dependencies": { - "bytes": "3.1.0", - "http-errors": "1.7.3", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/gatsby-recipes/node_modules/raw-body/node_modules/http-errors": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", - "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==", - "peer": true, - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/gatsby-recipes/node_modules/raw-body/node_modules/setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", - "peer": true - }, - "node_modules/gatsby-recipes/node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "peer": true - }, - "node_modules/gatsby-recipes/node_modules/remark-parse": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-6.0.3.tgz", - "integrity": "sha512-QbDXWN4HfKTUC0hHa4teU463KclLAnwpn/FBn87j9cKYJWWawbiLgMfP2Q4XwhxxuuuOxHlw+pSN0OKuJwyVvg==", - "peer": true, - "dependencies": { - "collapse-white-space": "^1.0.2", - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-whitespace-character": "^1.0.0", - "is-word-character": "^1.0.0", - "markdown-escapes": "^1.0.0", - "parse-entities": "^1.1.0", - "repeat-string": "^1.5.4", - "state-toggle": "^1.0.0", - "trim": "0.0.1", - "trim-trailing-lines": "^1.0.0", - "unherit": "^1.0.4", - "unist-util-remove-position": "^1.0.0", - "vfile-location": "^2.0.0", - "xtend": "^4.0.1" - } - }, - "node_modules/gatsby-recipes/node_modules/remark-parse/node_modules/parse-entities": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-1.2.2.tgz", - "integrity": "sha512-NzfpbxW/NPrzZ/yYSoQxyqUZMZXIdCfE0OIN4ESsnptHJECoUk3FZktxNuzQf4tjt5UEopnxpYJbvYuxIFDdsg==", - "peer": true, - "dependencies": { - "character-entities": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "character-reference-invalid": "^1.0.0", - "is-alphanumerical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-hexadecimal": "^1.0.0" - } - }, - "node_modules/gatsby-recipes/node_modules/remark-stringify": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-8.1.1.tgz", - "integrity": "sha512-q4EyPZT3PcA3Eq7vPpT6bIdokXzFGp9i85igjmhRyXWmPs0Y6/d2FYwUNotKAWyLch7g0ASZJn/KHHcHZQ163A==", - "peer": true, - "dependencies": { - "ccount": "^1.0.0", - "is-alphanumeric": "^1.0.0", - "is-decimal": "^1.0.0", - "is-whitespace-character": "^1.0.0", - "longest-streak": "^2.0.1", - "markdown-escapes": "^1.0.0", - "markdown-table": "^2.0.0", - "mdast-util-compact": "^2.0.0", - "parse-entities": "^2.0.0", - "repeat-string": "^1.5.4", - "state-toggle": "^1.0.0", - "stringify-entities": "^3.0.0", - "unherit": "^1.0.4", - "xtend": "^4.0.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/gatsby-recipes/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "peer": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/gatsby-recipes/node_modules/setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "peer": true - }, - "node_modules/gatsby-recipes/node_modules/stringify-entities": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-3.1.0.tgz", - "integrity": "sha512-3FP+jGMmMV/ffZs86MoghGqAoqXAdxLrJP4GUdrDN1aIScYih5tuIO3eF4To5AJZ79KDZ8Fpdy7QJnK8SsL1Vg==", - "peer": true, - "dependencies": { - "character-entities-html4": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "xtend": "^4.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/gatsby-recipes/node_modules/unified": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/unified/-/unified-8.4.2.tgz", - "integrity": "sha512-JCrmN13jI4+h9UAyKEoGcDZV+i1E7BLFuG7OsaDvTXI5P0qhHX+vZO/kOhz9jn8HGENDKbwSeB0nVOg4gVStGA==", - "peer": true, - "dependencies": { - "bail": "^1.0.0", - "extend": "^3.0.0", - "is-plain-obj": "^2.0.0", - "trough": "^1.0.0", - "vfile": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/gatsby-recipes/node_modules/unist-util-visit": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-2.0.3.tgz", - "integrity": "sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==", - "peer": true, - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^4.0.0", - "unist-util-visit-parents": "^3.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/gatsby-recipes/node_modules/unist-util-visit-parents": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz", - "integrity": "sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==", - "peer": true, - "dependencies": { - "@types/unist": "^2.0.0", - "unist-util-is": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/gatsby-recipes/node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "peer": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/gatsby-telemetry": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/gatsby-telemetry/-/gatsby-telemetry-1.10.2.tgz", - "integrity": "sha512-LwMtRIdcNuI25D+yU7RO+UcmF+3uPz0Zrefa+/rkTmxZuz54bOGSYqmzJJt1L1gRz7Jdl+DmYRqVgmiW/dsr/g==", - "hasInstallScript": true, - "peer": true, - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/runtime": "^7.12.5", - "@turist/fetch": "^7.1.7", - "@turist/time": "^0.0.1", - "async-retry-ng": "^2.0.1", - "boxen": "^4.2.0", - "configstore": "^5.0.1", - "fs-extra": "^8.1.0", - "gatsby-core-utils": "^1.10.1", - "git-up": "^4.0.2", - "is-docker": "^2.1.1", - "lodash": "^4.17.20", - "node-fetch": "^2.6.1", - "uuid": "3.4.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/gatsby-telemetry/node_modules/fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "peer": true, - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" - } - }, - "node_modules/gatsby-telemetry/node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "peer": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/gatsby-telemetry/node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "peer": true, - "engines": { - "node": ">= 4.0.0" - } - }, "node_modules/gatsby-worker": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/gatsby-worker/-/gatsby-worker-0.1.0.tgz", @@ -23678,1512 +21977,6 @@ "node": ">=12.13.0" } }, - "node_modules/gatsby/node_modules/@pmmmwh/react-refresh-webpack-plugin": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.4.3.tgz", - "integrity": "sha512-br5Qwvh8D2OQqSXpd1g/xqXKnK0r+Jz6qVKBbWmpUcrbGOxUrf39V5oZ1876084CGn18uMdR5uvPqBv9UqtBjQ==", - "peer": true, - "dependencies": { - "ansi-html": "^0.0.7", - "error-stack-parser": "^2.0.6", - "html-entities": "^1.2.1", - "native-url": "^0.2.6", - "schema-utils": "^2.6.5", - "source-map": "^0.7.3" - }, - "engines": { - "node": ">= 10.x" - }, - "peerDependencies": { - "@types/webpack": "4.x", - "react-refresh": ">=0.8.3 <0.10.0", - "sockjs-client": "^1.4.0", - "type-fest": "^0.13.1", - "webpack": ">=4.43.0 <6.0.0", - "webpack-dev-server": "3.x", - "webpack-hot-middleware": "2.x", - "webpack-plugin-serve": "0.x || 1.x" - }, - "peerDependenciesMeta": { - "@types/webpack": { - "optional": true - }, - "sockjs-client": { - "optional": true - }, - "type-fest": { - "optional": true - }, - "webpack-dev-server": { - "optional": true - }, - "webpack-hot-middleware": { - "optional": true - }, - "webpack-plugin-serve": { - "optional": true - } - } - }, - "node_modules/gatsby/node_modules/@typescript-eslint/eslint-plugin": { - "version": "2.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.34.0.tgz", - "integrity": "sha512-4zY3Z88rEE99+CNvTbXSyovv2z9PNOVffTWD2W8QF5s2prBQtwN2zadqERcrHpcR7O/+KMI3fcTAmUUhK/iQcQ==", - "peer": true, - "dependencies": { - "@typescript-eslint/experimental-utils": "2.34.0", - "functional-red-black-tree": "^1.0.1", - "regexpp": "^3.0.0", - "tsutils": "^3.17.1" - }, - "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^2.0.0", - "eslint": "^5.0.0 || ^6.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/gatsby/node_modules/@typescript-eslint/experimental-utils": { - "version": "2.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-2.34.0.tgz", - "integrity": "sha512-eS6FTkq+wuMJ+sgtuNTtcqavWXqsflWcfBnlYhg/nS4aZ1leewkXGbvBhaapn1q6qf4M71bsR1tez5JTRMuqwA==", - "peer": true, - "dependencies": { - "@types/json-schema": "^7.0.3", - "@typescript-eslint/typescript-estree": "2.34.0", - "eslint-scope": "^5.0.0", - "eslint-utils": "^2.0.0" - }, - "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "*" - } - }, - "node_modules/gatsby/node_modules/@typescript-eslint/parser": { - "version": "2.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-2.34.0.tgz", - "integrity": "sha512-03ilO0ucSD0EPTw2X4PntSIRFtDPWjrVq7C3/Z3VQHRC7+13YB55rcJI3Jt+YgeHbjUdJPcPa7b23rXCBokuyA==", - "peer": true, - "dependencies": { - "@types/eslint-visitor-keys": "^1.0.0", - "@typescript-eslint/experimental-utils": "2.34.0", - "@typescript-eslint/typescript-estree": "2.34.0", - "eslint-visitor-keys": "^1.1.0" - }, - "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^5.0.0 || ^6.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/gatsby/node_modules/@typescript-eslint/typescript-estree": { - "version": "2.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-2.34.0.tgz", - "integrity": "sha512-OMAr+nJWKdlVM9LOqCqh3pQQPwxHAN7Du8DR6dmwCrAmxtiXQnhHJ6tBNtf+cggqfo51SG/FCwnKhXCIM7hnVg==", - "peer": true, - "dependencies": { - "debug": "^4.1.1", - "eslint-visitor-keys": "^1.1.0", - "glob": "^7.1.6", - "is-glob": "^4.0.1", - "lodash": "^4.17.15", - "semver": "^7.3.2", - "tsutils": "^3.17.1" - }, - "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/gatsby/node_modules/@typescript-eslint/typescript-estree/node_modules/debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", - "peer": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/gatsby/node_modules/ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "peer": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/gatsby/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "peer": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/gatsby/node_modules/astral-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", - "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", - "peer": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/gatsby/node_modules/cacache": { - "version": "13.0.1", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-13.0.1.tgz", - "integrity": "sha512-5ZvAxd05HDDU+y9BVvcqYu2LLXmPnQ0hW62h32g4xBTgL/MppR4/04NHfj/ycM2y6lmTnbw6HVi+1eN0Psba6w==", - "peer": true, - "dependencies": { - "chownr": "^1.1.2", - "figgy-pudding": "^3.5.1", - "fs-minipass": "^2.0.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.2", - "infer-owner": "^1.0.4", - "lru-cache": "^5.1.1", - "minipass": "^3.0.0", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "p-map": "^3.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^2.7.1", - "ssri": "^7.0.0", - "unique-filename": "^1.1.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/gatsby/node_modules/cacache/node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "peer": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - } - }, - "node_modules/gatsby/node_modules/chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "peer": true - }, - "node_modules/gatsby/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "peer": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/gatsby/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "peer": true - }, - "node_modules/gatsby/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "peer": true - }, - "node_modules/gatsby/node_modules/css-loader": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-1.0.1.tgz", - "integrity": "sha512-+ZHAZm/yqvJ2kDtPne3uX0C+Vr3Zn5jFn2N4HywtS5ujwvsVkyg0VArEXpl3BgczDA8anieki1FIzhchX4yrDw==", - "peer": true, - "dependencies": { - "babel-code-frame": "^6.26.0", - "css-selector-tokenizer": "^0.7.0", - "icss-utils": "^2.1.0", - "loader-utils": "^1.0.2", - "lodash": "^4.17.11", - "postcss": "^6.0.23", - "postcss-modules-extract-imports": "^1.2.0", - "postcss-modules-local-by-default": "^1.2.0", - "postcss-modules-scope": "^1.1.0", - "postcss-modules-values": "^1.3.0", - "postcss-value-parser": "^3.3.0", - "source-list-map": "^2.0.0" - }, - "engines": { - "node": ">= 6.9.0 <7.0.0 || >= 8.9.0" - }, - "peerDependencies": { - "webpack": "^4.0.0" - } - }, - "node_modules/gatsby/node_modules/date-fns": { - "version": "2.22.1", - "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.22.1.tgz", - "integrity": "sha512-yUFPQjrxEmIsMqlHhAhmxkuH769baF21Kk+nZwZGyrMoyLA+LugaQtC0+Tqf9CBUUULWwUJt6Q5ySI3LJDDCGg==", - "peer": true, - "engines": { - "node": ">=0.11" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/date-fns" - } - }, - "node_modules/gatsby/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "peer": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/gatsby/node_modules/dotenv": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz", - "integrity": "sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==", - "peer": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/gatsby/node_modules/emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "peer": true - }, - "node_modules/gatsby/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "peer": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/gatsby/node_modules/eslint": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", - "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", - "peer": true, - "dependencies": { - "@babel/code-frame": "^7.0.0", - "ajv": "^6.10.0", - "chalk": "^2.1.0", - "cross-spawn": "^6.0.5", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "eslint-scope": "^5.0.0", - "eslint-utils": "^1.4.3", - "eslint-visitor-keys": "^1.1.0", - "espree": "^6.1.2", - "esquery": "^1.0.1", - "esutils": "^2.0.2", - "file-entry-cache": "^5.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.0.0", - "globals": "^12.1.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "inquirer": "^7.0.0", - "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.14", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "optionator": "^0.8.3", - "progress": "^2.0.0", - "regexpp": "^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", - "v8-compile-cache": "^2.0.3" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/gatsby/node_modules/eslint-config-react-app": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/eslint-config-react-app/-/eslint-config-react-app-5.2.1.tgz", - "integrity": "sha512-pGIZ8t0mFLcV+6ZirRgYK6RVqUIKRIi9MmgzUEmrIknsn3AdO0I32asO86dJgloHq+9ZPl8UIg8mYrvgP5u2wQ==", - "peer": true, - "dependencies": { - "confusing-browser-globals": "^1.0.9" - }, - "peerDependencies": { - "@typescript-eslint/eslint-plugin": "2.x", - "@typescript-eslint/parser": "2.x", - "babel-eslint": "10.x", - "eslint": "6.x", - "eslint-plugin-flowtype": "3.x || 4.x", - "eslint-plugin-import": "2.x", - "eslint-plugin-jsx-a11y": "6.x", - "eslint-plugin-react": "7.x", - "eslint-plugin-react-hooks": "1.x || 2.x" - } - }, - "node_modules/gatsby/node_modules/eslint-loader": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/eslint-loader/-/eslint-loader-2.2.1.tgz", - "integrity": "sha512-RLgV9hoCVsMLvOxCuNjdqOrUqIj9oJg8hF44vzJaYqsAHuY9G2YAeN3joQ9nxP0p5Th9iFSIpKo+SD8KISxXRg==", - "deprecated": "This loader has been deprecated. Please use eslint-webpack-plugin", - "peer": true, - "dependencies": { - "loader-fs-cache": "^1.0.0", - "loader-utils": "^1.0.2", - "object-assign": "^4.0.1", - "object-hash": "^1.1.4", - "rimraf": "^2.6.1" - }, - "peerDependencies": { - "eslint": ">=1.6.0 <7.0.0", - "webpack": ">=2.0.0 <5.0.0" - } - }, - "node_modules/gatsby/node_modules/eslint-loader/node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "peer": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - } - }, - "node_modules/gatsby/node_modules/eslint-plugin-react-hooks": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-1.7.0.tgz", - "integrity": "sha512-iXTCFcOmlWvw4+TOE8CLWj6yX1GwzT0Y6cUfHHZqWnSk144VmVIRcVGtUAzrLES7C798lmvnt02C7rxaOX1HNA==", - "peer": true, - "engines": { - "node": ">=7" - }, - "peerDependencies": { - "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0" - } - }, - "node_modules/gatsby/node_modules/eslint-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", - "peer": true, - "dependencies": { - "eslint-visitor-keys": "^1.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - } - }, - "node_modules/gatsby/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "peer": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/gatsby/node_modules/eslint/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "peer": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/gatsby/node_modules/eslint/node_modules/cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "peer": true, - "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, - "engines": { - "node": ">=4.8" - } - }, - "node_modules/gatsby/node_modules/eslint/node_modules/cross-spawn/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "peer": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/gatsby/node_modules/eslint/node_modules/debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", - "peer": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/gatsby/node_modules/eslint/node_modules/eslint-utils": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", - "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", - "peer": true, - "dependencies": { - "eslint-visitor-keys": "^1.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/gatsby/node_modules/eslint/node_modules/regexpp": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", - "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", - "peer": true, - "engines": { - "node": ">=6.5.0" - } - }, - "node_modules/gatsby/node_modules/eslint/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "peer": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/gatsby/node_modules/eslint/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "peer": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/gatsby/node_modules/espree": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", - "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", - "peer": true, - "dependencies": { - "acorn": "^7.1.1", - "acorn-jsx": "^5.2.0", - "eslint-visitor-keys": "^1.1.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/gatsby/node_modules/eventsource": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.1.0.tgz", - "integrity": "sha512-VSJjT5oCNrFvCS6igjzPAt5hBzQ2qPBFIbJ03zLI9SE0mxwZpMw6BfJrbFHm1a141AavMEB8JHmBhWAd66PfCg==", - "optional": true, - "peer": true, - "dependencies": { - "original": "^1.0.0" - }, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/gatsby/node_modules/execa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", - "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", - "peer": true, - "dependencies": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/gatsby/node_modules/express-graphql": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/express-graphql/-/express-graphql-0.9.0.tgz", - "integrity": "sha512-wccd9Lb6oeJ8yHpUs/8LcnGjFUUQYmOG9A5BNLybRdCzGw0PeUrtBxsIR8bfiur6uSW4OvPkVDoYH06z6/N9+w==", - "peer": true, - "dependencies": { - "accepts": "^1.3.7", - "content-type": "^1.0.4", - "http-errors": "^1.7.3", - "raw-body": "^2.4.1" - }, - "engines": { - "node": ">= 8.x" - }, - "peerDependencies": { - "graphql": "^14.4.1" - } - }, - "node_modules/gatsby/node_modules/file-entry-cache": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", - "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", - "peer": true, - "dependencies": { - "flat-cache": "^2.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/gatsby/node_modules/file-loader": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-1.1.11.tgz", - "integrity": "sha512-TGR4HU7HUsGg6GCOPJnFk06RhWgEWFLAGWiT6rcD+GRC2keU3s9RGJ+b3Z6/U73jwwNb2gKLJ7YCrp+jvU4ALg==", - "peer": true, - "dependencies": { - "loader-utils": "^1.0.2", - "schema-utils": "^0.4.5" - }, - "engines": { - "node": ">= 4.3 < 5.0.0 || >= 5.10" - }, - "peerDependencies": { - "webpack": "^2.0.0 || ^3.0.0 || ^4.0.0" - } - }, - "node_modules/gatsby/node_modules/file-loader/node_modules/schema-utils": { - "version": "0.4.7", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz", - "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==", - "peer": true, - "dependencies": { - "ajv": "^6.1.0", - "ajv-keywords": "^3.1.0" - }, - "engines": { - "node": ">= 4" - } - }, - "node_modules/gatsby/node_modules/flat-cache": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", - "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", - "peer": true, - "dependencies": { - "flatted": "^2.0.0", - "rimraf": "2.6.3", - "write": "1.0.3" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/gatsby/node_modules/flat-cache/node_modules/rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "peer": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - } - }, - "node_modules/gatsby/node_modules/flatted": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", - "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", - "peer": true - }, - "node_modules/gatsby/node_modules/fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "peer": true, - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" - } - }, - "node_modules/gatsby/node_modules/get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "peer": true, - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/gatsby/node_modules/globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", - "peer": true, - "dependencies": { - "type-fest": "^0.8.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/gatsby/node_modules/globals/node_modules/type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "peer": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/gatsby/node_modules/graphql": { - "version": "14.7.0", - "resolved": "https://registry.npmjs.org/graphql/-/graphql-14.7.0.tgz", - "integrity": "sha512-l0xWZpoPKpppFzMfvVyFmp9vLN7w/ZZJPefUicMCepfJeQ8sMcztloGYY9DfjVPo6tIUDzU5Hw3MUbIjj9AVVA==", - "peer": true, - "dependencies": { - "iterall": "^1.2.2" - }, - "engines": { - "node": ">= 6.x" - } - }, - "node_modules/gatsby/node_modules/graphql-compose": { - "version": "6.3.8", - "resolved": "https://registry.npmjs.org/graphql-compose/-/graphql-compose-6.3.8.tgz", - "integrity": "sha512-o0/jzQEMIpSjryLKwmD1vGrCubiPxD0LxlGTgWDSu38TBepu2GhugC9gYgTEbtiCZAHPtvkZ90SzzABOWZyQLA==", - "peer": true, - "dependencies": { - "graphql-type-json": "^0.2.4", - "object-path": "^0.11.4" - }, - "engines": { - "node": ">= 6" - }, - "peerDependencies": { - "graphql": ">=0.13.0 || >=14.0.0 || >=14.1.0" - } - }, - "node_modules/gatsby/node_modules/graphql-type-json": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/graphql-type-json/-/graphql-type-json-0.2.4.tgz", - "integrity": "sha512-/tq02ayMQjrG4oDFDRLLrPk0KvJXue0nVXoItBe7uAdbNXjQUu+HYCBdAmPLQoseVzUKKMzrhq2P/sfI76ON6w==", - "peer": true, - "peerDependencies": { - "graphql": ">=0.8.0" - } - }, - "node_modules/gatsby/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "peer": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/gatsby/node_modules/html-entities": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.4.0.tgz", - "integrity": "sha512-8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA==", - "peer": true - }, - "node_modules/gatsby/node_modules/http-errors": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.0.tgz", - "integrity": "sha512-4I8r0C5JDhT5VkvI47QktDW75rNlGVsUf/8hzjCC/wkWI/jdTRmBb9aI7erSG82r1bjKY3F6k28WnsVxB1C73A==", - "peer": true, - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/gatsby/node_modules/human-signals": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", - "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", - "peer": true, - "engines": { - "node": ">=8.12.0" - } - }, - "node_modules/gatsby/node_modules/icss-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-2.1.0.tgz", - "integrity": "sha1-g/Cg7DeL8yRheLbCrZE28TWxyWI=", - "peer": true, - "dependencies": { - "postcss": "^6.0.1" - } - }, - "node_modules/gatsby/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "peer": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/gatsby/node_modules/jest-worker": { - "version": "24.9.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-24.9.0.tgz", - "integrity": "sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw==", - "peer": true, - "dependencies": { - "merge-stream": "^2.0.0", - "supports-color": "^6.1.0" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/gatsby/node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "peer": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/gatsby/node_modules/levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", - "peer": true, - "dependencies": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/gatsby/node_modules/mini-css-extract-plugin": { - "version": "0.11.3", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.11.3.tgz", - "integrity": "sha512-n9BA8LonkOkW1/zn+IbLPQmovsL0wMb9yx75fMJQZf2X1Zoec9yTZtyMePcyu19wPkmFbzZZA6fLTotpFhQsOA==", - "peer": true, - "dependencies": { - "loader-utils": "^1.1.0", - "normalize-url": "1.9.1", - "schema-utils": "^1.0.0", - "webpack-sources": "^1.1.0" - }, - "engines": { - "node": ">= 6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.4.0 || ^5.0.0" - } - }, - "node_modules/gatsby/node_modules/mini-css-extract-plugin/node_modules/schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "peer": true, - "dependencies": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - }, - "engines": { - "node": ">= 4" - } - }, - "node_modules/gatsby/node_modules/mitt": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mitt/-/mitt-1.2.0.tgz", - "integrity": "sha512-r6lj77KlwqLhIUku9UWYes7KJtsczvolZkzp8hbaDPPaE24OmWl5s539Mytlj22siEQKosZ26qCBgda2PKwoJw==", - "peer": true - }, - "node_modules/gatsby/node_modules/mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "peer": true, - "dependencies": { - "minimist": "^1.2.5" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/gatsby/node_modules/normalize-url": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-1.9.1.tgz", - "integrity": "sha1-LMDWazHqIwNkWENuNiDYWVTGbDw=", - "peer": true, - "dependencies": { - "object-assign": "^4.0.1", - "prepend-http": "^1.0.0", - "query-string": "^4.1.0", - "sort-keys": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/gatsby/node_modules/normalize-url/node_modules/query-string": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz", - "integrity": "sha1-u7aTucqRXCMlFbIosaArYJBD2+s=", - "peer": true, - "dependencies": { - "object-assign": "^4.1.0", - "strict-uri-encode": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gatsby/node_modules/optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", - "peer": true, - "dependencies": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/gatsby/node_modules/p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", - "peer": true, - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/gatsby/node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "peer": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/gatsby/node_modules/postcss": { - "version": "6.0.23", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz", - "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", - "peer": true, - "dependencies": { - "chalk": "^2.4.1", - "source-map": "^0.6.1", - "supports-color": "^5.4.0" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/gatsby/node_modules/postcss-modules-extract-imports": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.1.tgz", - "integrity": "sha512-6jt9XZwUhwmRUhb/CkyJY020PYaPJsCyt3UjbaWo6XEbH/94Hmv6MP7fG2C5NDU/BcHzyGYxNtHvM+LTf9HrYw==", - "peer": true, - "dependencies": { - "postcss": "^6.0.1" - } - }, - "node_modules/gatsby/node_modules/postcss-modules-local-by-default": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz", - "integrity": "sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk=", - "peer": true, - "dependencies": { - "css-selector-tokenizer": "^0.7.0", - "postcss": "^6.0.1" - } - }, - "node_modules/gatsby/node_modules/postcss-modules-scope": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz", - "integrity": "sha1-1upkmUx5+XtipytCb75gVqGUu5A=", - "peer": true, - "dependencies": { - "css-selector-tokenizer": "^0.7.0", - "postcss": "^6.0.1" - } - }, - "node_modules/gatsby/node_modules/postcss-modules-values": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz", - "integrity": "sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA=", - "peer": true, - "dependencies": { - "icss-replace-symbols": "^1.1.0", - "postcss": "^6.0.1" - } - }, - "node_modules/gatsby/node_modules/postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "peer": true - }, - "node_modules/gatsby/node_modules/postcss/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "peer": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/gatsby/node_modules/postcss/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gatsby/node_modules/postcss/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "peer": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/gatsby/node_modules/prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", - "peer": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/gatsby/node_modules/prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gatsby/node_modules/raw-body": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz", - "integrity": "sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==", - "peer": true, - "dependencies": { - "bytes": "3.1.0", - "http-errors": "1.7.3", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/gatsby/node_modules/raw-body/node_modules/http-errors": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", - "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==", - "peer": true, - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/gatsby/node_modules/raw-body/node_modules/setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", - "peer": true - }, - "node_modules/gatsby/node_modules/setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "peer": true - }, - "node_modules/gatsby/node_modules/shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "peer": true, - "dependencies": { - "shebang-regex": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gatsby/node_modules/shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gatsby/node_modules/slice-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", - "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", - "peer": true, - "dependencies": { - "ansi-styles": "^3.2.0", - "astral-regex": "^1.0.0", - "is-fullwidth-code-point": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/gatsby/node_modules/sockjs-client": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.5.1.tgz", - "integrity": "sha512-VnVAb663fosipI/m6pqRXakEOw7nvd7TUgdr3PlR/8V2I95QIdwT8L4nMxhyU8SmDBHYXU1TOElaKOmKLfYzeQ==", - "optional": true, - "peer": true, - "dependencies": { - "debug": "^3.2.6", - "eventsource": "^1.0.7", - "faye-websocket": "^0.11.3", - "inherits": "^2.0.4", - "json3": "^3.3.3", - "url-parse": "^1.5.1" - } - }, - "node_modules/gatsby/node_modules/sort-keys": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", - "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=", - "peer": true, - "dependencies": { - "is-plain-obj": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gatsby/node_modules/source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "peer": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/gatsby/node_modules/ssri": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-7.1.1.tgz", - "integrity": "sha512-w+daCzXN89PseTL99MkA+fxJEcU3wfaE/ah0i0lnOlpG1CYLJ2ZjzEry68YBKfLs4JfoTShrTEsJkAZuNZ/stw==", - "peer": true, - "dependencies": { - "figgy-pudding": "^3.5.1", - "minipass": "^3.1.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/gatsby/node_modules/strict-uri-encode": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", - "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gatsby/node_modules/string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "peer": true, - "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/gatsby/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "peer": true, - "dependencies": { - "ansi-regex": "^4.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/gatsby/node_modules/supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "peer": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/gatsby/node_modules/table": { - "version": "5.4.6", - "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", - "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", - "peer": true, - "dependencies": { - "ajv": "^6.10.2", - "lodash": "^4.17.14", - "slice-ansi": "^2.1.0", - "string-width": "^3.0.0" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/gatsby/node_modules/terser": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz", - "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==", - "peer": true, - "dependencies": { - "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/gatsby/node_modules/terser-webpack-plugin": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-2.3.8.tgz", - "integrity": "sha512-/fKw3R+hWyHfYx7Bv6oPqmk4HGQcrWLtV3X6ggvPuwPNHSnzvVV51z6OaaCOus4YLjutYGOz3pEpbhe6Up2s1w==", - "peer": true, - "dependencies": { - "cacache": "^13.0.1", - "find-cache-dir": "^3.3.1", - "jest-worker": "^25.4.0", - "p-limit": "^2.3.0", - "schema-utils": "^2.6.6", - "serialize-javascript": "^4.0.0", - "source-map": "^0.6.1", - "terser": "^4.6.12", - "webpack-sources": "^1.4.3" - }, - "engines": { - "node": ">= 8.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/gatsby/node_modules/terser-webpack-plugin/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "peer": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/gatsby/node_modules/terser-webpack-plugin/node_modules/jest-worker": { - "version": "25.5.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.5.0.tgz", - "integrity": "sha512-/dsSmUkIy5EBGfv/IjjqmFxrNAUpBERfGs1oHROyD7yxjG/w+t0GOJDX8O1k32ySmd7+a5IhnJU2qQFcJ4n1vw==", - "peer": true, - "dependencies": { - "merge-stream": "^2.0.0", - "supports-color": "^7.0.0" - }, - "engines": { - "node": ">= 8.3" - } - }, - "node_modules/gatsby/node_modules/terser-webpack-plugin/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gatsby/node_modules/terser-webpack-plugin/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "peer": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/gatsby/node_modules/terser/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/gatsby/node_modules/tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "peer": true, - "dependencies": { - "rimraf": "^3.0.0" - }, - "engines": { - "node": ">=8.17.0" - } - }, - "node_modules/gatsby/node_modules/type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", - "peer": true, - "dependencies": { - "prelude-ls": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/gatsby/node_modules/type-fest": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", - "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", - "optional": true, - "peer": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/gatsby/node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "peer": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/gatsby/node_modules/url-loader": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-1.1.2.tgz", - "integrity": "sha512-dXHkKmw8FhPqu8asTc1puBfe3TehOCo2+RmOOev5suNCIYBcT626kxiWg1NBVkwc4rO8BGa7gP70W7VXuqHrjg==", - "peer": true, - "dependencies": { - "loader-utils": "^1.1.0", - "mime": "^2.0.3", - "schema-utils": "^1.0.0" - }, - "engines": { - "node": ">= 6.9.0" - }, - "peerDependencies": { - "webpack": "^3.0.0 || ^4.0.0" - } - }, - "node_modules/gatsby/node_modules/url-loader/node_modules/schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "peer": true, - "dependencies": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - }, - "engines": { - "node": ">= 4" - } - }, - "node_modules/gatsby/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "peer": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, "node_modules/gauge": { "version": "2.7.4", "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", @@ -25762,6 +22555,7 @@ "version": "4.4.0", "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz", "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", + "dev": true, "dependencies": { "min-document": "^2.19.0", "process": "^0.11.10" @@ -26523,24 +23317,6 @@ "node": ">=10" } }, - "node_modules/gud": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/gud/-/gud-1.0.0.tgz", - "integrity": "sha512-zGEOVKFM5sVPPrYs7J5/hYEw2Pof8KCyOwyhG8sAF26mCAeUFAcYPu1mwB7hhpIP29zOIBaDqwuHdLp0jvZXjw==", - "peer": true - }, - "node_modules/gzip-size": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-3.0.0.tgz", - "integrity": "sha1-VGGI6b3DN/Zzdy+BZgRks4nc5SA=", - "peer": true, - "dependencies": { - "duplexer": "^0.1.1" - }, - "engines": { - "node": ">=0.12.0" - } - }, "node_modules/handle-thing": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", @@ -26614,6 +23390,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, "dependencies": { "ansi-regex": "^2.0.0" }, @@ -26625,6 +23402,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true, "engines": { "node": ">=0.10.0" } @@ -26954,6 +23732,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", + "optional": true, "dependencies": { "parse-passwd": "^1.0.0" }, @@ -27459,6 +24238,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz", "integrity": "sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk=", + "dev": true, "dependencies": { "import-from": "^2.1.0" }, @@ -27470,6 +24250,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz", "integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=", + "dev": true, "dependencies": { "resolve-from": "^3.0.0" }, @@ -27481,6 +24262,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true, "engines": { "node": ">=4" } @@ -28460,15 +25242,6 @@ "node": ">=0.10.0" } }, - "node_modules/is-root": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-root/-/is-root-1.0.0.tgz", - "integrity": "sha1-B7bCM7w5TNnQK6FclmvWZg1jQtU=", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/is-ssh": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.3.3.tgz", @@ -29996,15 +26769,6 @@ "graceful-fs": "^4.1.6" } }, - "node_modules/jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "peer": true, - "engines": { - "node": "*" - } - }, "node_modules/jsonlint-mod": { "version": "1.7.6", "resolved": "https://registry.npmjs.org/jsonlint-mod/-/jsonlint-mod-1.7.6.tgz", @@ -30442,6 +27206,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/last-call-webpack-plugin/-/last-call-webpack-plugin-3.0.0.tgz", "integrity": "sha512-7KI2l2GIZa9p2spzPIVZBYyNKkN+e/SQPpnjlTiPhdbDW3F86tdKKELxKpzJ5sgU19wQWsACULZmpTPYHeWO5w==", + "dev": true, "dependencies": { "lodash": "^4.17.5", "webpack-sources": "^1.1.0" @@ -31316,79 +28081,6 @@ "integrity": "sha1-BJGTngvuVkPuSUp+PaPSuscMbKQ=", "dev": true }, - "node_modules/loader-fs-cache": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/loader-fs-cache/-/loader-fs-cache-1.0.3.tgz", - "integrity": "sha512-ldcgZpjNJj71n+2Mf6yetz+c9bM4xpKtNds4LbqXzU/PTdeAX0g3ytnU1AJMEcTk2Lex4Smpe3Q/eCTsvUBxbA==", - "peer": true, - "dependencies": { - "find-cache-dir": "^0.1.1", - "mkdirp": "^0.5.1" - } - }, - "node_modules/loader-fs-cache/node_modules/find-cache-dir": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-0.1.1.tgz", - "integrity": "sha1-yN765XyKUqinhPnjHFfHQumToLk=", - "peer": true, - "dependencies": { - "commondir": "^1.0.1", - "mkdirp": "^0.5.1", - "pkg-dir": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/loader-fs-cache/node_modules/find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "peer": true, - "dependencies": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/loader-fs-cache/node_modules/mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "peer": true, - "dependencies": { - "minimist": "^1.2.5" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/loader-fs-cache/node_modules/path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "peer": true, - "dependencies": { - "pinkie-promise": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/loader-fs-cache/node_modules/pkg-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz", - "integrity": "sha1-ektQio1bstYp1EcFb/TpyTFM89Q=", - "peer": true, - "dependencies": { - "find-up": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/loader-runner": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", @@ -33556,6 +30248,7 @@ "version": "2.19.0", "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", + "dev": true, "dependencies": { "dom-walk": "^0.1.0" } @@ -33713,6 +30406,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "dev": true, "dependencies": { "minipass": "^3.0.0" }, @@ -33741,6 +30435,7 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dev": true, "dependencies": { "minipass": "^3.0.0" }, @@ -33762,6 +30457,7 @@ "version": "1.2.4", "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dev": true, "dependencies": { "minipass": "^3.0.0" }, @@ -35563,40 +32259,11 @@ "url": "https://github.com/fb55/nth-check?sponsor=1" } }, - "node_modules/null-loader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/null-loader/-/null-loader-3.0.0.tgz", - "integrity": "sha512-hf5sNLl8xdRho4UPBOOeoIwT3WhjYcMUQm0zj44EhD6UscMAz72o2udpoDFBgykucdEDGIcd6SXbc/G6zssbzw==", - "peer": true, - "dependencies": { - "loader-utils": "^1.2.3", - "schema-utils": "^1.0.0" - }, - "engines": { - "node": ">= 8.9.0" - }, - "peerDependencies": { - "webpack": "^4.3.0" - } - }, - "node_modules/null-loader/node_modules/schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "peer": true, - "dependencies": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - }, - "engines": { - "node": ">= 4" - } - }, "node_modules/num2fraction": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", - "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=" + "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", + "dev": true }, "node_modules/number-is-nan": { "version": "1.0.1", @@ -35711,15 +32378,6 @@ "node": ">=0.10.0" } }, - "node_modules/object-hash": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-1.3.1.tgz", - "integrity": "sha512-OSuu/pU4ENM9kmREg0BdNrUDIl1heYa4mBZacJc+vVWz4GtAwu7jO8s4AIt2aGRUTqxykpWzI3Oqnsm13tTMDA==", - "peer": true, - "engines": { - "node": ">= 0.10.0" - } - }, "node_modules/object-inspect": { "version": "1.11.0", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz", @@ -36000,27 +32658,6 @@ "node": ">=0.10" } }, - "node_modules/opn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/opn/-/opn-5.1.0.tgz", - "integrity": "sha512-iPNl7SyM8L30Rm1sjGdLLheyHVw5YXVfi3SKWJzBI7efxRwHojfRFjwE/OLM6qp9xJYMgab8WicTU1cPoY+Hpg==", - "peer": true, - "dependencies": { - "is-wsl": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/opn/node_modules/is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "peer": true, - "engines": { - "node": ">=4" - } - }, "node_modules/optimism": { "version": "0.16.1", "resolved": "https://registry.npmjs.org/optimism/-/optimism-0.16.1.tgz", @@ -36034,6 +32671,7 @@ "version": "5.0.8", "resolved": "https://registry.npmjs.org/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.8.tgz", "integrity": "sha512-mgFS1JdOtEGzD8l+EuISqL57cKO+We9GcoiQEmdCWRqqck+FGNmYJtx9qfAPzEz+lRrlThWMuGDaRkI/yWNx/Q==", + "dev": true, "dependencies": { "cssnano": "^4.1.10", "last-call-webpack-plugin": "^3.0.0" @@ -36733,6 +33371,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", + "optional": true, "engines": { "node": ">=0.10.0" } @@ -38315,116 +34954,6 @@ "node": ">=6" } }, - "node_modules/postcss-flexbugs-fixes": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-4.2.1.tgz", - "integrity": "sha512-9SiofaZ9CWpQWxOwRh1b/r85KD5y7GgvsNt1056k6OYLvWUun0czCvogfJgylC22uJTwW1KzY3Gz65NZRlvoiQ==", - "peer": true, - "dependencies": { - "postcss": "^7.0.26" - } - }, - "node_modules/postcss-flexbugs-fixes/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "peer": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-flexbugs-fixes/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "peer": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-flexbugs-fixes/node_modules/chalk/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "peer": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-flexbugs-fixes/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "peer": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/postcss-flexbugs-fixes/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "peer": true - }, - "node_modules/postcss-flexbugs-fixes/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "peer": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/postcss-flexbugs-fixes/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "peer": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-flexbugs-fixes/node_modules/postcss": { - "version": "7.0.36", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", - "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", - "peer": true, - "dependencies": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-flexbugs-fixes/node_modules/supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "peer": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/postcss-html": { "version": "0.36.0", "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-0.36.0.tgz", @@ -38568,6 +35097,7 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.1.2.tgz", "integrity": "sha512-/rDeGV6vMUo3mwJZmeHfEDvwnTKKqQ0S7OHUi/kJvvtx3aWtyWG2/0ZWnzCt2keEclwN6Tf0DST2v9kITdOKYw==", + "dev": true, "dependencies": { "cosmiconfig": "^5.0.0", "import-cwd": "^2.0.0" @@ -38584,6 +35114,7 @@ "version": "5.2.1", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", + "dev": true, "dependencies": { "import-fresh": "^2.0.0", "is-directory": "^0.3.1", @@ -38598,6 +35129,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", + "dev": true, "dependencies": { "caller-path": "^2.0.0", "resolve-from": "^3.0.0" @@ -38610,6 +35142,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, "dependencies": { "error-ex": "^1.3.1", "json-parse-better-errors": "^1.0.1" @@ -38622,6 +35155,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true, "engines": { "node": ">=4" } @@ -38630,6 +35164,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-3.0.0.tgz", "integrity": "sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA==", + "dev": true, "dependencies": { "loader-utils": "^1.1.0", "postcss": "^7.0.0", @@ -38644,6 +35179,7 @@ "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, "dependencies": { "color-convert": "^1.9.0" }, @@ -38655,6 +35191,7 @@ "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, "dependencies": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -38668,6 +35205,7 @@ "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, "dependencies": { "has-flag": "^3.0.0" }, @@ -38679,6 +35217,7 @@ "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, "dependencies": { "color-name": "1.1.3" } @@ -38686,12 +35225,14 @@ "node_modules/postcss-loader/node_modules/color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true }, "node_modules/postcss-loader/node_modules/escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true, "engines": { "node": ">=0.8.0" } @@ -38700,6 +35241,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true, "engines": { "node": ">=4" } @@ -38708,6 +35250,7 @@ "version": "7.0.36", "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", + "dev": true, "dependencies": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -38725,6 +35268,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dev": true, "dependencies": { "ajv": "^6.1.0", "ajv-errors": "^1.0.0", @@ -38738,6 +35282,7 @@ "version": "6.1.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, "dependencies": { "has-flag": "^3.0.0" }, @@ -42087,6 +38632,7 @@ "version": "2.4.1", "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.1.tgz", "integrity": "sha512-EQyfIuO2hPDsX1L/blblV+H7I0knhgAd82cVneCwcdND9B8AuCDuRcBH6yIcG4dFzlOUqbazQqwGjx5xmsNLuQ==", + "dev": true, "dependencies": { "kleur": "^3.0.3", "sisteransi": "^1.0.5" @@ -42619,12 +39165,6 @@ "node": ">= 0.8" } }, - "node_modules/raw-loader": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-0.5.1.tgz", - "integrity": "sha1-DD0L6u2KAclm2Xh793goElKpeao=", - "peer": true - }, "node_modules/rc": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", @@ -42661,457 +39201,6 @@ "node": ">=0.10.0" } }, - "node_modules/react-dev-utils": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-4.2.3.tgz", - "integrity": "sha512-uvmkwl5uMexCmC0GUv1XGQP0YjfYePJufGg4YYiukhqk2vN1tQxwWJIBERqhOmSi80cppZg8mZnPP/kOMf1sUQ==", - "peer": true, - "dependencies": { - "address": "1.0.3", - "babel-code-frame": "6.26.0", - "chalk": "1.1.3", - "cross-spawn": "5.1.0", - "detect-port-alt": "1.1.3", - "escape-string-regexp": "1.0.5", - "filesize": "3.5.11", - "global-modules": "1.0.0", - "gzip-size": "3.0.0", - "inquirer": "3.3.0", - "is-root": "1.0.0", - "opn": "5.1.0", - "react-error-overlay": "^3.0.0", - "recursive-readdir": "2.2.1", - "shell-quote": "1.6.1", - "sockjs-client": "1.1.4", - "strip-ansi": "3.0.1", - "text-table": "0.2.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/react-dev-utils/node_modules/address": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/address/-/address-1.0.3.tgz", - "integrity": "sha512-z55ocwKBRLryBs394Sm3ushTtBeg6VAeuku7utSoSnsJKvKcnXFIyC6vh27n3rXyxSgkJBBCAvyOn7gSUcTYjg==", - "peer": true, - "engines": { - "node": ">= 0.12.0" - } - }, - "node_modules/react-dev-utils/node_modules/ansi-escapes": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", - "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", - "peer": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dev-utils/node_modules/ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dev-utils/node_modules/chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "peer": true, - "dependencies": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dev-utils/node_modules/chardet": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz", - "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=", - "peer": true - }, - "node_modules/react-dev-utils/node_modules/cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", - "peer": true, - "dependencies": { - "restore-cursor": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/cli-width": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", - "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==", - "peer": true - }, - "node_modules/react-dev-utils/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "peer": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/react-dev-utils/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "peer": true - }, - "node_modules/react-dev-utils/node_modules/cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", - "peer": true, - "dependencies": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "node_modules/react-dev-utils/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "peer": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/react-dev-utils/node_modules/external-editor": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz", - "integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==", - "peer": true, - "dependencies": { - "chardet": "^0.4.0", - "iconv-lite": "^0.4.17", - "tmp": "^0.0.33" - }, - "engines": { - "node": ">=0.12" - } - }, - "node_modules/react-dev-utils/node_modules/figures": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", - "peer": true, - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/global-modules": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", - "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", - "peer": true, - "dependencies": { - "global-prefix": "^1.0.1", - "is-windows": "^1.0.1", - "resolve-dir": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dev-utils/node_modules/global-prefix": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", - "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", - "peer": true, - "dependencies": { - "expand-tilde": "^2.0.2", - "homedir-polyfill": "^1.0.1", - "ini": "^1.3.4", - "is-windows": "^1.0.1", - "which": "^1.2.14" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dev-utils/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "peer": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/inquirer": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", - "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", - "peer": true, - "dependencies": { - "ansi-escapes": "^3.0.0", - "chalk": "^2.0.0", - "cli-cursor": "^2.1.0", - "cli-width": "^2.0.0", - "external-editor": "^2.0.4", - "figures": "^2.0.0", - "lodash": "^4.3.0", - "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rx-lite": "^4.0.8", - "rx-lite-aggregates": "^4.0.8", - "string-width": "^2.1.0", - "strip-ansi": "^4.0.0", - "through": "^2.3.6" - } - }, - "node_modules/react-dev-utils/node_modules/inquirer/node_modules/ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "peer": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/inquirer/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "peer": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/inquirer/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "peer": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/inquirer/node_modules/strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "peer": true, - "dependencies": { - "ansi-regex": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/inquirer/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "peer": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "peer": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "peer": true, - "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "node_modules/react-dev-utils/node_modules/mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", - "peer": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/mute-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", - "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", - "peer": true - }, - "node_modules/react-dev-utils/node_modules/onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", - "peer": true, - "dependencies": { - "mimic-fn": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", - "peer": true, - "dependencies": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "peer": true, - "dependencies": { - "shebang-regex": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dev-utils/node_modules/shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dev-utils/node_modules/shell-quote": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz", - "integrity": "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=", - "peer": true, - "dependencies": { - "array-filter": "~0.0.0", - "array-map": "~0.0.0", - "array-reduce": "~0.0.0", - "jsonify": "~0.0.0" - } - }, - "node_modules/react-dev-utils/node_modules/string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "peer": true, - "dependencies": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/string-width/node_modules/ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "peer": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/string-width/node_modules/strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "peer": true, - "dependencies": { - "ansi-regex": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "peer": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dev-utils/node_modules/supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "peer": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/react-dev-utils/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "peer": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/react-dev-utils/node_modules/yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "peer": true - }, "node_modules/react-dom": { "version": "16.14.0", "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.14.0.tgz", @@ -43127,50 +39216,6 @@ "react": "^16.14.0" } }, - "node_modules/react-error-overlay": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-3.0.0.tgz", - "integrity": "sha512-XzgvowFrwDo6TWcpJ/WTiarb9UI6lhA4PMzS7n1joK3sHfBBBOQHUc0U4u57D6DWO9vHv6lVSWx2Q/Ymfyv4hw==", - "peer": true - }, - "node_modules/react-hot-loader": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/react-hot-loader/-/react-hot-loader-4.13.0.tgz", - "integrity": "sha512-JrLlvUPqh6wIkrK2hZDfOyq/Uh/WeVEr8nc7hkn2/3Ul0sx1Kr5y4kOGNacNRoj7RhwLNcQ3Udf1KJXrqc0ZtA==", - "peer": true, - "dependencies": { - "fast-levenshtein": "^2.0.6", - "global": "^4.3.0", - "hoist-non-react-statics": "^3.3.0", - "loader-utils": "^1.1.0", - "prop-types": "^15.6.1", - "react-lifecycles-compat": "^3.0.4", - "shallowequal": "^1.1.0", - "source-map": "^0.7.3" - }, - "engines": { - "node": ">= 6" - }, - "peerDependencies": { - "@types/react": "^15.0.0 || ^16.0.0 || ^17.0.0 ", - "react": "^15.0.0 || ^16.0.0 || ^17.0.0 ", - "react-dom": "^15.0.0 || ^16.0.0 || ^17.0.0 " - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/react-hot-loader/node_modules/source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "peer": true, - "engines": { - "node": ">= 8" - } - }, "node_modules/react-is": { "version": "17.0.2", "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", @@ -43183,15 +39228,6 @@ "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==", "peer": true }, - "node_modules/react-refresh": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.8.3.tgz", - "integrity": "sha512-X8jZHc7nCMjaCqoU+V2I0cOhNW+QMBwSUkeXnTi8IPe6zaRWfn60ZzvFDZqWPfmSJfjub7dDW1SP0jaHWLu/hg==", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/read": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz", @@ -43512,30 +39548,6 @@ "node": ">= 0.10" } }, - "node_modules/recursive-readdir": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.1.tgz", - "integrity": "sha1-kO8jHQd4xc4JPJpI105cVCLROpk=", - "peer": true, - "dependencies": { - "minimatch": "3.0.3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/recursive-readdir/node_modules/minimatch": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha1-Kk5AkLlrLbBqnX3wEFWmKnfJt3Q=", - "peer": true, - "dependencies": { - "brace-expansion": "^1.0.0" - }, - "engines": { - "node": "*" - } - }, "node_modules/redent": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", @@ -44211,6 +40223,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", + "optional": true, "dependencies": { "expand-tilde": "^2.0.0", "global-modules": "^1.0.0" @@ -44223,6 +40236,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", + "optional": true, "dependencies": { "global-prefix": "^1.0.1", "is-windows": "^1.0.1", @@ -44236,6 +40250,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", + "optional": true, "dependencies": { "expand-tilde": "^2.0.2", "homedir-polyfill": "^1.0.1", @@ -44251,6 +40266,7 @@ "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "optional": true, "dependencies": { "isexe": "^2.0.0" }, @@ -44737,21 +40753,6 @@ "integrity": "sha1-SQPL2AJIrg7eaFv1j9I2p6mymj4=", "dev": true }, - "node_modules/rx-lite": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", - "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=", - "peer": true - }, - "node_modules/rx-lite-aggregates": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", - "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", - "peer": true, - "dependencies": { - "rx-lite": "*" - } - }, "node_modules/rxjs": { "version": "6.6.7", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", @@ -45158,12 +41159,6 @@ "integrity": "sha512-LUMFi+RppPlrHzbqmFnINTrazo0lPNwhcgzuAXVVcfy/mqPDrQmHAyz5bvV0gDAuRFrk804V0HpQ6u9sZ0tBeg==", "peer": true }, - "node_modules/shallowequal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", - "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==", - "peer": true - }, "node_modules/sharp": { "version": "0.29.0", "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.29.0.tgz", @@ -45682,35 +41677,6 @@ "websocket-driver": "^0.7.4" } }, - "node_modules/sockjs-client": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.1.4.tgz", - "integrity": "sha1-W6vjhrd15M8U51IJEUUmVAFsixI=", - "peer": true, - "dependencies": { - "debug": "^2.6.6", - "eventsource": "0.1.6", - "faye-websocket": "~0.11.0", - "inherits": "^2.0.1", - "json3": "^3.3.2", - "url-parse": "^1.1.8" - } - }, - "node_modules/sockjs-client/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "peer": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/sockjs-client/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "peer": true - }, "node_modules/socks": { "version": "2.6.1", "resolved": "https://registry.npmjs.org/socks/-/socks-2.6.1.tgz", @@ -46749,33 +42715,6 @@ "resolved": "https://registry.npmjs.org/stubs/-/stubs-3.0.0.tgz", "integrity": "sha1-6NK6H6nJBXAwPAMLaQD31fiavls=" }, - "node_modules/style-loader": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-0.23.1.tgz", - "integrity": "sha512-XK+uv9kWwhZMZ1y7mysB+zoihsEj4wneFWAS5qoiLwzW0WzSqMrrsIy+a3zkQJq0ipFtBpX5W3MqyRIBF/WFGg==", - "peer": true, - "dependencies": { - "loader-utils": "^1.1.0", - "schema-utils": "^1.0.0" - }, - "engines": { - "node": ">= 0.12.0" - } - }, - "node_modules/style-loader/node_modules/schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "peer": true, - "dependencies": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - }, - "engines": { - "node": ">= 4" - } - }, "node_modules/style-search": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/style-search/-/style-search-0.1.0.tgz", @@ -51946,15 +47885,6 @@ "makeerror": "1.0.x" } }, - "node_modules/warning": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz", - "integrity": "sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==", - "peer": true, - "dependencies": { - "loose-envify": "^1.0.0" - } - }, "node_modules/watchpack": { "version": "1.7.5", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.5.tgz", @@ -53415,6 +49345,7 @@ "version": "2.25.0", "resolved": "https://registry.npmjs.org/webpack-hot-middleware/-/webpack-hot-middleware-2.25.0.tgz", "integrity": "sha512-xs5dPOrGPCzuRXNi8F6rwhawWvQQkeli5Ro48PRuQh8pYPCPmNnltP9itiUPT4xI8oW+y0m59lyyeQk54s5VgA==", + "optional": true, "peer": true, "dependencies": { "ansi-html": "0.0.7", @@ -53427,6 +49358,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "optional": true, "peer": true, "engines": { "node": ">=0.10.0" @@ -53436,12 +49368,14 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.4.0.tgz", "integrity": "sha512-8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA==", + "optional": true, "peer": true }, "node_modules/webpack-hot-middleware/node_modules/strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "optional": true, "peer": true, "dependencies": { "ansi-regex": "^2.0.0" @@ -53474,6 +49408,7 @@ "version": "4.2.2", "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.2.tgz", "integrity": "sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g==", + "dev": true, "dependencies": { "lodash": "^4.17.15" } @@ -53487,33 +49422,6 @@ "source-map": "~0.6.1" } }, - "node_modules/webpack-stats-plugin": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/webpack-stats-plugin/-/webpack-stats-plugin-0.3.2.tgz", - "integrity": "sha512-kxEtPQ6lBBik2qtJlsZkiaDMI6rGXe9w1kLH9ZCdt0wgCGVnbwwPlP60cMqG6tILNFYqXDxNt4+c4OIIuE+Fnw==", - "peer": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/webpack-virtual-modules": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.2.2.tgz", - "integrity": "sha512-kDUmfm3BZrei0y+1NTHJInejzxfhtU8eDj2M7OKb2IWrPFAeO1SOH2KuQ68MSZu9IGEHcxbkKKR1v18FrUSOmA==", - "peer": true, - "dependencies": { - "debug": "^3.0.0" - } - }, - "node_modules/webpack-virtual-modules/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "peer": true, - "dependencies": { - "ms": "^2.1.1" - } - }, "node_modules/webpack/node_modules/acorn": { "version": "6.4.2", "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", @@ -54137,6 +50045,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", + "dev": true, "dependencies": { "mkdirp": "^0.5.1" }, @@ -54291,6 +50200,7 @@ "version": "0.5.5", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, "dependencies": { "minimist": "^1.2.5" }, @@ -55319,10 +51229,10 @@ "version": "9.0.0-rc.90", "license": "MIT", "dependencies": { - "@directus/sdk-js": "9.0.0-rc.53", - "@lnfusion/gatsby-source-graphql": "0.0.4", + "@directus/sdk": "^9.0.0-rc.90", "chalk": "4.1.2", "gatsby-source-filesystem": "3.12.0", + "gatsby-source-graphql": "3.12.0", "invariant": "2.2.4", "ms": "2.1.3" } @@ -56969,6 +52879,29 @@ "node": ">=8.6" } }, + "packages/gatsby-source-directus/node_modules/gatsby-source-graphql": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/gatsby-source-graphql/-/gatsby-source-graphql-3.12.0.tgz", + "integrity": "sha512-mLDpz9OjeEK3iY6sluqNz1D1N6SYLdyWtoO3jGSPPIdVT8EcebHan4/jy3nfWJCsEGlOoBnTe27c1JRrAxe4Xw==", + "dependencies": { + "@babel/runtime": "^7.14.8", + "@graphql-tools/links": "^7.1.0", + "@graphql-tools/utils": "^7.7.3", + "@graphql-tools/wrap": "^7.0.8", + "apollo-link": "1.2.14", + "apollo-link-http": "^1.5.17", + "dataloader": "^2.0.0", + "invariant": "^2.2.4", + "node-fetch": "^2.6.1", + "uuid": "3.4.0" + }, + "engines": { + "node": ">=12.13.0" + }, + "peerDependencies": { + "gatsby": "^3.0.0-next.0" + } + }, "packages/gatsby-source-directus/node_modules/gatsby-telemetry": { "version": "2.10.0", "resolved": "https://registry.npmjs.org/gatsby-telemetry/-/gatsby-telemetry-2.10.0.tgz", @@ -61309,10 +57242,10 @@ "@directus/gatsby-source-directus": { "version": "file:packages/gatsby-source-directus", "requires": { - "@directus/sdk-js": "9.0.0-rc.53", - "@lnfusion/gatsby-source-graphql": "0.0.4", + "@directus/sdk": "^9.0.0-rc.90", "chalk": "4.1.2", "gatsby-source-filesystem": "3.12.0", + "gatsby-source-graphql": "3.12.0", "invariant": "2.2.4", "ms": "2.1.3" }, @@ -62612,6 +58545,23 @@ } } }, + "gatsby-source-graphql": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/gatsby-source-graphql/-/gatsby-source-graphql-3.12.0.tgz", + "integrity": "sha512-mLDpz9OjeEK3iY6sluqNz1D1N6SYLdyWtoO3jGSPPIdVT8EcebHan4/jy3nfWJCsEGlOoBnTe27c1JRrAxe4Xw==", + "requires": { + "@babel/runtime": "^7.14.8", + "@graphql-tools/links": "^7.1.0", + "@graphql-tools/utils": "^7.7.3", + "@graphql-tools/wrap": "^7.0.8", + "apollo-link": "1.2.14", + "apollo-link-http": "^1.5.17", + "dataloader": "^2.0.0", + "invariant": "^2.2.4", + "node-fetch": "^2.6.1", + "uuid": "3.4.0" + } + }, "gatsby-telemetry": { "version": "2.10.0", "resolved": "https://registry.npmjs.org/gatsby-telemetry/-/gatsby-telemetry-2.10.0.tgz", @@ -63936,15 +59886,6 @@ "typescript": "4.3.5" } }, - "@directus/sdk-js": { - "version": "9.0.0-rc.53", - "resolved": "https://registry.npmjs.org/@directus/sdk-js/-/sdk-js-9.0.0-rc.53.tgz", - "integrity": "sha512-P9Ga4zfAceIJtzt6fvhZ0L/IyJUUEKOEshcJnIYQQLbwpeQ6p9e3FYZhq7MciArQQ3DVj71c3BVSg+bcBYymVQ==", - "requires": { - "axios": "^0.21.1", - "openapi3-ts": "^2.0.0" - } - }, "@directus/shared": { "version": "file:packages/shared", "requires": { @@ -65901,23 +61842,6 @@ "write-file-atomic": "^3.0.3" } }, - "@lnfusion/gatsby-source-graphql": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/@lnfusion/gatsby-source-graphql/-/gatsby-source-graphql-0.0.4.tgz", - "integrity": "sha512-N7xvAdC+oHr5ujp3cq7HLM12knxztVmU68OHKPTqBQaSnCXcp9/5XxT/+TLHVDy4RQmMJ5xxfpOdT9IlAkmjKw==", - "requires": { - "@babel/runtime": "^7.12.5", - "@graphql-tools/links": "^7.0.3", - "@graphql-tools/utils": "^7.0.2", - "@graphql-tools/wrap": "^7.0.1", - "apollo-link": "1.2.14", - "apollo-link-http": "^1.5.17", - "dataloader": "^2.0.0", - "invariant": "^2.2.4", - "node-fetch": "^2.6.1", - "uuid": "3.4.0" - } - }, "@lukeed/csprng": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/@lukeed/csprng/-/csprng-1.0.0.tgz", @@ -66389,12 +62313,6 @@ "integrity": "sha512-W6CLUJ2eBMw3Rec70qrsEW0jOm/3twwJv21mrmj2yORiaVmVYGS4sSS5yUwvQc1ZlDLYGPnClVWmUUMagKNsfA==", "peer": true }, - "@mikaelkristiansson/domready": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@mikaelkristiansson/domready/-/domready-1.0.11.tgz", - "integrity": "sha512-nEBLOa0JgtqahmPrnJZ18epLiFBzxhdKgo4uhN3TaBFRmM30pEVrS9FAEV4tg92d8PTdU+dYQx2lnpPyFMgMcg==", - "peer": true - }, "@mrmlnc/readdir-enhanced": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", @@ -66971,142 +62889,12 @@ "resolved": "https://registry.npmjs.org/@phc/format/-/format-1.0.0.tgz", "integrity": "sha512-m7X9U6BG2+J+R1lSOdCiITLLrxm+cWlNI3HUFA92oLO77ObGNzaKdh8pMLqdZcshtkKuV84olNNXDfMc4FezBQ==" }, - "@pieh/friendly-errors-webpack-plugin": { - "version": "1.7.0-chalk-2", - "resolved": "https://registry.npmjs.org/@pieh/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-1.7.0-chalk-2.tgz", - "integrity": "sha512-65+vYGuDkHBCWWjqzzR/Ck318+d6yTI00EqII9qe3aPD1J3Olhvw0X38uM5moQb1PK/ksDXwSoPGt/5QhCiotw==", - "peer": true, - "requires": { - "chalk": "^2.4.2", - "error-stack-parser": "^2.0.0", - "string-width": "^2.0.0", - "strip-ansi": "^3" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "peer": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "peer": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "peer": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "peer": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "peer": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "peer": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "peer": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "peer": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "peer": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "peer": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "peer": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "peer": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "peer": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, "@popperjs/core": { "version": "2.9.3", "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.9.3.tgz", "integrity": "sha512-xDu17cEfh7Kid/d95kB6tZsLOmSWKCZKtprnhVepjsSaCij+lM3mItSJDuuHDMbCWTh8Ejmebwb+KONcCJ0eXQ==", "dev": true }, - "@reach/router": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@reach/router/-/router-1.3.4.tgz", - "integrity": "sha512-+mtn9wjlB9NN2CNnnC/BRYtwdKBfSyyasPYraNAyvaV1occr/5NnB4CVzjEZipNHwYebQwcndGUmpFzxAUoqSA==", - "peer": true, - "requires": { - "create-react-context": "0.3.0", - "invariant": "^2.2.3", - "prop-types": "^15.6.1", - "react-lifecycles-compat": "^3.0.4" - } - }, "@rollup/plugin-alias": { "version": "3.1.4", "resolved": "https://registry.npmjs.org/@rollup/plugin-alias/-/plugin-alias-3.1.4.tgz", @@ -67851,12 +63639,6 @@ "@types/estree": "*" } }, - "@types/eslint-visitor-keys": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@types/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", - "integrity": "sha512-OCutwjDZ4aFS6PB1UZ988C4YgwlBHJd6wCeQqaLdmadZ/7e+w79+hbMUFC1QXDNCmdyoRfAFdm0RypzwR+Qpag==", - "peer": true - }, "@types/estree": { "version": "0.0.48", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.48.tgz", @@ -72122,12 +67904,6 @@ "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=", "optional": true }, - "array-filter": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz", - "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=", - "peer": true - }, "array-find-index": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", @@ -72158,18 +67934,6 @@ "is-string": "^1.0.5" } }, - "array-map": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz", - "integrity": "sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI=", - "peer": true - }, - "array-reduce": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz", - "integrity": "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=", - "peer": true - }, "array-slice": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz", @@ -72399,6 +68163,7 @@ "version": "9.8.6", "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.6.tgz", "integrity": "sha512-XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg==", + "dev": true, "requires": { "browserslist": "^4.12.0", "caniuse-lite": "^1.0.30001109", @@ -72413,6 +68178,7 @@ "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, "requires": { "color-convert": "^1.9.0" } @@ -72421,6 +68187,7 @@ "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, "requires": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -72431,6 +68198,7 @@ "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, "requires": { "has-flag": "^3.0.0" } @@ -72441,6 +68209,7 @@ "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, "requires": { "color-name": "1.1.3" } @@ -72448,22 +68217,26 @@ "color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true }, "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true }, "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true }, "postcss": { "version": "7.0.36", "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", + "dev": true, "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -72474,6 +68247,7 @@ "version": "6.1.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, "requires": { "has-flag": "^3.0.0" } @@ -72578,6 +68352,7 @@ "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "dev": true, "requires": { "chalk": "^1.1.3", "esutils": "^2.0.2", @@ -72587,17 +68362,20 @@ "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true }, "ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true }, "chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, "requires": { "ansi-styles": "^2.2.1", "escape-string-regexp": "^1.0.2", @@ -72609,17 +68387,20 @@ "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true }, "js-tokens": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, "requires": { "ansi-regex": "^2.0.0" } @@ -72627,17 +68408,11 @@ "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true } } }, - "babel-core": { - "version": "7.0.0-bridge.0", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-7.0.0-bridge.0.tgz", - "integrity": "sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==", - "peer": true, - "requires": {} - }, "babel-eslint": { "version": "10.1.0", "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz", @@ -72799,13 +68574,6 @@ "@babel/helper-define-polyfill-provider": "^0.2.2" } }, - "babel-plugin-remove-graphql-queries": { - "version": "2.16.1", - "resolved": "https://registry.npmjs.org/babel-plugin-remove-graphql-queries/-/babel-plugin-remove-graphql-queries-2.16.1.tgz", - "integrity": "sha512-PkHJuRodMp4p617a/ZVhV8elBhRoFpOTpdu2DaApXJFIsDJWhjZ8d4BGbbFCT/yKJrhRDTdqg1r5AhWEaEUKkw==", - "peer": true, - "requires": {} - }, "babel-plugin-transform-react-remove-prop-types": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-remove-prop-types/-/babel-plugin-transform-react-remove-prop-types-0.4.24.tgz", @@ -72832,29 +68600,6 @@ "@babel/plugin-syntax-top-level-await": "^7.8.3" } }, - "babel-preset-gatsby": { - "version": "0.12.3", - "resolved": "https://registry.npmjs.org/babel-preset-gatsby/-/babel-preset-gatsby-0.12.3.tgz", - "integrity": "sha512-s/5Nkeeihu/oNUcLQakm+lwLCiNWcQamQliB+NqEVB/IgRVn1FQPxqmxNbEb0i2HrEBPKgOrXyt82IfzirCmgg==", - "peer": true, - "requires": { - "@babel/plugin-proposal-class-properties": "^7.12.1", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.12.1", - "@babel/plugin-proposal-optional-chaining": "^7.12.1", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-transform-classes": "^7.12.1", - "@babel/plugin-transform-runtime": "^7.12.1", - "@babel/plugin-transform-spread": "^7.12.1", - "@babel/preset-env": "^7.12.1", - "@babel/preset-react": "^7.12.5", - "@babel/runtime": "^7.12.5", - "babel-plugin-dynamic-import-node": "^2.3.3", - "babel-plugin-macros": "^2.8.0", - "babel-plugin-transform-react-remove-prop-types": "^0.4.24", - "gatsby-core-utils": "^1.10.1", - "gatsby-legacy-polyfills": "^0.7.1" - } - }, "babel-preset-jest": { "version": "27.0.6", "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.0.6.tgz", @@ -75325,12 +71070,6 @@ "elliptic": "^6.5.3" } }, - "create-gatsby": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/create-gatsby/-/create-gatsby-0.5.1.tgz", - "integrity": "sha512-iQ3Z757x02uw9Z3ereR/+RNjiQPCKLEAh3GLqfcTNNVeGgRd07XdgIgGIZrbuNaKL/3EGdfejd7ElJ1UBLQSHQ==", - "peer": true - }, "create-hash": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", @@ -75356,16 +71095,6 @@ "sha.js": "^2.4.8" } }, - "create-react-context": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/create-react-context/-/create-react-context-0.3.0.tgz", - "integrity": "sha512-dNldIoSuNSvlTJ7slIKC/ZFGKexBMBrrcc+TTe1NdmROnaASuLPvqpwj9v4XS4uXZ8+YPu0sNmShX2rXI5LNsw==", - "peer": true, - "requires": { - "gud": "^1.0.0", - "warning": "^4.0.3" - } - }, "create-require": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", @@ -75747,16 +71476,6 @@ "resolved": "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz", "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==" }, - "css-selector-tokenizer": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.3.tgz", - "integrity": "sha512-jWQv3oCEL5kMErj4wRnK/OPoBi0D+P1FR2cDCKYPaMeD2eW3/mttav8HT4hT1CKopiJI/psEULjkClhvJo4Lvg==", - "peer": true, - "requires": { - "cssesc": "^3.0.0", - "fastparse": "^1.1.2" - } - }, "css-tree": { "version": "1.0.0-alpha.37", "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz", @@ -76630,33 +72349,6 @@ } } }, - "detect-port-alt": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.3.tgz", - "integrity": "sha1-pNLwYddXoDTs83xRQmCph1DysTE=", - "peer": true, - "requires": { - "address": "^1.0.1", - "debug": "^2.6.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "peer": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "peer": true - } - } - }, "devcert": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/devcert/-/devcert-1.2.0.tgz", @@ -77185,7 +72877,8 @@ "dom-walk": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", - "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==" + "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==", + "dev": true }, "domain-browser": { "version": "1.2.0", @@ -77928,15 +73621,6 @@ } } }, - "eslint-plugin-flowtype": { - "version": "3.13.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-flowtype/-/eslint-plugin-flowtype-3.13.0.tgz", - "integrity": "sha512-bhewp36P+t7cEV0b6OdmoRWJCBYRiHFlqPZAG1oS3SF+Y0LQkeDvFSM4oxoxvczD1OdONCXMlJfQFiWLcV9urw==", - "peer": true, - "requires": { - "lodash": "^4.17.15" - } - }, "eslint-plugin-graphql": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/eslint-plugin-graphql/-/eslint-plugin-graphql-4.0.0.tgz", @@ -78357,15 +74041,6 @@ "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" }, - "eventsource": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-0.1.6.tgz", - "integrity": "sha1-Cs7ehJ7X3RzMMsgRuxG5RNTykjI=", - "peer": true, - "requires": { - "original": ">=0.0.5" - } - }, "evp_bytestokey": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", @@ -78526,6 +74201,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", + "optional": true, "requires": { "homedir-polyfill": "^1.0.1" } @@ -78894,12 +74570,6 @@ "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz", "integrity": "sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow==" }, - "fastparse": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.2.tgz", - "integrity": "sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==", - "peer": true - }, "fastq": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.11.1.tgz", @@ -78996,12 +74666,6 @@ "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", "optional": true }, - "filesize": { - "version": "3.5.11", - "resolved": "https://registry.npmjs.org/filesize/-/filesize-3.5.11.tgz", - "integrity": "sha512-ZH7loueKBoDb7yG9esn1U+fgq7BzlzW6NRi5/rMdxIZ05dj7GFD/Xc5rq2CDt5Yq86CyfSYVyx4242QQNZbx1g==", - "peer": true - }, "fill-range": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", @@ -79790,2217 +75454,6 @@ "integrity": "sha1-THbsL/CsGjap3M+aAN+GIweNTtg=", "dev": true }, - "gatsby": { - "version": "2.32.13", - "resolved": "https://registry.npmjs.org/gatsby/-/gatsby-2.32.13.tgz", - "integrity": "sha512-BYfiI/k+t8m/IzSkWZH8Cc0v7rJw6giSjG5sX25LWdfkQMqUvg/Gn6OC8BWwRPXnEwe7x0n5jbH+peO0p34ZHQ==", - "peer": true, - "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/core": "^7.12.3", - "@babel/parser": "^7.12.5", - "@babel/runtime": "^7.12.5", - "@babel/traverse": "^7.12.5", - "@babel/types": "^7.12.6", - "@hapi/joi": "^15.1.1", - "@mikaelkristiansson/domready": "^1.0.10", - "@nodelib/fs.walk": "^1.2.4", - "@pieh/friendly-errors-webpack-plugin": "1.7.0-chalk-2", - "@pmmmwh/react-refresh-webpack-plugin": "^0.4.1", - "@reach/router": "^1.3.4", - "@types/http-proxy": "^1.17.4", - "@typescript-eslint/eslint-plugin": "^2.24.0", - "@typescript-eslint/parser": "^2.24.0", - "address": "1.1.2", - "anser": "^2.0.1", - "ansi-html": "^0.0.7", - "autoprefixer": "^9.8.4", - "axios": "^0.21.1", - "babel-core": "7.0.0-bridge.0", - "babel-eslint": "^10.1.0", - "babel-loader": "^8.1.0", - "babel-plugin-add-module-exports": "^1.0.4", - "babel-plugin-dynamic-import-node": "^2.3.3", - "babel-plugin-lodash": "^3.3.4", - "babel-plugin-remove-graphql-queries": "^2.16.1", - "babel-preset-gatsby": "^0.12.3", - "better-opn": "^2.0.0", - "better-queue": "^3.8.10", - "bluebird": "^3.7.2", - "body-parser": "^1.19.0", - "browserslist": "^4.12.2", - "cache-manager": "^2.11.1", - "chalk": "^4.1.0", - "chokidar": "^3.4.2", - "common-tags": "^1.8.0", - "compression": "^1.7.4", - "convert-hrtime": "^3.0.0", - "copyfiles": "^2.3.0", - "core-js": "^3.6.5", - "cors": "^2.8.5", - "css-loader": "^1.0.1", - "date-fns": "^2.14.0", - "debug": "^3.2.7", - "del": "^5.1.0", - "detect-port": "^1.3.0", - "devcert": "^1.1.3", - "dotenv": "^8.2.0", - "eslint": "^6.8.0", - "eslint-config-react-app": "^5.2.1", - "eslint-loader": "^2.2.1", - "eslint-plugin-flowtype": "^3.13.0", - "eslint-plugin-graphql": "^4.0.0", - "eslint-plugin-import": "^2.22.0", - "eslint-plugin-jsx-a11y": "^6.3.1", - "eslint-plugin-react": "^7.20.6", - "eslint-plugin-react-hooks": "^1.7.0", - "event-source-polyfill": "^1.0.15", - "execa": "^4.0.3", - "express": "^4.17.1", - "express-graphql": "^0.9.0", - "fastest-levenshtein": "^1.0.12", - "fastq": "^1.10.0", - "file-loader": "^1.1.11", - "find-cache-dir": "^3.3.1", - "fs-exists-cached": "1.0.0", - "fs-extra": "^8.1.0", - "gatsby-cli": "^2.19.3", - "gatsby-core-utils": "^1.10.1", - "gatsby-graphiql-explorer": "^0.11.0", - "gatsby-legacy-polyfills": "^0.7.1", - "gatsby-link": "^2.11.0", - "gatsby-plugin-page-creator": "^2.10.2", - "gatsby-plugin-typescript": "^2.12.1", - "gatsby-plugin-utils": "^0.9.0", - "gatsby-react-router-scroll": "^3.7.0", - "gatsby-telemetry": "^1.10.2", - "glob": "^7.1.6", - "got": "8.3.2", - "graphql": "^14.6.0", - "graphql-compose": "^6.3.8", - "graphql-playground-middleware-express": "^1.7.18", - "hasha": "^5.2.0", - "http-proxy": "^1.18.1", - "invariant": "^2.2.4", - "is-relative": "^1.0.0", - "is-relative-url": "^3.0.0", - "jest-worker": "^24.9.0", - "joi": "^17.2.1", - "json-loader": "^0.5.7", - "json-stringify-safe": "^5.0.1", - "latest-version": "5.1.0", - "lodash": "^4.17.20", - "md5-file": "^5.0.0", - "meant": "^1.0.1", - "memoizee": "^0.4.15", - "micromatch": "^4.0.2", - "mime": "^2.4.6", - "mini-css-extract-plugin": "^0.11.2", - "mitt": "^1.2.0", - "mkdirp": "^0.5.1", - "moment": "^2.27.0", - "name-all-modules-plugin": "^1.0.1", - "normalize-path": "^3.0.0", - "null-loader": "^3.0.0", - "opentracing": "^0.14.4", - "optimize-css-assets-webpack-plugin": "^5.0.3", - "p-defer": "^3.0.0", - "parseurl": "^1.3.3", - "physical-cpu-count": "^2.0.0", - "pnp-webpack-plugin": "^1.6.4", - "postcss-flexbugs-fixes": "^4.2.1", - "postcss-loader": "^3.0.0", - "prompts": "^2.3.2", - "prop-types": "^15.7.2", - "query-string": "^6.13.1", - "raw-loader": "^0.5.1", - "react-dev-utils": "^4.2.3", - "react-error-overlay": "^3.0.0", - "react-hot-loader": "^4.12.21", - "react-refresh": "^0.8.3", - "redux": "^4.0.5", - "redux-thunk": "^2.3.0", - "semver": "^7.3.2", - "shallow-compare": "^1.2.2", - "signal-exit": "^3.0.3", - "slugify": "^1.4.4", - "socket.io": "3.1.1", - "socket.io-client": "3.1.1", - "source-map": "^0.7.3", - "source-map-support": "^0.5.19", - "st": "^2.0.0", - "stack-trace": "^0.0.10", - "string-similarity": "^1.2.2", - "strip-ansi": "^5.2.0", - "style-loader": "^0.23.1", - "terser-webpack-plugin": "^2.3.8", - "tmp": "^0.2.1", - "true-case-path": "^2.2.1", - "type-of": "^2.0.1", - "url-loader": "^1.1.2", - "util.promisify": "^1.0.1", - "uuid": "3.4.0", - "v8-compile-cache": "^2.2.0", - "webpack": "^4.44.1", - "webpack-dev-middleware": "^3.7.2", - "webpack-dev-server": "^3.11.2", - "webpack-hot-middleware": "^2.25.0", - "webpack-merge": "^4.2.2", - "webpack-stats-plugin": "^0.3.2", - "webpack-virtual-modules": "^0.2.2", - "xstate": "^4.11.0", - "yaml-loader": "^0.6.0" - }, - "dependencies": { - "@pmmmwh/react-refresh-webpack-plugin": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.4.3.tgz", - "integrity": "sha512-br5Qwvh8D2OQqSXpd1g/xqXKnK0r+Jz6qVKBbWmpUcrbGOxUrf39V5oZ1876084CGn18uMdR5uvPqBv9UqtBjQ==", - "peer": true, - "requires": { - "ansi-html": "^0.0.7", - "error-stack-parser": "^2.0.6", - "html-entities": "^1.2.1", - "native-url": "^0.2.6", - "schema-utils": "^2.6.5", - "source-map": "^0.7.3" - } - }, - "@typescript-eslint/eslint-plugin": { - "version": "2.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.34.0.tgz", - "integrity": "sha512-4zY3Z88rEE99+CNvTbXSyovv2z9PNOVffTWD2W8QF5s2prBQtwN2zadqERcrHpcR7O/+KMI3fcTAmUUhK/iQcQ==", - "peer": true, - "requires": { - "@typescript-eslint/experimental-utils": "2.34.0", - "functional-red-black-tree": "^1.0.1", - "regexpp": "^3.0.0", - "tsutils": "^3.17.1" - } - }, - "@typescript-eslint/experimental-utils": { - "version": "2.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-2.34.0.tgz", - "integrity": "sha512-eS6FTkq+wuMJ+sgtuNTtcqavWXqsflWcfBnlYhg/nS4aZ1leewkXGbvBhaapn1q6qf4M71bsR1tez5JTRMuqwA==", - "peer": true, - "requires": { - "@types/json-schema": "^7.0.3", - "@typescript-eslint/typescript-estree": "2.34.0", - "eslint-scope": "^5.0.0", - "eslint-utils": "^2.0.0" - } - }, - "@typescript-eslint/parser": { - "version": "2.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-2.34.0.tgz", - "integrity": "sha512-03ilO0ucSD0EPTw2X4PntSIRFtDPWjrVq7C3/Z3VQHRC7+13YB55rcJI3Jt+YgeHbjUdJPcPa7b23rXCBokuyA==", - "peer": true, - "requires": { - "@types/eslint-visitor-keys": "^1.0.0", - "@typescript-eslint/experimental-utils": "2.34.0", - "@typescript-eslint/typescript-estree": "2.34.0", - "eslint-visitor-keys": "^1.1.0" - } - }, - "@typescript-eslint/typescript-estree": { - "version": "2.34.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-2.34.0.tgz", - "integrity": "sha512-OMAr+nJWKdlVM9LOqCqh3pQQPwxHAN7Du8DR6dmwCrAmxtiXQnhHJ6tBNtf+cggqfo51SG/FCwnKhXCIM7hnVg==", - "peer": true, - "requires": { - "debug": "^4.1.1", - "eslint-visitor-keys": "^1.1.0", - "glob": "^7.1.6", - "is-glob": "^4.0.1", - "lodash": "^4.17.15", - "semver": "^7.3.2", - "tsutils": "^3.17.1" - }, - "dependencies": { - "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", - "peer": true, - "requires": { - "ms": "2.1.2" - } - } - } - }, - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "peer": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "peer": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "astral-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", - "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", - "peer": true - }, - "cacache": { - "version": "13.0.1", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-13.0.1.tgz", - "integrity": "sha512-5ZvAxd05HDDU+y9BVvcqYu2LLXmPnQ0hW62h32g4xBTgL/MppR4/04NHfj/ycM2y6lmTnbw6HVi+1eN0Psba6w==", - "peer": true, - "requires": { - "chownr": "^1.1.2", - "figgy-pudding": "^3.5.1", - "fs-minipass": "^2.0.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.2", - "infer-owner": "^1.0.4", - "lru-cache": "^5.1.1", - "minipass": "^3.0.0", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "p-map": "^3.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^2.7.1", - "ssri": "^7.0.0", - "unique-filename": "^1.1.1" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "peer": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "peer": true - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "peer": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "peer": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "peer": true - }, - "css-loader": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-1.0.1.tgz", - "integrity": "sha512-+ZHAZm/yqvJ2kDtPne3uX0C+Vr3Zn5jFn2N4HywtS5ujwvsVkyg0VArEXpl3BgczDA8anieki1FIzhchX4yrDw==", - "peer": true, - "requires": { - "babel-code-frame": "^6.26.0", - "css-selector-tokenizer": "^0.7.0", - "icss-utils": "^2.1.0", - "loader-utils": "^1.0.2", - "lodash": "^4.17.11", - "postcss": "^6.0.23", - "postcss-modules-extract-imports": "^1.2.0", - "postcss-modules-local-by-default": "^1.2.0", - "postcss-modules-scope": "^1.1.0", - "postcss-modules-values": "^1.3.0", - "postcss-value-parser": "^3.3.0", - "source-list-map": "^2.0.0" - } - }, - "date-fns": { - "version": "2.22.1", - "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.22.1.tgz", - "integrity": "sha512-yUFPQjrxEmIsMqlHhAhmxkuH769baF21Kk+nZwZGyrMoyLA+LugaQtC0+Tqf9CBUUULWwUJt6Q5ySI3LJDDCGg==", - "peer": true - }, - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "peer": true, - "requires": { - "ms": "^2.1.1" - } - }, - "dotenv": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz", - "integrity": "sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==", - "peer": true - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "peer": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "peer": true - }, - "eslint": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", - "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", - "peer": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "ajv": "^6.10.0", - "chalk": "^2.1.0", - "cross-spawn": "^6.0.5", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "eslint-scope": "^5.0.0", - "eslint-utils": "^1.4.3", - "eslint-visitor-keys": "^1.1.0", - "espree": "^6.1.2", - "esquery": "^1.0.1", - "esutils": "^2.0.2", - "file-entry-cache": "^5.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.0.0", - "globals": "^12.1.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "inquirer": "^7.0.0", - "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.14", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "optionator": "^0.8.3", - "progress": "^2.0.0", - "regexpp": "^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", - "v8-compile-cache": "^2.0.3" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "peer": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "peer": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "peer": true - } - } - }, - "debug": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", - "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", - "peer": true, - "requires": { - "ms": "2.1.2" - } - }, - "eslint-utils": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", - "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", - "peer": true, - "requires": { - "eslint-visitor-keys": "^1.1.0" - } - }, - "regexpp": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", - "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", - "peer": true - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "peer": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "peer": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "eslint-config-react-app": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/eslint-config-react-app/-/eslint-config-react-app-5.2.1.tgz", - "integrity": "sha512-pGIZ8t0mFLcV+6ZirRgYK6RVqUIKRIi9MmgzUEmrIknsn3AdO0I32asO86dJgloHq+9ZPl8UIg8mYrvgP5u2wQ==", - "peer": true, - "requires": { - "confusing-browser-globals": "^1.0.9" - } - }, - "eslint-loader": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/eslint-loader/-/eslint-loader-2.2.1.tgz", - "integrity": "sha512-RLgV9hoCVsMLvOxCuNjdqOrUqIj9oJg8hF44vzJaYqsAHuY9G2YAeN3joQ9nxP0p5Th9iFSIpKo+SD8KISxXRg==", - "peer": true, - "requires": { - "loader-fs-cache": "^1.0.0", - "loader-utils": "^1.0.2", - "object-assign": "^4.0.1", - "object-hash": "^1.1.4", - "rimraf": "^2.6.1" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "peer": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "eslint-plugin-react-hooks": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-1.7.0.tgz", - "integrity": "sha512-iXTCFcOmlWvw4+TOE8CLWj6yX1GwzT0Y6cUfHHZqWnSk144VmVIRcVGtUAzrLES7C798lmvnt02C7rxaOX1HNA==", - "peer": true, - "requires": {} - }, - "eslint-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", - "peer": true, - "requires": { - "eslint-visitor-keys": "^1.1.0" - } - }, - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "peer": true - }, - "espree": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", - "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", - "peer": true, - "requires": { - "acorn": "^7.1.1", - "acorn-jsx": "^5.2.0", - "eslint-visitor-keys": "^1.1.0" - } - }, - "eventsource": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.1.0.tgz", - "integrity": "sha512-VSJjT5oCNrFvCS6igjzPAt5hBzQ2qPBFIbJ03zLI9SE0mxwZpMw6BfJrbFHm1a141AavMEB8JHmBhWAd66PfCg==", - "optional": true, - "peer": true, - "requires": { - "original": "^1.0.0" - } - }, - "execa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", - "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", - "peer": true, - "requires": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - } - }, - "express-graphql": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/express-graphql/-/express-graphql-0.9.0.tgz", - "integrity": "sha512-wccd9Lb6oeJ8yHpUs/8LcnGjFUUQYmOG9A5BNLybRdCzGw0PeUrtBxsIR8bfiur6uSW4OvPkVDoYH06z6/N9+w==", - "peer": true, - "requires": { - "accepts": "^1.3.7", - "content-type": "^1.0.4", - "http-errors": "^1.7.3", - "raw-body": "^2.4.1" - } - }, - "file-entry-cache": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", - "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", - "peer": true, - "requires": { - "flat-cache": "^2.0.1" - } - }, - "file-loader": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-1.1.11.tgz", - "integrity": "sha512-TGR4HU7HUsGg6GCOPJnFk06RhWgEWFLAGWiT6rcD+GRC2keU3s9RGJ+b3Z6/U73jwwNb2gKLJ7YCrp+jvU4ALg==", - "peer": true, - "requires": { - "loader-utils": "^1.0.2", - "schema-utils": "^0.4.5" - }, - "dependencies": { - "schema-utils": { - "version": "0.4.7", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz", - "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==", - "peer": true, - "requires": { - "ajv": "^6.1.0", - "ajv-keywords": "^3.1.0" - } - } - } - }, - "flat-cache": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", - "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", - "peer": true, - "requires": { - "flatted": "^2.0.0", - "rimraf": "2.6.3", - "write": "1.0.3" - }, - "dependencies": { - "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "peer": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "flatted": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", - "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", - "peer": true - }, - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "peer": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "peer": true, - "requires": { - "pump": "^3.0.0" - } - }, - "globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", - "peer": true, - "requires": { - "type-fest": "^0.8.1" - }, - "dependencies": { - "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "peer": true - } - } - }, - "graphql": { - "version": "14.7.0", - "resolved": "https://registry.npmjs.org/graphql/-/graphql-14.7.0.tgz", - "integrity": "sha512-l0xWZpoPKpppFzMfvVyFmp9vLN7w/ZZJPefUicMCepfJeQ8sMcztloGYY9DfjVPo6tIUDzU5Hw3MUbIjj9AVVA==", - "peer": true, - "requires": { - "iterall": "^1.2.2" - } - }, - "graphql-compose": { - "version": "6.3.8", - "resolved": "https://registry.npmjs.org/graphql-compose/-/graphql-compose-6.3.8.tgz", - "integrity": "sha512-o0/jzQEMIpSjryLKwmD1vGrCubiPxD0LxlGTgWDSu38TBepu2GhugC9gYgTEbtiCZAHPtvkZ90SzzABOWZyQLA==", - "peer": true, - "requires": { - "graphql-type-json": "^0.2.4", - "object-path": "^0.11.4" - } - }, - "graphql-type-json": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/graphql-type-json/-/graphql-type-json-0.2.4.tgz", - "integrity": "sha512-/tq02ayMQjrG4oDFDRLLrPk0KvJXue0nVXoItBe7uAdbNXjQUu+HYCBdAmPLQoseVzUKKMzrhq2P/sfI76ON6w==", - "peer": true, - "requires": {} - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "peer": true - }, - "html-entities": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.4.0.tgz", - "integrity": "sha512-8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA==", - "peer": true - }, - "http-errors": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.0.tgz", - "integrity": "sha512-4I8r0C5JDhT5VkvI47QktDW75rNlGVsUf/8hzjCC/wkWI/jdTRmBb9aI7erSG82r1bjKY3F6k28WnsVxB1C73A==", - "peer": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - } - }, - "human-signals": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", - "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", - "peer": true - }, - "icss-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-2.1.0.tgz", - "integrity": "sha1-g/Cg7DeL8yRheLbCrZE28TWxyWI=", - "peer": true, - "requires": { - "postcss": "^6.0.1" - } - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "peer": true - }, - "jest-worker": { - "version": "24.9.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-24.9.0.tgz", - "integrity": "sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw==", - "peer": true, - "requires": { - "merge-stream": "^2.0.0", - "supports-color": "^6.1.0" - } - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "peer": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", - "peer": true, - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - } - }, - "mini-css-extract-plugin": { - "version": "0.11.3", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.11.3.tgz", - "integrity": "sha512-n9BA8LonkOkW1/zn+IbLPQmovsL0wMb9yx75fMJQZf2X1Zoec9yTZtyMePcyu19wPkmFbzZZA6fLTotpFhQsOA==", - "peer": true, - "requires": { - "loader-utils": "^1.1.0", - "normalize-url": "1.9.1", - "schema-utils": "^1.0.0", - "webpack-sources": "^1.1.0" - }, - "dependencies": { - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "peer": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } - } - } - }, - "mitt": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mitt/-/mitt-1.2.0.tgz", - "integrity": "sha512-r6lj77KlwqLhIUku9UWYes7KJtsczvolZkzp8hbaDPPaE24OmWl5s539Mytlj22siEQKosZ26qCBgda2PKwoJw==", - "peer": true - }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "peer": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "normalize-url": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-1.9.1.tgz", - "integrity": "sha1-LMDWazHqIwNkWENuNiDYWVTGbDw=", - "peer": true, - "requires": { - "object-assign": "^4.0.1", - "prepend-http": "^1.0.0", - "query-string": "^4.1.0", - "sort-keys": "^1.0.0" - }, - "dependencies": { - "query-string": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz", - "integrity": "sha1-u7aTucqRXCMlFbIosaArYJBD2+s=", - "peer": true, - "requires": { - "object-assign": "^4.1.0", - "strict-uri-encode": "^1.0.0" - } - } - } - }, - "optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", - "peer": true, - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - } - }, - "p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", - "peer": true, - "requires": { - "aggregate-error": "^3.0.0" - } - }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "peer": true - }, - "postcss": { - "version": "6.0.23", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz", - "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", - "peer": true, - "requires": { - "chalk": "^2.4.1", - "source-map": "^0.6.1", - "supports-color": "^5.4.0" - }, - "dependencies": { - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "peer": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "peer": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "peer": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-modules-extract-imports": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.1.tgz", - "integrity": "sha512-6jt9XZwUhwmRUhb/CkyJY020PYaPJsCyt3UjbaWo6XEbH/94Hmv6MP7fG2C5NDU/BcHzyGYxNtHvM+LTf9HrYw==", - "peer": true, - "requires": { - "postcss": "^6.0.1" - } - }, - "postcss-modules-local-by-default": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz", - "integrity": "sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk=", - "peer": true, - "requires": { - "css-selector-tokenizer": "^0.7.0", - "postcss": "^6.0.1" - } - }, - "postcss-modules-scope": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz", - "integrity": "sha1-1upkmUx5+XtipytCb75gVqGUu5A=", - "peer": true, - "requires": { - "css-selector-tokenizer": "^0.7.0", - "postcss": "^6.0.1" - } - }, - "postcss-modules-values": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz", - "integrity": "sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA=", - "peer": true, - "requires": { - "icss-replace-symbols": "^1.1.0", - "postcss": "^6.0.1" - } - }, - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "peer": true - }, - "prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", - "peer": true - }, - "prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", - "peer": true - }, - "raw-body": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz", - "integrity": "sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==", - "peer": true, - "requires": { - "bytes": "3.1.0", - "http-errors": "1.7.3", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "dependencies": { - "http-errors": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", - "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==", - "peer": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - } - }, - "setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", - "peer": true - } - } - }, - "setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "peer": true - }, - "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "peer": true, - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "peer": true - }, - "slice-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", - "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", - "peer": true, - "requires": { - "ansi-styles": "^3.2.0", - "astral-regex": "^1.0.0", - "is-fullwidth-code-point": "^2.0.0" - } - }, - "sockjs-client": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.5.1.tgz", - "integrity": "sha512-VnVAb663fosipI/m6pqRXakEOw7nvd7TUgdr3PlR/8V2I95QIdwT8L4nMxhyU8SmDBHYXU1TOElaKOmKLfYzeQ==", - "optional": true, - "peer": true, - "requires": { - "debug": "^3.2.6", - "eventsource": "^1.0.7", - "faye-websocket": "^0.11.3", - "inherits": "^2.0.4", - "json3": "^3.3.3", - "url-parse": "^1.5.1" - } - }, - "sort-keys": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", - "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=", - "peer": true, - "requires": { - "is-plain-obj": "^1.0.0" - } - }, - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "peer": true - }, - "ssri": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-7.1.1.tgz", - "integrity": "sha512-w+daCzXN89PseTL99MkA+fxJEcU3wfaE/ah0i0lnOlpG1CYLJ2ZjzEry68YBKfLs4JfoTShrTEsJkAZuNZ/stw==", - "peer": true, - "requires": { - "figgy-pudding": "^3.5.1", - "minipass": "^3.1.1" - } - }, - "strict-uri-encode": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", - "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=", - "peer": true - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "peer": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "peer": true, - "requires": { - "ansi-regex": "^4.1.0" - } - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "peer": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "table": { - "version": "5.4.6", - "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", - "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", - "peer": true, - "requires": { - "ajv": "^6.10.2", - "lodash": "^4.17.14", - "slice-ansi": "^2.1.0", - "string-width": "^3.0.0" - } - }, - "terser": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz", - "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==", - "peer": true, - "requires": { - "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "peer": true - } - } - }, - "terser-webpack-plugin": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-2.3.8.tgz", - "integrity": "sha512-/fKw3R+hWyHfYx7Bv6oPqmk4HGQcrWLtV3X6ggvPuwPNHSnzvVV51z6OaaCOus4YLjutYGOz3pEpbhe6Up2s1w==", - "peer": true, - "requires": { - "cacache": "^13.0.1", - "find-cache-dir": "^3.3.1", - "jest-worker": "^25.4.0", - "p-limit": "^2.3.0", - "schema-utils": "^2.6.6", - "serialize-javascript": "^4.0.0", - "source-map": "^0.6.1", - "terser": "^4.6.12", - "webpack-sources": "^1.4.3" - }, - "dependencies": { - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "peer": true - }, - "jest-worker": { - "version": "25.5.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.5.0.tgz", - "integrity": "sha512-/dsSmUkIy5EBGfv/IjjqmFxrNAUpBERfGs1oHROyD7yxjG/w+t0GOJDX8O1k32ySmd7+a5IhnJU2qQFcJ4n1vw==", - "peer": true, - "requires": { - "merge-stream": "^2.0.0", - "supports-color": "^7.0.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "peer": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "peer": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "peer": true, - "requires": { - "rimraf": "^3.0.0" - } - }, - "type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", - "peer": true, - "requires": { - "prelude-ls": "~1.1.2" - } - }, - "type-fest": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", - "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", - "optional": true, - "peer": true - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "peer": true - }, - "url-loader": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-1.1.2.tgz", - "integrity": "sha512-dXHkKmw8FhPqu8asTc1puBfe3TehOCo2+RmOOev5suNCIYBcT626kxiWg1NBVkwc4rO8BGa7gP70W7VXuqHrjg==", - "peer": true, - "requires": { - "loader-utils": "^1.1.0", - "mime": "^2.0.3", - "schema-utils": "^1.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "peer": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } - } - } - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "peer": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "gatsby-cli": { - "version": "2.19.3", - "resolved": "https://registry.npmjs.org/gatsby-cli/-/gatsby-cli-2.19.3.tgz", - "integrity": "sha512-3xXe4y6DazWNYE2JFyErI7BGlgQjY4rRL5OTFWHvs6ULw7fu0xgoWXxKsoAp6S2xosKSS4zRVA6O7dDHAdidiw==", - "peer": true, - "requires": { - "@babel/code-frame": "^7.10.4", - "@hapi/joi": "^15.1.1", - "@types/common-tags": "^1.8.0", - "better-opn": "^2.0.0", - "chalk": "^4.1.0", - "clipboardy": "^2.3.0", - "common-tags": "^1.8.0", - "configstore": "^5.0.1", - "convert-hrtime": "^3.0.0", - "create-gatsby": "^0.5.1", - "envinfo": "^7.7.3", - "execa": "^3.4.0", - "fs-exists-cached": "^1.0.0", - "fs-extra": "^8.1.0", - "gatsby-core-utils": "^1.10.1", - "gatsby-recipes": "^0.9.3", - "gatsby-telemetry": "^1.10.2", - "hosted-git-info": "^3.0.6", - "is-valid-path": "^0.1.1", - "lodash": "^4.17.20", - "meant": "^1.0.2", - "node-fetch": "^2.6.1", - "opentracing": "^0.14.4", - "pretty-error": "^2.1.1", - "progress": "^2.0.3", - "prompts": "^2.3.2", - "redux": "^4.0.5", - "resolve-cwd": "^3.0.0", - "semver": "^7.3.2", - "signal-exit": "^3.0.3", - "source-map": "0.7.3", - "stack-trace": "^0.0.10", - "strip-ansi": "^5.2.0", - "update-notifier": "^5.0.1", - "uuid": "3.4.0", - "yargs": "^15.4.1", - "yoga-layout-prebuilt": "^1.9.6", - "yurnalist": "^2.1.0" - }, - "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==", - "peer": true - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "peer": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "peer": true - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "peer": true, - "requires": { - "ansi-regex": "^5.0.0" - } - } - } - }, - "execa": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-3.4.0.tgz", - "integrity": "sha512-r9vdGQk4bmCuK1yKQu1KTwcT2zwfWdbdaXfCtAh+5nU/4fSX+JAb7vZGvI5naJrQlvONrEB20jeruESI69530g==", - "peer": true, - "requires": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "p-finally": "^2.0.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - } - }, - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "peer": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "peer": true, - "requires": { - "pump": "^3.0.0" - } - }, - "hosted-git-info": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.8.tgz", - "integrity": "sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw==", - "peer": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "human-signals": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", - "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", - "peer": true - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "peer": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "peer": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "p-finally": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-2.0.1.tgz", - "integrity": "sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw==", - "peer": true - }, - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "peer": 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==", - "peer": true, - "requires": { - "ansi-regex": "^4.1.0" - } - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "peer": true - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "peer": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "peer": true - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "peer": true, - "requires": { - "ansi-regex": "^5.0.0" - } - } - } - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "peer": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "peer": true - }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "peer": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "peer": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "gatsby-core-utils": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-1.10.1.tgz", - "integrity": "sha512-4P3feGCJckg+DRWWl2beFk7N9c63zmCryEGPaU1OHCp+ZT2bO0ihCBuXywDWuuEp6SYP9PZ1fs0YJ/Rt6q6lag==", - "peer": true, - "requires": { - "ci-info": "2.0.0", - "configstore": "^5.0.1", - "fs-extra": "^8.1.0", - "node-object-hash": "^2.0.0", - "proper-lockfile": "^4.1.1", - "tmp": "^0.2.1", - "xdg-basedir": "^4.0.0" - }, - "dependencies": { - "ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", - "peer": true - }, - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "peer": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "peer": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "tmp": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", - "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", - "peer": true, - "requires": { - "rimraf": "^3.0.0" - } - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "peer": true - } - } - }, - "gatsby-graphiql-explorer": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/gatsby-graphiql-explorer/-/gatsby-graphiql-explorer-0.11.0.tgz", - "integrity": "sha512-mmxQhQSDUkbtOhQUek9a9sSg6LpiQUytNNR2hec8iklau2D4MDA5CvHTk9GUGhjdUgtnHSe/MPyZVJGmXSnYAA==", - "peer": true, - "requires": { - "@babel/runtime": "^7.12.5" - } - }, - "gatsby-legacy-polyfills": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/gatsby-legacy-polyfills/-/gatsby-legacy-polyfills-0.7.1.tgz", - "integrity": "sha512-yOQtX72GSJxloyUZEary3ZBihz/+a3uouLiaZKk6dHOeUHnRkQkXD+UT/zt7Xm+er/VD3KRsQQv+Re1krpbY7g==", - "peer": true, - "requires": { - "core-js-compat": "^3.6.5" - } - }, - "gatsby-link": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/gatsby-link/-/gatsby-link-2.11.0.tgz", - "integrity": "sha512-AYXxndlSx5mnYv+/PBPdPBRvdv1LeSGE3WO8uYj2ReYDSbhiAlF3KKz30D62ErartXP0deySPtRKx4Dd3nCFYw==", - "peer": true, - "requires": { - "@babel/runtime": "^7.12.5", - "@types/reach__router": "^1.3.7", - "prop-types": "^15.7.2" - } - }, - "gatsby-page-utils": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/gatsby-page-utils/-/gatsby-page-utils-0.9.1.tgz", - "integrity": "sha512-UHedSs64HXzoivCk7ZdE9139hi34CcZfexP+Vxe2Zt4aK+MeXowec8VdxKD3Pp08O/YEGKBv2TtSV9gSR/lt2g==", - "peer": true, - "requires": { - "@babel/runtime": "^7.12.5", - "bluebird": "^3.7.2", - "chokidar": "^3.5.1", - "fs-exists-cached": "^1.0.0", - "gatsby-core-utils": "^1.10.1", - "glob": "^7.1.6", - "lodash": "^4.17.20", - "micromatch": "^4.0.2" - } - }, - "gatsby-plugin-page-creator": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/gatsby-plugin-page-creator/-/gatsby-plugin-page-creator-2.10.2.tgz", - "integrity": "sha512-XkHSOgI4ZPA4XgadjGGFSp4eu51G8HXEVKG5gaef1/w0bcktw+aEwgEyb8VtL61NfIH2zXquyvrmwsil89nVCw==", - "peer": true, - "requires": { - "@babel/traverse": "^7.12.5", - "@sindresorhus/slugify": "^1.1.0", - "chokidar": "^3.5.1", - "fs-exists-cached": "^1.0.0", - "gatsby-page-utils": "^0.9.1", - "gatsby-telemetry": "^1.10.2", - "globby": "^11.0.2", - "lodash": "^4.17.20" - }, - "dependencies": { - "@sindresorhus/slugify": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@sindresorhus/slugify/-/slugify-1.1.2.tgz", - "integrity": "sha512-V9nR/W0Xd9TSGXpZ4iFUcFGhuOJtZX82Fzxj1YISlbSgKvIiNa7eLEZrT0vAraPOt++KHauIVNYgGRgjc13dXA==", - "peer": true, - "requires": { - "@sindresorhus/transliterate": "^0.1.1", - "escape-string-regexp": "^4.0.0" - } - }, - "@sindresorhus/transliterate": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@sindresorhus/transliterate/-/transliterate-0.1.2.tgz", - "integrity": "sha512-5/kmIOY9FF32nicXH+5yLNTX4NJ4atl7jRgqAJuIn/iyDFXBktOKDxCvyGE/EzmF4ngSUvjXxQUQlQiZ5lfw+w==", - "peer": true, - "requires": { - "escape-string-regexp": "^2.0.0", - "lodash.deburr": "^4.1.0" - }, - "dependencies": { - "escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "peer": true - } - } - } - } - }, - "gatsby-plugin-typescript": { - "version": "2.12.1", - "resolved": "https://registry.npmjs.org/gatsby-plugin-typescript/-/gatsby-plugin-typescript-2.12.1.tgz", - "integrity": "sha512-p32qJVDi5Xw1Oo5vLMUXdRBxSDlMrfxTGb7etMAsVfyLRlRhMLb2YsuXJIvN1IfybQ6Z3EbhlH293cpxn5jozg==", - "peer": true, - "requires": { - "@babel/core": "^7.12.3", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.12.1", - "@babel/plugin-proposal-numeric-separator": "^7.12.5", - "@babel/plugin-proposal-optional-chaining": "^7.12.1", - "@babel/preset-typescript": "^7.12.1", - "@babel/runtime": "^7.12.5", - "babel-plugin-remove-graphql-queries": "^2.16.1" - } - }, - "gatsby-plugin-utils": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/gatsby-plugin-utils/-/gatsby-plugin-utils-0.9.0.tgz", - "integrity": "sha512-InM8PNHtx1kF87qQOlf4pVeNA8lSIsvSjImvN6dvpUjeQqOMRN1avY0W9Trh6LKTF/keWWj975Gk8Vcr+PYyDA==", - "peer": true, - "requires": { - "joi": "^17.2.1" - } - }, - "gatsby-react-router-scroll": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/gatsby-react-router-scroll/-/gatsby-react-router-scroll-3.7.0.tgz", - "integrity": "sha512-8sm04EQac7fccJZlllFEo349wAlNEuPVu35juuL0hgMDTyWlk4nPwPH/ACdpn2MgpEmrTSfp2yPxyzaRKVyzeQ==", - "peer": true, - "requires": { - "@babel/runtime": "^7.12.5" - } - }, - "gatsby-recipes": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/gatsby-recipes/-/gatsby-recipes-0.9.3.tgz", - "integrity": "sha512-ToYeGCica4390QFWsW6+3DM6hhkpKifUEFoKDUdsQGw4rmD8aYndj5oASKIsvPAU0GUbxe8IDsDnP3V5iMtyEQ==", - "peer": true, - "requires": { - "@babel/core": "^7.12.3", - "@babel/generator": "^7.12.5", - "@babel/helper-plugin-utils": "^7.10.4", - "@babel/plugin-proposal-optional-chaining": "^7.12.1", - "@babel/plugin-transform-react-jsx": "^7.12.5", - "@babel/standalone": "^7.12.6", - "@babel/template": "^7.10.4", - "@babel/types": "^7.12.6", - "@graphql-tools/schema": "^7.0.0", - "@graphql-tools/utils": "^7.0.2", - "@hapi/hoek": "8.x.x", - "@hapi/joi": "^15.1.1", - "better-queue": "^3.8.10", - "chokidar": "^3.4.2", - "contentful-management": "^7.5.1", - "cors": "^2.8.5", - "debug": "^4.3.1", - "detect-port": "^1.3.0", - "dotenv": "^8.2.0", - "execa": "^4.0.2", - "express": "^4.17.1", - "express-graphql": "^0.9.0", - "fs-extra": "^8.1.0", - "gatsby-core-utils": "^1.10.1", - "gatsby-telemetry": "^1.10.2", - "glob": "^7.1.6", - "graphql": "^14.6.0", - "graphql-compose": "^6.3.8", - "graphql-subscriptions": "^1.1.0", - "graphql-type-json": "^0.3.2", - "hicat": "^0.8.0", - "is-binary-path": "^2.1.0", - "is-url": "^1.2.4", - "jest-diff": "^25.5.0", - "lock": "^1.0.0", - "lodash": "^4.17.20", - "mitt": "^1.2.0", - "mkdirp": "^0.5.1", - "node-fetch": "^2.5.0", - "pkg-dir": "^4.2.0", - "prettier": "^2.0.5", - "prop-types": "^15.6.1", - "remark-mdx": "^2.0.0-next.4", - "remark-mdxjs": "^2.0.0-next.4", - "remark-parse": "^6.0.3", - "remark-stringify": "^8.1.0", - "resolve-from": "^5.0.0", - "semver": "^7.3.2", - "single-trailing-newline": "^1.0.0", - "strip-ansi": "^6.0.0", - "style-to-object": "^0.3.0", - "unified": "^8.4.2", - "unist-util-remove": "^2.0.0", - "unist-util-visit": "^2.0.2", - "uuid": "3.4.0", - "ws": "^7.3.0", - "xstate": "^4.9.1", - "yoga-layout-prebuilt": "^1.9.6" - }, - "dependencies": { - "@jest/types": { - "version": "25.5.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.5.0.tgz", - "integrity": "sha512-OXD0RgQ86Tu3MazKo8bnrkDRaDXXMGUqd+kTtLtK1Zb7CRzQcaSRPPPV37SvYTdevXEBVxe0HXylEjs8ibkmCw==", - "peer": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - } - }, - "@types/istanbul-reports": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-1.1.2.tgz", - "integrity": "sha512-P/W9yOX/3oPZSpaYOCQzGqgCQRXn0FFO/V8bWrCQs+wLmvVVxk6CRBXALEvNs9OHIatlnlFokfhuDo2ug01ciw==", - "peer": true, - "requires": { - "@types/istanbul-lib-coverage": "*", - "@types/istanbul-lib-report": "*" - } - }, - "@types/yargs": { - "version": "15.0.14", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.14.tgz", - "integrity": "sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ==", - "peer": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "peer": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "diff-sequences": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-25.2.6.tgz", - "integrity": "sha512-Hq8o7+6GaZeoFjtpgvRBUknSXNeJiCx7V9Fr94ZMljNiCr9n9L8H8aJqgWOQiDDGdyn29fRNcDdRVJ5fdyihfg==", - "peer": true - }, - "dotenv": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz", - "integrity": "sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==", - "peer": true - }, - "execa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", - "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", - "peer": true, - "requires": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - } - }, - "express-graphql": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/express-graphql/-/express-graphql-0.9.0.tgz", - "integrity": "sha512-wccd9Lb6oeJ8yHpUs/8LcnGjFUUQYmOG9A5BNLybRdCzGw0PeUrtBxsIR8bfiur6uSW4OvPkVDoYH06z6/N9+w==", - "peer": true, - "requires": { - "accepts": "^1.3.7", - "content-type": "^1.0.4", - "http-errors": "^1.7.3", - "raw-body": "^2.4.1" - } - }, - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "peer": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "get-stream": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", - "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "peer": true, - "requires": { - "pump": "^3.0.0" - } - }, - "graphql": { - "version": "14.7.0", - "resolved": "https://registry.npmjs.org/graphql/-/graphql-14.7.0.tgz", - "integrity": "sha512-l0xWZpoPKpppFzMfvVyFmp9vLN7w/ZZJPefUicMCepfJeQ8sMcztloGYY9DfjVPo6tIUDzU5Hw3MUbIjj9AVVA==", - "peer": true, - "requires": { - "iterall": "^1.2.2" - } - }, - "graphql-compose": { - "version": "6.3.8", - "resolved": "https://registry.npmjs.org/graphql-compose/-/graphql-compose-6.3.8.tgz", - "integrity": "sha512-o0/jzQEMIpSjryLKwmD1vGrCubiPxD0LxlGTgWDSu38TBepu2GhugC9gYgTEbtiCZAHPtvkZ90SzzABOWZyQLA==", - "peer": true, - "requires": { - "graphql-type-json": "^0.2.4", - "object-path": "^0.11.4" - }, - "dependencies": { - "graphql-type-json": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/graphql-type-json/-/graphql-type-json-0.2.4.tgz", - "integrity": "sha512-/tq02ayMQjrG4oDFDRLLrPk0KvJXue0nVXoItBe7uAdbNXjQUu+HYCBdAmPLQoseVzUKKMzrhq2P/sfI76ON6w==", - "peer": true, - "requires": {} - } - } - }, - "http-errors": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.0.tgz", - "integrity": "sha512-4I8r0C5JDhT5VkvI47QktDW75rNlGVsUf/8hzjCC/wkWI/jdTRmBb9aI7erSG82r1bjKY3F6k28WnsVxB1C73A==", - "peer": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - } - }, - "human-signals": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", - "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", - "peer": true - }, - "is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", - "peer": true - }, - "jest-diff": { - "version": "25.5.0", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-25.5.0.tgz", - "integrity": "sha512-z1kygetuPiREYdNIumRpAHY6RXiGmp70YHptjdaxTWGmA085W3iCnXNx0DhflK3vwrKmrRWyY1wUpkPMVxMK7A==", - "peer": true, - "requires": { - "chalk": "^3.0.0", - "diff-sequences": "^25.2.6", - "jest-get-type": "^25.2.6", - "pretty-format": "^25.5.0" - } - }, - "jest-get-type": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", - "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", - "peer": true - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "peer": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "markdown-table": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-2.0.0.tgz", - "integrity": "sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==", - "peer": true, - "requires": { - "repeat-string": "^1.0.0" - } - }, - "mdast-util-compact": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-compact/-/mdast-util-compact-2.0.1.tgz", - "integrity": "sha512-7GlnT24gEwDrdAwEHrU4Vv5lLWrEer4KOkAiKT9nYstsTad7Oc1TwqT2zIMKRdZF7cTuaf+GA1E4Kv7jJh8mPA==", - "peer": true, - "requires": { - "unist-util-visit": "^2.0.0" - } - }, - "mitt": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mitt/-/mitt-1.2.0.tgz", - "integrity": "sha512-r6lj77KlwqLhIUku9UWYes7KJtsczvolZkzp8hbaDPPaE24OmWl5s539Mytlj22siEQKosZ26qCBgda2PKwoJw==", - "peer": true - }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "peer": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "pretty-format": { - "version": "25.5.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", - "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", - "peer": true, - "requires": { - "@jest/types": "^25.5.0", - "ansi-regex": "^5.0.0", - "ansi-styles": "^4.0.0", - "react-is": "^16.12.0" - } - }, - "raw-body": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz", - "integrity": "sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==", - "peer": true, - "requires": { - "bytes": "3.1.0", - "http-errors": "1.7.3", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "dependencies": { - "http-errors": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", - "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==", - "peer": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - } - }, - "setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", - "peer": true - } - } - }, - "react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "peer": true - }, - "remark-parse": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-6.0.3.tgz", - "integrity": "sha512-QbDXWN4HfKTUC0hHa4teU463KclLAnwpn/FBn87j9cKYJWWawbiLgMfP2Q4XwhxxuuuOxHlw+pSN0OKuJwyVvg==", - "peer": true, - "requires": { - "collapse-white-space": "^1.0.2", - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-whitespace-character": "^1.0.0", - "is-word-character": "^1.0.0", - "markdown-escapes": "^1.0.0", - "parse-entities": "^1.1.0", - "repeat-string": "^1.5.4", - "state-toggle": "^1.0.0", - "trim": "0.0.1", - "trim-trailing-lines": "^1.0.0", - "unherit": "^1.0.4", - "unist-util-remove-position": "^1.0.0", - "vfile-location": "^2.0.0", - "xtend": "^4.0.1" - }, - "dependencies": { - "parse-entities": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-1.2.2.tgz", - "integrity": "sha512-NzfpbxW/NPrzZ/yYSoQxyqUZMZXIdCfE0OIN4ESsnptHJECoUk3FZktxNuzQf4tjt5UEopnxpYJbvYuxIFDdsg==", - "peer": true, - "requires": { - "character-entities": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "character-reference-invalid": "^1.0.0", - "is-alphanumerical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-hexadecimal": "^1.0.0" - } - } - } - }, - "remark-stringify": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-8.1.1.tgz", - "integrity": "sha512-q4EyPZT3PcA3Eq7vPpT6bIdokXzFGp9i85igjmhRyXWmPs0Y6/d2FYwUNotKAWyLch7g0ASZJn/KHHcHZQ163A==", - "peer": true, - "requires": { - "ccount": "^1.0.0", - "is-alphanumeric": "^1.0.0", - "is-decimal": "^1.0.0", - "is-whitespace-character": "^1.0.0", - "longest-streak": "^2.0.1", - "markdown-escapes": "^1.0.0", - "markdown-table": "^2.0.0", - "mdast-util-compact": "^2.0.0", - "parse-entities": "^2.0.0", - "repeat-string": "^1.5.4", - "state-toggle": "^1.0.0", - "stringify-entities": "^3.0.0", - "unherit": "^1.0.4", - "xtend": "^4.0.1" - } - }, - "resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "peer": true - }, - "setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "peer": true - }, - "stringify-entities": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-3.1.0.tgz", - "integrity": "sha512-3FP+jGMmMV/ffZs86MoghGqAoqXAdxLrJP4GUdrDN1aIScYih5tuIO3eF4To5AJZ79KDZ8Fpdy7QJnK8SsL1Vg==", - "peer": true, - "requires": { - "character-entities-html4": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "xtend": "^4.0.0" - } - }, - "unified": { - "version": "8.4.2", - "resolved": "https://registry.npmjs.org/unified/-/unified-8.4.2.tgz", - "integrity": "sha512-JCrmN13jI4+h9UAyKEoGcDZV+i1E7BLFuG7OsaDvTXI5P0qhHX+vZO/kOhz9jn8HGENDKbwSeB0nVOg4gVStGA==", - "peer": true, - "requires": { - "bail": "^1.0.0", - "extend": "^3.0.0", - "is-plain-obj": "^2.0.0", - "trough": "^1.0.0", - "vfile": "^4.0.0" - } - }, - "unist-util-visit": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-2.0.3.tgz", - "integrity": "sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==", - "peer": true, - "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^4.0.0", - "unist-util-visit-parents": "^3.0.0" - } - }, - "unist-util-visit-parents": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz", - "integrity": "sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==", - "peer": true, - "requires": { - "@types/unist": "^2.0.0", - "unist-util-is": "^4.0.0" - } - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "peer": true - } - } - }, - "gatsby-telemetry": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/gatsby-telemetry/-/gatsby-telemetry-1.10.2.tgz", - "integrity": "sha512-LwMtRIdcNuI25D+yU7RO+UcmF+3uPz0Zrefa+/rkTmxZuz54bOGSYqmzJJt1L1gRz7Jdl+DmYRqVgmiW/dsr/g==", - "peer": true, - "requires": { - "@babel/code-frame": "^7.10.4", - "@babel/runtime": "^7.12.5", - "@turist/fetch": "^7.1.7", - "@turist/time": "^0.0.1", - "async-retry-ng": "^2.0.1", - "boxen": "^4.2.0", - "configstore": "^5.0.1", - "fs-extra": "^8.1.0", - "gatsby-core-utils": "^1.10.1", - "git-up": "^4.0.2", - "is-docker": "^2.1.1", - "lodash": "^4.17.20", - "node-fetch": "^2.6.1", - "uuid": "3.4.0" - }, - "dependencies": { - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "peer": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "peer": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "peer": true - } - } - }, "gatsby-worker": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/gatsby-worker/-/gatsby-worker-0.1.0.tgz", @@ -82469,6 +75922,7 @@ "version": "4.4.0", "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz", "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", + "dev": true, "requires": { "min-document": "^2.19.0", "process": "^0.11.10" @@ -83059,21 +76513,6 @@ "jws": "^4.0.0" } }, - "gud": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/gud/-/gud-1.0.0.tgz", - "integrity": "sha512-zGEOVKFM5sVPPrYs7J5/hYEw2Pof8KCyOwyhG8sAF26mCAeUFAcYPu1mwB7hhpIP29zOIBaDqwuHdLp0jvZXjw==", - "peer": true - }, - "gzip-size": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-3.0.0.tgz", - "integrity": "sha1-VGGI6b3DN/Zzdy+BZgRks4nc5SA=", - "peer": true, - "requires": { - "duplexer": "^0.1.1" - } - }, "handle-thing": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", @@ -83126,6 +76565,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, "requires": { "ansi-regex": "^2.0.0" }, @@ -83133,7 +76573,8 @@ "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true } } }, @@ -83387,6 +76828,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", + "optional": true, "requires": { "parse-passwd": "^1.0.0" } @@ -83800,6 +77242,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz", "integrity": "sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk=", + "dev": true, "requires": { "import-from": "^2.1.0" }, @@ -83808,6 +77251,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz", "integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=", + "dev": true, "requires": { "resolve-from": "^3.0.0" } @@ -83815,7 +77259,8 @@ "resolve-from": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=" + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true } } }, @@ -84511,12 +77956,6 @@ "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==", "peer": true }, - "is-root": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-root/-/is-root-1.0.0.tgz", - "integrity": "sha1-B7bCM7w5TNnQK6FclmvWZg1jQtU=", - "peer": true - }, "is-ssh": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.3.3.tgz", @@ -85703,12 +79142,6 @@ "universalify": "^2.0.0" } }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "peer": true - }, "jsonlint-mod": { "version": "1.7.6", "resolved": "https://registry.npmjs.org/jsonlint-mod/-/jsonlint-mod-1.7.6.tgz", @@ -86044,6 +79477,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/last-call-webpack-plugin/-/last-call-webpack-plugin-3.0.0.tgz", "integrity": "sha512-7KI2l2GIZa9p2spzPIVZBYyNKkN+e/SQPpnjlTiPhdbDW3F86tdKKELxKpzJ5sgU19wQWsACULZmpTPYHeWO5w==", + "dev": true, "requires": { "lodash": "^4.17.5", "webpack-sources": "^1.1.0" @@ -86741,66 +80175,6 @@ "integrity": "sha1-BJGTngvuVkPuSUp+PaPSuscMbKQ=", "dev": true }, - "loader-fs-cache": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/loader-fs-cache/-/loader-fs-cache-1.0.3.tgz", - "integrity": "sha512-ldcgZpjNJj71n+2Mf6yetz+c9bM4xpKtNds4LbqXzU/PTdeAX0g3ytnU1AJMEcTk2Lex4Smpe3Q/eCTsvUBxbA==", - "peer": true, - "requires": { - "find-cache-dir": "^0.1.1", - "mkdirp": "^0.5.1" - }, - "dependencies": { - "find-cache-dir": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-0.1.1.tgz", - "integrity": "sha1-yN765XyKUqinhPnjHFfHQumToLk=", - "peer": true, - "requires": { - "commondir": "^1.0.1", - "mkdirp": "^0.5.1", - "pkg-dir": "^1.0.0" - } - }, - "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "peer": true, - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "peer": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "peer": true, - "requires": { - "pinkie-promise": "^2.0.0" - } - }, - "pkg-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz", - "integrity": "sha1-ektQio1bstYp1EcFb/TpyTFM89Q=", - "peer": true, - "requires": { - "find-up": "^1.0.0" - } - } - } - }, "loader-runner": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", @@ -88423,6 +81797,7 @@ "version": "2.19.0", "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", + "dev": true, "requires": { "dom-walk": "^0.1.0" } @@ -88553,6 +81928,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "dev": true, "requires": { "minipass": "^3.0.0" } @@ -88573,6 +81949,7 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dev": true, "requires": { "minipass": "^3.0.0" } @@ -88591,6 +81968,7 @@ "version": "1.2.4", "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dev": true, "requires": { "minipass": "^3.0.0" } @@ -90117,33 +83495,11 @@ "boolbase": "^1.0.0" } }, - "null-loader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/null-loader/-/null-loader-3.0.0.tgz", - "integrity": "sha512-hf5sNLl8xdRho4UPBOOeoIwT3WhjYcMUQm0zj44EhD6UscMAz72o2udpoDFBgykucdEDGIcd6SXbc/G6zssbzw==", - "peer": true, - "requires": { - "loader-utils": "^1.2.3", - "schema-utils": "^1.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "peer": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } - } - } - }, "num2fraction": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", - "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=" + "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", + "dev": true }, "number-is-nan": { "version": "1.0.1", @@ -90232,12 +83588,6 @@ } } }, - "object-hash": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-1.3.1.tgz", - "integrity": "sha512-OSuu/pU4ENM9kmREg0BdNrUDIl1heYa4mBZacJc+vVWz4GtAwu7jO8s4AIt2aGRUTqxykpWzI3Oqnsm13tTMDA==", - "peer": true - }, "object-inspect": { "version": "1.11.0", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz", @@ -90434,23 +83784,6 @@ "integrity": "sha512-XLKtEfHxqrWyF1fzxznsv78w3csW41ucHnjiKnfzZLD5FN8UBDZZL1i4q0FR29zjxXhm+2Hop+5Vr/b8tKIvEg==", "peer": true }, - "opn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/opn/-/opn-5.1.0.tgz", - "integrity": "sha512-iPNl7SyM8L30Rm1sjGdLLheyHVw5YXVfi3SKWJzBI7efxRwHojfRFjwE/OLM6qp9xJYMgab8WicTU1cPoY+Hpg==", - "peer": true, - "requires": { - "is-wsl": "^1.1.0" - }, - "dependencies": { - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "peer": true - } - } - }, "optimism": { "version": "0.16.1", "resolved": "https://registry.npmjs.org/optimism/-/optimism-0.16.1.tgz", @@ -90464,6 +83797,7 @@ "version": "5.0.8", "resolved": "https://registry.npmjs.org/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.8.tgz", "integrity": "sha512-mgFS1JdOtEGzD8l+EuISqL57cKO+We9GcoiQEmdCWRqqck+FGNmYJtx9qfAPzEz+lRrlThWMuGDaRkI/yWNx/Q==", + "dev": true, "requires": { "cssnano": "^4.1.10", "last-call-webpack-plugin": "^3.0.0" @@ -90997,7 +84331,8 @@ "parse-passwd": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", - "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=" + "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", + "optional": true }, "parse-path": { "version": "4.0.3", @@ -92230,95 +85565,6 @@ } } }, - "postcss-flexbugs-fixes": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-4.2.1.tgz", - "integrity": "sha512-9SiofaZ9CWpQWxOwRh1b/r85KD5y7GgvsNt1056k6OYLvWUun0czCvogfJgylC22uJTwW1KzY3Gz65NZRlvoiQ==", - "peer": true, - "requires": { - "postcss": "^7.0.26" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "peer": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "peer": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "peer": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "peer": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "peer": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "peer": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "peer": true - }, - "postcss": { - "version": "7.0.36", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", - "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", - "peer": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "peer": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, "postcss-html": { "version": "0.36.0", "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-0.36.0.tgz", @@ -92430,6 +85676,7 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.1.2.tgz", "integrity": "sha512-/rDeGV6vMUo3mwJZmeHfEDvwnTKKqQ0S7OHUi/kJvvtx3aWtyWG2/0ZWnzCt2keEclwN6Tf0DST2v9kITdOKYw==", + "dev": true, "requires": { "cosmiconfig": "^5.0.0", "import-cwd": "^2.0.0" @@ -92439,6 +85686,7 @@ "version": "5.2.1", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", + "dev": true, "requires": { "import-fresh": "^2.0.0", "is-directory": "^0.3.1", @@ -92450,6 +85698,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", + "dev": true, "requires": { "caller-path": "^2.0.0", "resolve-from": "^3.0.0" @@ -92459,6 +85708,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, "requires": { "error-ex": "^1.3.1", "json-parse-better-errors": "^1.0.1" @@ -92467,7 +85717,8 @@ "resolve-from": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=" + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true } } }, @@ -92475,6 +85726,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-3.0.0.tgz", "integrity": "sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA==", + "dev": true, "requires": { "loader-utils": "^1.1.0", "postcss": "^7.0.0", @@ -92486,6 +85738,7 @@ "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, "requires": { "color-convert": "^1.9.0" } @@ -92494,6 +85747,7 @@ "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, "requires": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -92504,6 +85758,7 @@ "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, "requires": { "has-flag": "^3.0.0" } @@ -92514,6 +85769,7 @@ "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, "requires": { "color-name": "1.1.3" } @@ -92521,22 +85777,26 @@ "color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true }, "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true }, "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true }, "postcss": { "version": "7.0.36", "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", + "dev": true, "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -92547,6 +85807,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dev": true, "requires": { "ajv": "^6.1.0", "ajv-errors": "^1.0.0", @@ -92557,6 +85818,7 @@ "version": "6.1.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, "requires": { "has-flag": "^3.0.0" } @@ -95185,6 +88447,7 @@ "version": "2.4.1", "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.1.tgz", "integrity": "sha512-EQyfIuO2hPDsX1L/blblV+H7I0knhgAd82cVneCwcdND9B8AuCDuRcBH6yIcG4dFzlOUqbazQqwGjx5xmsNLuQ==", + "dev": true, "requires": { "kleur": "^3.0.3", "sisteransi": "^1.0.5" @@ -95623,12 +88886,6 @@ "unpipe": "1.0.0" } }, - "raw-loader": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-0.5.1.tgz", - "integrity": "sha1-DD0L6u2KAclm2Xh793goElKpeao=", - "peer": true - }, "rc": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", @@ -95658,373 +88915,6 @@ "prop-types": "^15.6.2" } }, - "react-dev-utils": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-4.2.3.tgz", - "integrity": "sha512-uvmkwl5uMexCmC0GUv1XGQP0YjfYePJufGg4YYiukhqk2vN1tQxwWJIBERqhOmSi80cppZg8mZnPP/kOMf1sUQ==", - "peer": true, - "requires": { - "address": "1.0.3", - "babel-code-frame": "6.26.0", - "chalk": "1.1.3", - "cross-spawn": "5.1.0", - "detect-port-alt": "1.1.3", - "escape-string-regexp": "1.0.5", - "filesize": "3.5.11", - "global-modules": "1.0.0", - "gzip-size": "3.0.0", - "inquirer": "3.3.0", - "is-root": "1.0.0", - "opn": "5.1.0", - "react-error-overlay": "^3.0.0", - "recursive-readdir": "2.2.1", - "shell-quote": "1.6.1", - "sockjs-client": "1.1.4", - "strip-ansi": "3.0.1", - "text-table": "0.2.0" - }, - "dependencies": { - "address": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/address/-/address-1.0.3.tgz", - "integrity": "sha512-z55ocwKBRLryBs394Sm3ushTtBeg6VAeuku7utSoSnsJKvKcnXFIyC6vh27n3rXyxSgkJBBCAvyOn7gSUcTYjg==", - "peer": true - }, - "ansi-escapes": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", - "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", - "peer": true - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "peer": true - }, - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "peer": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "peer": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "chardet": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz", - "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=", - "peer": true - }, - "cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", - "peer": true, - "requires": { - "restore-cursor": "^2.0.0" - } - }, - "cli-width": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", - "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==", - "peer": true - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "peer": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "peer": true - }, - "cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", - "peer": true, - "requires": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "peer": true - }, - "external-editor": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz", - "integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==", - "peer": true, - "requires": { - "chardet": "^0.4.0", - "iconv-lite": "^0.4.17", - "tmp": "^0.0.33" - } - }, - "figures": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", - "peer": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "global-modules": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", - "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", - "peer": true, - "requires": { - "global-prefix": "^1.0.1", - "is-windows": "^1.0.1", - "resolve-dir": "^1.0.0" - } - }, - "global-prefix": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", - "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", - "peer": true, - "requires": { - "expand-tilde": "^2.0.2", - "homedir-polyfill": "^1.0.1", - "ini": "^1.3.4", - "is-windows": "^1.0.1", - "which": "^1.2.14" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "peer": true - }, - "inquirer": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", - "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", - "peer": true, - "requires": { - "ansi-escapes": "^3.0.0", - "chalk": "^2.0.0", - "cli-cursor": "^2.1.0", - "cli-width": "^2.0.0", - "external-editor": "^2.0.4", - "figures": "^2.0.0", - "lodash": "^4.3.0", - "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rx-lite": "^4.0.8", - "rx-lite-aggregates": "^4.0.8", - "string-width": "^2.1.0", - "strip-ansi": "^4.0.0", - "through": "^2.3.6" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "peer": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "peer": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "peer": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "peer": true, - "requires": { - "ansi-regex": "^3.0.0" - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "peer": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "peer": true - }, - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "peer": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", - "peer": true - }, - "mute-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", - "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", - "peer": true - }, - "onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", - "peer": true, - "requires": { - "mimic-fn": "^1.0.0" - } - }, - "restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", - "peer": true, - "requires": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - } - }, - "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "peer": true, - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "peer": true - }, - "shell-quote": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz", - "integrity": "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=", - "peer": true, - "requires": { - "array-filter": "~0.0.0", - "array-map": "~0.0.0", - "array-reduce": "~0.0.0", - "jsonify": "~0.0.0" - } - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "peer": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "peer": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "peer": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "peer": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "peer": true - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "peer": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "peer": true - } - } - }, "react-dom": { "version": "16.14.0", "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.14.0.tgz", @@ -96037,36 +88927,6 @@ "scheduler": "^0.19.1" } }, - "react-error-overlay": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-3.0.0.tgz", - "integrity": "sha512-XzgvowFrwDo6TWcpJ/WTiarb9UI6lhA4PMzS7n1joK3sHfBBBOQHUc0U4u57D6DWO9vHv6lVSWx2Q/Ymfyv4hw==", - "peer": true - }, - "react-hot-loader": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/react-hot-loader/-/react-hot-loader-4.13.0.tgz", - "integrity": "sha512-JrLlvUPqh6wIkrK2hZDfOyq/Uh/WeVEr8nc7hkn2/3Ul0sx1Kr5y4kOGNacNRoj7RhwLNcQ3Udf1KJXrqc0ZtA==", - "peer": true, - "requires": { - "fast-levenshtein": "^2.0.6", - "global": "^4.3.0", - "hoist-non-react-statics": "^3.3.0", - "loader-utils": "^1.1.0", - "prop-types": "^15.6.1", - "react-lifecycles-compat": "^3.0.4", - "shallowequal": "^1.1.0", - "source-map": "^0.7.3" - }, - "dependencies": { - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "peer": true - } - } - }, "react-is": { "version": "17.0.2", "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", @@ -96079,12 +88939,6 @@ "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==", "peer": true }, - "react-refresh": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.8.3.tgz", - "integrity": "sha512-X8jZHc7nCMjaCqoU+V2I0cOhNW+QMBwSUkeXnTi8IPe6zaRWfn60ZzvFDZqWPfmSJfjub7dDW1SP0jaHWLu/hg==", - "peer": true - }, "read": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz", @@ -96341,26 +89195,6 @@ "resolve": "^1.9.0" } }, - "recursive-readdir": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.1.tgz", - "integrity": "sha1-kO8jHQd4xc4JPJpI105cVCLROpk=", - "peer": true, - "requires": { - "minimatch": "3.0.3" - }, - "dependencies": { - "minimatch": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha1-Kk5AkLlrLbBqnX3wEFWmKnfJt3Q=", - "peer": true, - "requires": { - "brace-expansion": "^1.0.0" - } - } - } - }, "redent": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", @@ -96883,6 +89717,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", + "optional": true, "requires": { "expand-tilde": "^2.0.0", "global-modules": "^1.0.0" @@ -96892,6 +89727,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", + "optional": true, "requires": { "global-prefix": "^1.0.1", "is-windows": "^1.0.1", @@ -96902,6 +89738,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", + "optional": true, "requires": { "expand-tilde": "^2.0.2", "homedir-polyfill": "^1.0.1", @@ -96914,6 +89751,7 @@ "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "optional": true, "requires": { "isexe": "^2.0.0" } @@ -97300,21 +90138,6 @@ "integrity": "sha1-SQPL2AJIrg7eaFv1j9I2p6mymj4=", "dev": true }, - "rx-lite": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", - "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=", - "peer": true - }, - "rx-lite-aggregates": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", - "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", - "peer": true, - "requires": { - "rx-lite": "*" - } - }, "rxjs": { "version": "6.6.7", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", @@ -97656,12 +90479,6 @@ "integrity": "sha512-LUMFi+RppPlrHzbqmFnINTrazo0lPNwhcgzuAXVVcfy/mqPDrQmHAyz5bvV0gDAuRFrk804V0HpQ6u9sZ0tBeg==", "peer": true }, - "shallowequal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", - "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==", - "peer": true - }, "sharp": { "version": "0.29.0", "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.29.0.tgz", @@ -98085,37 +90902,6 @@ "websocket-driver": "^0.7.4" } }, - "sockjs-client": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.1.4.tgz", - "integrity": "sha1-W6vjhrd15M8U51IJEUUmVAFsixI=", - "peer": true, - "requires": { - "debug": "^2.6.6", - "eventsource": "0.1.6", - "faye-websocket": "~0.11.0", - "inherits": "^2.0.1", - "json3": "^3.3.2", - "url-parse": "^1.1.8" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "peer": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "peer": true - } - } - }, "socks": { "version": "2.6.1", "resolved": "https://registry.npmjs.org/socks/-/socks-2.6.1.tgz", @@ -98949,29 +91735,6 @@ "resolved": "https://registry.npmjs.org/stubs/-/stubs-3.0.0.tgz", "integrity": "sha1-6NK6H6nJBXAwPAMLaQD31fiavls=" }, - "style-loader": { - "version": "0.23.1", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-0.23.1.tgz", - "integrity": "sha512-XK+uv9kWwhZMZ1y7mysB+zoihsEj4wneFWAS5qoiLwzW0WzSqMrrsIy+a3zkQJq0ipFtBpX5W3MqyRIBF/WFGg==", - "peer": true, - "requires": { - "loader-utils": "^1.1.0", - "schema-utils": "^1.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "peer": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } - } - } - }, "style-search": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/style-search/-/style-search-0.1.0.tgz", @@ -103015,15 +95778,6 @@ "makeerror": "1.0.x" } }, - "warning": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz", - "integrity": "sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==", - "peer": true, - "requires": { - "loose-envify": "^1.0.0" - } - }, "watchpack": { "version": "1.7.5", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.5.tgz", @@ -104384,6 +97138,7 @@ "version": "2.25.0", "resolved": "https://registry.npmjs.org/webpack-hot-middleware/-/webpack-hot-middleware-2.25.0.tgz", "integrity": "sha512-xs5dPOrGPCzuRXNi8F6rwhawWvQQkeli5Ro48PRuQh8pYPCPmNnltP9itiUPT4xI8oW+y0m59lyyeQk54s5VgA==", + "optional": true, "peer": true, "requires": { "ansi-html": "0.0.7", @@ -104396,18 +97151,21 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "optional": true, "peer": true }, "html-entities": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.4.0.tgz", "integrity": "sha512-8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA==", + "optional": true, "peer": true }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "optional": true, "peer": true, "requires": { "ansi-regex": "^2.0.0" @@ -104435,6 +97193,7 @@ "version": "4.2.2", "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.2.tgz", "integrity": "sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g==", + "dev": true, "requires": { "lodash": "^4.17.15" } @@ -104448,32 +97207,6 @@ "source-map": "~0.6.1" } }, - "webpack-stats-plugin": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/webpack-stats-plugin/-/webpack-stats-plugin-0.3.2.tgz", - "integrity": "sha512-kxEtPQ6lBBik2qtJlsZkiaDMI6rGXe9w1kLH9ZCdt0wgCGVnbwwPlP60cMqG6tILNFYqXDxNt4+c4OIIuE+Fnw==", - "peer": true - }, - "webpack-virtual-modules": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.2.2.tgz", - "integrity": "sha512-kDUmfm3BZrei0y+1NTHJInejzxfhtU8eDj2M7OKb2IWrPFAeO1SOH2KuQ68MSZu9IGEHcxbkKKR1v18FrUSOmA==", - "peer": true, - "requires": { - "debug": "^3.0.0" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "peer": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, "webpackbar": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/webpackbar/-/webpackbar-3.2.0.tgz", @@ -104815,6 +97548,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", + "dev": true, "requires": { "mkdirp": "^0.5.1" }, @@ -104823,6 +97557,7 @@ "version": "0.5.5", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, "requires": { "minimist": "^1.2.5" } diff --git a/packages/gatsby-source-directus/package.json b/packages/gatsby-source-directus/package.json index c588efc066..e6e8bd957d 100644 --- a/packages/gatsby-source-directus/package.json +++ b/packages/gatsby-source-directus/package.json @@ -13,7 +13,7 @@ "@directus/sdk": "^9.0.0-rc.90", "chalk": "4.1.2", "gatsby-source-filesystem": "3.12.0", - "gatsby-source-graphql": "^3.12.0", + "gatsby-source-graphql": "3.12.0", "invariant": "2.2.4", "ms": "2.1.3" }, From 14d4a9d310159b95f43766ba2db85d4123d52748 Mon Sep 17 00:00:00 2001 From: Pascal Jufer Date: Fri, 20 Aug 2021 15:59:11 +0200 Subject: [PATCH 046/284] Link to awesome-directus in introduction doc (#7516) --- docs/getting-started/introduction.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/getting-started/introduction.md b/docs/getting-started/introduction.md index cb4af6d0ec..3e4ba05c99 100644 --- a/docs/getting-started/introduction.md +++ b/docs/getting-started/introduction.md @@ -166,3 +166,7 @@ improve Directus in your language, you can [learn more here](/contributing/trans Coming in 2021, the [Directus Marketplace](https://directus.market/) will offer a unified portal to extensions created by our Core Team and community contributors. + +### Awesome List + +Head to [awesome-directus](https://github.com/directus-community/awesome-directus) for a list of awesome things related to Directus. From e1cbfc4ca4a9f4a0de6b9c0220b87283b43d5d06 Mon Sep 17 00:00:00 2001 From: Sam Milledge Date: Fri, 20 Aug 2021 23:59:58 +1000 Subject: [PATCH 047/284] Fix SDK request url in fields update one request (#7514) Co-authored-by: Rijk van Zanten --- packages/sdk/src/handlers/fields.ts | 2 +- packages/sdk/tests/handlers/fields.test.ts | 23 ++++++++++++++++++++++ packages/sdk/tests/utils.ts | 3 ++- 3 files changed, 26 insertions(+), 2 deletions(-) create mode 100644 packages/sdk/tests/handlers/fields.test.ts diff --git a/packages/sdk/src/handlers/fields.ts b/packages/sdk/src/handlers/fields.ts index 861529a094..07dd84b532 100644 --- a/packages/sdk/src/handlers/fields.ts +++ b/packages/sdk/src/handlers/fields.ts @@ -34,7 +34,7 @@ export class FieldsHandler { } async updateOne(collection: string, field: string, item: PartialItem): Promise> { - return (await this.transport.patch>(`/fields/${collection}/${field}}`, item)).data; + return (await this.transport.patch>(`/fields/${collection}/${field}`, item)).data; } async deleteOne(collection: string, field: string): Promise { diff --git a/packages/sdk/tests/handlers/fields.test.ts b/packages/sdk/tests/handlers/fields.test.ts new file mode 100644 index 0000000000..dd1fd1dce0 --- /dev/null +++ b/packages/sdk/tests/handlers/fields.test.ts @@ -0,0 +1,23 @@ +/** + * @jest-environment node + */ + +import { Directus } from '../../src'; +import { test } from '../utils'; + +describe('fields', function () { + test(`update one`, async (url, nock) => { + const scope = nock() + .patch('/fields/posts/title', { meta: { required: true } }) + .reply(200, {}); + + const sdk = new Directus(url); + await sdk.fields.updateOne('posts', 'title', { + meta: { + required: true, + }, + }); + + expect(scope.pendingMocks().length).toBe(0); + }); +}); diff --git a/packages/sdk/tests/utils.ts b/packages/sdk/tests/utils.ts index 9f8ff7de67..04948c8b9b 100644 --- a/packages/sdk/tests/utils.ts +++ b/packages/sdk/tests/utils.ts @@ -28,9 +28,10 @@ export function test(name: string, test: Test, settings?: TestSettings): void { } // `clearImmediate` doesn't exist in the jsdom environment and nock throws ReferenceError - if (global.clearImmediate !== typeof 'function') { + if (typeof global.clearImmediate !== 'function') { global.clearImmediate = clearImmediate; } + nock.abortPendingRequests(); nock.cleanAll(); }); From c8d35a311d70745065778d2586e9d08d76abf506 Mon Sep 17 00:00:00 2001 From: Oreille <33065839+Oreilles@users.noreply.github.com> Date: Fri, 20 Aug 2021 16:05:19 +0200 Subject: [PATCH 048/284] Hide filter input when filter operator is null/nnull. (#7515) * Don't allow `empty` filter for non-string types. Add `null` filter. * Hide filter input when filter operator is null/nnull. Co-authored-by: Rijk van Zanten --- .../private/components/filter-sidebar-detail/filter-input.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/views/private/components/filter-sidebar-detail/filter-input.vue b/app/src/views/private/components/filter-sidebar-detail/filter-input.vue index 04c67ecc32..19751a6f26 100644 --- a/app/src/views/private/components/filter-sidebar-detail/filter-input.vue +++ b/app/src/views/private/components/filter-sidebar-detail/filter-input.vue @@ -49,7 +49,7 @@ {{ t('add_new') }} -