diff --git a/netlify/functions/sendFeedback.mjs b/netlify/functions/sendFeedback.mjs
new file mode 100644
index 000000000..248da8f45
--- /dev/null
+++ b/netlify/functions/sendFeedback.mjs
@@ -0,0 +1,97 @@
+import {auth} from 'google-auth-library';
+
+exports.handler = async (event, context) => {
+ if (event.httpMethod !== 'POST') {
+ return {
+ statusCode: 405,
+ body: 'Method Not Allowed'
+ };
+ }
+
+ try {
+ const client = await getAuthClient();
+ const spreadsheetId = '1K7y7X5ZOGE6GBpSDb15vl1l7_EX3UPYjEzkEqJV25KE';
+ const range = 'Sheet1!A1';
+
+ const feedback = JSON.parse(event.body);
+ const {
+ path,
+ rating,
+ positives,
+ issues,
+ issueDetails,
+ additionalComments,
+ username
+ } = feedback;
+
+ const formattedPositives = JSON.stringify(positives);
+ const formattedIssues = JSON.stringify(issues);
+
+ const timestamp = new Date().toISOString();
+ const values = {
+ range,
+ majorDimension: 'ROWS',
+ values: [
+ [
+ timestamp,
+ path,
+ rating,
+ formattedPositives,
+ formattedIssues,
+ issueDetails,
+ additionalComments,
+ username
+ ]
+ ]
+ };
+
+ const url = `https://sheets.googleapis.com/v4/spreadsheets/${spreadsheetId}/values/${range}:append`;
+
+ const params = {
+ valueInputOption: 'USER_ENTERED',
+ insertDataOption: 'INSERT_ROWS'
+ };
+
+ try {
+ const response = await client.request({
+ url,
+ method: 'POST',
+ params,
+ data: values
+ });
+ const data = await response.json();
+ console.log('Feedback added:', data);
+ } catch (error) {
+ console.error('Error appending feedback:', error);
+ }
+
+ return {
+ statusCode: 200
+ };
+ } catch (error) {
+ return {
+ statusCode: 500,
+ body: JSON.stringify({error: 'Internal Server Error'})
+ };
+ }
+};
+
+async function getAuthClient() {
+ const serviceAccountKeys = {
+ type: 'service_account',
+ project_id: process.env.GOOGLE_PROJECT_ID,
+ private_key_id: process.env.GOOGLE_PRIVATE_KEY_ID,
+ private_key: process.env.GOOGLE_PRIVATE_KEY.replace(/\\n/g, '\n'),
+ client_email: process.env.GOOGLE_CLIENT_EMAIL,
+ client_id: process.env.GOOGLE_CLIENT_ID,
+ auth_uri: process.env.GOOGLE_AUTH_URI,
+ token_uri: process.env.GOOGLE_TOKEN_URI,
+ auth_provider_x509_cert_url: process.env.GOOGLE_AUTH_PROVIDER_X509_CERT_URL,
+ client_x509_cert_url: process.env.GOOGLE_CLIENT_X509_CERT_URL
+ };
+
+ const client = auth.fromJSON(serviceAccountKeys);
+ client.scopes = ['https://www.googleapis.com/auth/spreadsheets'];
+
+ return client;
+}
diff --git a/package-lock.json b/package-lock.json
index a28d62322..cf0d2c8f8 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -30,6 +30,7 @@
"@mdx-js/mdx": "^1.6.22",
"@mdx-js/react": "^1.6.22",
"@microsoft/api-extractor-model": "^7.28.2",
+ "@netlify/functions": "^2.7.0",
"@playwright/test": "^1.40.1",
"@svgr/webpack": "^5.5.0",
"@theowenyoung/gatsby-source-git": "^2.3.1",
@@ -61,6 +62,8 @@
"gatsby-transformer-json": "^4.4.0",
"gatsby-transformer-remark": "^5.4.0",
"github-slugger": "^1.4.0",
+ "google-auth-library": "^9.10.0",
+ "googleapis": "^139.0.0",
"graphql": "^15.8.0",
"graphql-ws": "^5.8.2",
"https-browserify": "^1.0.0",
@@ -3211,38 +3214,27 @@
}
},
"node_modules/@emotion/babel-plugin": {
- "version": "11.3.0",
- "license": "MIT",
- "dependencies": {
- "@babel/helper-module-imports": "^7.12.13",
- "@babel/plugin-syntax-jsx": "^7.12.13",
- "@babel/runtime": "^7.13.10",
- "@emotion/hash": "^0.8.0",
- "@emotion/memoize": "^0.7.5",
- "@emotion/serialize": "^1.0.2",
- "babel-plugin-macros": "^2.6.1",
+ "version": "11.11.0",
+ "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz",
+ "integrity": "sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ==",
+ "dependencies": {
+ "@babel/helper-module-imports": "^7.16.7",
+ "@babel/runtime": "^7.18.3",
+ "@emotion/hash": "^0.9.1",
+ "@emotion/memoize": "^0.8.1",
+ "@emotion/serialize": "^1.1.2",
+ "babel-plugin-macros": "^3.1.0",
"convert-source-map": "^1.5.0",
"escape-string-regexp": "^4.0.0",
"find-root": "^1.1.0",
"source-map": "^0.5.7",
- "stylis": "^4.0.3"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
+ "stylis": "4.2.0"
}
},
- "node_modules/@emotion/babel-plugin/node_modules/@babel/plugin-syntax-jsx": {
- "version": "7.14.5",
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
+ "node_modules/@emotion/babel-plugin/node_modules/@emotion/memoize": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz",
+ "integrity": "sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA=="
},
"node_modules/@emotion/babel-plugin/node_modules/escape-string-regexp": {
"version": "4.0.0",
@@ -3254,17 +3246,33 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/@emotion/babel-plugin/node_modules/stylis": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz",
+ "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw=="
+ },
"node_modules/@emotion/cache": {
- "version": "11.5.0",
- "license": "MIT",
+ "version": "11.11.0",
+ "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.11.0.tgz",
+ "integrity": "sha512-P34z9ssTCBi3e9EI1ZsWpNHcfY1r09ZO0rZbRO2ob3ZQMnFI35jB536qoXbkdesr5EUhYi22anuEJuyxifaqAQ==",
"dependencies": {
- "@emotion/memoize": "^0.7.4",
- "@emotion/sheet": "^1.0.3",
- "@emotion/utils": "^1.0.0",
- "@emotion/weak-memoize": "^0.2.5",
- "stylis": "^4.0.10"
+ "@emotion/memoize": "^0.8.1",
+ "@emotion/sheet": "^1.2.2",
+ "@emotion/utils": "^1.2.1",
+ "@emotion/weak-memoize": "^0.3.1",
+ "stylis": "4.2.0"
}
},
+ "node_modules/@emotion/cache/node_modules/@emotion/memoize": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz",
+ "integrity": "sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA=="
+ },
+ "node_modules/@emotion/cache/node_modules/stylis": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz",
+ "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw=="
+ },
"node_modules/@emotion/core": {
"version": "11.0.0",
"resolved": "https://registry.npmjs.org/@emotion/core/-/core-11.0.0.tgz",
@@ -3272,8 +3280,9 @@
"peer": true
},
"node_modules/@emotion/hash": {
- "version": "0.8.0",
- "license": "MIT"
+ "version": "0.9.1",
+ "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.1.tgz",
+ "integrity": "sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ=="
},
"node_modules/@emotion/is-prop-valid": {
"version": "1.1.0",
@@ -3287,44 +3296,49 @@
"license": "MIT"
},
"node_modules/@emotion/react": {
- "version": "11.5.0",
- "license": "MIT",
- "dependencies": {
- "@babel/runtime": "^7.13.10",
- "@emotion/cache": "^11.5.0",
- "@emotion/serialize": "^1.0.2",
- "@emotion/sheet": "^1.0.3",
- "@emotion/utils": "^1.0.0",
- "@emotion/weak-memoize": "^0.2.5",
+ "version": "11.11.4",
+ "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.11.4.tgz",
+ "integrity": "sha512-t8AjMlF0gHpvvxk5mAtCqR4vmxiGHCeJBaQO6gncUSdklELOgtwjerNY2yuJNfwnc6vi16U/+uMF+afIawJ9iw==",
+ "dependencies": {
+ "@babel/runtime": "^7.18.3",
+ "@emotion/babel-plugin": "^11.11.0",
+ "@emotion/cache": "^11.11.0",
+ "@emotion/serialize": "^1.1.3",
+ "@emotion/use-insertion-effect-with-fallbacks": "^1.0.1",
+ "@emotion/utils": "^1.2.1",
+ "@emotion/weak-memoize": "^0.3.1",
"hoist-non-react-statics": "^3.3.1"
},
"peerDependencies": {
- "@babel/core": "^7.0.0",
"react": ">=16.8.0"
},
"peerDependenciesMeta": {
- "@babel/core": {
- "optional": true
- },
"@types/react": {
"optional": true
}
}
},
"node_modules/@emotion/serialize": {
- "version": "1.0.2",
- "license": "MIT",
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.1.4.tgz",
+ "integrity": "sha512-RIN04MBT8g+FnDwgvIUi8czvr1LU1alUMI05LekWB5DGyTm8cCBMCRpq3GqaiyEDRptEXOyXnvZ58GZYu4kBxQ==",
"dependencies": {
- "@emotion/hash": "^0.8.0",
- "@emotion/memoize": "^0.7.4",
- "@emotion/unitless": "^0.7.5",
- "@emotion/utils": "^1.0.0",
+ "@emotion/hash": "^0.9.1",
+ "@emotion/memoize": "^0.8.1",
+ "@emotion/unitless": "^0.8.1",
+ "@emotion/utils": "^1.2.1",
"csstype": "^3.0.2"
}
},
+ "node_modules/@emotion/serialize/node_modules/@emotion/memoize": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz",
+ "integrity": "sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA=="
+ },
"node_modules/@emotion/sheet": {
- "version": "1.0.3",
- "license": "MIT"
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.2.tgz",
+ "integrity": "sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA=="
},
"node_modules/@emotion/styled": {
"version": "11.3.0",
@@ -3351,16 +3365,27 @@
}
},
"node_modules/@emotion/unitless": {
- "version": "0.7.5",
- "license": "MIT"
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.1.tgz",
+ "integrity": "sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ=="
+ },
+ "node_modules/@emotion/use-insertion-effect-with-fallbacks": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz",
+ "integrity": "sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw==",
+ "peerDependencies": {
+ "react": ">=16.8.0"
+ }
},
"node_modules/@emotion/utils": {
- "version": "1.0.0",
- "license": "MIT"
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.2.1.tgz",
+ "integrity": "sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg=="
},
"node_modules/@emotion/weak-memoize": {
- "version": "0.2.5",
- "license": "MIT"
+ "version": "0.3.1",
+ "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz",
+ "integrity": "sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww=="
},
"node_modules/@eslint/eslintrc": {
"version": "0.4.3",
@@ -5593,6 +5618,42 @@
"win32"
]
},
+ "node_modules/@netlify/functions": {
+ "version": "2.7.0",
+ "resolved": "https://registry.npmjs.org/@netlify/functions/-/functions-2.7.0.tgz",
+ "integrity": "sha512-4pXC/fuj3eGQ86wbgPiM4zY8+AsNrdz6vcv6FEdUJnZW+LqF8IWjQcY3S0d1hLeLKODYOqq4CkrzGyCpce63Nw==",
+ "dependencies": {
+ "@netlify/serverless-functions-api": "1.18.1"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/@netlify/node-cookies": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/@netlify/node-cookies/-/node-cookies-0.1.0.tgz",
+ "integrity": "sha512-OAs1xG+FfLX0LoRASpqzVntVV/RpYkgpI0VrUnw2u0Q1qiZUzcPffxRK8HF3gc4GjuhG5ahOEMJ9bswBiZPq0g==",
+ "engines": {
+ "node": "^14.16.0 || >=16.0.0"
+ }
+ },
+ "node_modules/@netlify/serverless-functions-api": {
+ "version": "1.18.1",
+ "resolved": "https://registry.npmjs.org/@netlify/serverless-functions-api/-/serverless-functions-api-1.18.1.tgz",
+ "integrity": "sha512-DrSvivchuwsuQW03zbVPT3nxCQa5tn7m4aoPOsQKibuJXIuSbfxzCBxPLz0+LchU5ds7YyOaCc9872Y32ngYzg==",
+ "dependencies": {
+ "@netlify/node-cookies": "^0.1.0",
+ "@opentelemetry/core": "^1.23.0",
+ "@opentelemetry/otlp-transformer": "^0.50.0",
+ "@opentelemetry/resources": "^1.23.0",
+ "@opentelemetry/sdk-trace-base": "^1.23.0",
+ "@opentelemetry/semantic-conventions": "^1.23.0",
+ "urlpattern-polyfill": "8.0.2"
+ },
+ "engines": {
+ "node": ">=18.0.0"
+ }
+ },
"node_modules/@nodelib/fs.scandir": {
"version": "2.1.5",
"license": "MIT",
@@ -5622,6 +5683,256 @@
"node": ">= 8"
}
},
+ "node_modules/@opentelemetry/api": {
+ "version": "1.8.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.8.0.tgz",
+ "integrity": "sha512-I/s6F7yKUDdtMsoBWXJe8Qz40Tui5vsuKCWJEWVL+5q9sSWRzzx6v2KeNsOBEwd94j0eWkpWCH4yB6rZg9Mf0w==",
+ "engines": {
+ "node": ">=8.0.0"
+ }
+ },
+ "node_modules/@opentelemetry/api-logs": {
+ "version": "0.50.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/api-logs/-/api-logs-0.50.0.tgz",
+ "integrity": "sha512-JdZuKrhOYggqOpUljAq4WWNi5nB10PmgoF0y2CvedLGXd0kSawb/UBnWT8gg1ND3bHCNHStAIVT0ELlxJJRqrA==",
+ "dependencies": {
+ "@opentelemetry/api": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/@opentelemetry/core": {
+ "version": "1.24.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.24.1.tgz",
+ "integrity": "sha512-wMSGfsdmibI88K9wB498zXY04yThPexo8jvwNNlm542HZB7XrrMRBbAyKJqG8qDRJwIBdBrPMi4V9ZPW/sqrcg==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.24.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.9.0"
+ }
+ },
+ "node_modules/@opentelemetry/otlp-transformer": {
+ "version": "0.50.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-transformer/-/otlp-transformer-0.50.0.tgz",
+ "integrity": "sha512-s0sl1Yfqd5q1Kjrf6DqXPWzErL+XHhrXOfejh4Vc/SMTNqC902xDsC8JQxbjuramWt/+hibfguIvi7Ns8VLolA==",
+ "dependencies": {
+ "@opentelemetry/api-logs": "0.50.0",
+ "@opentelemetry/core": "1.23.0",
+ "@opentelemetry/resources": "1.23.0",
+ "@opentelemetry/sdk-logs": "0.50.0",
+ "@opentelemetry/sdk-metrics": "1.23.0",
+ "@opentelemetry/sdk-trace-base": "1.23.0"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.3.0 <1.9.0"
+ }
+ },
+ "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/core": {
+ "version": "1.23.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.23.0.tgz",
+ "integrity": "sha512-hdQ/a9TMzMQF/BO8Cz1juA43/L5YGtCSiKoOHmrTEf7VMDAZgy8ucpWx3eQTnQ3gBloRcWtzvcrMZABC3PTSKQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.23.0"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.9.0"
+ }
+ },
+ "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/resources": {
+ "version": "1.23.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.23.0.tgz",
+ "integrity": "sha512-iPRLfVfcEQynYGo7e4Di+ti+YQTAY0h5mQEUJcHlU9JOqpb4x965O6PZ+wMcwYVY63G96KtdS86YCM1BF1vQZg==",
+ "dependencies": {
+ "@opentelemetry/core": "1.23.0",
+ "@opentelemetry/semantic-conventions": "1.23.0"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.9.0"
+ }
+ },
+ "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/sdk-trace-base": {
+ "version": "1.23.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.23.0.tgz",
+ "integrity": "sha512-PzBmZM8hBomUqvCddF/5Olyyviayka44O5nDWq673np3ctnvwMOvNrsUORZjKja1zJbwEuD9niAGbnVrz3jwRQ==",
+ "dependencies": {
+ "@opentelemetry/core": "1.23.0",
+ "@opentelemetry/resources": "1.23.0",
+ "@opentelemetry/semantic-conventions": "1.23.0"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.9.0"
+ }
+ },
+ "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/semantic-conventions": {
+ "version": "1.23.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.23.0.tgz",
+ "integrity": "sha512-MiqFvfOzfR31t8cc74CTP1OZfz7MbqpAnLCra8NqQoaHJX6ncIRTdYOQYBDQ2uFISDq0WY8Y9dDTWvsgzzBYRg==",
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/@opentelemetry/resources": {
+ "version": "1.24.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.24.1.tgz",
+ "integrity": "sha512-cyv0MwAaPF7O86x5hk3NNgenMObeejZFLJJDVuSeSMIsknlsj3oOZzRv3qSzlwYomXsICfBeFFlxwHQte5mGXQ==",
+ "dependencies": {
+ "@opentelemetry/core": "1.24.1",
+ "@opentelemetry/semantic-conventions": "1.24.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.9.0"
+ }
+ },
+ "node_modules/@opentelemetry/sdk-logs": {
+ "version": "0.50.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-logs/-/sdk-logs-0.50.0.tgz",
+ "integrity": "sha512-PeUEupBB29p9nlPNqXoa1PUWNLsZnxG0DCDj3sHqzae+8y76B/A5hvZjg03ulWdnvBLYpnJslqzylG9E0IL87g==",
+ "dependencies": {
+ "@opentelemetry/core": "1.23.0",
+ "@opentelemetry/resources": "1.23.0"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.4.0 <1.9.0",
+ "@opentelemetry/api-logs": ">=0.39.1"
+ }
+ },
+ "node_modules/@opentelemetry/sdk-logs/node_modules/@opentelemetry/core": {
+ "version": "1.23.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.23.0.tgz",
+ "integrity": "sha512-hdQ/a9TMzMQF/BO8Cz1juA43/L5YGtCSiKoOHmrTEf7VMDAZgy8ucpWx3eQTnQ3gBloRcWtzvcrMZABC3PTSKQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.23.0"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.9.0"
+ }
+ },
+ "node_modules/@opentelemetry/sdk-logs/node_modules/@opentelemetry/resources": {
+ "version": "1.23.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.23.0.tgz",
+ "integrity": "sha512-iPRLfVfcEQynYGo7e4Di+ti+YQTAY0h5mQEUJcHlU9JOqpb4x965O6PZ+wMcwYVY63G96KtdS86YCM1BF1vQZg==",
+ "dependencies": {
+ "@opentelemetry/core": "1.23.0",
+ "@opentelemetry/semantic-conventions": "1.23.0"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.9.0"
+ }
+ },
+ "node_modules/@opentelemetry/sdk-logs/node_modules/@opentelemetry/semantic-conventions": {
+ "version": "1.23.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.23.0.tgz",
+ "integrity": "sha512-MiqFvfOzfR31t8cc74CTP1OZfz7MbqpAnLCra8NqQoaHJX6ncIRTdYOQYBDQ2uFISDq0WY8Y9dDTWvsgzzBYRg==",
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/@opentelemetry/sdk-metrics": {
+ "version": "1.23.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.23.0.tgz",
+ "integrity": "sha512-4OkvW6+wST4h6LFG23rXSTf6nmTf201h9dzq7bE0z5R9ESEVLERZz6WXwE7PSgg1gdjlaznm1jLJf8GttypFDg==",
+ "dependencies": {
+ "@opentelemetry/core": "1.23.0",
+ "@opentelemetry/resources": "1.23.0",
+ "lodash.merge": "^4.6.2"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.3.0 <1.9.0"
+ }
+ },
+ "node_modules/@opentelemetry/sdk-metrics/node_modules/@opentelemetry/core": {
+ "version": "1.23.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.23.0.tgz",
+ "integrity": "sha512-hdQ/a9TMzMQF/BO8Cz1juA43/L5YGtCSiKoOHmrTEf7VMDAZgy8ucpWx3eQTnQ3gBloRcWtzvcrMZABC3PTSKQ==",
+ "dependencies": {
+ "@opentelemetry/semantic-conventions": "1.23.0"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.9.0"
+ }
+ },
+ "node_modules/@opentelemetry/sdk-metrics/node_modules/@opentelemetry/resources": {
+ "version": "1.23.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.23.0.tgz",
+ "integrity": "sha512-iPRLfVfcEQynYGo7e4Di+ti+YQTAY0h5mQEUJcHlU9JOqpb4x965O6PZ+wMcwYVY63G96KtdS86YCM1BF1vQZg==",
+ "dependencies": {
+ "@opentelemetry/core": "1.23.0",
+ "@opentelemetry/semantic-conventions": "1.23.0"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.9.0"
+ }
+ },
+ "node_modules/@opentelemetry/sdk-metrics/node_modules/@opentelemetry/semantic-conventions": {
+ "version": "1.23.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.23.0.tgz",
+ "integrity": "sha512-MiqFvfOzfR31t8cc74CTP1OZfz7MbqpAnLCra8NqQoaHJX6ncIRTdYOQYBDQ2uFISDq0WY8Y9dDTWvsgzzBYRg==",
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/@opentelemetry/sdk-trace-base": {
+ "version": "1.24.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.24.1.tgz",
+ "integrity": "sha512-zz+N423IcySgjihl2NfjBf0qw1RWe11XIAWVrTNOSSI6dtSPJiVom2zipFB2AEEtJWpv0Iz6DY6+TjnyTV5pWg==",
+ "dependencies": {
+ "@opentelemetry/core": "1.24.1",
+ "@opentelemetry/resources": "1.24.1",
+ "@opentelemetry/semantic-conventions": "1.24.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.9.0"
+ }
+ },
+ "node_modules/@opentelemetry/semantic-conventions": {
+ "version": "1.24.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.24.1.tgz",
+ "integrity": "sha512-VkliWlS4/+GHLLW7J/rVBA00uXus1SWvwFvcUDxDwmFxYfg/2VI6ekwdXS28cjI8Qz2ky2BzG8OUHo+WeYIWqw==",
+ "engines": {
+ "node": ">=14"
+ }
+ },
"node_modules/@parcel/bundler-default": {
"version": "2.6.2",
"resolved": "https://registry.npmjs.org/@parcel/bundler-default/-/bundler-default-2.6.2.tgz",
@@ -9105,6 +9416,93 @@
"striptags": "^3.2.0"
}
},
+ "node_modules/apollo-algolia-transform/node_modules/gaxios": {
+ "version": "4.3.3",
+ "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-4.3.3.tgz",
+ "integrity": "sha512-gSaYYIO1Y3wUtdfHmjDUZ8LWaxJQpiavzbF5Kq53akSzvmVg0RfyOcFDbO1KJ/KCGRFz2qG+lS81F0nkr7cRJA==",
+ "dependencies": {
+ "abort-controller": "^3.0.0",
+ "extend": "^3.0.2",
+ "https-proxy-agent": "^5.0.0",
+ "is-stream": "^2.0.0",
+ "node-fetch": "^2.6.7"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/apollo-algolia-transform/node_modules/gcp-metadata": {
+ "version": "4.3.1",
+ "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-4.3.1.tgz",
+ "integrity": "sha512-x850LS5N7V1F3UcV7PoupzGsyD6iVwTVvsh3tbXfkctZnBnjW5yu5z1/3k3SehF7TyoTIe78rJs02GMMy+LF+A==",
+ "dependencies": {
+ "gaxios": "^4.0.0",
+ "json-bigint": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/apollo-algolia-transform/node_modules/google-auth-library": {
+ "version": "7.14.1",
+ "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.14.1.tgz",
+ "integrity": "sha512-5Rk7iLNDFhFeBYc3s8l1CqzbEBcdhwR193RlD4vSNFajIcINKI8W8P0JLmBpwymHqqWbX34pJDQu39cSy/6RsA==",
+ "dependencies": {
+ "arrify": "^2.0.0",
+ "base64-js": "^1.3.0",
+ "ecdsa-sig-formatter": "^1.0.11",
+ "fast-text-encoding": "^1.0.0",
+ "gaxios": "^4.0.0",
+ "gcp-metadata": "^4.2.0",
+ "gtoken": "^5.0.4",
+ "jws": "^4.0.0",
+ "lru-cache": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/apollo-algolia-transform/node_modules/googleapis": {
+ "version": "72.0.0",
+ "resolved": "https://registry.npmjs.org/googleapis/-/googleapis-72.0.0.tgz",
+ "integrity": "sha512-GMHXnZy86tLdFGkHd5G1mEWFGKO2+G8VFmk2my+mRCum0e5MOPQXG+PAvDVjVwCQJEOjPpBOZae53THRXaVm9w==",
+ "dependencies": {
+ "google-auth-library": "^7.0.2",
+ "googleapis-common": "^5.0.2"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/apollo-algolia-transform/node_modules/googleapis-common": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/googleapis-common/-/googleapis-common-5.1.0.tgz",
+ "integrity": "sha512-RXrif+Gzhq1QAzfjxulbGvAY3FPj8zq/CYcvgjzDbaBNCD6bUl+86I7mUs4DKWHGruuK26ijjR/eDpWIDgNROA==",
+ "dependencies": {
+ "extend": "^3.0.2",
+ "gaxios": "^4.0.0",
+ "google-auth-library": "^7.14.0",
+ "qs": "^6.7.0",
+ "url-template": "^2.0.8",
+ "uuid": "^8.0.0"
+ },
+ "engines": {
+ "node": ">=10.10.0"
+ }
+ },
+ "node_modules/apollo-algolia-transform/node_modules/gtoken": {
+ "version": "5.3.2",
+ "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-5.3.2.tgz",
+ "integrity": "sha512-gkvEKREW7dXWF8NV8pVrKfW7WqReAmjjkMBh6lNCCGOM4ucS0r0YyXXl0r/9Yj8wcW/32ISkfc8h5mPTDbtifQ==",
+ "dependencies": {
+ "gaxios": "^4.0.0",
+ "google-p12-pem": "^3.1.3",
+ "jws": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
"node_modules/append-field": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/append-field/-/append-field-1.0.0.tgz",
@@ -9690,12 +10088,32 @@
}
},
"node_modules/babel-plugin-macros": {
- "version": "2.8.0",
- "license": "MIT",
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz",
+ "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==",
"dependencies": {
- "@babel/runtime": "^7.7.2",
- "cosmiconfig": "^6.0.0",
- "resolve": "^1.12.0"
+ "@babel/runtime": "^7.12.5",
+ "cosmiconfig": "^7.0.0",
+ "resolve": "^1.19.0"
+ },
+ "engines": {
+ "node": ">=10",
+ "npm": ">=6"
+ }
+ },
+ "node_modules/babel-plugin-macros/node_modules/cosmiconfig": {
+ "version": "7.1.0",
+ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz",
+ "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==",
+ "dependencies": {
+ "@types/parse-json": "^4.0.0",
+ "import-fresh": "^3.2.1",
+ "parse-json": "^5.0.0",
+ "path-type": "^4.0.0",
+ "yaml": "^1.10.0"
+ },
+ "engines": {
+ "node": ">=10"
}
},
"node_modules/babel-plugin-polyfill-corejs2": {
@@ -9890,35 +10308,6 @@
"core-js": "^3.0.0"
}
},
- "node_modules/babel-preset-gatsby/node_modules/babel-plugin-macros": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz",
- "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==",
- "dependencies": {
- "@babel/runtime": "^7.12.5",
- "cosmiconfig": "^7.0.0",
- "resolve": "^1.19.0"
- },
- "engines": {
- "node": ">=10",
- "npm": ">=6"
- }
- },
- "node_modules/babel-preset-gatsby/node_modules/cosmiconfig": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz",
- "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==",
- "dependencies": {
- "@types/parse-json": "^4.0.0",
- "import-fresh": "^3.2.1",
- "parse-json": "^5.0.0",
- "path-type": "^4.0.0",
- "yaml": "^1.10.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
"node_modules/babel-preset-gatsby/node_modules/gatsby-core-utils": {
"version": "3.25.0",
"resolved": "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-3.25.0.tgz",
@@ -10115,8 +10504,9 @@
}
},
"node_modules/bignumber.js": {
- "version": "9.0.2",
- "license": "MIT",
+ "version": "9.1.2",
+ "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.1.2.tgz",
+ "integrity": "sha512-2/mKyZH9K85bzOEfhXDBFZTGd1CTs+5IHpeFQo9luiBG7hghdC851Pj2WAhb6E3R6b9tZj/XKhbg4fum+Kepug==",
"engines": {
"node": "*"
}
@@ -15853,8 +16243,9 @@
"version": "1.0.0"
},
"node_modules/fast-text-encoding": {
- "version": "1.0.3",
- "license": "Apache-2.0"
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/fast-text-encoding/-/fast-text-encoding-1.0.6.tgz",
+ "integrity": "sha512-VhXlQgj9ioXCqGstD37E/HBeqEGV/qOD/kmbVG8h5xKBYvM1L3lR1Zn4555cQ8GkYbJa8aJSipLPndE1k6zK2w=="
},
"node_modules/fastest-levenshtein": {
"version": "1.0.12",
@@ -19350,28 +19741,65 @@
}
},
"node_modules/gaxios": {
- "version": "4.3.2",
- "license": "Apache-2.0",
+ "version": "6.6.0",
+ "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-6.6.0.tgz",
+ "integrity": "sha512-bpOZVQV5gthH/jVCSuYuokRo2bTKOcuBiVWpjmTn6C5Agl5zclGfTljuGsQZxwwDBkli+YhZhP4TdlqTnhOezQ==",
"dependencies": {
- "abort-controller": "^3.0.0",
"extend": "^3.0.2",
- "https-proxy-agent": "^5.0.0",
+ "https-proxy-agent": "^7.0.1",
"is-stream": "^2.0.0",
- "node-fetch": "^2.6.1"
+ "node-fetch": "^2.6.9",
+ "uuid": "^9.0.1"
},
"engines": {
- "node": ">=10"
+ "node": ">=14"
+ }
+ },
+ "node_modules/gaxios/node_modules/agent-base": {
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz",
+ "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==",
+ "dependencies": {
+ "debug": "^4.3.4"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/gaxios/node_modules/https-proxy-agent": {
+ "version": "7.0.4",
+ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz",
+ "integrity": "sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==",
+ "dependencies": {
+ "agent-base": "^7.0.2",
+ "debug": "4"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/gaxios/node_modules/uuid": {
+ "version": "9.0.1",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz",
+ "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==",
+ "funding": [
+ "https://github.com/sponsors/broofa",
+ "https://github.com/sponsors/ctavan"
+ ],
+ "bin": {
+ "uuid": "dist/bin/uuid"
}
},
"node_modules/gcp-metadata": {
- "version": "4.3.1",
- "license": "Apache-2.0",
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-6.1.0.tgz",
+ "integrity": "sha512-Jh/AIwwgaxan+7ZUUmRLCjtchyDiqh4KjBJ5tW3plBZb5iL/BPcso8A5DlzeD9qlw0duCamnNdpFjxwaT0KyKg==",
"dependencies": {
- "gaxios": "^4.0.0",
+ "gaxios": "^6.0.0",
"json-bigint": "^1.0.0"
},
"engines": {
- "node": ">=10"
+ "node": ">=14"
}
},
"node_modules/gemoji": {
@@ -19646,21 +20074,19 @@
}
},
"node_modules/google-auth-library": {
- "version": "7.10.4",
- "license": "Apache-2.0",
+ "version": "9.10.0",
+ "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-9.10.0.tgz",
+ "integrity": "sha512-ol+oSa5NbcGdDqA+gZ3G3mev59OHBZksBTxY/tYwjtcp1H/scAFwJfSQU9/1RALoyZ7FslNbke8j4i3ipwlyuQ==",
"dependencies": {
- "arrify": "^2.0.0",
"base64-js": "^1.3.0",
"ecdsa-sig-formatter": "^1.0.11",
- "fast-text-encoding": "^1.0.0",
- "gaxios": "^4.0.0",
- "gcp-metadata": "^4.2.0",
- "gtoken": "^5.0.4",
- "jws": "^4.0.0",
- "lru-cache": "^6.0.0"
+ "gaxios": "^6.1.1",
+ "gcp-metadata": "^6.1.0",
+ "gtoken": "^7.0.0",
+ "jws": "^4.0.0"
},
"engines": {
- "node": ">=10"
+ "node": ">=14"
}
},
"node_modules/google-gax": {
@@ -19686,89 +20112,6 @@
"node": ">=14"
}
},
- "node_modules/google-gax/node_modules/agent-base": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz",
- "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==",
- "dev": true,
- "dependencies": {
- "debug": "^4.3.4"
- },
- "engines": {
- "node": ">= 14"
- }
- },
- "node_modules/google-gax/node_modules/gaxios": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-6.3.0.tgz",
- "integrity": "sha512-p+ggrQw3fBwH2F5N/PAI4k/G/y1art5OxKpb2J2chwNNHM4hHuAOtivjPuirMF4KNKwTTUal/lPfL2+7h2mEcg==",
- "dev": true,
- "dependencies": {
- "extend": "^3.0.2",
- "https-proxy-agent": "^7.0.1",
- "is-stream": "^2.0.0",
- "node-fetch": "^2.6.9"
- },
- "engines": {
- "node": ">=14"
- }
- },
- "node_modules/google-gax/node_modules/gcp-metadata": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-6.1.0.tgz",
- "integrity": "sha512-Jh/AIwwgaxan+7ZUUmRLCjtchyDiqh4KjBJ5tW3plBZb5iL/BPcso8A5DlzeD9qlw0duCamnNdpFjxwaT0KyKg==",
- "dev": true,
- "dependencies": {
- "gaxios": "^6.0.0",
- "json-bigint": "^1.0.0"
- },
- "engines": {
- "node": ">=14"
- }
- },
- "node_modules/google-gax/node_modules/google-auth-library": {
- "version": "9.7.0",
- "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-9.7.0.tgz",
- "integrity": "sha512-I/AvzBiUXDzLOy4iIZ2W+Zq33W4lcukQv1nl7C8WUA6SQwyQwUwu3waNmWNAvzds//FG8SZ+DnKnW/2k6mQS8A==",
- "dev": true,
- "dependencies": {
- "base64-js": "^1.3.0",
- "ecdsa-sig-formatter": "^1.0.11",
- "gaxios": "^6.1.1",
- "gcp-metadata": "^6.1.0",
- "gtoken": "^7.0.0",
- "jws": "^4.0.0"
- },
- "engines": {
- "node": ">=14"
- }
- },
- "node_modules/google-gax/node_modules/gtoken": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-7.1.0.tgz",
- "integrity": "sha512-pCcEwRi+TKpMlxAQObHDQ56KawURgyAf6jtIY046fJ5tIv3zDe/LEIubckAO8fj6JnAxLdmWkUfNyulQ2iKdEw==",
- "dev": true,
- "dependencies": {
- "gaxios": "^6.0.0",
- "jws": "^4.0.0"
- },
- "engines": {
- "node": ">=14.0.0"
- }
- },
- "node_modules/google-gax/node_modules/https-proxy-agent": {
- "version": "7.0.4",
- "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz",
- "integrity": "sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==",
- "dev": true,
- "dependencies": {
- "agent-base": "^7.0.2",
- "debug": "4"
- },
- "engines": {
- "node": ">= 14"
- }
- },
"node_modules/google-gax/node_modules/uuid": {
"version": "9.0.1",
"resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz",
@@ -19783,10 +20126,11 @@
}
},
"node_modules/google-p12-pem": {
- "version": "3.1.2",
- "license": "MIT",
+ "version": "3.1.4",
+ "resolved": "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-3.1.4.tgz",
+ "integrity": "sha512-HHuHmkLgwjdmVRngf5+gSmpkyaRI6QmOg77J8tkNBHhNEI62sGHyw4/+UkgyZEI7h84NbWprXDJ+sa3xOYFvTg==",
"dependencies": {
- "node-forge": "^0.10.0"
+ "node-forge": "^1.3.1"
},
"bin": {
"gp12-pem": "build/src/bin/gp12-pem.js"
@@ -19796,29 +20140,43 @@
}
},
"node_modules/googleapis": {
- "version": "72.0.0",
- "license": "Apache-2.0",
+ "version": "139.0.0",
+ "resolved": "https://registry.npmjs.org/googleapis/-/googleapis-139.0.0.tgz",
+ "integrity": "sha512-sBBCyTJOo8l2DtLZaLWbjIvuLC0HcQt3+JXpEKhYS1JXXhA/wGjBHXxHQ5UwJB0rlBhO53k/OUXug0/gfKCtBw==",
"dependencies": {
- "google-auth-library": "^7.0.2",
- "googleapis-common": "^5.0.2"
+ "google-auth-library": "^9.0.0",
+ "googleapis-common": "^7.0.0"
},
"engines": {
- "node": ">=10"
+ "node": ">=14.0.0"
}
},
"node_modules/googleapis-common": {
- "version": "5.0.5",
- "license": "Apache-2.0",
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/googleapis-common/-/googleapis-common-7.2.0.tgz",
+ "integrity": "sha512-/fhDZEJZvOV3X5jmD+fKxMqma5q2Q9nZNSF3kn1F18tpxmA86BcTxAGBQdM0N89Z3bEaIs+HVznSmFJEAmMTjA==",
"dependencies": {
"extend": "^3.0.2",
- "gaxios": "^4.0.0",
- "google-auth-library": "^7.0.2",
+ "gaxios": "^6.0.3",
+ "google-auth-library": "^9.7.0",
"qs": "^6.7.0",
"url-template": "^2.0.8",
- "uuid": "^8.0.0"
+ "uuid": "^9.0.0"
},
"engines": {
- "node": ">=10.10.0"
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/googleapis-common/node_modules/uuid": {
+ "version": "9.0.1",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz",
+ "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==",
+ "funding": [
+ "https://github.com/sponsors/broofa",
+ "https://github.com/sponsors/ctavan"
+ ],
+ "bin": {
+ "uuid": "dist/bin/uuid"
}
},
"node_modules/got": {
@@ -19951,15 +20309,15 @@
}
},
"node_modules/gtoken": {
- "version": "5.3.1",
- "license": "MIT",
+ "version": "7.1.0",
+ "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-7.1.0.tgz",
+ "integrity": "sha512-pCcEwRi+TKpMlxAQObHDQ56KawURgyAf6jtIY046fJ5tIv3zDe/LEIubckAO8fj6JnAxLdmWkUfNyulQ2iKdEw==",
"dependencies": {
- "gaxios": "^4.0.0",
- "google-p12-pem": "^3.0.3",
+ "gaxios": "^6.0.0",
"jws": "^4.0.0"
},
"engines": {
- "node": ">=10"
+ "node": ">=14.0.0"
}
},
"node_modules/gzip-size": {
@@ -25310,7 +25668,8 @@
},
"node_modules/json-bigint": {
"version": "1.0.0",
- "license": "MIT",
+ "resolved": "https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz",
+ "integrity": "sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==",
"dependencies": {
"bignumber.js": "^9.0.0"
}
@@ -43904,10 +44263,11 @@
}
},
"node_modules/node-forge": {
- "version": "0.10.0",
- "license": "(BSD-3-Clause OR GPL-2.0)",
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz",
+ "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==",
"engines": {
- "node": ">= 6.0.0"
+ "node": ">= 6.13.0"
}
},
"node_modules/node-gyp-build-optional-packages": {
@@ -51707,7 +52067,8 @@
},
"node_modules/url-template": {
"version": "2.0.8",
- "license": "BSD"
+ "resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz",
+ "integrity": "sha512-XdVKMF4SJ0nP/O7XIPB0JwAEuT9lDIYnNsK8yGVe43y0AWoKeJNdv3ZNWh7ksJ6KqQFjOO6ox/VEitLnaVNufw=="
},
"node_modules/url/node_modules/punycode": {
"version": "1.3.2",
@@ -51719,6 +52080,11 @@
"node": ">=0.4.x"
}
},
+ "node_modules/urlpattern-polyfill": {
+ "version": "8.0.2",
+ "resolved": "https://registry.npmjs.org/urlpattern-polyfill/-/urlpattern-polyfill-8.0.2.tgz",
+ "integrity": "sha512-Qp95D4TPJl1kC9SKigDcqgyM2VDVO4RiJc2d4qe5GrYm+zbIQCWWKAFaJNQ4BhdFeDGwBmAxqJBwWSJDb9T3BQ=="
+ },
"node_modules/use": {
"version": "3.1.1",
"dev": true,
@@ -54883,41 +55249,60 @@
"integrity": "sha512-ej5oVy6lykXsvieQtqZxCOaLT+xD4+QNarq78cIYISHmZXshCvROLudpQN3lfL8G0NL7plMSSK+zlyvCaIJ4Iw=="
},
"@emotion/babel-plugin": {
- "version": "11.3.0",
- "requires": {
- "@babel/helper-module-imports": "^7.12.13",
- "@babel/plugin-syntax-jsx": "^7.12.13",
- "@babel/runtime": "^7.13.10",
- "@emotion/hash": "^0.8.0",
- "@emotion/memoize": "^0.7.5",
- "@emotion/serialize": "^1.0.2",
- "babel-plugin-macros": "^2.6.1",
+ "version": "11.11.0",
+ "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz",
+ "integrity": "sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ==",
+ "requires": {
+ "@babel/helper-module-imports": "^7.16.7",
+ "@babel/runtime": "^7.18.3",
+ "@emotion/hash": "^0.9.1",
+ "@emotion/memoize": "^0.8.1",
+ "@emotion/serialize": "^1.1.2",
+ "babel-plugin-macros": "^3.1.0",
"convert-source-map": "^1.5.0",
"escape-string-regexp": "^4.0.0",
"find-root": "^1.1.0",
"source-map": "^0.5.7",
- "stylis": "^4.0.3"
+ "stylis": "4.2.0"
},
"dependencies": {
- "@babel/plugin-syntax-jsx": {
- "version": "7.14.5",
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
+ "@emotion/memoize": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz",
+ "integrity": "sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA=="
},
"escape-string-regexp": {
"version": "4.0.0"
+ },
+ "stylis": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz",
+ "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw=="
}
}
},
"@emotion/cache": {
- "version": "11.5.0",
+ "version": "11.11.0",
+ "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.11.0.tgz",
+ "integrity": "sha512-P34z9ssTCBi3e9EI1ZsWpNHcfY1r09ZO0rZbRO2ob3ZQMnFI35jB536qoXbkdesr5EUhYi22anuEJuyxifaqAQ==",
"requires": {
- "@emotion/memoize": "^0.7.4",
- "@emotion/sheet": "^1.0.3",
- "@emotion/utils": "^1.0.0",
- "@emotion/weak-memoize": "^0.2.5",
- "stylis": "^4.0.10"
+ "@emotion/memoize": "^0.8.1",
+ "@emotion/sheet": "^1.2.2",
+ "@emotion/utils": "^1.2.1",
+ "@emotion/weak-memoize": "^0.3.1",
+ "stylis": "4.2.0"
+ },
+ "dependencies": {
+ "@emotion/memoize": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz",
+ "integrity": "sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA=="
+ },
+ "stylis": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz",
+ "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw=="
+ }
}
},
"@emotion/core": {
@@ -54927,7 +55312,9 @@
"peer": true
},
"@emotion/hash": {
- "version": "0.8.0"
+ "version": "0.9.1",
+ "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.1.tgz",
+ "integrity": "sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ=="
},
"@emotion/is-prop-valid": {
"version": "1.1.0",
@@ -54939,29 +55326,43 @@
"version": "0.7.5"
},
"@emotion/react": {
- "version": "11.5.0",
- "requires": {
- "@babel/runtime": "^7.13.10",
- "@emotion/cache": "^11.5.0",
- "@emotion/serialize": "^1.0.2",
- "@emotion/sheet": "^1.0.3",
- "@emotion/utils": "^1.0.0",
- "@emotion/weak-memoize": "^0.2.5",
+ "version": "11.11.4",
+ "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.11.4.tgz",
+ "integrity": "sha512-t8AjMlF0gHpvvxk5mAtCqR4vmxiGHCeJBaQO6gncUSdklELOgtwjerNY2yuJNfwnc6vi16U/+uMF+afIawJ9iw==",
+ "requires": {
+ "@babel/runtime": "^7.18.3",
+ "@emotion/babel-plugin": "^11.11.0",
+ "@emotion/cache": "^11.11.0",
+ "@emotion/serialize": "^1.1.3",
+ "@emotion/use-insertion-effect-with-fallbacks": "^1.0.1",
+ "@emotion/utils": "^1.2.1",
+ "@emotion/weak-memoize": "^0.3.1",
"hoist-non-react-statics": "^3.3.1"
}
},
"@emotion/serialize": {
- "version": "1.0.2",
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.1.4.tgz",
+ "integrity": "sha512-RIN04MBT8g+FnDwgvIUi8czvr1LU1alUMI05LekWB5DGyTm8cCBMCRpq3GqaiyEDRptEXOyXnvZ58GZYu4kBxQ==",
"requires": {
- "@emotion/hash": "^0.8.0",
- "@emotion/memoize": "^0.7.4",
- "@emotion/unitless": "^0.7.5",
- "@emotion/utils": "^1.0.0",
+ "@emotion/hash": "^0.9.1",
+ "@emotion/memoize": "^0.8.1",
+ "@emotion/unitless": "^0.8.1",
+ "@emotion/utils": "^1.2.1",
"csstype": "^3.0.2"
+ },
+ "dependencies": {
+ "@emotion/memoize": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz",
+ "integrity": "sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA=="
+ }
}
},
"@emotion/sheet": {
- "version": "1.0.3"
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.2.tgz",
+ "integrity": "sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA=="
},
"@emotion/styled": {
"version": "11.3.0",
@@ -54974,13 +55375,25 @@
}
},
"@emotion/unitless": {
- "version": "0.7.5"
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.1.tgz",
+ "integrity": "sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ=="
+ },
+ "@emotion/use-insertion-effect-with-fallbacks": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz",
+ "integrity": "sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw==",
+ "requires": {}
},
"@emotion/utils": {
- "version": "1.0.0"
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.2.1.tgz",
+ "integrity": "sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg=="
},
"@emotion/weak-memoize": {
- "version": "0.2.5"
+ "version": "0.3.1",
+ "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz",
+ "integrity": "sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww=="
},
"@eslint/eslintrc": {
"version": "0.4.3",
@@ -56587,6 +57000,33 @@
"integrity": "sha512-O+6Gs8UeDbyFpbSh2CPEz/UOrrdWPTBYNblZK5CxxLisYt4kGX3Sc+czffFonyjiGSq3jWLwJS/CCJc7tBr4sQ==",
"optional": true
},
+ "@netlify/functions": {
+ "version": "2.7.0",
+ "resolved": "https://registry.npmjs.org/@netlify/functions/-/functions-2.7.0.tgz",
+ "integrity": "sha512-4pXC/fuj3eGQ86wbgPiM4zY8+AsNrdz6vcv6FEdUJnZW+LqF8IWjQcY3S0d1hLeLKODYOqq4CkrzGyCpce63Nw==",
+ "requires": {
+ "@netlify/serverless-functions-api": "1.18.1"
+ }
+ },
+ "@netlify/node-cookies": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/@netlify/node-cookies/-/node-cookies-0.1.0.tgz",
+ "integrity": "sha512-OAs1xG+FfLX0LoRASpqzVntVV/RpYkgpI0VrUnw2u0Q1qiZUzcPffxRK8HF3gc4GjuhG5ahOEMJ9bswBiZPq0g=="
+ },
+ "@netlify/serverless-functions-api": {
+ "version": "1.18.1",
+ "resolved": "https://registry.npmjs.org/@netlify/serverless-functions-api/-/serverless-functions-api-1.18.1.tgz",
+ "integrity": "sha512-DrSvivchuwsuQW03zbVPT3nxCQa5tn7m4aoPOsQKibuJXIuSbfxzCBxPLz0+LchU5ds7YyOaCc9872Y32ngYzg==",
+ "requires": {
+ "@netlify/node-cookies": "^0.1.0",
+ "@opentelemetry/core": "^1.23.0",
+ "@opentelemetry/otlp-transformer": "^0.50.0",
+ "@opentelemetry/resources": "^1.23.0",
+ "@opentelemetry/sdk-trace-base": "^1.23.0",
+ "@opentelemetry/semantic-conventions": "^1.23.0",
+ "urlpattern-polyfill": "8.0.2"
+ }
+ },
"@nodelib/fs.scandir": {
"version": "2.1.5",
"requires": {
@@ -56604,6 +57044,165 @@
"fastq": "^1.6.0"
}
},
+ "@opentelemetry/api": {
+ "version": "1.8.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.8.0.tgz",
+ "integrity": "sha512-I/s6F7yKUDdtMsoBWXJe8Qz40Tui5vsuKCWJEWVL+5q9sSWRzzx6v2KeNsOBEwd94j0eWkpWCH4yB6rZg9Mf0w=="
+ },
+ "@opentelemetry/api-logs": {
+ "version": "0.50.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/api-logs/-/api-logs-0.50.0.tgz",
+ "integrity": "sha512-JdZuKrhOYggqOpUljAq4WWNi5nB10PmgoF0y2CvedLGXd0kSawb/UBnWT8gg1ND3bHCNHStAIVT0ELlxJJRqrA==",
+ "requires": {
+ "@opentelemetry/api": "^1.0.0"
+ }
+ },
+ "@opentelemetry/core": {
+ "version": "1.24.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.24.1.tgz",
+ "integrity": "sha512-wMSGfsdmibI88K9wB498zXY04yThPexo8jvwNNlm542HZB7XrrMRBbAyKJqG8qDRJwIBdBrPMi4V9ZPW/sqrcg==",
+ "requires": {
+ "@opentelemetry/semantic-conventions": "1.24.1"
+ }
+ },
+ "@opentelemetry/otlp-transformer": {
+ "version": "0.50.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-transformer/-/otlp-transformer-0.50.0.tgz",
+ "integrity": "sha512-s0sl1Yfqd5q1Kjrf6DqXPWzErL+XHhrXOfejh4Vc/SMTNqC902xDsC8JQxbjuramWt/+hibfguIvi7Ns8VLolA==",
+ "requires": {
+ "@opentelemetry/api-logs": "0.50.0",
+ "@opentelemetry/core": "1.23.0",
+ "@opentelemetry/resources": "1.23.0",
+ "@opentelemetry/sdk-logs": "0.50.0",
+ "@opentelemetry/sdk-metrics": "1.23.0",
+ "@opentelemetry/sdk-trace-base": "1.23.0"
+ },
+ "dependencies": {
+ "@opentelemetry/core": {
+ "version": "1.23.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.23.0.tgz",
+ "integrity": "sha512-hdQ/a9TMzMQF/BO8Cz1juA43/L5YGtCSiKoOHmrTEf7VMDAZgy8ucpWx3eQTnQ3gBloRcWtzvcrMZABC3PTSKQ==",
+ "requires": {
+ "@opentelemetry/semantic-conventions": "1.23.0"
+ }
+ },
+ "@opentelemetry/resources": {
+ "version": "1.23.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.23.0.tgz",
+ "integrity": "sha512-iPRLfVfcEQynYGo7e4Di+ti+YQTAY0h5mQEUJcHlU9JOqpb4x965O6PZ+wMcwYVY63G96KtdS86YCM1BF1vQZg==",
+ "requires": {
+ "@opentelemetry/core": "1.23.0",
+ "@opentelemetry/semantic-conventions": "1.23.0"
+ }
+ },
+ "@opentelemetry/sdk-trace-base": {
+ "version": "1.23.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.23.0.tgz",
+ "integrity": "sha512-PzBmZM8hBomUqvCddF/5Olyyviayka44O5nDWq673np3ctnvwMOvNrsUORZjKja1zJbwEuD9niAGbnVrz3jwRQ==",
+ "requires": {
+ "@opentelemetry/core": "1.23.0",
+ "@opentelemetry/resources": "1.23.0",
+ "@opentelemetry/semantic-conventions": "1.23.0"
+ }
+ },
+ "@opentelemetry/semantic-conventions": {
+ "version": "1.23.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.23.0.tgz",
+ "integrity": "sha512-MiqFvfOzfR31t8cc74CTP1OZfz7MbqpAnLCra8NqQoaHJX6ncIRTdYOQYBDQ2uFISDq0WY8Y9dDTWvsgzzBYRg=="
+ }
+ }
+ },
+ "@opentelemetry/resources": {
+ "version": "1.24.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.24.1.tgz",
+ "integrity": "sha512-cyv0MwAaPF7O86x5hk3NNgenMObeejZFLJJDVuSeSMIsknlsj3oOZzRv3qSzlwYomXsICfBeFFlxwHQte5mGXQ==",
+ "requires": {
+ "@opentelemetry/core": "1.24.1",
+ "@opentelemetry/semantic-conventions": "1.24.1"
+ }
+ },
+ "@opentelemetry/sdk-logs": {
+ "version": "0.50.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-logs/-/sdk-logs-0.50.0.tgz",
+ "integrity": "sha512-PeUEupBB29p9nlPNqXoa1PUWNLsZnxG0DCDj3sHqzae+8y76B/A5hvZjg03ulWdnvBLYpnJslqzylG9E0IL87g==",
+ "requires": {
+ "@opentelemetry/core": "1.23.0",
+ "@opentelemetry/resources": "1.23.0"
+ },
+ "dependencies": {
+ "@opentelemetry/core": {
+ "version": "1.23.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.23.0.tgz",
+ "integrity": "sha512-hdQ/a9TMzMQF/BO8Cz1juA43/L5YGtCSiKoOHmrTEf7VMDAZgy8ucpWx3eQTnQ3gBloRcWtzvcrMZABC3PTSKQ==",
+ "requires": {
+ "@opentelemetry/semantic-conventions": "1.23.0"
+ }
+ },
+ "@opentelemetry/resources": {
+ "version": "1.23.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.23.0.tgz",
+ "integrity": "sha512-iPRLfVfcEQynYGo7e4Di+ti+YQTAY0h5mQEUJcHlU9JOqpb4x965O6PZ+wMcwYVY63G96KtdS86YCM1BF1vQZg==",
+ "requires": {
+ "@opentelemetry/core": "1.23.0",
+ "@opentelemetry/semantic-conventions": "1.23.0"
+ }
+ },
+ "@opentelemetry/semantic-conventions": {
+ "version": "1.23.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.23.0.tgz",
+ "integrity": "sha512-MiqFvfOzfR31t8cc74CTP1OZfz7MbqpAnLCra8NqQoaHJX6ncIRTdYOQYBDQ2uFISDq0WY8Y9dDTWvsgzzBYRg=="
+ }
+ }
+ },
+ "@opentelemetry/sdk-metrics": {
+ "version": "1.23.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.23.0.tgz",
+ "integrity": "sha512-4OkvW6+wST4h6LFG23rXSTf6nmTf201h9dzq7bE0z5R9ESEVLERZz6WXwE7PSgg1gdjlaznm1jLJf8GttypFDg==",
+ "requires": {
+ "@opentelemetry/core": "1.23.0",
+ "@opentelemetry/resources": "1.23.0",
+ "lodash.merge": "^4.6.2"
+ },
+ "dependencies": {
+ "@opentelemetry/core": {
+ "version": "1.23.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.23.0.tgz",
+ "integrity": "sha512-hdQ/a9TMzMQF/BO8Cz1juA43/L5YGtCSiKoOHmrTEf7VMDAZgy8ucpWx3eQTnQ3gBloRcWtzvcrMZABC3PTSKQ==",
+ "requires": {
+ "@opentelemetry/semantic-conventions": "1.23.0"
+ }
+ },
+ "@opentelemetry/resources": {
+ "version": "1.23.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.23.0.tgz",
+ "integrity": "sha512-iPRLfVfcEQynYGo7e4Di+ti+YQTAY0h5mQEUJcHlU9JOqpb4x965O6PZ+wMcwYVY63G96KtdS86YCM1BF1vQZg==",
+ "requires": {
+ "@opentelemetry/core": "1.23.0",
+ "@opentelemetry/semantic-conventions": "1.23.0"
+ }
+ },
+ "@opentelemetry/semantic-conventions": {
+ "version": "1.23.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.23.0.tgz",
+ "integrity": "sha512-MiqFvfOzfR31t8cc74CTP1OZfz7MbqpAnLCra8NqQoaHJX6ncIRTdYOQYBDQ2uFISDq0WY8Y9dDTWvsgzzBYRg=="
+ }
+ }
+ },
+ "@opentelemetry/sdk-trace-base": {
+ "version": "1.24.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.24.1.tgz",
+ "integrity": "sha512-zz+N423IcySgjihl2NfjBf0qw1RWe11XIAWVrTNOSSI6dtSPJiVom2zipFB2AEEtJWpv0Iz6DY6+TjnyTV5pWg==",
+ "requires": {
+ "@opentelemetry/core": "1.24.1",
+ "@opentelemetry/resources": "1.24.1",
+ "@opentelemetry/semantic-conventions": "1.24.1"
+ }
+ },
+ "@opentelemetry/semantic-conventions": {
+ "version": "1.24.1",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.24.1.tgz",
+ "integrity": "sha512-VkliWlS4/+GHLLW7J/rVBA00uXus1SWvwFvcUDxDwmFxYfg/2VI6ekwdXS28cjI8Qz2ky2BzG8OUHo+WeYIWqw=="
+ },
"@parcel/bundler-default": {
"version": "2.6.2",
"resolved": "https://registry.npmjs.org/@parcel/bundler-default/-/bundler-default-2.6.2.tgz",
@@ -58905,6 +59504,77 @@
"googleapis": "^72.0.0",
"lodash": "^4.17.21",
"striptags": "^3.2.0"
+ },
+ "dependencies": {
+ "gaxios": {
+ "version": "4.3.3",
+ "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-4.3.3.tgz",
+ "integrity": "sha512-gSaYYIO1Y3wUtdfHmjDUZ8LWaxJQpiavzbF5Kq53akSzvmVg0RfyOcFDbO1KJ/KCGRFz2qG+lS81F0nkr7cRJA==",
+ "requires": {
+ "abort-controller": "^3.0.0",
+ "extend": "^3.0.2",
+ "https-proxy-agent": "^5.0.0",
+ "is-stream": "^2.0.0",
+ "node-fetch": "^2.6.7"
+ }
+ },
+ "gcp-metadata": {
+ "version": "4.3.1",
+ "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-4.3.1.tgz",
+ "integrity": "sha512-x850LS5N7V1F3UcV7PoupzGsyD6iVwTVvsh3tbXfkctZnBnjW5yu5z1/3k3SehF7TyoTIe78rJs02GMMy+LF+A==",
+ "requires": {
+ "gaxios": "^4.0.0",
+ "json-bigint": "^1.0.0"
+ }
+ },
+ "google-auth-library": {
+ "version": "7.14.1",
+ "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.14.1.tgz",
+ "integrity": "sha512-5Rk7iLNDFhFeBYc3s8l1CqzbEBcdhwR193RlD4vSNFajIcINKI8W8P0JLmBpwymHqqWbX34pJDQu39cSy/6RsA==",
+ "requires": {
+ "arrify": "^2.0.0",
+ "base64-js": "^1.3.0",
+ "ecdsa-sig-formatter": "^1.0.11",
+ "fast-text-encoding": "^1.0.0",
+ "gaxios": "^4.0.0",
+ "gcp-metadata": "^4.2.0",
+ "gtoken": "^5.0.4",
+ "jws": "^4.0.0",
+ "lru-cache": "^6.0.0"
+ }
+ },
+ "googleapis": {
+ "version": "72.0.0",
+ "resolved": "https://registry.npmjs.org/googleapis/-/googleapis-72.0.0.tgz",
+ "integrity": "sha512-GMHXnZy86tLdFGkHd5G1mEWFGKO2+G8VFmk2my+mRCum0e5MOPQXG+PAvDVjVwCQJEOjPpBOZae53THRXaVm9w==",
+ "requires": {
+ "google-auth-library": "^7.0.2",
+ "googleapis-common": "^5.0.2"
+ }
+ },
+ "googleapis-common": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/googleapis-common/-/googleapis-common-5.1.0.tgz",
+ "integrity": "sha512-RXrif+Gzhq1QAzfjxulbGvAY3FPj8zq/CYcvgjzDbaBNCD6bUl+86I7mUs4DKWHGruuK26ijjR/eDpWIDgNROA==",
+ "requires": {
+ "extend": "^3.0.2",
+ "gaxios": "^4.0.0",
+ "google-auth-library": "^7.14.0",
+ "qs": "^6.7.0",
+ "url-template": "^2.0.8",
+ "uuid": "^8.0.0"
+ }
+ },
+ "gtoken": {
+ "version": "5.3.2",
+ "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-5.3.2.tgz",
+ "integrity": "sha512-gkvEKREW7dXWF8NV8pVrKfW7WqReAmjjkMBh6lNCCGOM4ucS0r0YyXXl0r/9Yj8wcW/32ISkfc8h5mPTDbtifQ==",
+ "requires": {
+ "gaxios": "^4.0.0",
+ "google-p12-pem": "^3.1.3",
+ "jws": "^4.0.0"
+ }
+ }
}
},
"append-field": {
@@ -59280,11 +59950,27 @@
}
},
"babel-plugin-macros": {
- "version": "2.8.0",
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz",
+ "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==",
"requires": {
- "@babel/runtime": "^7.7.2",
- "cosmiconfig": "^6.0.0",
- "resolve": "^1.12.0"
+ "@babel/runtime": "^7.12.5",
+ "cosmiconfig": "^7.0.0",
+ "resolve": "^1.19.0"
+ },
+ "dependencies": {
+ "cosmiconfig": {
+ "version": "7.1.0",
+ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz",
+ "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==",
+ "requires": {
+ "@types/parse-json": "^4.0.0",
+ "import-fresh": "^3.2.1",
+ "parse-json": "^5.0.0",
+ "path-type": "^4.0.0",
+ "yaml": "^1.10.0"
+ }
+ }
}
},
"babel-plugin-polyfill-corejs2": {
@@ -59441,28 +60127,6 @@
"gatsby-legacy-polyfills": "^2.25.0"
},
"dependencies": {
- "babel-plugin-macros": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz",
- "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==",
- "requires": {
- "@babel/runtime": "^7.12.5",
- "cosmiconfig": "^7.0.0",
- "resolve": "^1.19.0"
- }
- },
- "cosmiconfig": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz",
- "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==",
- "requires": {
- "@types/parse-json": "^4.0.0",
- "import-fresh": "^3.2.1",
- "parse-json": "^5.0.0",
- "path-type": "^4.0.0",
- "yaml": "^1.10.0"
- }
- },
"gatsby-core-utils": {
"version": "3.25.0",
"resolved": "https://registry.npmjs.org/gatsby-core-utils/-/gatsby-core-utils-3.25.0.tgz",
@@ -59595,7 +60259,9 @@
"version": "5.2.2"
},
"bignumber.js": {
- "version": "9.0.2"
+ "version": "9.1.2",
+ "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.1.2.tgz",
+ "integrity": "sha512-2/mKyZH9K85bzOEfhXDBFZTGd1CTs+5IHpeFQo9luiBG7hghdC851Pj2WAhb6E3R6b9tZj/XKhbg4fum+Kepug=="
},
"binary-extensions": {
"version": "2.2.0"
@@ -63563,7 +64229,9 @@
"version": "1.0.0"
},
"fast-text-encoding": {
- "version": "1.0.3"
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/fast-text-encoding/-/fast-text-encoding-1.0.6.tgz",
+ "integrity": "sha512-VhXlQgj9ioXCqGstD37E/HBeqEGV/qOD/kmbVG8h5xKBYvM1L3lR1Zn4555cQ8GkYbJa8aJSipLPndE1k6zK2w=="
},
"fastest-levenshtein": {
"version": "1.0.12"
@@ -66000,19 +66668,47 @@
}
},
"gaxios": {
- "version": "4.3.2",
+ "version": "6.6.0",
+ "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-6.6.0.tgz",
+ "integrity": "sha512-bpOZVQV5gthH/jVCSuYuokRo2bTKOcuBiVWpjmTn6C5Agl5zclGfTljuGsQZxwwDBkli+YhZhP4TdlqTnhOezQ==",
"requires": {
- "abort-controller": "^3.0.0",
"extend": "^3.0.2",
- "https-proxy-agent": "^5.0.0",
+ "https-proxy-agent": "^7.0.1",
"is-stream": "^2.0.0",
- "node-fetch": "^2.6.1"
+ "node-fetch": "^2.6.9",
+ "uuid": "^9.0.1"
+ },
+ "dependencies": {
+ "agent-base": {
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz",
+ "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==",
+ "requires": {
+ "debug": "^4.3.4"
+ }
+ },
+ "https-proxy-agent": {
+ "version": "7.0.4",
+ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz",
+ "integrity": "sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==",
+ "requires": {
+ "agent-base": "^7.0.2",
+ "debug": "4"
+ }
+ },
+ "uuid": {
+ "version": "9.0.1",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz",
+ "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA=="
+ }
}
},
"gcp-metadata": {
- "version": "4.3.1",
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-6.1.0.tgz",
+ "integrity": "sha512-Jh/AIwwgaxan+7ZUUmRLCjtchyDiqh4KjBJ5tW3plBZb5iL/BPcso8A5DlzeD9qlw0duCamnNdpFjxwaT0KyKg==",
"requires": {
- "gaxios": "^4.0.0",
+ "gaxios": "^6.0.0",
"json-bigint": "^1.0.0"
}
},
@@ -66193,17 +66889,16 @@
}
},
"google-auth-library": {
- "version": "7.10.4",
+ "version": "9.10.0",
+ "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-9.10.0.tgz",
+ "integrity": "sha512-ol+oSa5NbcGdDqA+gZ3G3mev59OHBZksBTxY/tYwjtcp1H/scAFwJfSQU9/1RALoyZ7FslNbke8j4i3ipwlyuQ==",
"requires": {
- "arrify": "^2.0.0",
"base64-js": "^1.3.0",
"ecdsa-sig-formatter": "^1.0.11",
- "fast-text-encoding": "^1.0.0",
- "gaxios": "^4.0.0",
- "gcp-metadata": "^4.2.0",
- "gtoken": "^5.0.4",
- "jws": "^4.0.0",
- "lru-cache": "^6.0.0"
+ "gaxios": "^6.1.1",
+ "gcp-metadata": "^6.1.0",
+ "gtoken": "^7.0.0",
+ "jws": "^4.0.0"
}
},
"google-gax": {
@@ -66226,71 +66921,6 @@
"uuid": "^9.0.1"
},
"dependencies": {
- "agent-base": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz",
- "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==",
- "dev": true,
- "requires": {
- "debug": "^4.3.4"
- }
- },
- "gaxios": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-6.3.0.tgz",
- "integrity": "sha512-p+ggrQw3fBwH2F5N/PAI4k/G/y1art5OxKpb2J2chwNNHM4hHuAOtivjPuirMF4KNKwTTUal/lPfL2+7h2mEcg==",
- "dev": true,
- "requires": {
- "extend": "^3.0.2",
- "https-proxy-agent": "^7.0.1",
- "is-stream": "^2.0.0",
- "node-fetch": "^2.6.9"
- }
- },
- "gcp-metadata": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-6.1.0.tgz",
- "integrity": "sha512-Jh/AIwwgaxan+7ZUUmRLCjtchyDiqh4KjBJ5tW3plBZb5iL/BPcso8A5DlzeD9qlw0duCamnNdpFjxwaT0KyKg==",
- "dev": true,
- "requires": {
- "gaxios": "^6.0.0",
- "json-bigint": "^1.0.0"
- }
- },
- "google-auth-library": {
- "version": "9.7.0",
- "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-9.7.0.tgz",
- "integrity": "sha512-I/AvzBiUXDzLOy4iIZ2W+Zq33W4lcukQv1nl7C8WUA6SQwyQwUwu3waNmWNAvzds//FG8SZ+DnKnW/2k6mQS8A==",
- "dev": true,
- "requires": {
- "base64-js": "^1.3.0",
- "ecdsa-sig-formatter": "^1.0.11",
- "gaxios": "^6.1.1",
- "gcp-metadata": "^6.1.0",
- "gtoken": "^7.0.0",
- "jws": "^4.0.0"
- }
- },
- "gtoken": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-7.1.0.tgz",
- "integrity": "sha512-pCcEwRi+TKpMlxAQObHDQ56KawURgyAf6jtIY046fJ5tIv3zDe/LEIubckAO8fj6JnAxLdmWkUfNyulQ2iKdEw==",
- "dev": true,
- "requires": {
- "gaxios": "^6.0.0",
- "jws": "^4.0.0"
- }
- },
- "https-proxy-agent": {
- "version": "7.0.4",
- "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz",
- "integrity": "sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==",
- "dev": true,
- "requires": {
- "agent-base": "^7.0.2",
- "debug": "4"
- }
- },
"uuid": {
"version": "9.0.1",
"resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz",
@@ -66300,27 +66930,40 @@
}
},
"google-p12-pem": {
- "version": "3.1.2",
+ "version": "3.1.4",
+ "resolved": "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-3.1.4.tgz",
+ "integrity": "sha512-HHuHmkLgwjdmVRngf5+gSmpkyaRI6QmOg77J8tkNBHhNEI62sGHyw4/+UkgyZEI7h84NbWprXDJ+sa3xOYFvTg==",
"requires": {
- "node-forge": "^0.10.0"
+ "node-forge": "^1.3.1"
}
},
"googleapis": {
- "version": "72.0.0",
+ "version": "139.0.0",
+ "resolved": "https://registry.npmjs.org/googleapis/-/googleapis-139.0.0.tgz",
+ "integrity": "sha512-sBBCyTJOo8l2DtLZaLWbjIvuLC0HcQt3+JXpEKhYS1JXXhA/wGjBHXxHQ5UwJB0rlBhO53k/OUXug0/gfKCtBw==",
"requires": {
- "google-auth-library": "^7.0.2",
- "googleapis-common": "^5.0.2"
+ "google-auth-library": "^9.0.0",
+ "googleapis-common": "^7.0.0"
}
},
"googleapis-common": {
- "version": "5.0.5",
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/googleapis-common/-/googleapis-common-7.2.0.tgz",
+ "integrity": "sha512-/fhDZEJZvOV3X5jmD+fKxMqma5q2Q9nZNSF3kn1F18tpxmA86BcTxAGBQdM0N89Z3bEaIs+HVznSmFJEAmMTjA==",
"requires": {
"extend": "^3.0.2",
- "gaxios": "^4.0.0",
- "google-auth-library": "^7.0.2",
+ "gaxios": "^6.0.3",
+ "google-auth-library": "^9.7.0",
"qs": "^6.7.0",
"url-template": "^2.0.8",
- "uuid": "^8.0.0"
+ "uuid": "^9.0.0"
+ },
+ "dependencies": {
+ "uuid": {
+ "version": "9.0.1",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz",
+ "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA=="
+ }
}
},
"got": {
@@ -66419,10 +67062,11 @@
}
},
"gtoken": {
- "version": "5.3.1",
+ "version": "7.1.0",
+ "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-7.1.0.tgz",
+ "integrity": "sha512-pCcEwRi+TKpMlxAQObHDQ56KawURgyAf6jtIY046fJ5tIv3zDe/LEIubckAO8fj6JnAxLdmWkUfNyulQ2iKdEw==",
"requires": {
- "gaxios": "^4.0.0",
- "google-p12-pem": "^3.0.3",
+ "gaxios": "^6.0.0",
"jws": "^4.0.0"
}
},
@@ -69955,6 +70599,8 @@
},
"json-bigint": {
"version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz",
+ "integrity": "sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==",
"requires": {
"bignumber.js": "^9.0.0"
}
@@ -83663,7 +84309,9 @@
}
},
"node-forge": {
- "version": "0.10.0"
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz",
+ "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA=="
},
"node-gyp-build-optional-packages": {
"version": "5.0.3",
@@ -88666,7 +89314,14 @@
}
},
"url-template": {
- "version": "2.0.8"
+ "version": "2.0.8",
+ "resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz",
+ "integrity": "sha512-XdVKMF4SJ0nP/O7XIPB0JwAEuT9lDIYnNsK8yGVe43y0AWoKeJNdv3ZNWh7ksJ6KqQFjOO6ox/VEitLnaVNufw=="
+ },
+ "urlpattern-polyfill": {
+ "version": "8.0.2",
+ "resolved": "https://registry.npmjs.org/urlpattern-polyfill/-/urlpattern-polyfill-8.0.2.tgz",
+ "integrity": "sha512-Qp95D4TPJl1kC9SKigDcqgyM2VDVO4RiJc2d4qe5GrYm+zbIQCWWKAFaJNQ4BhdFeDGwBmAxqJBwWSJDb9T3BQ=="
},
"use": {
"version": "3.1.1",
diff --git a/package.json b/package.json
index 856654f70..f90dd75f1 100644
--- a/package.json
+++ b/package.json
@@ -42,6 +42,7 @@
"@mdx-js/mdx": "^1.6.22",
"@mdx-js/react": "^1.6.22",
"@microsoft/api-extractor-model": "^7.28.2",
+ "@netlify/functions": "^2.7.0",
"@playwright/test": "^1.40.1",
"@svgr/webpack": "^5.5.0",
"@theowenyoung/gatsby-source-git": "^2.3.1",
@@ -73,6 +74,8 @@
"gatsby-transformer-json": "^4.4.0",
"gatsby-transformer-remark": "^5.4.0",
"github-slugger": "^1.4.0",
+ "google-auth-library": "^9.10.0",
+ "googleapis": "^139.0.0",
"graphql": "^15.8.0",
"graphql-ws": "^5.8.2",
"https-browserify": "^1.0.0",
diff --git a/src/components/Feedback.js b/src/components/Feedback.js
new file mode 100644
index 000000000..82f5eaffe
--- /dev/null
+++ b/src/components/Feedback.js
@@ -0,0 +1,319 @@
+import React, {useEffect, useState} from 'react';
+import axios from 'axios';
+import {
+ Box,
+ Button,
+ Checkbox,
+ CheckboxGroup,
+ FormControl,
+ FormLabel,
+ HStack,
+ IconButton,
+ Modal,
+ ModalBody,
+ ModalCloseButton,
+ ModalContent,
+ ModalFooter,
+ ModalHeader,
+ ModalOverlay,
+ Stack,
+ Text,
+ Textarea,
+ useDisclosure,
+ useToast
+} from '@chakra-ui/react';
+import {ButtonLink} from './RelativeLink';
+import {DislikeIcon, LikeIcon} from './Icons';
+import {useUser} from '../utils';
+
+const Feedback = () => {
+ const {user} = useUser();
+ const username = user?.name;
+ const [path, setPath] = useState('');
+ const [rating, setRating] = useState(null);
+ const [surveyResponses, setSurveyResponses] = useState({
+ positives: [],
+ issues: [],
+ issueDetails: '',
+ additionalComments: ''
+ });
+
+ const {isOpen, onOpen, onClose} = useDisclosure();
+ const toast = useToast();
+
+ useEffect(() => {
+ if (typeof window !== 'undefined') {
+ setPath(window.location.pathname);
+ }
+ }, []);
+
+ const handleRating = async ratingType => {
+ setRating(ratingType);
+
+ try {
+ // Append rating to GoogleSheet
+ await axios.post('/.netlify/functions/sendFeedback', {
+ path,
+ rating: ratingType,
+ username
+ });
+
+ // Open the modal
+ onOpen();
+ } catch (error) {
+ console.error('Error handling rating:', error);
+ }
+ };
+
+ const handleInputChange = e => {
+ const {name, value} = e.target;
+ setSurveyResponses(prevResponses => ({
+ ...prevResponses,
+ [name]: value
+ }));
+ };
+
+ const handleCheckboxChange = (name, value) => {
+ setSurveyResponses(prevResponses => ({
+ ...prevResponses,
+ [name]: value
+ }));
+ };
+
+ const handleSubmit = async e => {
+ e.preventDefault();
+ try {
+ const feedbackData = {
+ path,
+ rating,
+ ...surveyResponses,
+ username
+ };
+
+ // Send feedback data to the Netlify function
+ await axios.post('/.netlify/functions/sendFeedback', feedbackData);
+
+ onClose();
+ toast({
+ title: 'Thank you for your feedback!',
+ status: 'success',
+ duration: 3000,
+ isClosable: true
+ });
+ } catch (error) {
+ console.error('Error sending form response:', error);
+ toast({
+ title: 'An error occurred!',
+ description: 'Failed to submit feedback. Please try again later.',
+ status: 'error',
+ duration: 5000,
+ isClosable: true
+ });
+ }
+ };
+
+ const handleClose = () => {
+ setRating(null);
+ setSurveyResponses({
+ positives: [],
+ issues: [],
+ issueDetails: '',
+ additionalComments: ''
+ });
+ onClose();
+ };
+
+ const positiveOptions = [
+ 'Clear instructions',
+ 'Concise information',
+ 'Useful examples',
+ 'Other (Please specify below)'
+ ];
+
+ const issueOptions = [
+ 'Incorrect information',
+ 'Lack of clarity',
+ 'Missing examples',
+ 'Other (Please specify below)'
+ ];
+
+ return (
+
+
+
+ Was this page helpful?
+
+ handleRating('like')}
+ >
+
+
+ handleRating('dislike')}
+ >
+
+
+
+
+
+
+
+
+ {rating === 'like'
+ ? 'Thank you for your feedback!'
+ : "We're sorry to hear that. Please help us improve!"}
+
+
+
+
+
+
+
+
+ Need help? Contact Support
+
+
+
+
+
+
+
+ );
+};
+
+export default Feedback;
diff --git a/src/components/FeedbackButton.js b/src/components/FeedbackButton.js
deleted file mode 100644
index de8b0c6dd..000000000
--- a/src/components/FeedbackButton.js
+++ /dev/null
@@ -1,72 +0,0 @@
-import PropTypes from 'prop-types';
-import React from 'react';
-import {LikeIcon} from './Icons';
-import {PopupButton} from '@typeform/embed-react';
-import {Text} from '@chakra-ui/react';
-import {useUser} from '../utils';
-
-export const FeedbackButton = ({title}) => {
- let path = '';
- if (typeof window !== 'undefined') {
- path = window.location.pathname;
- }
- const {user} = useUser();
- const organizations = user?.memberships.map(
- membership => membership.account.name
- );
- const billingTiers = user?.memberships.map(
- membership => membership.account.currentPlan.tier
- );
-
- return (
-
-
-
- Rate article
-
-
- Rate
-
-
- );
-};
-
-FeedbackButton.propTypes = {
- title: PropTypes.string.isRequired
-};
diff --git a/src/components/Icons/index.js b/src/components/Icons/index.js
index ba4f67cec..abd34823f 100644
--- a/src/components/Icons/index.js
+++ b/src/components/Icons/index.js
@@ -21,6 +21,7 @@ import {ReactComponent as CollapseList} from '@apollo/icons/default/IconCollapse
import {ReactComponent as Connectors} from '@apollo/icons/default/IconConnectors.svg';
import {ReactComponent as Discord} from '@apollo/icons/default/IconDiscord.svg';
import {ReactComponent as Discourse} from '@apollo/icons/default/IconDiscourse.svg';
+import {ReactComponent as Dislike} from '@apollo/icons/default/IconDislikeSolid.svg';
import {ReactComponent as Document} from '@apollo/icons/default/IconDocument.svg';
import {ReactComponent as DoubleChevronDown} from '@apollo/icons/default/IconDoubleChevronDown.svg';
import {ReactComponent as DoubleChevronLeft} from '@apollo/icons/default/IconDoubleChevronLeft.svg';
@@ -109,6 +110,7 @@ export const ConnectorsIcon = () => ;
export const DeliveryIcon = () => ;
export const DiscordIcon = () => ;
export const DiscourseIcon = () => ;
+export const DislikeIcon = () => ;
export const DoubleChevronDownIcon = () => (
);
diff --git a/src/components/Page.js b/src/components/Page.js
index b89ddcc19..74a1a82ef 100644
--- a/src/components/Page.js
+++ b/src/components/Page.js
@@ -6,6 +6,7 @@ import ExpansionPanel, {
ExpansionPanelList,
ExpansionPanelListItem
} from './ExpansionPanel';
+import Feedback from './Feedback';
import InlineCode from './InlineCode';
import Pagination from './Pagination';
import Prism from 'prismjs';
@@ -33,6 +34,7 @@ import {
IconButton,
ListItem,
OrderedList,
+ Spacer,
Table,
Tag,
Tbody,
@@ -62,7 +64,6 @@ import {
} from '@apollo/chakra-helpers';
import {EnterpriseFeature} from './EnterpriseFeature';
import {ExperimentalFeature} from './ExperimentalFeature';
-import {FeedbackButton} from './FeedbackButton';
import {Link as GatsbyLink} from 'gatsby';
import {Global} from '@emotion/react';
import {HighlightKeyTerms, KeyTermsProvider} from '@apollo/pedia';
@@ -587,7 +588,7 @@ export default function Page({file}) {
-
- {editOnGitHub}
- }
- >
- Forums
-
-
+
+
+
+ {editOnGitHub}
+ }
+ >
+ Forums
+
+
+
>
);
diff --git a/src/content/basics/intro/changelog.mdx b/src/content/basics/intro/changelog.mdx
new file mode 100644
index 000000000..176e40c2f
--- /dev/null
+++ b/src/content/basics/intro/changelog.mdx
@@ -0,0 +1,16 @@
+---
+title: Apollo product changelogs
+---
+
+Each Apollo product maintains its own changelog, usually in its GitHub repository. You can find links to product changelogs below.
+
+## Changelogs
+
+- [GraphOS Studio](https://github.com/apollographql/apollo-studio-community/blob/main/CHANGELOG.md)
+- [Apollo Federation](https://www.apollographql.com/docs/federation/federation-versions/)
+- [Rover CLI](https://github.com/apollographql/rover/blob/main/CHANGELOG.md)
+- [The Apollo Router Core](https://github.com/apollographql/router/releases)
+- [Apollo Server](https://github.com/apollographql/apollo-server/blob/main/packages/server/CHANGELOG.md)
+- [Apollo Client for React](https://github.com/apollographql/apollo-client/blob/main/CHANGELOG.md)
+- [Apollo Client for Kotlin](https://github.com/apollographql/apollo-kotlin/releases)
+- [Apollo Client for iOS](https://github.com/apollographql/apollo-ios/blob/main/CHANGELOG.md)
diff --git a/src/utils/appendFeedback.js b/src/utils/appendFeedback.js
new file mode 100644
index 000000000..c0e352be0
--- /dev/null
+++ b/src/utils/appendFeedback.js
@@ -0,0 +1,6 @@
+// To-do:
+// - Add docs path
+// - Add timestamp
+// - Add logged in user info if it exists
+
+export default appendFeedback;