From 623ac92eb4925a31ae457b101119ed58e334c636 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20JANIN?= Date: Mon, 8 May 2023 10:36:53 -0400 Subject: [PATCH 01/19] fix: download API can only change status for new responses (#2054) --- CHANGELOG.md | 4 + .../api/id/form/submission/download.test.ts | 142 +++++++++++++++++- package.json | 2 +- pages/api/id/[form]/[submission]/download.tsx | 31 +++- yarn.lock | 53 ++++--- 5 files changed, 198 insertions(+), 34 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 54b568d5a8..3cc587bcf7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +### Fixed + +- Download API will not override a response status that is different than `New`. [2052](https://github.com/cds-snc/platform-forms-client/issues/2052) + ## [3.0.4] 2023-05-05 ### Fixed diff --git a/__tests__/api/id/form/submission/download.test.ts b/__tests__/api/id/form/submission/download.test.ts index e7fc88cd41..d4839f3e16 100644 --- a/__tests__/api/id/form/submission/download.test.ts +++ b/__tests__/api/id/form/submission/download.test.ts @@ -13,6 +13,8 @@ import { mockClient } from "aws-sdk-client-mock"; import { EventEmitter } from "events"; import testFormConfig from "../../../../../__fixtures__/accessibilityTestForm.json"; import { logEvent } from "@lib/auditLogs"; +import { renderToStaticNodeStream } from "react-dom/server"; +import { Readable } from "node:stream"; jest.mock("next-auth/next"); jest.mock("@lib/auditLogs"); @@ -26,14 +28,20 @@ jest.mock("next-i18next", () => ({ }, })); +jest.mock("react-dom/server"); + +const mockRenderToStaticNodeStream = jest.mocked(renderToStaticNodeStream, { shallow: true }); + //Needed in the typescript version of the test so types are inferred correctly const mockGetSession = jest.mocked(getServerSession, { shallow: true }); const mockLogEvent = jest.mocked(logEvent, { shallow: true }); + const testFormTemplate = { id: "testForm", form: testFormConfig, isPublished: true, }; + const testFormResponse = JSON.stringify({ 2: "Jane Doe", 3: "English", @@ -73,6 +81,7 @@ describe("/api/id/[form]/[submission]/download", () => { expect(res.statusCode).toBe(401); expect(JSON.parse(res._getData())).toMatchObject({ error: "Unauthorized" }); }); + test.each(["POST", "DELETE", "PATCH"])( "Shouldn't allow an unaccepted method", async (httpVerb) => { @@ -92,6 +101,7 @@ describe("/api/id/[form]/[submission]/download", () => { } ); }); + describe("Download form submission as a html file", () => { beforeEach(() => { const mockSession: Session = { @@ -110,6 +120,7 @@ describe("/api/id/[form]/[submission]/download", () => { mockGetSession.mockReset(); ddbMock.reset(); }); + test.each([ { form: "a" }, { submission: "a" }, @@ -132,6 +143,7 @@ describe("/api/id/[form]/[submission]/download", () => { expect(res.statusCode).toBe(400); expect(JSON.parse(res._getData())).toMatchObject({ error: "Bad Request" }); }); + test("User can only access form responses that a user is associated to", async () => { (prismaMock.template.findUnique as jest.MockedFunction).mockResolvedValue({ id: "formTestID", @@ -169,8 +181,8 @@ describe("/api/id/[form]/[submission]/download", () => { "Attemped to download response for submissionID 123456789" ); }); - test.skip("Renders a HTML file", async () => { - // Data mocks + + test("Renders a HTML file", async () => { (prismaMock.template.findUnique as jest.MockedFunction).mockResolvedValue({ id: "formTestID", jsonConfig: testFormTemplate, @@ -186,9 +198,19 @@ describe("/api/id/[form]/[submission]/download", () => { SecurityAttribute: "Protected B", }, }; + ddbMock.on(GetCommand).resolves(dynamodbExpectedResponse); ddbMock.on(UpdateCommand).resolves; + mockRenderToStaticNodeStream.mockReturnValueOnce( + new Readable({ + objectMode: true, + read: function () { + this.push(null); + }, + }) + ); + const { req, res } = createMocks( { method: "GET", @@ -205,6 +227,7 @@ describe("/api/id/[form]/[submission]/download", () => { eventEmitter: EventEmitter, } ); + await download(req, res); expect(res.statusCode).toBe(200); @@ -226,5 +249,120 @@ describe("/api/id/[form]/[submission]/download", () => { "content-disposition": "attachment; filename=123-test.html", }); }); + + test("When downloading a response with a status equal to New the API should update that status to Downloaded", async () => { + (prismaMock.template.findUnique as jest.MockedFunction).mockResolvedValue({ + id: "formTestID", + jsonConfig: testFormTemplate, + users: [{ id: "1" }], + }); + + const dynamodbExpectedResponse = { + Item: { + FormID: "formTestID", + Name: "123-test", + SubmissionID: "12", + FormSubmission: testFormResponse, + SecurityAttribute: "Protected B", + Status: "New", + }, + }; + + ddbMock.on(GetCommand).resolves(dynamodbExpectedResponse); + ddbMock.on(UpdateCommand).resolves; + + mockRenderToStaticNodeStream.mockReturnValueOnce( + new Readable({ + objectMode: true, + read: function () { + this.push(null); + }, + }) + ); + + const { req, res } = createMocks( + { + method: "GET", + query: { + form: "formtestID", + submission: "12", + }, + headers: { + "Content-Type": "application/json", + Origin: "http://localhost:3000", + }, + }, + { + eventEmitter: EventEmitter, + } + ); + + await download(req, res); + + expect(res.statusCode).toBe(200); + expect( + ddbMock.commandCalls(UpdateCommand, { + UpdateExpression: + "SET LastDownloadedBy = :email, DownloadedAt = :downloadedAt, #status = :statusUpdate", + }).length + ).toBe(1); + }); + + test("When downloading a response with a status not equal to New the API should not update that status", async () => { + (prismaMock.template.findUnique as jest.MockedFunction).mockResolvedValue({ + id: "formTestID", + jsonConfig: testFormTemplate, + users: [{ id: "1" }], + }); + + const dynamodbExpectedResponse = { + Item: { + FormID: "formTestID", + Name: "123-test", + SubmissionID: "12", + FormSubmission: testFormResponse, + SecurityAttribute: "Protected B", + Status: "Confirmed", + }, + }; + + ddbMock.on(GetCommand).resolves(dynamodbExpectedResponse); + ddbMock.on(UpdateCommand).resolves; + + mockRenderToStaticNodeStream.mockReturnValueOnce( + new Readable({ + objectMode: true, + read: function () { + this.push(null); + }, + }) + ); + + const { req, res } = createMocks( + { + method: "GET", + query: { + form: "formtestID", + submission: "12", + }, + headers: { + "Content-Type": "application/json", + Origin: "http://localhost:3000", + }, + }, + { + eventEmitter: EventEmitter, + } + ); + + await download(req, res); + + expect(res.statusCode).toBe(200); + expect( + ddbMock.commandCalls(UpdateCommand, { + UpdateExpression: "SET LastDownloadedBy = :email, DownloadedAt = :downloadedAt", + }).length + ).toBe(1); + }); }); }); diff --git a/package.json b/package.json index 53e23a064c..1a5af12af6 100644 --- a/package.json +++ b/package.json @@ -124,7 +124,7 @@ "@typescript-eslint/parser": "^5.59.0", "add": "^2.0.6", "autoprefixer": "^10.4.4", - "aws-sdk-client-mock": "^0.6.2", + "aws-sdk-client-mock": "^2.1.1", "axe-core": "^4.5.2", "babel-loader": "^8.2.4", "babel-plugin-dynamic-import-node": "^2.3.3", diff --git a/pages/api/id/[form]/[submission]/download.tsx b/pages/api/id/[form]/[submission]/download.tsx index ae5837aa81..41b5edc6b6 100644 --- a/pages/api/id/[form]/[submission]/download.tsx +++ b/pages/api/id/[form]/[submission]/download.tsx @@ -8,7 +8,13 @@ import { UpdateCommand, UpdateCommandInput, } from "@aws-sdk/lib-dynamodb"; -import { MiddlewareProps, WithRequired, Responses, SecurityAttribute } from "@lib/types"; +import { + MiddlewareProps, + WithRequired, + Responses, + SecurityAttribute, + VaultStatus, +} from "@lib/types"; import { AccessControlError, createAbility } from "@lib/privileges"; import React from "react"; import { renderToStaticNodeStream } from "react-dom/server"; @@ -59,10 +65,11 @@ const handler = async (req: NextApiRequest, res: NextApiResponse, props: Middlew NAME_OR_CONF: `NAME#${submissionName}`, }, ExpressionAttributeNames: { - "#Name": "Name", + "#name": "Name", + "#status": "Status", }, ProjectionExpression: - "SubmissionID,FormSubmission,ConfirmationCode,#Name,CreatedAt,SecurityAttribute", + "SubmissionID,FormSubmission,ConfirmationCode,#name,#status,CreatedAt,SecurityAttribute", }; const queryCommand = new GetCommand(getItemsDbParams); @@ -79,6 +86,7 @@ const handler = async (req: NextApiRequest, res: NextApiResponse, props: Middlew responseID, submissionID, securityAttribute, + responseStatus, } = (( vaultResult ): { @@ -88,6 +96,7 @@ const handler = async (req: NextApiRequest, res: NextApiResponse, props: Middlew responseID: string; submissionID: string; securityAttribute: SecurityAttribute; + responseStatus: VaultStatus; } => { return { formResponse: JSON.parse(vaultResult.FormSubmission), @@ -98,6 +107,7 @@ const handler = async (req: NextApiRequest, res: NextApiResponse, props: Middlew responseID: vaultResult.Name, submissionID: vaultResult.SubmissionID, securityAttribute: vaultResult.SecurityAttribute, + responseStatus: vaultResult.Status, }; })(response.Item); @@ -152,8 +162,7 @@ const handler = async (req: NextApiRequest, res: NextApiResponse, props: Middlew ); // Setting last downloaded by on Vault Submission - - await updateLastDownloadedBy(responseID, formID, userEmail); + await updateLastDownloadedBy(responseID, formID, userEmail, responseStatus); } catch (error) { if (error instanceof AccessControlError) { logEvent( @@ -175,7 +184,12 @@ const handler = async (req: NextApiRequest, res: NextApiResponse, props: Middlew * @param formID Form ID the Submission is for * @param email Email address of the user downloading the Submission */ -async function updateLastDownloadedBy(responseID: string, formID: string, email: string) { +async function updateLastDownloadedBy( + responseID: string, + formID: string, + email: string, + status: VaultStatus +) { const documentClient = connectToDynamo(); const updateCommandInput: UpdateCommandInput = { @@ -184,8 +198,9 @@ async function updateLastDownloadedBy(responseID: string, formID: string, email: FormID: formID, NAME_OR_CONF: `NAME#${responseID}`, }, - UpdateExpression: - "SET LastDownloadedBy = :email, #status = :statusUpdate, DownloadedAt = :downloadedAt", + UpdateExpression: "SET LastDownloadedBy = :email, DownloadedAt = :downloadedAt".concat( + status === VaultStatus.NEW ? ", #status = :statusUpdate" : "" + ), ExpressionAttributeValues: { ":email": email, ":downloadedAt": Date.now(), diff --git a/yarn.lock b/yarn.lock index be5b78ff88..3d98ff3373 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3607,7 +3607,7 @@ resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.25.24.tgz#8c7688559979f7079aacaf31aa881c3aa410b718" integrity sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ== -"@sinonjs/commons@^1.6.0", "@sinonjs/commons@^1.7.0", "@sinonjs/commons@^1.8.3": +"@sinonjs/commons@^1.7.0": version "1.8.6" resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.6.tgz#80c516a4dc264c2a69115e7578d62581ff455ed9" integrity sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ== @@ -3628,19 +3628,26 @@ dependencies: "@sinonjs/commons" "^2.0.0" -"@sinonjs/fake-timers@^7.1.0", "@sinonjs/fake-timers@^7.1.2": +"@sinonjs/fake-timers@^7.1.0": version "7.1.2" resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-7.1.2.tgz#2524eae70c4910edccf99b2f4e6efc5894aff7b5" integrity sha512-iQADsW4LBMISqZ6Ci1dupJL9pprqwcVFTcOsEmQOEhW+KLCVn/Y4Jrvg2k19fIHCp+iFprriYPTdRcQR8NbUPg== dependencies: "@sinonjs/commons" "^1.7.0" -"@sinonjs/samsam@^6.0.2": - version "6.1.3" - resolved "https://registry.yarnpkg.com/@sinonjs/samsam/-/samsam-6.1.3.tgz#4e30bcd4700336363302a7d72cbec9b9ab87b104" - integrity sha512-nhOb2dWPeb1sd3IQXL/dVPnKHDOAFfvichtBf4xV00/rU1QbPCQqKMbvIheIjqwVjh7qIgf2AHTHi391yMOMpQ== +"@sinonjs/fake-timers@^9.1.2": + version "9.1.2" + resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-9.1.2.tgz#4eaab737fab77332ab132d396a3c0d364bd0ea8c" + integrity sha512-BPS4ynJW/o92PUR4wgriz2Ud5gpST5vz6GQfMixEDK0Z8ZCUv2M7SkBLykH56T++Xs+8ln9zTGbOvNGIe02/jw== dependencies: - "@sinonjs/commons" "^1.6.0" + "@sinonjs/commons" "^1.7.0" + +"@sinonjs/samsam@^7.0.1": + version "7.0.1" + resolved "https://registry.yarnpkg.com/@sinonjs/samsam/-/samsam-7.0.1.tgz#5b5fa31c554636f78308439d220986b9523fc51f" + integrity sha512-zsAk2Jkiq89mhZovB2LLOdTCxJF4hqqTToGP0ASWlhp4I1hqOjcfmZGafXntCN7MDC6yySH0mFHrYtHceOeLmw== + dependencies: + "@sinonjs/commons" "^2.0.0" lodash.get "^4.4.2" type-detect "^4.0.8" @@ -4013,7 +4020,7 @@ resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.3.13.tgz#da4bfd73f49bd541d28920ab0e2bf0ee80f71c91" integrity sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw== -"@types/sinon@10.0.10": +"@types/sinon@^10.0.10": version "10.0.10" resolved "https://registry.yarnpkg.com/@types/sinon/-/sinon-10.0.10.tgz#f8acd72fbc2e87c4679f3e2c1ab3530dff1ab6e2" integrity sha512-US5E539UfeL2DiWALzCyk0c4zKh6sCv86V/0lpda/afMJJ0oEm2SrKgedH5optvFWstnJ8e1MNYhLmPhAy4rvQ== @@ -4634,13 +4641,13 @@ available-typed-arrays@^1.0.5: resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw== -aws-sdk-client-mock@^0.6.2: - version "0.6.2" - resolved "https://registry.yarnpkg.com/aws-sdk-client-mock/-/aws-sdk-client-mock-0.6.2.tgz#2880d7a7a7e9fcaaf7abdfc01a0f6f22551bc654" - integrity sha512-0kH1cyfqGogp69vJitzVducx9q691vGOwg7wEG+DUegGlepjaeskp6YG4SJI0y5Vwh3vi+fP27YQTcWllv4GlQ== +aws-sdk-client-mock@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/aws-sdk-client-mock/-/aws-sdk-client-mock-2.1.1.tgz#52e5e580fd5654492f9b477153928e373034798e" + integrity sha512-UuxXmICU4nmXTRm2BzLZdXmnyI+5NEBb5McRDkObasXVxXChvLm0Ci/PGENh4sCD+Es64SJiz70mtY48JROk0A== dependencies: - "@types/sinon" "10.0.10" - sinon "^11.1.1" + "@types/sinon" "^10.0.10" + sinon "^14.0.2" tslib "^2.1.0" aws-sign2@~0.7.0: @@ -8587,7 +8594,7 @@ next@13.2.3: "@next/swc-win32-ia32-msvc" "13.2.3" "@next/swc-win32-x64-msvc" "13.2.3" -nise@^5.1.0: +nise@^5.1.2: version "5.1.4" resolved "https://registry.yarnpkg.com/nise/-/nise-5.1.4.tgz#491ce7e7307d4ec546f5a659b2efe94a18b4bbc0" integrity sha512-8+Ib8rRJ4L0o3kfmyVCL7gzrohyDe0cMFTBa2d364yIrEGMEoetznKJx899YxjybU6bL9SQkYPSBBs1gyYs8Xg== @@ -10083,16 +10090,16 @@ signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== -sinon@^11.1.1: - version "11.1.2" - resolved "https://registry.yarnpkg.com/sinon/-/sinon-11.1.2.tgz#9e78850c747241d5c59d1614d8f9cbe8840e8674" - integrity sha512-59237HChms4kg7/sXhiRcUzdSkKuydDeTiamT/jesUVHshBgL8XAmhgFo0GfK6RruMDM/iRSij1EybmMog9cJw== +sinon@^14.0.2: + version "14.0.2" + resolved "https://registry.yarnpkg.com/sinon/-/sinon-14.0.2.tgz#585a81a3c7b22cf950762ac4e7c28eb8b151c46f" + integrity sha512-PDpV0ZI3ZCS3pEqx0vpNp6kzPhHrLx72wA0G+ZLaaJjLIYeE0n8INlgaohKuGy7hP0as5tbUd23QWu5U233t+w== dependencies: - "@sinonjs/commons" "^1.8.3" - "@sinonjs/fake-timers" "^7.1.2" - "@sinonjs/samsam" "^6.0.2" + "@sinonjs/commons" "^2.0.0" + "@sinonjs/fake-timers" "^9.1.2" + "@sinonjs/samsam" "^7.0.1" diff "^5.0.0" - nise "^5.1.0" + nise "^5.1.2" supports-color "^7.2.0" sisteransi@^1.0.5: From a4f4eeebdd27ca528c406505149da3b7b1c86531 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20JANIN?= Date: Mon, 8 May 2023 11:21:31 -0400 Subject: [PATCH 02/19] fix: DynamoDB UpdateCommand should not contain unused arguments (#2065) --- pages/api/id/[form]/[submission]/download.tsx | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/pages/api/id/[form]/[submission]/download.tsx b/pages/api/id/[form]/[submission]/download.tsx index 41b5edc6b6..05f7f138a9 100644 --- a/pages/api/id/[form]/[submission]/download.tsx +++ b/pages/api/id/[form]/[submission]/download.tsx @@ -192,6 +192,8 @@ async function updateLastDownloadedBy( ) { const documentClient = connectToDynamo(); + const isNewResponse = status === VaultStatus.NEW; + const updateCommandInput: UpdateCommandInput = { TableName: "Vault", Key: { @@ -199,18 +201,21 @@ async function updateLastDownloadedBy( NAME_OR_CONF: `NAME#${responseID}`, }, UpdateExpression: "SET LastDownloadedBy = :email, DownloadedAt = :downloadedAt".concat( - status === VaultStatus.NEW ? ", #status = :statusUpdate" : "" + isNewResponse ? ", #status = :statusUpdate" : "" ), ExpressionAttributeValues: { ":email": email, ":downloadedAt": Date.now(), - ":statusUpdate": "Downloaded", - }, - ExpressionAttributeNames: { - "#status": "Status", + ...(isNewResponse && { ":statusUpdate": "Downloaded" }), }, + ...(isNewResponse && { + ExpressionAttributeNames: { + "#status": "Status", + }, + }), ReturnValues: "NONE", }; + return await documentClient.send(new UpdateCommand(updateCommandInput)); } From 8b5281dff04c1afe33cb541bdb804ae0eab361a5 Mon Sep 17 00:00:00 2001 From: Tim Arney Date: Mon, 8 May 2023 12:05:04 -0400 Subject: [PATCH 03/19] Bump - Zustand, Immer + Next (#2064) bump --- package.json | 6 +- yarn.lock | 194 ++++++++++++++++++++++++++------------------------- 2 files changed, 101 insertions(+), 99 deletions(-) diff --git a/package.json b/package.json index 1a5af12af6..685b8c8176 100644 --- a/package.json +++ b/package.json @@ -56,7 +56,7 @@ "formik": "2.2.9", "htmlparser2": "8.0.2", "i18next": "22.4.15", - "immer": "9.0.21", + "immer": "10.0.1", "ioredis": "5.2.5", "json2md": "1.13.0", "jsonschema": "1.4.1", @@ -70,7 +70,7 @@ "markdown-to-jsx": "7.1.9", "markdown-to-txt": "2.0.1", "mmmagic": "0.5.3", - "next": "13.2.3", + "next": "13.4.1", "next-auth": "4.21.1", "next-i18next": "13.2.2", "notifications-node-client": "5.1.2", @@ -90,7 +90,7 @@ "usehooks-ts": "2.9.1", "uuid": "8.3.2", "yup": "0.32.11", - "zustand": "4.3.7" + "zustand": "4.3.8" }, "devDependencies": { "@aws-sdk/types": "3.188.0", diff --git a/yarn.lock b/yarn.lock index 3d98ff3373..5546c6086a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2233,10 +2233,10 @@ resolved "https://registry.yarnpkg.com/@next-auth/prisma-adapter/-/prisma-adapter-1.0.6.tgz#da0a423c9cfaaa4d22421817546b62d964ae8f4e" integrity sha512-Z7agwfSZEeEcqKqrnisBun7VndRPshd6vyDsoRU68MXbkui8storkHgvN2hnNDrqr/hSCF9aRn56a1qpihaB4A== -"@next/env@13.2.3": - version "13.2.3" - resolved "https://registry.yarnpkg.com/@next/env/-/env-13.2.3.tgz#77ca49edb3c1d7c5263bb8f2ebe686080e98279e" - integrity sha512-FN50r/E+b8wuqyRjmGaqvqNDuWBWYWQiigfZ50KnSFH0f+AMQQyaZl+Zm2+CIpKk0fL9QxhLxOpTVA3xFHgFow== +"@next/env@13.4.1": + version "13.4.1" + resolved "https://registry.yarnpkg.com/@next/env/-/env-13.4.1.tgz#57322da2630b6bb6d7204577b0a18f6f9324db0c" + integrity sha512-eD6WCBMFjLFooLM19SIhSkWBHtaFrZFfg2Cxnyl3vS3DAdFRfnx5TY2RxlkuKXdIRCC0ySbtK9JXXt8qLCqzZg== "@next/eslint-plugin-next@13.3.4", "@next/eslint-plugin-next@^13.1.3": version "13.3.4" @@ -2245,70 +2245,50 @@ dependencies: glob "7.1.7" -"@next/swc-android-arm-eabi@13.2.3": - version "13.2.3" - resolved "https://registry.yarnpkg.com/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-13.2.3.tgz#85eed560c87c7996558c868a117be9780778f192" - integrity sha512-mykdVaAXX/gm+eFO2kPeVjnOCKwanJ9mV2U0lsUGLrEdMUifPUjiXKc6qFAIs08PvmTMOLMNnUxqhGsJlWGKSw== - -"@next/swc-android-arm64@13.2.3": - version "13.2.3" - resolved "https://registry.yarnpkg.com/@next/swc-android-arm64/-/swc-android-arm64-13.2.3.tgz#8ac54ca9795a48afc4631b4823a4864bd5db0129" - integrity sha512-8XwHPpA12gdIFtope+n9xCtJZM3U4gH4vVTpUwJ2w1kfxFmCpwQ4xmeGSkR67uOg80yRMuF0h9V1ueo05sws5w== - -"@next/swc-darwin-arm64@13.2.3": - version "13.2.3" - resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.2.3.tgz#f674e3c65aec505b6d218a662ade3fe248ccdbda" - integrity sha512-TXOubiFdLpMfMtaRu1K5d1I9ipKbW5iS2BNbu8zJhoqrhk3Kp7aRKTxqFfWrbliAHhWVE/3fQZUYZOWSXVQi1w== - -"@next/swc-darwin-x64@13.2.3": - version "13.2.3" - resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-13.2.3.tgz#a15ea7fb4c46034a8f5e387906d0cad08387075a" - integrity sha512-GZctkN6bJbpjlFiS5pylgB2pifHvgkqLAPumJzxnxkf7kqNm6rOGuNjsROvOWVWXmKhrzQkREO/WPS2aWsr/yw== - -"@next/swc-freebsd-x64@13.2.3": - version "13.2.3" - resolved "https://registry.yarnpkg.com/@next/swc-freebsd-x64/-/swc-freebsd-x64-13.2.3.tgz#f7ac6ae4f7d706ff2431f33e40230a554c8c2cbc" - integrity sha512-rK6GpmMt/mU6MPuav0/M7hJ/3t8HbKPCELw/Uqhi4732xoq2hJ2zbo2FkYs56y6w0KiXrIp4IOwNB9K8L/q62g== - -"@next/swc-linux-arm-gnueabihf@13.2.3": - version "13.2.3" - resolved "https://registry.yarnpkg.com/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-13.2.3.tgz#84ad9e9679d55542a23b590ad9f2e1e9b2df62f7" - integrity sha512-yeiCp/Odt1UJ4KUE89XkeaaboIDiVFqKP4esvoLKGJ0fcqJXMofj4ad3tuQxAMs3F+qqrz9MclqhAHkex1aPZA== - -"@next/swc-linux-arm64-gnu@13.2.3": - version "13.2.3" - resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.2.3.tgz#56f9175bc632d647c60b9e8bedc0875edf92d8b7" - integrity sha512-/miIopDOUsuNlvjBjTipvoyjjaxgkOuvlz+cIbbPcm1eFvzX2ltSfgMgty15GuOiR8Hub4FeTSiq3g2dmCkzGA== - -"@next/swc-linux-arm64-musl@13.2.3": - version "13.2.3" - resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.2.3.tgz#7d4cf00e8f1729a3de464da0624773f5d0d14888" - integrity sha512-sujxFDhMMDjqhruup8LLGV/y+nCPi6nm5DlFoThMJFvaaKr/imhkXuk8uCTq4YJDbtRxnjydFv2y8laBSJVC2g== - -"@next/swc-linux-x64-gnu@13.2.3": - version "13.2.3" - resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.2.3.tgz#17de404910c4ebf7a1d366b19334d7e27e126ab0" - integrity sha512-w5MyxPknVvC9LVnMenAYMXMx4KxPwXuJRMQFvY71uXg68n7cvcas85U5zkdrbmuZ+JvsO5SIG8k36/6X3nUhmQ== - -"@next/swc-linux-x64-musl@13.2.3": - version "13.2.3" - resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.2.3.tgz#07cb7b7f3a3a98034e2533f82638a9b099ba4ab1" - integrity sha512-CTeelh8OzSOVqpzMFMFnVRJIFAFQoTsI9RmVJWW/92S4xfECGcOzgsX37CZ8K982WHRzKU7exeh7vYdG/Eh4CA== - -"@next/swc-win32-arm64-msvc@13.2.3": - version "13.2.3" - resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.2.3.tgz#b9ac98c954c71ec9de45d3497a8585096b873152" - integrity sha512-7N1KBQP5mo4xf52cFCHgMjzbc9jizIlkTepe9tMa2WFvEIlKDfdt38QYcr9mbtny17yuaIw02FXOVEytGzqdOQ== - -"@next/swc-win32-ia32-msvc@13.2.3": - version "13.2.3" - resolved "https://registry.yarnpkg.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.2.3.tgz#5ec48653a48fd664e940c69c96bba698fdae92eb" - integrity sha512-LzWD5pTSipUXTEMRjtxES/NBYktuZdo7xExJqGDMnZU8WOI+v9mQzsmQgZS/q02eIv78JOCSemqVVKZBGCgUvA== - -"@next/swc-win32-x64-msvc@13.2.3": - version "13.2.3" - resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.2.3.tgz#cd432f280beb8d8de5b7cd2501e9f502e9f3dd72" - integrity sha512-aLG2MaFs4y7IwaMTosz2r4mVbqRyCnMoFqOcmfTi7/mAS+G4IMH0vJp4oLdbshqiVoiVuKrAfqtXj55/m7Qu1Q== +"@next/swc-darwin-arm64@13.4.1": + version "13.4.1" + resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.4.1.tgz#3748040d2dd0d89d3cdcc897f96aeda5130eed8f" + integrity sha512-eF8ARHtYfnoYtDa6xFHriUKA/Mfj/cCbmKb3NofeKhMccs65G6/loZ15a6wYCCx4rPAd6x4t1WmVYtri7EdeBg== + +"@next/swc-darwin-x64@13.4.1": + version "13.4.1" + resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-13.4.1.tgz#c59fc270005f17e04eb7eab4fd68793d0e3409a4" + integrity sha512-7cmDgF9tGWTgn5Gw+vP17miJbH4wcraMHDCOHTYWkO/VeKT73dUWG23TNRLfgtCNSPgH4V5B4uLHoZTanx9bAw== + +"@next/swc-linux-arm64-gnu@13.4.1": + version "13.4.1" + resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.4.1.tgz#1aef371bcef5d832d7f7e3aec3e68cfb98282393" + integrity sha512-qwJqmCri2ie8aTtE5gjTSr8S6O8B67KCYgVZhv9gKH44yvc/zXbAY8u23QGULsYOyh1islWE5sWfQNLOj9iryg== + +"@next/swc-linux-arm64-musl@13.4.1": + version "13.4.1" + resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.4.1.tgz#2522927cb0af6918405a49f5a1d1687d6847f3ec" + integrity sha512-qcC54tWNGDv/VVIFkazxhqH1Bnagjfs4enzELVRlUOoJPD2BGJTPI7z08pQPbbgxLtRiu8gl2mXvpB8WlOkMeA== + +"@next/swc-linux-x64-gnu@13.4.1": + version "13.4.1" + resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.4.1.tgz#5ec9418a35510048a5ceb79ed300463e1a9b312d" + integrity sha512-9TeWFlpLsBosZ+tsm/rWBaMwt5It9tPH8m3nawZqFUUrZyGRfGcI67js774vtx0k3rL9qbyY6+3pw9BCVpaYUA== + +"@next/swc-linux-x64-musl@13.4.1": + version "13.4.1" + resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.4.1.tgz#3478b9c89b75c1d0e7def9f35a9a77cb15d1a115" + integrity sha512-sNDGaWmSqTS4QRUzw61wl4mVPeSqNIr1OOjLlQTRuyInxMxtqImRqdvzDvFTlDfdeUMU/DZhWGYoHrXLlZXe6A== + +"@next/swc-win32-arm64-msvc@13.4.1": + version "13.4.1" + resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.4.1.tgz#efe53d48ff51d2485eabb910ab7caee78425fc01" + integrity sha512-+CXZC7u1iXdLRudecoUYbhbsXpglYv8KFYsFxKBPn7kg+bk7eJo738wAA4jXIl8grTF2mPdmO93JOQym+BlYGA== + +"@next/swc-win32-ia32-msvc@13.4.1": + version "13.4.1" + resolved "https://registry.yarnpkg.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.4.1.tgz#952cdf1c53df46a90d5151d99310195d2c384e55" + integrity sha512-vIoXVVc7UYO68VwVMDKwJC2+HqAZQtCYiVlApyKEeIPIQpz2gpufzGxk1z3/gwrJt/kJ5CDZjlhYDCzd3hdz+g== + +"@next/swc-win32-x64-msvc@13.4.1": + version "13.4.1" + resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.4.1.tgz#447b7dcee5f5d4824cdff331a4ec34b13d0b449d" + integrity sha512-n8V5ImLQZibKTu10UUdI3nIeTLkliEXe628qxqW9v8My3BAH2a7H0SaCqkV2OgqFnn8sG1wxKYw9/SNJ632kSA== "@nodelib/fs.scandir@2.1.5": version "2.1.5" @@ -3656,7 +3636,14 @@ resolved "https://registry.yarnpkg.com/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz#5981a8db18b56ba38ef0efb7d995b12aa7b51918" integrity sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ== -"@swc/helpers@0.4.14", "@swc/helpers@^0.4.14": +"@swc/helpers@0.5.1": + version "0.5.1" + resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.5.1.tgz#e9031491aa3f26bfcc974a67f48bd456c8a5357a" + integrity sha512-sJ902EfIzn1Fa+qYmjdQqh8tPsoxyBz+8yBKC2HKUxyezKJFwPGOn7pv4WY6QuQW//ySQi5lJjA/ZT9sNWWNTg== + dependencies: + tslib "^2.4.0" + +"@swc/helpers@^0.4.14": version "0.4.14" resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.4.14.tgz#1352ac6d95e3617ccb7c1498ff019654f1e12a74" integrity sha512-4C7nX/dvpzB7za4Ql9K81xK3HPxCpHMgwTZVyf+9JQ6VUbn9jjZVN7/Nkdz/Ugzs2CSjqnL/UPXroiVBVHUWUw== @@ -4922,6 +4909,13 @@ bundle-name@^3.0.0: dependencies: run-applescript "^5.0.0" +busboy@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/busboy/-/busboy-1.6.0.tgz#966ea36a9502e43cdb9146962523b92f531f6893" + integrity sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA== + dependencies: + streamsearch "^1.1.0" + cachedir@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/cachedir/-/cachedir-2.3.0.tgz#0c75892a052198f0b21c7c1804d8331edfcae0e8" @@ -7015,10 +7009,10 @@ ignore@^5.2.0: resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.4.tgz#a291c0c6178ff1b960befe47fcdec301674a6324" integrity sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ== -immer@9.0.21: - version "9.0.21" - resolved "https://registry.yarnpkg.com/immer/-/immer-9.0.21.tgz#1e025ea31a40f24fb064f1fef23e931496330176" - integrity sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA== +immer@10.0.1: + version "10.0.1" + resolved "https://registry.yarnpkg.com/immer/-/immer-10.0.1.tgz#9065aeb856a39670a6f19b449a1222218bc8cf24" + integrity sha512-zg++jJLsKKTwXGeSYIw0HgChSYQGtu0UDTnbKx5aGLYgte4CwTmH9eJDYyQ6FheyUtBe+lQW9FrGxya1G+Dtmg== immutable@^4.0.0: version "4.3.0" @@ -8569,30 +8563,28 @@ next-router-mock@^0.9.1-beta.0: resolved "https://registry.yarnpkg.com/next-router-mock/-/next-router-mock-0.9.3.tgz#8287e96d76d4c7b3720bc9078b148c2b352f1567" integrity sha512-jl8eFe71LpMVGeBMpoxILkGfEgGY7IfLy8XPyv05/o61p5oQRNpoMmk46VMxRIpt0fI8XcvznBZKpDK6vbYQcQ== -next@13.2.3: - version "13.2.3" - resolved "https://registry.yarnpkg.com/next/-/next-13.2.3.tgz#92d170e7aca421321f230ff80c35c4751035f42e" - integrity sha512-nKFJC6upCPN7DWRx4+0S/1PIOT7vNlCT157w9AzbXEgKy6zkiPKEt5YyRUsRZkmpEqBVrGgOqNfwecTociyg+w== +next@13.4.1: + version "13.4.1" + resolved "https://registry.yarnpkg.com/next/-/next-13.4.1.tgz#8d23f94c81b3f9cc8b34165ad528457e5befd726" + integrity sha512-JBw2kAIyhKDpjhEWvNVoFeIzNp9xNxg8wrthDOtMctfn3EpqGCmW0FSviNyGgOSOSn6zDaX48pmvbdf6X2W9xA== dependencies: - "@next/env" "13.2.3" - "@swc/helpers" "0.4.14" + "@next/env" "13.4.1" + "@swc/helpers" "0.5.1" + busboy "1.6.0" caniuse-lite "^1.0.30001406" postcss "8.4.14" styled-jsx "5.1.1" + zod "3.21.4" optionalDependencies: - "@next/swc-android-arm-eabi" "13.2.3" - "@next/swc-android-arm64" "13.2.3" - "@next/swc-darwin-arm64" "13.2.3" - "@next/swc-darwin-x64" "13.2.3" - "@next/swc-freebsd-x64" "13.2.3" - "@next/swc-linux-arm-gnueabihf" "13.2.3" - "@next/swc-linux-arm64-gnu" "13.2.3" - "@next/swc-linux-arm64-musl" "13.2.3" - "@next/swc-linux-x64-gnu" "13.2.3" - "@next/swc-linux-x64-musl" "13.2.3" - "@next/swc-win32-arm64-msvc" "13.2.3" - "@next/swc-win32-ia32-msvc" "13.2.3" - "@next/swc-win32-x64-msvc" "13.2.3" + "@next/swc-darwin-arm64" "13.4.1" + "@next/swc-darwin-x64" "13.4.1" + "@next/swc-linux-arm64-gnu" "13.4.1" + "@next/swc-linux-arm64-musl" "13.4.1" + "@next/swc-linux-x64-gnu" "13.4.1" + "@next/swc-linux-x64-musl" "13.4.1" + "@next/swc-win32-arm64-msvc" "13.4.1" + "@next/swc-win32-ia32-msvc" "13.4.1" + "@next/swc-win32-x64-msvc" "13.4.1" nise@^5.1.2: version "5.1.4" @@ -10235,6 +10227,11 @@ stop-iteration-iterator@^1.0.0: dependencies: internal-slot "^1.0.4" +streamsearch@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/streamsearch/-/streamsearch-1.1.0.tgz#404dd1e2247ca94af554e841a8ef0eaa238da764" + integrity sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg== + string-argv@^0.3.1: version "0.3.2" resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.3.2.tgz#2b6d0ef24b656274d957d54e0a4bbf6153dc02b6" @@ -11226,9 +11223,14 @@ yup@0.32.11: property-expr "^2.0.4" toposort "^2.0.2" -zustand@4.3.7: - version "4.3.7" - resolved "https://registry.yarnpkg.com/zustand/-/zustand-4.3.7.tgz#501b1f0393a7f1d103332e45ab574be5747fedce" - integrity sha512-dY8ERwB9Nd21ellgkBZFhudER8KVlelZm8388B5nDAXhO/+FZDhYMuRnqDgu5SYyRgz/iaf8RKnbUs/cHfOGlQ== +zod@3.21.4: + version "3.21.4" + resolved "https://registry.yarnpkg.com/zod/-/zod-3.21.4.tgz#10882231d992519f0a10b5dd58a38c9dabbb64db" + integrity sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw== + +zustand@4.3.8: + version "4.3.8" + resolved "https://registry.yarnpkg.com/zustand/-/zustand-4.3.8.tgz#37113df8e9e1421b0be1b2dca02b49b76210e7c4" + integrity sha512-4h28KCkHg5ii/wcFFJ5Fp+k1J3gJoasaIbppdgZFO4BPJnsNxL0mQXBSFgOgAdCdBj35aDTPvdAJReTMntFPGg== dependencies: use-sync-external-store "1.2.0" From 2e3779e4855b2aa42dbd8dcf37ae785ba617f823 Mon Sep 17 00:00:00 2001 From: Tim Arney Date: Mon, 8 May 2023 13:04:53 -0400 Subject: [PATCH 04/19] Fix #1912 - use inline block (#2067) use inline block --- styles/_form-builder.scss | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/styles/_form-builder.scss b/styles/_form-builder.scss index 491c232883..439a9f4c1c 100644 --- a/styles/_form-builder.scss +++ b/styles/_form-builder.scss @@ -62,7 +62,7 @@ label { cursor: pointer; padding: 0 10px 5px 10px; - display: block; + display: inline-block; -ms-touch-action: manipulation; touch-action: manipulation; } From 86337090c8b232bf8142612d434df5ac6dd1b0fa Mon Sep 17 00:00:00 2001 From: Tim Arney Date: Mon, 8 May 2023 14:51:13 -0400 Subject: [PATCH 05/19] Language toggle href (#2069) default href + check for match with asPath --- components/globals/LanguageToggle.tsx | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/components/globals/LanguageToggle.tsx b/components/globals/LanguageToggle.tsx index 321b37d19a..e7c23f98af 100644 --- a/components/globals/LanguageToggle.tsx +++ b/components/globals/LanguageToggle.tsx @@ -1,4 +1,4 @@ -import React from "react"; +import React, { useEffect, useState } from "react"; import { useTranslation } from "next-i18next"; import { useRouter } from "next/router"; import { StyledLink } from "./StyledLink/StyledLink"; @@ -6,11 +6,18 @@ import { StyledLink } from "./StyledLink/StyledLink"; const LanguageToggle = () => { const { t, i18n } = useTranslation("common"); const locale = i18n.language; - const { pathname } = useRouter(); + const { pathname, asPath, isReady } = useRouter(); + const [href, setHref] = useState(pathname); + + useEffect(() => { + if (isReady && href !== asPath) { + setHref(asPath); + } + }, [pathname, href, asPath, isReady]); return ( Date: Tue, 9 May 2023 09:28:45 -0400 Subject: [PATCH 06/19] chore/Cypress goes to Typescript (#2071) --- .eslintrc.js | 19 +++++----- .github/workflows/cypress.yml | 4 +-- .github/workflows/eslint.yml | 8 ++--- .github/workflows/jest.yml | 6 ++-- Agent | 0 __tests__/api/acceptable-use.test.ts | 1 + __tests__/api/id/form/apiUsers.test.ts | 36 +++++++++++++++---- .../api/id/form/submission/download.test.ts | 1 + __tests__/api/request/publish.test.ts | 1 + __tests__/api/request/support.test.ts | 1 + ...TextEditor.cy.js => RichTextEditor.cy.tsx} | 10 ++---- .../app/edit/tests/PanelActions.cy.tsx | 31 ++++++++-------- cypress.config.js => cypress.config.ts | 0 cypress.d.ts | 10 ------ cypress/cypress.d.ts | 30 ++++++++++++++++ ...eptable_use.cy.js => acceptable_use.cy.ts} | 0 ...ccessibility.cy.js => accessibility.cy.ts} | 15 ++++---- .../{attestation.cy.js => attestation.cy.ts} | 4 +-- .../{cds_intake.cy.js => cds_intake.cy.ts} | 4 +-- ...cter_limit.cy.js => character_limit.cy.ts} | 4 +-- ...{dynamic_rows.cy.js => dynamic_rows.cy.ts} | 4 +-- ...{add-elements.cy.js => add-elements.cy.ts} | 6 ++-- .../{attestation.cy.js => attestation.cy.ts} | 3 +- ...{autocomplete.cy.js => autocomplete.cy.ts} | 4 ++- ...form-builder-field-with-description.cy.ts} | 4 ++- ...s => form-builder-modal-description.cy.ts} | 4 ++- ...{form-builder.cy.js => form-builder.cy.ts} | 4 ++- ...m-templates.cy.js => form-templates.cy.ts} | 4 ++- ...itching.cy.js => language-switching.cy.ts} | 4 ++- ...epeating-set.cy.js => repeating-set.cy.ts} | 4 ++- .../form-builder/{share.cy.js => share.cy.ts} | 4 ++- ...nality.cy.js => forms_functionality.cy.ts} | 4 +-- .../{login_page.cy.js => login_page.cy.ts} | 0 cypress/e2e/{logout.cy.js => logout.cy.ts} | 0 ...orm_intake.cy.js => platform_intake.cy.ts} | 4 +-- ...egister_page.cy.js => register_page.cy.ts} | 0 ...page.cy.js => terms_conditions_page.cy.ts} | 0 .../{tsb_contact.cy.js => tsb_contact.cy.ts} | 4 +-- ...> tsb_contact_remove_footer_gc_word.cy.ts} | 4 +-- cypress/plugins/{index.js => index.ts} | 0 .../commands/{commands.js => commands.ts} | 2 +- .../support/commands/{index.js => index.ts} | 0 .../support/{component.js => component.ts} | 0 cypress/support/{e2e.js => e2e.ts} | 2 +- cypress/tsconfig.json | 32 +++++++++++++++++ cypress/types/index.ts | 1 + jest.config.js | 2 +- package.json | 3 +- tsconfig.json | 18 ++++++++-- 49 files changed, 209 insertions(+), 97 deletions(-) delete mode 100644 Agent rename components/form-builder/app/edit/elements/lexical-editor/tests/{RichTextEditor.cy.js => RichTextEditor.cy.tsx} (94%) rename cypress.config.js => cypress.config.ts (100%) delete mode 100644 cypress.d.ts create mode 100644 cypress/cypress.d.ts rename cypress/e2e/{acceptable_use.cy.js => acceptable_use.cy.ts} (100%) rename cypress/e2e/{accessibility.cy.js => accessibility.cy.ts} (82%) rename cypress/e2e/{attestation.cy.js => attestation.cy.ts} (93%) rename cypress/e2e/{cds_intake.cy.js => cds_intake.cy.ts} (94%) rename cypress/e2e/{character_limit.cy.js => character_limit.cy.ts} (92%) rename cypress/e2e/{dynamic_rows.cy.js => dynamic_rows.cy.ts} (97%) rename cypress/e2e/form-builder/{add-elements.cy.js => add-elements.cy.ts} (97%) rename cypress/e2e/form-builder/{attestation.cy.js => attestation.cy.ts} (95%) rename cypress/e2e/form-builder/{autocomplete.cy.js => autocomplete.cy.ts} (97%) rename cypress/e2e/form-builder/{form-builder-field-with-description.cy.js => form-builder-field-with-description.cy.ts} (95%) rename cypress/e2e/form-builder/{form-builder-modal-description.cy.js => form-builder-modal-description.cy.ts} (97%) rename cypress/e2e/form-builder/{form-builder.cy.js => form-builder.cy.ts} (98%) rename cypress/e2e/form-builder/{form-templates.cy.js => form-templates.cy.ts} (98%) rename cypress/e2e/form-builder/{language-switching.cy.js => language-switching.cy.ts} (98%) rename cypress/e2e/form-builder/{repeating-set.cy.js => repeating-set.cy.ts} (98%) rename cypress/e2e/form-builder/{share.cy.js => share.cy.ts} (95%) rename cypress/e2e/{forms_functionality.cy.js => forms_functionality.cy.ts} (96%) rename cypress/e2e/{login_page.cy.js => login_page.cy.ts} (100%) rename cypress/e2e/{logout.cy.js => logout.cy.ts} (100%) rename cypress/e2e/{platform_intake.cy.js => platform_intake.cy.ts} (93%) rename cypress/e2e/{register_page.cy.js => register_page.cy.ts} (100%) rename cypress/e2e/{terms_conditions_page.cy.js => terms_conditions_page.cy.ts} (100%) rename cypress/e2e/{tsb_contact.cy.js => tsb_contact.cy.ts} (93%) rename cypress/e2e/{tsb_contact_remove_footer_gc_word.cy.js => tsb_contact_remove_footer_gc_word.cy.ts} (82%) rename cypress/plugins/{index.js => index.ts} (100%) rename cypress/support/commands/{commands.js => commands.ts} (98%) rename cypress/support/commands/{index.js => index.ts} (100%) rename cypress/support/{component.js => component.ts} (100%) rename cypress/support/{e2e.js => e2e.ts} (92%) create mode 100644 cypress/tsconfig.json create mode 100644 cypress/types/index.ts diff --git a/.eslintrc.js b/.eslintrc.js index 55d0225e9d..63295ee42a 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -2,12 +2,7 @@ module.exports = { overrides: [ { files: ["*.{ts,tsx}"], - extends: [ - "plugin:@typescript-eslint/recommended", - "plugin:jsx-a11y/recommended", - "plugin:prettier/recommended", - "prettier", - ], + extends: ["plugin:@typescript-eslint/recommended"], parser: "@typescript-eslint/parser", parserOptions: { @@ -18,6 +13,15 @@ module.exports = { "@typescript-eslint/await-thenable": "error", }, }, + { + files: ["*.cy.{ts,tsx}", "cypress/**/*.{ts,tsx,js,jsx}", "cypress.config.ts"], + parser: "@typescript-eslint/parser", + parserOptions: { + project: ["./cypress/tsconfig.json"], + }, + extends: ["plugin:@typescript-eslint/recommended", "plugin:cypress/recommended"], + plugins: ["@typescript-eslint", "prettier", "cypress"], + }, ], env: { browser: true, @@ -30,7 +34,6 @@ module.exports = { "plugin:react/recommended", "plugin:react-hooks/recommended", "plugin:jsx-a11y/recommended", - "plugin:cypress/recommended", "plugin:prettier/recommended", "plugin:@next/next/recommended", "prettier", @@ -47,7 +50,7 @@ module.exports = { version: "detect", }, }, - plugins: ["react", "jsx-a11y", "prettier", "cypress"], + plugins: ["react", "jsx-a11y", "prettier"], rules: { "prettier/prettier": "error", "no-console": "error", diff --git a/.github/workflows/cypress.yml b/.github/workflows/cypress.yml index 73673fdfe1..42fac15624 100644 --- a/.github/workflows/cypress.yml +++ b/.github/workflows/cypress.yml @@ -54,9 +54,9 @@ jobs: id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} - key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} + key: linux-yarn-${{ hashFiles('**/yarn.lock') }} restore-keys: | - ${{ runner.os }}-yarn- + linux-yarn- - name: "Install dependencies" run: yarn install:all diff --git a/.github/workflows/eslint.yml b/.github/workflows/eslint.yml index 1d64241373..cab9f8d167 100644 --- a/.github/workflows/eslint.yml +++ b/.github/workflows/eslint.yml @@ -23,9 +23,9 @@ jobs: id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} - key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} + key: linux-yarn-${{ hashFiles('**/yarn.lock') }} restore-keys: | - ${{ runner.os }}-yarn- + linux-yarn- - name: "Install dependencies" run: yarn install:all @@ -55,9 +55,9 @@ jobs: id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} - key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} + key: linux-yarn-${{ hashFiles('**/yarn.lock') }} restore-keys: | - ${{ runner.os }}-yarn- + linux-yarn- - name: "Install dependencies" run: yarn install:all --prefer-offline diff --git a/.github/workflows/jest.yml b/.github/workflows/jest.yml index 925d1ee91f..13d6f75e6a 100644 --- a/.github/workflows/jest.yml +++ b/.github/workflows/jest.yml @@ -22,12 +22,12 @@ jobs: id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} - key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} + key: linux-yarn-${{ hashFiles('**/yarn.lock') }} restore-keys: | - ${{ runner.os }}-yarn- + linux-yarn- - name: "Install dependencies" run: yarn install:all - name: Jest Tests - run: yarn test --coverage + run: yarn test diff --git a/Agent b/Agent deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/__tests__/api/acceptable-use.test.ts b/__tests__/api/acceptable-use.test.ts index 47982ab340..419c4f0af7 100644 --- a/__tests__/api/acceptable-use.test.ts +++ b/__tests__/api/acceptable-use.test.ts @@ -26,6 +26,7 @@ describe("Test acceptable use endpoint", () => { email: "forms@cds.ca", name: "forms user", privileges: [], + acceptableUse: false, }, }; diff --git a/__tests__/api/id/form/apiUsers.test.ts b/__tests__/api/id/form/apiUsers.test.ts index d0c7d4461d..9df41b7f47 100644 --- a/__tests__/api/id/form/apiUsers.test.ts +++ b/__tests__/api/id/form/apiUsers.test.ts @@ -63,6 +63,7 @@ describe.skip("/id/[forms]/owners", () => { email: "forms@cds.ca", name: "forms user", privileges: mockUserPrivileges(Base, { user: { id: "1" } }), + acceptableUse: true, }, }; @@ -208,7 +209,10 @@ describe.skip("/id/[forms]/owners", () => { it("Should return 404 as statusCode if there's db's error", async () => { // Mocking prisma to throw an error prismaMock.template.findUnique.mockRejectedValue( - new Prisma.PrismaClientKnownRequestError("Can't reach database server", "P1001", "4.3.2") + new Prisma.PrismaClientKnownRequestError("Can't reach database server", { + code: "P1001", + clientVersion: "4.3.2", + }) ); const { req, res } = createMocks({ @@ -236,6 +240,7 @@ describe.skip("/id/[forms]/owners", () => { email: "forms@cds.ca", name: "forms user", privileges: mockUserPrivileges(ManageForms, { user: { id: "1" } }), + acceptableUse: true, }, }; @@ -384,7 +389,10 @@ describe.skip("/id/[forms]/owners", () => { it("Should return 404 as statusCode if there's db's error", async () => { // Mocking prisma to throw an error prismaMock.template.findUnique.mockRejectedValue( - new Prisma.PrismaClientKnownRequestError("Can't reach database server", "P1001", "4.3.2") + new Prisma.PrismaClientKnownRequestError("Can't reach database server", { + code: "P1001", + clientVersion: "4.3.2", + }) ); const { req, res } = createMocks({ @@ -414,6 +422,7 @@ describe.skip("/id/[forms]/owners", () => { email: "forms@cds.ca", name: "forms user", privileges: mockUserPrivileges(Base, { user: { id: "1" } }), + acceptableUse: true, }, }; @@ -474,7 +483,10 @@ describe.skip("/id/[forms]/owners", () => { }); // Mocking prisma to throw an error prismaMock.apiUser.update.mockRejectedValue( - new Prisma.PrismaClientKnownRequestError("Unknown User", "P2025", "4.3.2") + new Prisma.PrismaClientKnownRequestError("Unknown User", { + code: "P2025", + clientVersion: "4.3.2", + }) ); const { req, res } = createMocks({ @@ -596,6 +608,7 @@ describe.skip("/id/[forms]/owners", () => { email: "forms@cds.ca", name: "forms user", privileges: mockUserPrivileges(ManageForms, { user: { id: "1" } }), + acceptableUse: true, }, }; @@ -656,7 +669,10 @@ describe.skip("/id/[forms]/owners", () => { }); // Mocking prisma to throw an error prismaMock.apiUser.update.mockRejectedValue( - new Prisma.PrismaClientKnownRequestError("Unknown User", "P2025", "4.3.2") + new Prisma.PrismaClientKnownRequestError("Unknown User", { + code: "P2025", + clientVersion: "4.3.2", + }) ); const { req, res } = createMocks({ @@ -784,6 +800,7 @@ describe.skip("/id/[forms]/owners", () => { email: "forms@cds-snc.ca", name: "forms user", privileges: mockUserPrivileges(Base, { user: { id: "1" } }), + acceptableUse: true, }, }; @@ -801,7 +818,10 @@ describe.skip("/id/[forms]/owners", () => { //Mocking db result by throwing constraint violation error. prismaMock.apiUser.create.mockRejectedValue( - new Prisma.PrismaClientKnownRequestError("Unknown User", "P2003", "4.3.2") + new Prisma.PrismaClientKnownRequestError("Unknown User", { + code: "P2003", + clientVersion: "4.3.2", + }) ); const { req, res } = createMocks({ @@ -987,6 +1007,7 @@ describe.skip("/id/[forms]/owners", () => { email: "forms@cds.ca", name: "forms user", privileges: mockUserPrivileges(ManageForms, { user: { id: "1" } }), + acceptableUse: true, }, }; @@ -1004,7 +1025,10 @@ describe.skip("/id/[forms]/owners", () => { //Mocking db result by throwing constraint violation error. prismaMock.apiUser.create.mockRejectedValue( - new Prisma.PrismaClientKnownRequestError("Unknown User", "P2003", "4.3.2") + new Prisma.PrismaClientKnownRequestError("Unknown User", { + code: "P2003", + clientVersion: "4.3.2", + }) ); const { req, res } = createMocks({ diff --git a/__tests__/api/id/form/submission/download.test.ts b/__tests__/api/id/form/submission/download.test.ts index d4839f3e16..fd47188dce 100644 --- a/__tests__/api/id/form/submission/download.test.ts +++ b/__tests__/api/id/form/submission/download.test.ts @@ -111,6 +111,7 @@ describe("/api/id/[form]/[submission]/download", () => { email: "forms@cds.ca", name: "forms user", privileges: mockUserPrivileges(Base, { user: { id: "1" } }), + acceptableUse: true, }, }; diff --git a/__tests__/api/request/publish.test.ts b/__tests__/api/request/publish.test.ts index 6e6d7a5c43..1013f28114 100644 --- a/__tests__/api/request/publish.test.ts +++ b/__tests__/api/request/publish.test.ts @@ -56,6 +56,7 @@ describe("Request publishing permission API tests (with active session)", () => email: "a@b.com", name: "Testing Forms", privileges: [], + acceptableUse: true, }, }; diff --git a/__tests__/api/request/support.test.ts b/__tests__/api/request/support.test.ts index 1ba3ae87e8..66e3da3f8a 100644 --- a/__tests__/api/request/support.test.ts +++ b/__tests__/api/request/support.test.ts @@ -55,6 +55,7 @@ describe("Support email API tests - WITH an active session", () => { email: "a@b.com", name: "Testing Forms", privileges: [], + acceptableUse: true, }, }; IsGCNotifyServiceAvailable = true; diff --git a/components/form-builder/app/edit/elements/lexical-editor/tests/RichTextEditor.cy.js b/components/form-builder/app/edit/elements/lexical-editor/tests/RichTextEditor.cy.tsx similarity index 94% rename from components/form-builder/app/edit/elements/lexical-editor/tests/RichTextEditor.cy.js rename to components/form-builder/app/edit/elements/lexical-editor/tests/RichTextEditor.cy.tsx index fc2db28645..e449f0ea03 100644 --- a/components/form-builder/app/edit/elements/lexical-editor/tests/RichTextEditor.cy.js +++ b/components/form-builder/app/edit/elements/lexical-editor/tests/RichTextEditor.cy.tsx @@ -6,15 +6,9 @@ describe("", () => { it("Adds and styles text", () => { // see: https://on.cypress.io/mounting-react cy.mount( - +
- +
); diff --git a/components/form-builder/app/edit/tests/PanelActions.cy.tsx b/components/form-builder/app/edit/tests/PanelActions.cy.tsx index fcacf2d314..469194b88c 100644 --- a/components/form-builder/app/edit/tests/PanelActions.cy.tsx +++ b/components/form-builder/app/edit/tests/PanelActions.cy.tsx @@ -1,6 +1,5 @@ import React from "react"; import { PanelActions } from "../PanelActions"; -import { FormElementTypes } from "@lib/types"; describe("", () => { it("enables move buttons for item that is not first or last", () => { @@ -12,19 +11,19 @@ describe("", () => { isLastItem={false} totalItems={0} moreButtonRenderer={(moreButton) => <>{moreButton}} - handleAdd={function (type?: FormElementTypes | undefined): void { + handleAdd={function (type) { throw new Error(type + "Function not implemented."); }} - handleRemove={function (): void { + handleRemove={function () { throw new Error("Function not implemented."); }} - handleMoveUp={function (): void { + handleMoveUp={function () { throw new Error("Function not implemented."); }} - handleMoveDown={function (): void { + handleMoveDown={function () { throw new Error("Function not implemented."); }} - handleDuplicate={function (): void { + handleDuplicate={function () { throw new Error("Function not implemented."); }} /> @@ -43,19 +42,19 @@ describe("", () => { isLastItem={true} totalItems={0} moreButtonRenderer={(moreButton) => <>{moreButton}} - handleAdd={function (type?: FormElementTypes | undefined): void { + handleAdd={function (type) { throw new Error(`${type} Function not implemented.`); }} - handleRemove={function (): void { + handleRemove={function () { throw new Error("Function not implemented."); }} - handleMoveUp={function (): void { + handleMoveUp={function () { throw new Error("Function not implemented."); }} - handleMoveDown={function (): void { + handleMoveDown={function () { throw new Error("Function not implemented."); }} - handleDuplicate={function (): void { + handleDuplicate={function () { throw new Error("Function not implemented."); }} /> @@ -90,19 +89,19 @@ describe("", () => { isLastItem={false} totalItems={0} moreButtonRenderer={(moreButton) => <>{moreButton}} - handleAdd={function (type?: FormElementTypes | undefined): void { + handleAdd={function (type) { throw new Error(`${type} Function not implemented.`); }} - handleRemove={function (): void { + handleRemove={function () { throw new Error("Function not implemented."); }} - handleMoveUp={function (): void { + handleMoveUp={function () { throw new Error("Function not implemented."); }} - handleMoveDown={function (): void { + handleMoveDown={function () { throw new Error("Function not implemented."); }} - handleDuplicate={function (): void { + handleDuplicate={function () { throw new Error("Function not implemented."); }} /> diff --git a/cypress.config.js b/cypress.config.ts similarity index 100% rename from cypress.config.js rename to cypress.config.ts diff --git a/cypress.d.ts b/cypress.d.ts deleted file mode 100644 index 91b946d49e..0000000000 --- a/cypress.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { mount } from "cypress/react"; - -declare global { - namespace Cypress { - interface Chainable { - mount: typeof mount; - tab: typeof tab; - } - } -} diff --git a/cypress/cypress.d.ts b/cypress/cypress.d.ts new file mode 100644 index 0000000000..4ddae38da3 --- /dev/null +++ b/cypress/cypress.d.ts @@ -0,0 +1,30 @@ +import { mount } from "cypress/react"; + +declare global { + namespace Cypress { + interface Chainable { + mount: typeof mount; + tab: typeof tab; + useForm: (file: string) => Chainable; + visitForm: (formID: string) => Chainable; + visitPage: (path: string) => Chainable; + login: () => Chainable; + logout: () => Chainable; + useFlag: (flagName: string, value: boolean, alreadyAuth?: boolean) => Chainable; + selection: (fn: (el: JQuery) => void) => Chainable>; + setSelection: ( + query: + | string + | { + anchorQuery: string; + anchorOffset?: number; + focusQuery?: string; + focusOffset?: number; + } + ) => Chainable>; + setCursor: (query: string, atStart?: boolean) => Chainable; + setCursorBefore: (query: string) => Chainable; + setCursorAfter: (query: string) => Chainable; + } + } +} diff --git a/cypress/e2e/acceptable_use.cy.js b/cypress/e2e/acceptable_use.cy.ts similarity index 100% rename from cypress/e2e/acceptable_use.cy.js rename to cypress/e2e/acceptable_use.cy.ts diff --git a/cypress/e2e/accessibility.cy.js b/cypress/e2e/accessibility.cy.ts similarity index 82% rename from cypress/e2e/accessibility.cy.js rename to cypress/e2e/accessibility.cy.ts index 4a5c32af1e..cae78c15d4 100644 --- a/cypress/e2e/accessibility.cy.js +++ b/cypress/e2e/accessibility.cy.ts @@ -1,6 +1,7 @@ import "cypress-each"; +import { Options } from "cypress-axe"; -const A11Y_OPTIONS = { +const A11Y_OPTIONS: Options = { runOnly: { type: "tag", values: ["wcag21aa", "wcag2aa", "best-practice", "section508"], @@ -11,16 +12,16 @@ describe("Accessibility (A11Y) Check", () => { describe("Form Components", () => { it("All components page Accessibility (A11Y) Check", () => { cy.useForm("../../__fixtures__/accessibilityTestForm.json"); - cy.get("@formID").then((formID) => cy.visitForm(formID)); + cy.get("@formID").then((formID) => cy.visitForm(formID)); cy.injectAxe(); - cy.checkA11y(null, A11Y_OPTIONS); + cy.checkA11y(undefined, A11Y_OPTIONS); }); it("Check error state accessibility", () => { cy.useForm("../../__fixtures__/cdsIntakeTestForm.json"); - cy.get("@formID").then((formID) => cy.visitForm(formID)); + cy.get("@formID").then((formID) => cy.visitForm(formID)); cy.injectAxe(); - cy.checkA11y(null, A11Y_OPTIONS); + cy.checkA11y(undefined, A11Y_OPTIONS); }); }); describe("Unauthenticated Pages", () => { @@ -44,7 +45,7 @@ describe("Accessibility (A11Y) Check", () => { cy.injectAxe(); // Ensure page has fully loaded cy.get("h1").should("be.visible"); - cy.checkA11y(null, A11Y_OPTIONS); + cy.checkA11y(undefined, A11Y_OPTIONS); } ); }); @@ -54,7 +55,7 @@ describe("Accessibility (A11Y) Check", () => { // Ensure page has fully loaded cy.get("h1").should("be.visible"); cy.injectAxe(); - cy.checkA11y(null, A11Y_OPTIONS); + cy.checkA11y(undefined, A11Y_OPTIONS); }); }); }); diff --git a/cypress/e2e/attestation.cy.js b/cypress/e2e/attestation.cy.ts similarity index 93% rename from cypress/e2e/attestation.cy.js rename to cypress/e2e/attestation.cy.ts index 1037e4153f..d36b88d7b1 100644 --- a/cypress/e2e/attestation.cy.js +++ b/cypress/e2e/attestation.cy.ts @@ -1,8 +1,8 @@ describe("Attestation functionality", () => { - let formID; + let formID: string; before(() => { cy.useForm("../../__fixtures__/attestationTestForm.json"); - cy.get("@formID").then((createdID) => (formID = createdID)); + cy.get("@formID").then((createdID) => (formID = createdID)); }); beforeEach(() => { cy.useFlag("formTimer", false); diff --git a/cypress/e2e/cds_intake.cy.js b/cypress/e2e/cds_intake.cy.ts similarity index 94% rename from cypress/e2e/cds_intake.cy.js rename to cypress/e2e/cds_intake.cy.ts index 8584eec342..7c1c7394f8 100644 --- a/cypress/e2e/cds_intake.cy.js +++ b/cypress/e2e/cds_intake.cy.ts @@ -1,8 +1,8 @@ describe("CDS Intake Form functionality", () => { - let formID; + let formID: string; before(() => { cy.useForm("../../__fixtures__/cdsIntakeTestForm.json"); - cy.get("@formID").then((createdID) => (formID = createdID)); + cy.get("@formID").then((createdID) => (formID = createdID)); }); beforeEach(() => { cy.useFlag("formTimer", false); diff --git a/cypress/e2e/character_limit.cy.js b/cypress/e2e/character_limit.cy.ts similarity index 92% rename from cypress/e2e/character_limit.cy.js rename to cypress/e2e/character_limit.cy.ts index eeefcc7949..d2243c0aff 100644 --- a/cypress/e2e/character_limit.cy.js +++ b/cypress/e2e/character_limit.cy.ts @@ -1,9 +1,9 @@ describe("Forms Functionality - Character Counts", () => { - let formID; + let formID: string; before(() => { cy.useFlag("formTimer", false); cy.useForm("../../__fixtures__/textFieldTestForm.json"); - cy.get("@formID").then((createdID) => (formID = createdID)); + cy.get("@formID").then((createdID) => (formID = createdID)); }); beforeEach(() => cy.visitForm(formID)); diff --git a/cypress/e2e/dynamic_rows.cy.js b/cypress/e2e/dynamic_rows.cy.ts similarity index 97% rename from cypress/e2e/dynamic_rows.cy.js rename to cypress/e2e/dynamic_rows.cy.ts index 06629ada05..8d3611c363 100644 --- a/cypress/e2e/dynamic_rows.cy.js +++ b/cypress/e2e/dynamic_rows.cy.ts @@ -1,9 +1,9 @@ describe("Dynamic Row Functionality", () => { - let formID; + let formID: string; before(() => { cy.useFlag("experimentalBlocks", true); cy.useForm("../../__fixtures__/dynamicRowsTestForm.json"); - cy.get("@formID").then((createdID) => (formID = createdID)); + cy.get("@formID").then((createdID) => (formID = createdID)); }); beforeEach(() => { cy.useFlag("formTimer", false); diff --git a/cypress/e2e/form-builder/add-elements.cy.js b/cypress/e2e/form-builder/add-elements.cy.ts similarity index 97% rename from cypress/e2e/form-builder/add-elements.cy.js rename to cypress/e2e/form-builder/add-elements.cy.ts index a7aedfdb46..6fe3849a81 100644 --- a/cypress/e2e/form-builder/add-elements.cy.js +++ b/cypress/e2e/form-builder/add-elements.cy.ts @@ -1,9 +1,11 @@ +import { NextData } from "types"; + describe("Test FormBuilder Add Elements", () => { beforeEach(() => { cy.visit("/form-builder", { onBeforeLoad: (win) => { win.sessionStorage.clear(); - let nextData; + let nextData: NextData; Object.defineProperty(win, "__NEXT_DATA__", { set(serverSideProps) { serverSideProps.context = { @@ -30,7 +32,7 @@ describe("Test FormBuilder Add Elements", () => { cy.get('[data-testid="richText"]').click(); cy.get("button").contains("Select block").click(); - cy.get('[data-testid="richText"]').exists; + cy.get('[data-testid="richText"]').should("exist"); }); it("Adds a Short Answer element", () => { diff --git a/cypress/e2e/form-builder/attestation.cy.js b/cypress/e2e/form-builder/attestation.cy.ts similarity index 95% rename from cypress/e2e/form-builder/attestation.cy.js rename to cypress/e2e/form-builder/attestation.cy.ts index 382e1f035b..aa82581b68 100644 --- a/cypress/e2e/form-builder/attestation.cy.js +++ b/cypress/e2e/form-builder/attestation.cy.ts @@ -1,9 +1,10 @@ +import { NextData } from "types"; describe("Form builder attestation", () => { beforeEach(() => { cy.visit("/form-builder/edit", { onBeforeLoad: (win) => { win.sessionStorage.clear(); - let nextData; + let nextData: NextData; Object.defineProperty(win, "__NEXT_DATA__", { set(serverSideProps) { serverSideProps.context = { diff --git a/cypress/e2e/form-builder/autocomplete.cy.js b/cypress/e2e/form-builder/autocomplete.cy.ts similarity index 97% rename from cypress/e2e/form-builder/autocomplete.cy.js rename to cypress/e2e/form-builder/autocomplete.cy.ts index de1703cb51..fc2042cf72 100644 --- a/cypress/e2e/form-builder/autocomplete.cy.js +++ b/cypress/e2e/form-builder/autocomplete.cy.ts @@ -1,9 +1,11 @@ +import { NextData } from "types"; + describe("Test FormBuilder autocomplete props", () => { beforeEach(() => { cy.visit("/form-builder", { onBeforeLoad: (win) => { win.sessionStorage.clear(); - let nextData; + let nextData: NextData; Object.defineProperty(win, "__NEXT_DATA__", { set(serverSideProps) { serverSideProps.context = { diff --git a/cypress/e2e/form-builder/form-builder-field-with-description.cy.js b/cypress/e2e/form-builder/form-builder-field-with-description.cy.ts similarity index 95% rename from cypress/e2e/form-builder/form-builder-field-with-description.cy.js rename to cypress/e2e/form-builder/form-builder-field-with-description.cy.ts index ec26b29cbe..6653616dc4 100644 --- a/cypress/e2e/form-builder/form-builder-field-with-description.cy.js +++ b/cypress/e2e/form-builder/form-builder-field-with-description.cy.ts @@ -1,9 +1,11 @@ +import { NextData } from "types"; + describe("Form builder description text", () => { beforeEach(() => { cy.visit("/form-builder/edit", { onBeforeLoad: (win) => { win.sessionStorage.clear(); - let nextData; + let nextData: NextData; Object.defineProperty(win, "__NEXT_DATA__", { set(serverSideProps) { serverSideProps.context = { diff --git a/cypress/e2e/form-builder/form-builder-modal-description.cy.js b/cypress/e2e/form-builder/form-builder-modal-description.cy.ts similarity index 97% rename from cypress/e2e/form-builder/form-builder-modal-description.cy.js rename to cypress/e2e/form-builder/form-builder-modal-description.cy.ts index b9f38aec79..4625800975 100644 --- a/cypress/e2e/form-builder/form-builder-modal-description.cy.js +++ b/cypress/e2e/form-builder/form-builder-modal-description.cy.ts @@ -1,9 +1,11 @@ +import { NextData } from "types"; + describe("Form builder modal description", () => { beforeEach(() => { cy.visit("/form-builder/edit", { onBeforeLoad: (win) => { win.sessionStorage.clear(); - let nextData; + let nextData: NextData; Object.defineProperty(win, "__NEXT_DATA__", { set(serverSideProps) { serverSideProps.context = { diff --git a/cypress/e2e/form-builder/form-builder.cy.js b/cypress/e2e/form-builder/form-builder.cy.ts similarity index 98% rename from cypress/e2e/form-builder/form-builder.cy.js rename to cypress/e2e/form-builder/form-builder.cy.ts index cc388b0bf6..7ba72dda65 100644 --- a/cypress/e2e/form-builder/form-builder.cy.js +++ b/cypress/e2e/form-builder/form-builder.cy.ts @@ -1,9 +1,11 @@ +import { NextData } from "types"; + describe("Test FormBuilder", () => { beforeEach(() => { cy.visit("/form-builder", { onBeforeLoad: (win) => { win.sessionStorage.clear(); - let nextData; + let nextData: NextData; Object.defineProperty(win, "__NEXT_DATA__", { set(serverSideProps) { serverSideProps.context = { diff --git a/cypress/e2e/form-builder/form-templates.cy.js b/cypress/e2e/form-builder/form-templates.cy.ts similarity index 98% rename from cypress/e2e/form-builder/form-templates.cy.js rename to cypress/e2e/form-builder/form-templates.cy.ts index 472bf93038..62e00e625f 100644 --- a/cypress/e2e/form-builder/form-templates.cy.js +++ b/cypress/e2e/form-builder/form-templates.cy.ts @@ -1,9 +1,11 @@ +import { NextData } from "types"; + describe("Test FormBuilder", () => { beforeEach(() => { cy.visit("/form-builder", { onBeforeLoad: (win) => { win.sessionStorage.clear(); - let nextData; + let nextData: NextData; Object.defineProperty(win, "__NEXT_DATA__", { set(serverSideProps) { serverSideProps.context = { diff --git a/cypress/e2e/form-builder/language-switching.cy.js b/cypress/e2e/form-builder/language-switching.cy.ts similarity index 98% rename from cypress/e2e/form-builder/language-switching.cy.js rename to cypress/e2e/form-builder/language-switching.cy.ts index 614831d3fb..db50e48e7c 100644 --- a/cypress/e2e/form-builder/language-switching.cy.js +++ b/cypress/e2e/form-builder/language-switching.cy.ts @@ -1,9 +1,11 @@ +import { NextData } from "types"; + describe("Test FormBuilder language switching", () => { beforeEach(() => { cy.visit("/form-builder", { onBeforeLoad: (win) => { win.sessionStorage.clear(); - let nextData; + let nextData: NextData; Object.defineProperty(win, "__NEXT_DATA__", { set(serverSideProps) { serverSideProps.context = { diff --git a/cypress/e2e/form-builder/repeating-set.cy.js b/cypress/e2e/form-builder/repeating-set.cy.ts similarity index 98% rename from cypress/e2e/form-builder/repeating-set.cy.js rename to cypress/e2e/form-builder/repeating-set.cy.ts index c13d8adeaa..f5daf3aac6 100644 --- a/cypress/e2e/form-builder/repeating-set.cy.js +++ b/cypress/e2e/form-builder/repeating-set.cy.ts @@ -1,10 +1,12 @@ +import { NextData } from "types"; + describe("Test FormBuilder Repeating set", () => { beforeEach(() => { cy.useFlag("experimentalBlocks", true); cy.visit("/form-builder", { onBeforeLoad: (win) => { win.sessionStorage.clear(); - let nextData; + let nextData: NextData; Object.defineProperty(win, "__NEXT_DATA__", { set(serverSideProps) { serverSideProps.context = { diff --git a/cypress/e2e/form-builder/share.cy.js b/cypress/e2e/form-builder/share.cy.ts similarity index 95% rename from cypress/e2e/form-builder/share.cy.js rename to cypress/e2e/form-builder/share.cy.ts index 66e1e0455b..917557d396 100644 --- a/cypress/e2e/form-builder/share.cy.js +++ b/cypress/e2e/form-builder/share.cy.ts @@ -1,9 +1,11 @@ +import { NextData } from "types"; + describe("Form builder share", () => { beforeEach(() => { cy.visit("/form-builder/edit", { onBeforeLoad: (win) => { win.sessionStorage.clear(); - let nextData; + let nextData: NextData; Object.defineProperty(win, "__NEXT_DATA__", { set(serverSideProps) { serverSideProps.context = { diff --git a/cypress/e2e/forms_functionality.cy.js b/cypress/e2e/forms_functionality.cy.ts similarity index 96% rename from cypress/e2e/forms_functionality.cy.js rename to cypress/e2e/forms_functionality.cy.ts index 3c372a8f80..a5a74aefe8 100644 --- a/cypress/e2e/forms_functionality.cy.js +++ b/cypress/e2e/forms_functionality.cy.ts @@ -1,8 +1,8 @@ describe("Forms Functionality", () => { - let formID; + let formID: string; before(() => { cy.useForm("../../__fixtures__/textFieldTestForm.json"); - cy.get("@formID").then((createdID) => (formID = createdID)); + cy.get("@formID").then((createdID) => (formID = createdID)); }); describe("text field tests", () => { beforeEach(() => { diff --git a/cypress/e2e/login_page.cy.js b/cypress/e2e/login_page.cy.ts similarity index 100% rename from cypress/e2e/login_page.cy.js rename to cypress/e2e/login_page.cy.ts diff --git a/cypress/e2e/logout.cy.js b/cypress/e2e/logout.cy.ts similarity index 100% rename from cypress/e2e/logout.cy.js rename to cypress/e2e/logout.cy.ts diff --git a/cypress/e2e/platform_intake.cy.js b/cypress/e2e/platform_intake.cy.ts similarity index 93% rename from cypress/e2e/platform_intake.cy.js rename to cypress/e2e/platform_intake.cy.ts index f0c0361b07..5d003e8e61 100644 --- a/cypress/e2e/platform_intake.cy.js +++ b/cypress/e2e/platform_intake.cy.ts @@ -1,8 +1,8 @@ describe("CDS Platform Intake Form functionality", () => { - let formID; + let formID: string; before(() => { cy.useForm("../../__fixtures__/platformIntakeTestForm.json"); - cy.get("@formID").then((createdID) => (formID = createdID)); + cy.get("@formID").then((createdID) => (formID = createdID)); }); beforeEach(() => { cy.useFlag("formTimer", false); diff --git a/cypress/e2e/register_page.cy.js b/cypress/e2e/register_page.cy.ts similarity index 100% rename from cypress/e2e/register_page.cy.js rename to cypress/e2e/register_page.cy.ts diff --git a/cypress/e2e/terms_conditions_page.cy.js b/cypress/e2e/terms_conditions_page.cy.ts similarity index 100% rename from cypress/e2e/terms_conditions_page.cy.js rename to cypress/e2e/terms_conditions_page.cy.ts diff --git a/cypress/e2e/tsb_contact.cy.js b/cypress/e2e/tsb_contact.cy.ts similarity index 93% rename from cypress/e2e/tsb_contact.cy.js rename to cypress/e2e/tsb_contact.cy.ts index 159c146acd..aa8255e44c 100644 --- a/cypress/e2e/tsb_contact.cy.js +++ b/cypress/e2e/tsb_contact.cy.ts @@ -1,8 +1,8 @@ describe("TSB Contact Form functionality", () => { - let formID; + let formID: string; before(() => { cy.useForm("../../__fixtures__/tsbContactTestForm.json"); - cy.get("@formID").then((createdID) => (formID = createdID)); + cy.get("@formID").then((createdID) => (formID = createdID)); }); beforeEach(() => { cy.useFlag("formTimer", false); diff --git a/cypress/e2e/tsb_contact_remove_footer_gc_word.cy.js b/cypress/e2e/tsb_contact_remove_footer_gc_word.cy.ts similarity index 82% rename from cypress/e2e/tsb_contact_remove_footer_gc_word.cy.js rename to cypress/e2e/tsb_contact_remove_footer_gc_word.cy.ts index ac89d6da23..acfc574e61 100644 --- a/cypress/e2e/tsb_contact_remove_footer_gc_word.cy.js +++ b/cypress/e2e/tsb_contact_remove_footer_gc_word.cy.ts @@ -1,8 +1,8 @@ describe("TSB Contact Form functionality", () => { - let formID; + let formID: string; before(() => { cy.useForm("../../__fixtures__/tsbDisableFooterGCBranding.json"); - cy.get("@formID").then((createdID) => (formID = createdID)); + cy.get("@formID").then((createdID) => (formID = createdID)); }); beforeEach(() => cy.visitForm(formID)); diff --git a/cypress/plugins/index.js b/cypress/plugins/index.ts similarity index 100% rename from cypress/plugins/index.js rename to cypress/plugins/index.ts diff --git a/cypress/support/commands/commands.js b/cypress/support/commands/commands.ts similarity index 98% rename from cypress/support/commands/commands.js rename to cypress/support/commands/commands.ts index 5d1034a5d5..596ca594b6 100644 --- a/cypress/support/commands/commands.js +++ b/cypress/support/commands/commands.ts @@ -39,7 +39,7 @@ Cypress.Commands.add("useForm", (file) => { }, }).then((response) => { expect(response.body).to.have.property("id"); - cy.wrap(response.body.id).as("formID"); + cy.wrap(response.body.id).as("formID", { type: "static" }); }); }); cy.logout(); diff --git a/cypress/support/commands/index.js b/cypress/support/commands/index.ts similarity index 100% rename from cypress/support/commands/index.js rename to cypress/support/commands/index.ts diff --git a/cypress/support/component.js b/cypress/support/component.ts similarity index 100% rename from cypress/support/component.js rename to cypress/support/component.ts diff --git a/cypress/support/e2e.js b/cypress/support/e2e.ts similarity index 92% rename from cypress/support/e2e.js rename to cypress/support/e2e.ts index d057fb6a6a..7b1cd8a783 100644 --- a/cypress/support/e2e.js +++ b/cypress/support/e2e.ts @@ -34,7 +34,7 @@ beforeEach(() => { cy.login() .then(() => { Object.keys(flagsDefault).forEach((key) => { - cy.useFlag(`${key}`, flagsDefault[key], true); + cy.useFlag(`${key}`, (flagsDefault as Record)[key], true); }); }) .then(() => cy.logout()); diff --git a/cypress/tsconfig.json b/cypress/tsconfig.json new file mode 100644 index 0000000000..6168a64f45 --- /dev/null +++ b/cypress/tsconfig.json @@ -0,0 +1,32 @@ +{ + "compilerOptions": { + "typeRoots": ["../types", "../node_modules/@types", "./types"], + "target": "es5", + "lib": ["es5", "dom"], + "types": ["cypress", "node", "cypress-axe"], + "skipLibCheck": true, + "strict": true, + "forceConsistentCasingInFileNames": true, + "noEmit": true, + "esModuleInterop": true, + "resolveJsonModule": true, + "jsx": "preserve", + "baseUrl": ".", + "paths": { + "@lib/*": ["../lib/*"], + "@components/*": ["../components/*"], + "@formbuilder/*": ["../components/form-builder/*"], + "@pages/*": ["../pages/*"] + } + }, + "include": [ + "**/*.ts", + "**/*.tsx", + "**/*.js", + "**/*.jsx", + "../**/*.cy.tsx", + "../**/*.cy.ts", + "../cypress.config.ts", + "support/commands/selection-command.js" + ] +} diff --git a/cypress/types/index.ts b/cypress/types/index.ts new file mode 100644 index 0000000000..4c1d6c354c --- /dev/null +++ b/cypress/types/index.ts @@ -0,0 +1 @@ +export type NextData = Record; diff --git a/jest.config.js b/jest.config.js index 94d69023b4..8b7cd86459 100644 --- a/jest.config.js +++ b/jest.config.js @@ -24,7 +24,7 @@ const customJestConfig = { "/__utils__/prismaConnector.ts", ], testEnvironment: "jsdom", - collectCoverage: true, + collectCoverage: false, collectCoverageFrom: ["{pages,lib,components}/**/{!(*.stories),}.{ts,tsx}"], }; diff --git a/package.json b/package.json index 685b8c8176..44ebcd061a 100644 --- a/package.json +++ b/package.json @@ -31,7 +31,8 @@ "test": "jest", "test:watch": "DEBUG_PRINT_LIMIT=10000 jest --watch", "cypress": "cypress open", - "cypress:headless": "cypress run --browser chrome --headless", + "cypress:e2e": "cypress run --browser chrome --headless --e2e", + "cypress:component": "cypress run --browser chrome --headless --component", "postinstall": "[ \"$NODE_ENV\" = production ] && exit 0; husky install" }, "dependencies": { diff --git a/tsconfig.json b/tsconfig.json index 28d4c3edf6..c3f0cca18a 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -26,6 +26,20 @@ }, "incremental": true }, - "include": ["next-env.d.ts", "types", "**/*.ts", "**/*.tsx"], - "exclude": ["node_modules", "utils", ".next", "cypress", "./cypress.config.js"] + "include": [ + "next-env.d.ts", + "types", + "**/*.ts", + "**/*.tsx", + "cypress/support/commands/selection-command.js" + ], + "exclude": [ + "node_modules", + "utils", + ".next", + "cypress", + "cypress.config.ts", + "**/*.cy.ts", + "**/*.cy.tsx" + ] } From 49a53cda60b1d0a66e8ef09f1c734dd0c59aacc5 Mon Sep 17 00:00:00 2001 From: Tim Arney Date: Tue, 9 May 2023 09:40:17 -0400 Subject: [PATCH 07/19] Move form builder "button component" (#2072) * update path --- components/form-builder/app/Publish.tsx | 2 +- components/form-builder/app/Published.tsx | 2 +- .../form-builder/app/SetResponseDelivery.tsx | 3 +- .../form-builder/app/SettingsLoggedOut.tsx | 2 +- components/form-builder/app/ShareModal.tsx | 3 +- .../app/ShareModalUnauthenticated.tsx | 3 +- .../form-builder/app/branding/Branding.tsx | 3 +- components/form-builder/app/edit/Modal.tsx | 2 +- .../form-builder/app/edit/MoreModal.tsx | 2 +- .../form-builder/app/edit/elements/Option.tsx | 2 +- .../app/edit/elements/Options.tsx | 2 +- .../app/edit/elements/SubOption.tsx | 2 +- .../app/edit/elements/SubOptions.tsx | 2 +- .../element-dialog/AddElementButton.tsx | 2 +- .../element-dialog/ElementDescription.tsx | 2 +- .../elements/sub-elements/SubElementModal.tsx | 2 +- .../app/navigation/ShareDropdown.tsx | 2 +- .../app/responses/DownloadTableDialog.tsx | 3 +- .../app/shared/ConfirmFormDeleteDialog.tsx | 3 +- .../app/shared/CopyToClipboard.tsx | 3 +- components/form-builder/app/shared/Dialog.tsx | 2 +- .../app/shared/DownloadFileButton.tsx | 2 +- .../app/shared/ResponseDeliveryHelpDialog.tsx | 2 +- .../form-builder/app/shared/SaveButton.tsx | 2 +- .../shared/{Button.tsx => WithMessage.tsx} | 62 +------------------ components/form-builder/app/shared/index.ts | 1 - .../app/translate/DownloadCSV.tsx | 2 +- components/forms/Button/Button.stories.tsx | 29 --------- components/globals/Buttons/Button.tsx | 49 +++++++++++++++ components/globals/Buttons/index.ts | 2 + components/globals/Buttons/themes.ts | 12 ++++ components/globals/index.ts | 1 + 32 files changed, 96 insertions(+), 117 deletions(-) rename components/form-builder/app/shared/{Button.tsx => WithMessage.tsx} (52%) delete mode 100644 components/forms/Button/Button.stories.tsx create mode 100644 components/globals/Buttons/Button.tsx create mode 100644 components/globals/Buttons/index.ts create mode 100644 components/globals/Buttons/themes.ts create mode 100644 components/globals/index.ts diff --git a/components/form-builder/app/Publish.tsx b/components/form-builder/app/Publish.tsx index 2714e24f66..df9fb1979e 100644 --- a/components/form-builder/app/Publish.tsx +++ b/components/form-builder/app/Publish.tsx @@ -7,7 +7,7 @@ import { useRouter } from "next/router"; import { useTemplateStore } from "../store"; import { useTemplateApi, useAllowPublish } from "../hooks"; import { CancelIcon, CircleCheckIcon, WarningIcon, LockIcon } from "../icons"; -import { Button } from "./shared"; +import { Button } from "@components/globals"; import { PublishNoAuth } from "./PublishNoAuth"; import Link from "next/link"; diff --git a/components/form-builder/app/Published.tsx b/components/form-builder/app/Published.tsx index fbd8d02c38..6da2d21e56 100644 --- a/components/form-builder/app/Published.tsx +++ b/components/form-builder/app/Published.tsx @@ -2,7 +2,7 @@ import React, { useState, useEffect } from "react"; import { RocketIcon } from "../icons/RocketIcon"; import { useSession } from "next-auth/react"; import { useRouter } from "next/router"; -import { themes } from "./shared/Button"; +import { themes } from "@components/globals"; import { useTranslation } from "next-i18next"; import { useTemplateStore } from "../store/useTemplateStore"; import { useAccessControl } from "@lib/hooks"; diff --git a/components/form-builder/app/SetResponseDelivery.tsx b/components/form-builder/app/SetResponseDelivery.tsx index fda7f88592..8fa4e9aa5c 100644 --- a/components/form-builder/app/SetResponseDelivery.tsx +++ b/components/form-builder/app/SetResponseDelivery.tsx @@ -7,7 +7,8 @@ import { useSession } from "next-auth/react"; import { useRefresh } from "@lib/hooks"; import { isValidGovEmail } from "@lib/validation"; import { ResponseEmail } from "./ResponseEmail"; -import { Radio, Button } from "./shared"; +import { Radio } from "./shared"; +import { Button } from "@components/globals"; import { useTemplateApi } from "../hooks"; import { useTemplateStore } from "../store"; import { completeEmailAddressRegex } from "../util"; diff --git a/components/form-builder/app/SettingsLoggedOut.tsx b/components/form-builder/app/SettingsLoggedOut.tsx index e2435266a3..ecfcdda1aa 100644 --- a/components/form-builder/app/SettingsLoggedOut.tsx +++ b/components/form-builder/app/SettingsLoggedOut.tsx @@ -1,6 +1,6 @@ import React from "react"; import { Card } from "@components/globals/card/Card"; -import { themes } from "./shared/Button"; +import { themes } from "@components/globals"; import Link from "next/link"; import { useSession } from "next-auth/react"; import { useTranslation } from "next-i18next"; diff --git a/components/form-builder/app/ShareModal.tsx b/components/form-builder/app/ShareModal.tsx index 757b371ad9..6ca3692968 100644 --- a/components/form-builder/app/ShareModal.tsx +++ b/components/form-builder/app/ShareModal.tsx @@ -3,7 +3,8 @@ import { useTranslation } from "next-i18next"; import { FormElementTypes } from "@lib/types"; import axios from "axios"; -import { useDialogRef, Dialog, TagInput, Button, InfoDetails } from "./shared"; +import { useDialogRef, Dialog, TagInput, InfoDetails } from "./shared"; +import { Button } from "@components/globals"; import { useTemplateStore } from "../store"; import { useSession } from "next-auth/react"; import Markdown from "markdown-to-jsx"; diff --git a/components/form-builder/app/ShareModalUnauthenticated.tsx b/components/form-builder/app/ShareModalUnauthenticated.tsx index 491bf92cd6..4017b09d66 100644 --- a/components/form-builder/app/ShareModalUnauthenticated.tsx +++ b/components/form-builder/app/ShareModalUnauthenticated.tsx @@ -2,7 +2,8 @@ import React, { useRef } from "react"; import { useTranslation } from "next-i18next"; import { FormElementTypes } from "@lib/types"; -import { useDialogRef, Dialog, Button, InfoDetails, DownloadFileButton } from "./shared"; +import { useDialogRef, Dialog, InfoDetails, DownloadFileButton } from "./shared"; +import { Button } from "@components/globals"; import Markdown from "markdown-to-jsx"; export const ShareModalUnauthenticated = ({ diff --git a/components/form-builder/app/branding/Branding.tsx b/components/form-builder/app/branding/Branding.tsx index ff567b75fb..a89c072946 100644 --- a/components/form-builder/app/branding/Branding.tsx +++ b/components/form-builder/app/branding/Branding.tsx @@ -8,7 +8,8 @@ import { Logos, options } from "./"; import { useTemplateStore } from "../../store"; import { SettingsLoggedOut } from "../SettingsLoggedOut"; import { useTemplateApi } from "../../hooks"; -import { Button, toast } from "../shared"; +import { toast } from "../shared"; +import { Button } from "@components/globals"; import Brand from "@components/globals/Brand"; const Label = ({ htmlFor, children }: { htmlFor: string; children?: JSX.Element | string }) => { diff --git a/components/form-builder/app/edit/Modal.tsx b/components/form-builder/app/edit/Modal.tsx index e369c606a7..04b13986a7 100644 --- a/components/form-builder/app/edit/Modal.tsx +++ b/components/form-builder/app/edit/Modal.tsx @@ -2,7 +2,7 @@ import React, { useEffect, useRef, createContext, useContext, useCallback } from import { useTranslation } from "next-i18next"; import PropTypes from "prop-types"; -import { Button } from "../shared"; +import { Button } from "@components/globals"; import { Close } from "../../icons"; import { CDSHTMLDialogElement } from "../../types"; import { useModalStore } from "../../store"; diff --git a/components/form-builder/app/edit/MoreModal.tsx b/components/form-builder/app/edit/MoreModal.tsx index c743785457..6962f827d1 100644 --- a/components/form-builder/app/edit/MoreModal.tsx +++ b/components/form-builder/app/edit/MoreModal.tsx @@ -3,7 +3,7 @@ import { useTranslation } from "next-i18next"; import { FormElementWithIndex } from "../../types"; import { useTemplateStore, useModalStore } from "../../store"; -import { Button } from "../shared"; +import { Button } from "@components/globals"; import { Modal } from "./index"; import { ModalButton, ModalForm } from "./index"; import { useRefsContext } from "@formbuilder/app/edit/RefsContext"; diff --git a/components/form-builder/app/edit/elements/Option.tsx b/components/form-builder/app/edit/elements/Option.tsx index d28943079e..87701ec9c6 100644 --- a/components/form-builder/app/edit/elements/Option.tsx +++ b/components/form-builder/app/edit/elements/Option.tsx @@ -4,7 +4,7 @@ import { useTranslation } from "next-i18next"; import debounce from "lodash.debounce"; import { Close } from "../../../icons"; -import { Button } from "../../shared/Button"; +import { Button } from "@components/globals"; import { Input } from "../../shared/Input"; import { useTemplateStore } from "../../../store/useTemplateStore"; import { Language } from "../../../types"; diff --git a/components/form-builder/app/edit/elements/Options.tsx b/components/form-builder/app/edit/elements/Options.tsx index 3fd1539f3c..5b2410a9a7 100644 --- a/components/form-builder/app/edit/elements/Options.tsx +++ b/components/form-builder/app/edit/elements/Options.tsx @@ -4,7 +4,7 @@ import { useTranslation } from "next-i18next"; import { useTemplateStore } from "../../../store/useTemplateStore"; import { Option } from "./Option"; -import { Button } from "../../shared/Button"; +import { Button } from "@components/globals"; import { FormElementWithIndex } from "../../../types"; const AddButton = ({ index, onClick }: { index: number; onClick: (index: number) => void }) => { diff --git a/components/form-builder/app/edit/elements/SubOption.tsx b/components/form-builder/app/edit/elements/SubOption.tsx index 3a497c5c18..bb9937d7da 100644 --- a/components/form-builder/app/edit/elements/SubOption.tsx +++ b/components/form-builder/app/edit/elements/SubOption.tsx @@ -3,7 +3,7 @@ import { useTranslation } from "next-i18next"; import debounce from "lodash.debounce"; import { Close } from "../../../icons"; -import { Button } from "../../shared/Button"; +import { Button } from "@components/globals"; import { Input } from "../../shared/Input"; import { useTemplateStore } from "../../../store/useTemplateStore"; import { Language } from "../../../types"; diff --git a/components/form-builder/app/edit/elements/SubOptions.tsx b/components/form-builder/app/edit/elements/SubOptions.tsx index 2b3c63f542..d1e304d4fd 100644 --- a/components/form-builder/app/edit/elements/SubOptions.tsx +++ b/components/form-builder/app/edit/elements/SubOptions.tsx @@ -3,7 +3,7 @@ import { useTranslation } from "next-i18next"; import { useTemplateStore } from "../../../store/useTemplateStore"; import { SubOption } from "./SubOption"; -import { Button } from "../../shared/Button"; +import { Button } from "@components/globals"; import { FormElementWithIndex } from "../../../types"; const AddButton = ({ diff --git a/components/form-builder/app/edit/elements/element-dialog/AddElementButton.tsx b/components/form-builder/app/edit/elements/element-dialog/AddElementButton.tsx index 14bcf2ca0e..5c4a63658c 100644 --- a/components/form-builder/app/edit/elements/element-dialog/AddElementButton.tsx +++ b/components/form-builder/app/edit/elements/element-dialog/AddElementButton.tsx @@ -2,7 +2,7 @@ import React, { useCallback, useState } from "react"; import { useTranslation } from "next-i18next"; import { FormElementTypes } from "@lib/types"; -import { Button } from "../../../shared/Button"; +import { Button } from "@components/globals"; import { ElementDialog } from "./ElementDialog"; import { ElementOptionsFilter } from "../../../../types"; import { AddIcon } from "@components/form-builder/icons"; diff --git a/components/form-builder/app/edit/elements/element-dialog/ElementDescription.tsx b/components/form-builder/app/edit/elements/element-dialog/ElementDescription.tsx index 9c1f218f01..b1e13581b0 100644 --- a/components/form-builder/app/edit/elements/element-dialog/ElementDescription.tsx +++ b/components/form-builder/app/edit/elements/element-dialog/ElementDescription.tsx @@ -2,7 +2,7 @@ import React from "react"; import { FormElementTypes } from "@lib/types"; import { useTranslation } from "next-i18next"; -import { Button } from "../../../shared"; +import { Button } from "@components/globals"; export const ElementDescription = ({ id, diff --git a/components/form-builder/app/edit/elements/sub-elements/SubElementModal.tsx b/components/form-builder/app/edit/elements/sub-elements/SubElementModal.tsx index bfc9c65141..9385002741 100644 --- a/components/form-builder/app/edit/elements/sub-elements/SubElementModal.tsx +++ b/components/form-builder/app/edit/elements/sub-elements/SubElementModal.tsx @@ -5,7 +5,7 @@ import { ElementProperties } from "@lib/types"; import { ModalForm, ModalButton } from "../../index"; import { FormElementWithIndex } from "../../../../types"; import { useModalStore, useTemplateStore } from "../../../../store"; -import { Button } from "../../../shared"; +import { Button } from "@components/globals"; import { Modal } from "../../Modal"; export const SubElementModal = ({ diff --git a/components/form-builder/app/navigation/ShareDropdown.tsx b/components/form-builder/app/navigation/ShareDropdown.tsx index 3cef455a03..360c045d57 100644 --- a/components/form-builder/app/navigation/ShareDropdown.tsx +++ b/components/form-builder/app/navigation/ShareDropdown.tsx @@ -9,7 +9,7 @@ import { ChevronDown, ChevronRight, ShareIcon, LinkIcon } from "../../icons"; import { useTemplateStore } from "../../store/useTemplateStore"; import { ShareModal } from "../ShareModal"; import { LinksSubMenu } from "./LinksSubMenu"; -import { Button } from "../shared/Button"; +import { Button } from "@components/globals"; import { ShareModalUnauthenticated } from ".."; export const ShareDropdown = () => { diff --git a/components/form-builder/app/responses/DownloadTableDialog.tsx b/components/form-builder/app/responses/DownloadTableDialog.tsx index 9d21c6bb44..b9909373d2 100644 --- a/components/form-builder/app/responses/DownloadTableDialog.tsx +++ b/components/form-builder/app/responses/DownloadTableDialog.tsx @@ -1,6 +1,7 @@ import React, { useState } from "react"; import { useTranslation } from "next-i18next"; -import { Button, useDialogRef, Dialog, LineItemEntries } from "@components/form-builder/app/shared"; +import { useDialogRef, Dialog, LineItemEntries } from "@components/form-builder/app/shared"; +import { Button } from "@components/globals"; import { randomId } from "@lib/clientHelpers"; import axios from "axios"; import { useRouter } from "next/router"; diff --git a/components/form-builder/app/shared/ConfirmFormDeleteDialog.tsx b/components/form-builder/app/shared/ConfirmFormDeleteDialog.tsx index 8d1ff2813e..b1ea9cb2a9 100644 --- a/components/form-builder/app/shared/ConfirmFormDeleteDialog.tsx +++ b/components/form-builder/app/shared/ConfirmFormDeleteDialog.tsx @@ -5,10 +5,9 @@ import Image from "next/image"; import Link from "next/link"; import Loader from "@components/globals/Loader"; -import { Button } from "./Button"; +import { Button, themes } from "@components/globals"; import { useDialogRef, Dialog } from "./Dialog"; import { DownloadFileButton } from "./DownloadFileButton"; -import { themes } from "../shared/Button"; import { Attention, AttentionTypes } from "@components/globals/Attention/Attention"; const fetcher = async (url: string) => { diff --git a/components/form-builder/app/shared/CopyToClipboard.tsx b/components/form-builder/app/shared/CopyToClipboard.tsx index b4ed809f9f..cabfa95979 100644 --- a/components/form-builder/app/shared/CopyToClipboard.tsx +++ b/components/form-builder/app/shared/CopyToClipboard.tsx @@ -2,7 +2,8 @@ import React from "react"; import { useTranslation } from "next-i18next"; import { useTemplateStore } from "../../store/useTemplateStore"; -import { Button, withMessage } from "./Button"; +import { withMessage } from "./WithMessage"; +import { Button } from "@components/globals"; export const CopyToClipboard = () => { const { t } = useTranslation("form-builder"); diff --git a/components/form-builder/app/shared/Dialog.tsx b/components/form-builder/app/shared/Dialog.tsx index 9a8cbf5384..850b39c826 100644 --- a/components/form-builder/app/shared/Dialog.tsx +++ b/components/form-builder/app/shared/Dialog.tsx @@ -1,7 +1,7 @@ import React, { useCallback, useEffect, useRef, useState } from "react"; import { CDSHTMLDialogElement } from "../../types"; import { useTranslation } from "next-i18next"; -import { Button } from "./Button"; +import { Button } from "@components/globals"; import { Close } from "../../icons/Close"; export const useDialogRef = () => { diff --git a/components/form-builder/app/shared/DownloadFileButton.tsx b/components/form-builder/app/shared/DownloadFileButton.tsx index c45613f1be..d169dfeec0 100644 --- a/components/form-builder/app/shared/DownloadFileButton.tsx +++ b/components/form-builder/app/shared/DownloadFileButton.tsx @@ -2,7 +2,7 @@ import React, { useCallback, useState } from "react"; import { useTranslation } from "next-i18next"; import Image from "next/image"; -import { Button } from "./Button"; +import { Button } from "@components/globals"; import { useTemplateStore } from "../../store"; import { useDialogRef, Dialog } from "../shared"; import { InfoIcon } from "../../icons"; diff --git a/components/form-builder/app/shared/ResponseDeliveryHelpDialog.tsx b/components/form-builder/app/shared/ResponseDeliveryHelpDialog.tsx index 1fbe042c52..8994a80ec1 100644 --- a/components/form-builder/app/shared/ResponseDeliveryHelpDialog.tsx +++ b/components/form-builder/app/shared/ResponseDeliveryHelpDialog.tsx @@ -1,7 +1,7 @@ import React, { useCallback, useState } from "react"; import { useTranslation } from "next-i18next"; -import { Button } from "./Button"; +import { Button } from "@components/globals"; import { useDialogRef, Dialog } from "../shared"; import { InfoIcon } from "../../icons"; diff --git a/components/form-builder/app/shared/SaveButton.tsx b/components/form-builder/app/shared/SaveButton.tsx index 6807df4f03..e30e9364db 100644 --- a/components/form-builder/app/shared/SaveButton.tsx +++ b/components/form-builder/app/shared/SaveButton.tsx @@ -3,7 +3,7 @@ import { useRouter } from "next/router"; import { useTranslation } from "next-i18next"; import { useSession } from "next-auth/react"; -import { Button } from "../shared"; +import { Button } from "@components/globals"; import { useTemplateStore } from "../../store"; import { useAllowPublish, useTemplateStatus, useTemplateContext } from "../../hooks"; import { formatDateTime } from "../../util"; diff --git a/components/form-builder/app/shared/Button.tsx b/components/form-builder/app/shared/WithMessage.tsx similarity index 52% rename from components/form-builder/app/shared/Button.tsx rename to components/form-builder/app/shared/WithMessage.tsx index 6a8aac9d47..dfa32129be 100644 --- a/components/form-builder/app/shared/Button.tsx +++ b/components/form-builder/app/shared/WithMessage.tsx @@ -1,19 +1,6 @@ -import React, { ReactElement, useState } from "react"; +import React, { useState } from "react"; import PropTypes from "prop-types"; -export const themes = { - base: "py-2 px-5 rounded-lg border-2 border-solid inline-flex items-center active:top-0.5 focus:outline-[3px] focus:outline-blue-focus focus:outline focus:outline-offset-2 focus:bg-blue-focus focus:text-white-default disabled:cursor-not-allowed disabled:text-gray-500 disabled:!border-grey-default", - htmlLink: "visited:text-white-default no-underline active:shadow-none focus:shadow-none", - primary: - "bg-blue-dark text-white-default border-black-default hover:text-white-default hover:bg-blue-light active:text-white-default active:bg-blue-active", - secondary: - "bg-white-default text-black-default border-black-default hover:text-white-default hover:bg-gray-600 active:text-white-default active:bg-gray-500", - destructive: - "bg-red-default text-white-default border-red-default hover:bg-red-destructive hover:border-red-destructive active:bg-red-hover focus:border-blue-hover", - link: "!p-0 !border-none text-black-default underline bg-transparent hover:no-underline focus:!text-white-default", - icon: "!border-none bg-gray-selected hover:bg-gray-600 !rounded-full max-h-9 !p-1.5 ml-1.5", -}; - export const SuccessAlert = ({ successMessage, showMessage, @@ -36,53 +23,6 @@ export const SuccessAlert = ({ ); }; -export const Button = ({ - children, - onClick, - className, - id, - icon, - iconWrapperClassName, - disabled = false, - "aria-label": ariaLabel = undefined, - theme = "primary", - tabIndex = 0, - buttonRef, - dataTestId, -}: { - children?: JSX.Element | string; - id?: string; - onClick?: (e: React.MouseEvent) => void; - icon?: ReactElement; - className?: string; - iconWrapperClassName?: string; - disabled?: boolean; - "aria-label"?: string; - theme?: "primary" | "secondary" | "destructive" | "link" | "icon"; - tabIndex?: number; - buttonRef?: (el: HTMLButtonElement) => void; - dataTestId?: string; -}) => ( - -); - // eslint-disable-next-line @typescript-eslint/no-explicit-any type CallBack = (...args: any[]) => void; diff --git a/components/form-builder/app/shared/index.ts b/components/form-builder/app/shared/index.ts index 402e23d0d3..84d8eb8eb6 100644 --- a/components/form-builder/app/shared/index.ts +++ b/components/form-builder/app/shared/index.ts @@ -1,4 +1,3 @@ -export { Button } from "./Button"; export { ConfirmFormDeleteDialog } from "./ConfirmFormDeleteDialog"; export { Dialog, useDialogRef } from "./Dialog"; export { Input } from "./Input"; diff --git a/components/form-builder/app/translate/DownloadCSV.tsx b/components/form-builder/app/translate/DownloadCSV.tsx index 4056b492bc..fb72a7f50d 100644 --- a/components/form-builder/app/translate/DownloadCSV.tsx +++ b/components/form-builder/app/translate/DownloadCSV.tsx @@ -1,7 +1,7 @@ import React from "react"; import { useTranslation } from "next-i18next"; import { useTemplateStore } from "../../store/useTemplateStore"; -import { Button } from "../shared/Button"; +import { Button } from "@components/globals"; import { FormElement } from "@lib/types"; import { getDate, slugify } from "@lib/clientHelpers"; import { alphabet } from "../../util"; diff --git a/components/forms/Button/Button.stories.tsx b/components/forms/Button/Button.stories.tsx deleted file mode 100644 index 315b5bc108..0000000000 --- a/components/forms/Button/Button.stories.tsx +++ /dev/null @@ -1,29 +0,0 @@ -import React from "react"; -import { Button } from "@components/forms"; - -export default { - title: "Forms/Button", - component: Button, -}; - -export const defaultButton = (): React.ReactElement => ; - -export const secondaryButton = (): React.ReactElement => ( - -); - -export const destructiveButton = (): React.ReactElement => ( - -); - -defaultButton.parameters = { - docs: { - source: { - code: '', - }, - }, -}; diff --git a/components/globals/Buttons/Button.tsx b/components/globals/Buttons/Button.tsx new file mode 100644 index 0000000000..f3a163e88c --- /dev/null +++ b/components/globals/Buttons/Button.tsx @@ -0,0 +1,49 @@ +import React, { ReactElement } from "react"; +import { themes } from "./themes"; + +export const Button = ({ + children, + onClick, + className, + id, + icon, + iconWrapperClassName, + disabled = false, + "aria-label": ariaLabel = undefined, + theme = "primary", + tabIndex = 0, + buttonRef, + dataTestId, +}: { + children?: JSX.Element | string; + id?: string; + onClick?: (e: React.MouseEvent) => void; + icon?: ReactElement; + className?: string; + iconWrapperClassName?: string; + disabled?: boolean; + "aria-label"?: string; + theme?: "primary" | "secondary" | "destructive" | "link" | "icon"; + tabIndex?: number; + buttonRef?: (el: HTMLButtonElement) => void; + dataTestId?: string; +}) => ( + +); diff --git a/components/globals/Buttons/index.ts b/components/globals/Buttons/index.ts new file mode 100644 index 0000000000..7c93fc7ecf --- /dev/null +++ b/components/globals/Buttons/index.ts @@ -0,0 +1,2 @@ +export { themes } from "./themes"; +export { Button } from "./Button"; diff --git a/components/globals/Buttons/themes.ts b/components/globals/Buttons/themes.ts new file mode 100644 index 0000000000..23dd314363 --- /dev/null +++ b/components/globals/Buttons/themes.ts @@ -0,0 +1,12 @@ +export const themes = { + base: "py-2 px-5 rounded-lg border-2 border-solid inline-flex items-center active:top-0.5 focus:outline-[3px] focus:outline-blue-focus focus:outline focus:outline-offset-2 focus:bg-blue-focus focus:text-white-default disabled:cursor-not-allowed disabled:text-gray-500 disabled:!border-grey-default", + htmlLink: "visited:text-white-default no-underline active:shadow-none focus:shadow-none", + primary: + "bg-blue-dark text-white-default border-black-default hover:text-white-default hover:bg-blue-light active:text-white-default active:bg-blue-active", + secondary: + "bg-white-default text-black-default border-black-default hover:text-white-default hover:bg-gray-600 active:text-white-default active:bg-gray-500", + destructive: + "bg-red-default text-white-default border-red-default hover:bg-red-destructive hover:border-red-destructive active:bg-red-hover focus:border-blue-hover", + link: "!p-0 !border-none text-black-default underline bg-transparent hover:no-underline focus:!text-white-default", + icon: "!border-none bg-gray-selected hover:bg-gray-600 !rounded-full max-h-9 !p-1.5 ml-1.5", +}; diff --git a/components/globals/index.ts b/components/globals/index.ts new file mode 100644 index 0000000000..0122f6ff4b --- /dev/null +++ b/components/globals/index.ts @@ -0,0 +1 @@ +export { themes, Button } from "./Buttons"; From 5e162fd8481a1adc8b2b9e74dc062efe3db9fbf7 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 9 May 2023 13:57:42 +0000 Subject: [PATCH 08/19] chore(deps): update all non-major github action dependencies (#2062) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/codeql-analysis.yml | 6 +++--- .github/workflows/cypress.yml | 2 +- .github/workflows/docker-vulnerability-scan.yml | 4 ++-- .github/workflows/eslint.yml | 4 ++-- .github/workflows/jest.yml | 2 +- .github/workflows/prod-build-push-container.yml | 4 ++-- .github/workflows/staging-build-push-container.yml | 4 ++-- .github/workflows/staging-deploy.yml | 6 +++--- 8 files changed, 16 insertions(+), 16 deletions(-) diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index 7c3ed60184..d0880f3631 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -31,7 +31,7 @@ jobs: # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL - uses: github/codeql-action/init@b2c19fb9a2a485599ccf4ed5d65527d94bc57226 # v2.3.0 + uses: github/codeql-action/init@f3feb00acb00f31a6f60280e6ace9ca31d91c76a # v2.3.2 with: languages: ${{ matrix.language }} # If you wish to specify custom queries, you can do so here or in a config file. @@ -42,7 +42,7 @@ jobs: # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). # If this step fails, then you should remove it and run the build manually (see below) - name: Autobuild - uses: github/codeql-action/autobuild@b2c19fb9a2a485599ccf4ed5d65527d94bc57226 # v2.3.0 + uses: github/codeql-action/autobuild@f3feb00acb00f31a6f60280e6ace9ca31d91c76a # v2.3.2 # ℹ️ Command-line programs to run using the OS shell. # 📚 https://git.io/JvXDl @@ -56,4 +56,4 @@ jobs: # make release - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@b2c19fb9a2a485599ccf4ed5d65527d94bc57226 # v2.3.0 + uses: github/codeql-action/analyze@f3feb00acb00f31a6f60280e6ace9ca31d91c76a # v2.3.2 diff --git a/.github/workflows/cypress.yml b/.github/workflows/cypress.yml index 42fac15624..64da230475 100644 --- a/.github/workflows/cypress.yml +++ b/.github/workflows/cypress.yml @@ -50,7 +50,7 @@ jobs: id: yarn-cache-dir-path run: echo "dir=$(yarn cache dir)" >> $GITHUB_OUTPUT - - uses: actions/cache@v3 + - uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1 id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} diff --git a/.github/workflows/docker-vulnerability-scan.yml b/.github/workflows/docker-vulnerability-scan.yml index dc4be27d48..ef021e3cfc 100644 --- a/.github/workflows/docker-vulnerability-scan.yml +++ b/.github/workflows/docker-vulnerability-scan.yml @@ -14,7 +14,7 @@ jobs: steps: - name: Configure Staging AWS credentials id: aws-form-viewer - uses: aws-actions/configure-aws-credentials@82ea2d2853906c3fe78152101e590fa6caeb5f82 + uses: aws-actions/configure-aws-credentials@580afbba8076b302fad6220e95a3a845f32b165a with: aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} @@ -22,7 +22,7 @@ jobs: - name: Login to Staging Amazon ECR id: login-ecr-staging - uses: aws-actions/amazon-ecr-login@a1d6e39e3457a150e0fff2455c74032ceeff69a6 + uses: aws-actions/amazon-ecr-login@b97dae3ef66534f4a36bd521c0cc6ffc1e49ca50 - name: Docker vulnerability scan uses: cds-snc/security-tools/.github/actions/docker-scan@cfec0943e40dbb78cee115bbbe89dc17f07b7a0f # v2.1.3 diff --git a/.github/workflows/eslint.yml b/.github/workflows/eslint.yml index cab9f8d167..d0f8a7c938 100644 --- a/.github/workflows/eslint.yml +++ b/.github/workflows/eslint.yml @@ -19,7 +19,7 @@ jobs: id: yarn-cache-dir-path run: echo "dir=$(yarn cache dir)" >> $GITHUB_OUTPUT - - uses: actions/cache@v3 + - uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1 id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} @@ -51,7 +51,7 @@ jobs: id: yarn-cache-dir-path run: echo "dir=$(yarn cache dir)" >> $GITHUB_OUTPUT - - uses: actions/cache@v3 + - uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1 id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} diff --git a/.github/workflows/jest.yml b/.github/workflows/jest.yml index 13d6f75e6a..72f05aedb3 100644 --- a/.github/workflows/jest.yml +++ b/.github/workflows/jest.yml @@ -18,7 +18,7 @@ jobs: id: yarn-cache-dir-path run: echo "dir=$(yarn cache dir)" >> $GITHUB_OUTPUT - - uses: actions/cache@v3 + - uses: actions/cache@88522ab9f39a2ea568f7027eddc7d8d8bc9d59c8 # v3.3.1 id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) with: path: ${{ steps.yarn-cache-dir-path.outputs.dir }} diff --git a/.github/workflows/prod-build-push-container.yml b/.github/workflows/prod-build-push-container.yml index b4d117a489..60b7fd1ed1 100644 --- a/.github/workflows/prod-build-push-container.yml +++ b/.github/workflows/prod-build-push-container.yml @@ -36,7 +36,7 @@ jobs: - name: Configure Production AWS credentials id: aws-form-viewer - uses: aws-actions/configure-aws-credentials@82ea2d2853906c3fe78152101e590fa6caeb5f82 + uses: aws-actions/configure-aws-credentials@580afbba8076b302fad6220e95a3a845f32b165a with: aws-access-key-id: ${{ secrets.PROD_AWS_ACCESS_KEY_ID }} aws-secret-access-key: ${{ secrets.PROD_AWS_SECRET_ACCESS_KEY }} @@ -44,7 +44,7 @@ jobs: - name: Login to Production Amazon ECR id: login-ecr-production - uses: aws-actions/amazon-ecr-login@a1d6e39e3457a150e0fff2455c74032ceeff69a6 + uses: aws-actions/amazon-ecr-login@b97dae3ef66534f4a36bd521c0cc6ffc1e49ca50 - name: Tag Images for Production env: diff --git a/.github/workflows/staging-build-push-container.yml b/.github/workflows/staging-build-push-container.yml index 5e86967cea..4ae30f82ad 100644 --- a/.github/workflows/staging-build-push-container.yml +++ b/.github/workflows/staging-build-push-container.yml @@ -35,7 +35,7 @@ jobs: - name: Configure Staging AWS credentials id: aws-form-viewer - uses: aws-actions/configure-aws-credentials@82ea2d2853906c3fe78152101e590fa6caeb5f82 + uses: aws-actions/configure-aws-credentials@580afbba8076b302fad6220e95a3a845f32b165a with: aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} @@ -43,7 +43,7 @@ jobs: - name: Login to Staging Amazon ECR id: login-ecr-staging - uses: aws-actions/amazon-ecr-login@a1d6e39e3457a150e0fff2455c74032ceeff69a6 + uses: aws-actions/amazon-ecr-login@b97dae3ef66534f4a36bd521c0cc6ffc1e49ca50 - name: Tag Images for Staging env: diff --git a/.github/workflows/staging-deploy.yml b/.github/workflows/staging-deploy.yml index fd217e5e78..818efe2af7 100644 --- a/.github/workflows/staging-deploy.yml +++ b/.github/workflows/staging-deploy.yml @@ -26,7 +26,7 @@ jobs: - name: Configure AWS credentials # v1 as of Jan 28 2021 - uses: aws-actions/configure-aws-credentials@82ea2d2853906c3fe78152101e590fa6caeb5f82 + uses: aws-actions/configure-aws-credentials@580afbba8076b302fad6220e95a3a845f32b165a with: aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} @@ -35,7 +35,7 @@ jobs: - name: Login to Amazon ECR id: login-ecr # v1 as of Jan 28 2021 - uses: aws-actions/amazon-ecr-login@a1d6e39e3457a150e0fff2455c74032ceeff69a6 + uses: aws-actions/amazon-ecr-login@b97dae3ef66534f4a36bd521c0cc6ffc1e49ca50 - name: Get Cluster Name id: cluster @@ -67,7 +67,7 @@ jobs: - name: Deploy image for Form Viewer timeout-minutes: 10 # v1.4.11 - uses: aws-actions/amazon-ecs-deploy-task-definition@290c43e7b1deae23e799b76e42b5cfcbc2f8f4cb + uses: aws-actions/amazon-ecs-deploy-task-definition@68ea58cf6c1f592af588267ee8f6084284e95a86 with: task-definition: ${{ steps.taskdef-form-viewer.outputs.task-definition }} service: form-viewer From 7aeb4ee3ed9d94682acb2103fef853d7ddd8da5f Mon Sep 17 00:00:00 2001 From: Anik Brazeau <38330843+anikbrazeau@users.noreply.github.com> Date: Tue, 9 May 2023 10:34:44 -0400 Subject: [PATCH 09/19] Downloadable responses setting on card (#2068) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * make message more generic to avoid confusion * sentence case --------- Co-authored-by: Clément JANIN Co-authored-by: Tim Arney --- public/static/locales/en/form-builder.json | 2 +- public/static/locales/en/my-forms.json | 4 ++-- public/static/locales/fr/my-forms.json | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/public/static/locales/en/form-builder.json b/public/static/locales/en/form-builder.json index 8383aaf4c4..095c8cc28a 100644 --- a/public/static/locales/en/form-builder.json +++ b/public/static/locales/en/form-builder.json @@ -464,7 +464,7 @@ "text2": "sign into your account", "text3": "If you do not have a GC Forms account, ", "text4": "create one now", - "signinButton": "Sign In", + "signinButton": "Sign in", "createButton": "Create an account" }, "emailSubjectEn": { diff --git a/public/static/locales/en/my-forms.json b/public/static/locales/en/my-forms.json index df52b52a54..e39ae9d0f0 100644 --- a/public/static/locales/en/my-forms.json +++ b/public/static/locales/en/my-forms.json @@ -25,8 +25,8 @@ }, "lastEdited": "Last edited", "deliveryOption": { - "email": "Responses sent to :", - "vault": "Form responses available for download" + "email": "Responses get sent to:", + "vault": "Responses page" }, "menu": { "more": "More", diff --git a/public/static/locales/fr/my-forms.json b/public/static/locales/fr/my-forms.json index c54f80a273..b8c944c65a 100644 --- a/public/static/locales/fr/my-forms.json +++ b/public/static/locales/fr/my-forms.json @@ -26,7 +26,7 @@ "lastEdited": "Dernière modification ", "deliveryOption": { "email": "Réponses envoyées à :", - "vault": "Téléchargement des réponses au formulaire" + "vault": "Page Réponses" }, "menu": { "more": "Plus", From b5a407ca57ffc44f2c8828a2ff5fd0a684f7697e Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 9 May 2023 14:46:52 +0000 Subject: [PATCH 10/19] chore(deps): update all non-major docker images (#2061) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Bryan Robitaille --- .devcontainer/Dockerfile | 2 +- .devcontainer/docker-compose.yml | 2 +- Dockerfile | 8 ++++---- docker-compose.yml | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index f7971d0a88..e39f918f12 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,4 +1,4 @@ -ARG VARIANT=16@sha256:c94897fb8f81904dff61bc9e2f25eb66124c3b802afeb3f3ee48f82a3986fe64@sha256:b35e76ba744a975b9a5428b6c3cde1a1cf0be53b246e1e9a4874f87034222b5a@sha256:b35e76ba744a975b9a5428b6c3cde1a1cf0be53b246e1e9a4874f87034222b5a +ARG VARIANT=16@sha256:550f484fc5f314b575f5e397c9e2c71d7f218e59729fcda9ffa7ea1fc825dce7@sha256:b35e76ba744a975b9a5428b6c3cde1a1cf0be53b246e1e9a4874f87034222b5a@sha256:b35e76ba744a975b9a5428b6c3cde1a1cf0be53b246e1e9a4874f87034222b5a FROM node:${VARIANT} diff --git a/.devcontainer/docker-compose.yml b/.devcontainer/docker-compose.yml index 441b17f3d0..3be62357fa 100644 --- a/.devcontainer/docker-compose.yml +++ b/.devcontainer/docker-compose.yml @@ -30,7 +30,7 @@ services: redis: restart: unless-stopped - image: redis:latest@sha256:93a5ed8cdfa909a12cb41e5605c147756b804a9fe38376f8afed133f427ea828 + image: redis:latest@sha256:ea30bef6a1424d032295b90db20a869fc8db76331091543b7a80175cede7d887 ports: - "6379:6379" expose: diff --git a/Dockerfile b/Dockerfile index 69906532d0..0ac3356114 100755 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM node:16@sha256:e64998c9e7912aa74647c1d8779cea6dc7ff017327265fb6855522270eab80e4 +FROM node:16@sha256:550f484fc5f314b575f5e397c9e2c71d7f218e59729fcda9ffa7ea1fc825dce7 ENV NODE_ENV=production @@ -15,19 +15,19 @@ RUN yarn install --silent --production=false RUN yarn build RUN yarn install --production -FROM node:16@sha256:e64998c9e7912aa74647c1d8779cea6dc7ff017327265fb6855522270eab80e4 +FROM node:16@sha256:550f484fc5f314b575f5e397c9e2c71d7f218e59729fcda9ffa7ea1fc825dce7 COPY migrations /src WORKDIR /src RUN yarn install --silent -FROM node:16@sha256:e64998c9e7912aa74647c1d8779cea6dc7ff017327265fb6855522270eab80e4 +FROM node:16@sha256:550f484fc5f314b575f5e397c9e2c71d7f218e59729fcda9ffa7ea1fc825dce7 COPY flag_initialization /src WORKDIR /src RUN yarn install --silent -FROM node:16@sha256:e64998c9e7912aa74647c1d8779cea6dc7ff017327265fb6855522270eab80e4 +FROM node:16@sha256:550f484fc5f314b575f5e397c9e2c71d7f218e59729fcda9ffa7ea1fc825dce7 LABEL maintainer="-" ARG GOOGLE_CLIENT_ID diff --git a/docker-compose.yml b/docker-compose.yml index 4980e7799f..308c2f22e4 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -17,7 +17,7 @@ services: restart: always redis: restart: always - image: redis:latest@sha256:93a5ed8cdfa909a12cb41e5605c147756b804a9fe38376f8afed133f427ea828 + image: redis:latest@sha256:ea30bef6a1424d032295b90db20a869fc8db76331091543b7a80175cede7d887 ports: - "6379:6379" expose: From 53b9150533909a2b8db0b8a91e6bef8f661b1c24 Mon Sep 17 00:00:00 2001 From: Tim Arney Date: Wed, 10 May 2023 11:04:29 -0400 Subject: [PATCH 11/19] Button styling (#2078) styling --- components/globals/Buttons/themes.ts | 10 +++++----- tailwind.config.js | 8 +++++--- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/components/globals/Buttons/themes.ts b/components/globals/Buttons/themes.ts index 23dd314363..db8d4db146 100644 --- a/components/globals/Buttons/themes.ts +++ b/components/globals/Buttons/themes.ts @@ -1,12 +1,12 @@ export const themes = { - base: "py-2 px-5 rounded-lg border-2 border-solid inline-flex items-center active:top-0.5 focus:outline-[3px] focus:outline-blue-focus focus:outline focus:outline-offset-2 focus:bg-blue-focus focus:text-white-default disabled:cursor-not-allowed disabled:text-gray-500 disabled:!border-grey-default", + base: "py-2 px-5 rounded-lg border-2 border-solid inline-flex items-center active:top-0.5 focus:outline-[3px] focus:outline-blue-focus focus:outline focus:outline-offset-2 focus:bg-blue-focus focus:border-blue-active focus:text-white-default active:text-white-default active:bg-blue-active active:outline-[3px] active:outline-blue-focus active:outline-offset-2 active:bg-blue-focus disabled:cursor-not-allowed disabled:text-gray-dark disabled:bg-gray-light disabled:!border-none", htmlLink: "visited:text-white-default no-underline active:shadow-none focus:shadow-none", primary: - "bg-blue-dark text-white-default border-black-default hover:text-white-default hover:bg-blue-light active:text-white-default active:bg-blue-active", + "bg-blue-default border-blue text-white-default hover:text-white-default hover:bg-blue-light hover:border-blue-light", secondary: - "bg-white-default text-black-default border-black-default hover:text-white-default hover:bg-gray-600 active:text-white-default active:bg-gray-500", + "bg-white-default text-blue-default visited:text-blue-default border-blue-default hover:text-white-default hover:bg-gray-600", destructive: - "bg-red-default text-white-default border-red-default hover:bg-red-destructive hover:border-red-destructive active:bg-red-hover focus:border-blue-hover", - link: "!p-0 !border-none text-black-default underline bg-transparent hover:no-underline focus:!text-white-default", + "bg-red-destructive text-white-default border-red-destructive hover:bg-red-hover hover:border-red-hover", + link: "!p-0 !border-none text-blue-default underline bg-transparent hover:no-underline focus:!text-white-default", icon: "!border-none bg-gray-selected hover:bg-gray-600 !rounded-full max-h-9 !p-1.5 ml-1.5", }; diff --git a/tailwind.config.js b/tailwind.config.js index 5aea14321f..dad9df8d0e 100644 --- a/tailwind.config.js +++ b/tailwind.config.js @@ -44,8 +44,8 @@ module.exports = { DEFAULT: "#b10e1e", default: "#b10e1e", 100: "#f3e9e8", - destructive: "#892406", - hover: "#4E1504", + destructive: "#BC3331", + hover: "#892406", }, purple: { ...colors.violet, @@ -63,7 +63,7 @@ module.exports = { light: "#335075", hover: "#0535D2", focus: "#303FC3", - active: "#1B2736", + active: "#303FC3", 100: "#B2E3FF", 200: "#DFF8FD", 300: "#4B98B2", @@ -79,6 +79,8 @@ module.exports = { selected: "#e1e4e7", text: "#585858", background: "#f4f4f4", + light: "#E2E8EF", + dark: "#748094", 500: "#a0aec0", 600: "#718096", 700: "#4a5568", From 9718eb460fd498ab70780560ba03731d17e37538 Mon Sep 17 00:00:00 2001 From: Anik Brazeau <38330843+anikbrazeau@users.noreply.github.com> Date: Wed, 10 May 2023 12:04:33 -0400 Subject: [PATCH 12/19] Content edits to account flows (#2079) --- pages/signup/register.tsx | 4 ++-- public/static/locales/en/signup.json | 12 ++++++------ public/static/locales/en/unlock-publishing.json | 4 ++-- public/static/locales/fr/signup.json | 12 ++++++------ public/static/locales/fr/unlock-publishing.json | 4 ++-- 5 files changed, 18 insertions(+), 18 deletions(-) diff --git a/pages/signup/register.tsx b/pages/signup/register.tsx index 14dcd55101..d8f94479c9 100644 --- a/pages/signup/register.tsx +++ b/pages/signup/register.tsx @@ -218,8 +218,8 @@ const Register = () => { />

- {t("signUpRegistration.slaAgreement")}  - {t("signUpRegistration.slaAgreementLink")} + {t("signUpRegistration.termsAgreement")}  + {t("signUpRegistration.termsAgreementLink")}

- +
+

{t("title")}

-
-

{t("notSupported.body2")}

+ {referer && ( + <> +

{t("body1")}

+
+
+ {referer}
- +
-
-
- - - ); -}; + + )} -const DefaultPage = ({ lang }: { lang: string }) => { - return ( - <> - {lang == "en" ? ( - GoC - ) : ( - GoC - )} - - ); -}; - -const BrandPage = ({ formData, lang }: { formData: PublicFormRecord; lang: string }) => { - const brand = formData.form?.brand; - - return ( - <> - {" "} - {brand ? ( - lang == "en" ? ( - {brand?.logoTitleEn} - ) : ( - {brand?.logoTitleFr} - ) - ) : ( - <> - )} +
+

{t("body2")}

+
+ + ); }; -NotSupported.getLayout = function (page: ReactElement) { - return <>{page}; -}; - -const getFormIDFromURL = (url: string) => { - const regex = /\/(id.+)/; - const regexResult = url.match(regex); - let splitURLPath; - if (regexResult) { - splitURLPath = regexResult[0].split("/"); - return splitURLPath[splitURLPath.length - 1]; - } -}; - export const getServerSideProps: GetServerSideProps = async (context) => { - const con = context.req.headers; - let localeProps = {}; - let formConfig; - if (context.locale) { - localeProps = await serverSideTranslations(context.locale, ["common", "not-supported"]); - } - if (con.referer) { - const formId = getFormIDFromURL(con.referer); - if (formId) { - //to avoid formInfo cannot be serialized as json if `getServerSideProps` return undefined - formConfig = (await getPublicTemplateByID(formId)) ?? null; - } - return { - props: { - ...(context.locale && localeProps), - lang: context.locale, - formInfo: formConfig, - host: con.host, - }, - }; - } + const referer: string | null = (context.query.referer as string) ?? null; + return { - props: { ...(context.locale && localeProps), lang: context.locale, host: con.host }, + props: { + ...(context.locale && + (await serverSideTranslations(context.locale, ["common", "not-supported"]))), + referer: referer, + }, }; }; diff --git a/public/javascript-disabled.html b/public/javascript-disabled.html new file mode 100644 index 0000000000..c75810cb2c --- /dev/null +++ b/public/javascript-disabled.html @@ -0,0 +1,70 @@ + + + + + + + + You need JavaScript to use this website - JavaScript est requis pour consulter ce site Web + + + + +
+ +
+

You need JavaScript to use this website.

+

+ This browser either does not support JavaScript or scripts are being blocked. +

+ This web browser either does not support JavaScript or is temporarily blocking scripts. + Try using another browser or enabling JavaScript in your browser settings. +

+
+
+
+

Vous avez besoin de JavaScript pour utiliser ce site Web.

+

+ Il est possible que votre navigateur ne prenne pas en charge JavaScript ou qu'il bloque + les scripts. +

+ Ce navigateur Web ne prend pas en charge JavaScript ou bloque temporairement les scripts. + Veuillez essayer d'utiliser un autre navigateur ou d'activer JavaScript dans les + paramètres du navigateur. +

+
+
+ + diff --git a/public/static/locales/en/not-supported.json b/public/static/locales/en/not-supported.json new file mode 100644 index 0000000000..faa74ac914 --- /dev/null +++ b/public/static/locales/en/not-supported.json @@ -0,0 +1,11 @@ +{ + "title": "This Website does not work with Internet Explorer 11", + "body1": "To use this website, copy and paste this link into a different browser", + "copy-link": "Copy Link", + "body2": "Download one of these browsers if you don't already have one", + "safari-description": "(Only for Apple devices)", + "chrome-link": "https://www.google.com/intl/en_ca/chrome/", + "edge-link": "https://www.microsoft.com/en-us/edge", + "mozilla-link": "https://www.mozilla.org/en-CA/firefox/new/", + "safari-link": "https://support.apple.com/downloads/safari" +} diff --git a/public/static/locales/fr/not-supported.json b/public/static/locales/fr/not-supported.json new file mode 100644 index 0000000000..1cb6d04832 --- /dev/null +++ b/public/static/locales/fr/not-supported.json @@ -0,0 +1,11 @@ +{ + "title": "Ce site Web ne fonctionne pas sur Internet Explorer 11", + "body1": "Pour accéder au site Web, copiez-collez le lien suivant dans un autre navigateur.", + "copy-link": "Copier le lien", + "body2": "Téléchargez l’un des navigateurs suivants si aucun n’est déjà installé :", + "safari-description": "(Seulement sur les appareils Apple)", + "chrome-link": "https://www.google.com/intl/fr/chrome/", + "edge-link": "https://www.microsoft.com/fr-fr/edge", + "mozilla-link": "https://www.mozilla.org/fr/firefox/new/", + "safari-link": "https://support.apple.com/fr_CA/downloads/safari" +} From 095c4a894965b1a0eda73de84783c6d09193b4b6 Mon Sep 17 00:00:00 2001 From: Tim Arney Date: Wed, 10 May 2023 14:17:17 -0400 Subject: [PATCH 15/19] Update buttons + add ButtonLink component (#2073) update buttons --- components/auth/AcceptableUse.tsx | 10 ++---- components/form-builder/app/Published.tsx | 9 ++--- .../form-builder/app/SettingsLoggedOut.tsx | 25 ++++--------- .../app/shared/ConfirmFormDeleteDialog.tsx | 14 +++----- components/globals/Buttons/Button.tsx | 8 +++-- components/globals/Buttons/LinkButton.tsx | 36 +++++++++++++++++++ components/globals/Buttons/index.ts | 1 + components/globals/Buttons/themes.ts | 4 ++- components/globals/index.ts | 3 +- pages/admin/login.tsx | 2 +- pages/auth/login.tsx | 3 +- pages/auth/logout.tsx | 6 ++-- pages/auth/resetpassword.tsx | 7 ++-- pages/signup/register.tsx | 3 +- 14 files changed, 75 insertions(+), 56 deletions(-) create mode 100644 components/globals/Buttons/LinkButton.tsx diff --git a/components/auth/AcceptableUse.tsx b/components/auth/AcceptableUse.tsx index f1336c0059..fb9835e32d 100644 --- a/components/auth/AcceptableUse.tsx +++ b/components/auth/AcceptableUse.tsx @@ -7,6 +7,7 @@ import { useSession } from "next-auth/react"; import { useRouter } from "next/router"; import { getCsrfToken } from "next-auth/react"; import { localPathRegEx } from "@lib/validation"; +import { Button } from "@components/globals"; interface AcceptableUseProps { content: string; @@ -65,14 +66,9 @@ export const AcceptableUseTerms = ({ {content} - + ) : null; }; diff --git a/components/form-builder/app/Published.tsx b/components/form-builder/app/Published.tsx index 6da2d21e56..807a9b3fc2 100644 --- a/components/form-builder/app/Published.tsx +++ b/components/form-builder/app/Published.tsx @@ -2,11 +2,10 @@ import React, { useState, useEffect } from "react"; import { RocketIcon } from "../icons/RocketIcon"; import { useSession } from "next-auth/react"; import { useRouter } from "next/router"; -import { themes } from "@components/globals"; +import { LinkButton } from "@components/globals"; import { useTranslation } from "next-i18next"; import { useTemplateStore } from "../store/useTemplateStore"; import { useAccessControl } from "@lib/hooks"; -import Link from "next/link"; import Markdown from "markdown-to-jsx"; import { getHost } from "../util"; @@ -65,11 +64,7 @@ export const Published = ({ id }: { id: string }) => {
{ability?.can("view", "FormRecord") && ( - - - {t("publishedBack")} - - + {t("publishedBack")} )}
diff --git a/components/form-builder/app/SettingsLoggedOut.tsx b/components/form-builder/app/SettingsLoggedOut.tsx index ecfcdda1aa..2fbe22464b 100644 --- a/components/form-builder/app/SettingsLoggedOut.tsx +++ b/components/form-builder/app/SettingsLoggedOut.tsx @@ -1,7 +1,6 @@ import React from "react"; import { Card } from "@components/globals/card/Card"; -import { themes } from "@components/globals"; -import Link from "next/link"; +import { LinkButton } from "@components/globals"; import { useSession } from "next-auth/react"; import { useTranslation } from "next-i18next"; @@ -31,22 +30,12 @@ export const SettingsLoggedOut = () => { {t("settingsResponseDelivery.card.text4")}.

- - - {t("settingsResponseDelivery.card.signinButton")} - - - - - {t("settingsResponseDelivery.card.createButton")} - - + + {t("settingsResponseDelivery.card.signinButton")} + + + {t("settingsResponseDelivery.card.createButton")} +

); diff --git a/components/form-builder/app/shared/ConfirmFormDeleteDialog.tsx b/components/form-builder/app/shared/ConfirmFormDeleteDialog.tsx index b1ea9cb2a9..e169388075 100644 --- a/components/form-builder/app/shared/ConfirmFormDeleteDialog.tsx +++ b/components/form-builder/app/shared/ConfirmFormDeleteDialog.tsx @@ -2,10 +2,9 @@ import React from "react"; import useSWR from "swr"; import { useTranslation } from "next-i18next"; import Image from "next/image"; -import Link from "next/link"; import Loader from "@components/globals/Loader"; -import { Button, themes } from "@components/globals"; +import { Button, LinkButton } from "@components/globals"; import { useDialogRef, Dialog } from "./Dialog"; import { DownloadFileButton } from "./DownloadFileButton"; import { Attention, AttentionTypes } from "@components/globals/Attention/Attention"; @@ -111,14 +110,9 @@ export const ConfirmFormDeleteDialog = ({

{t("formDeleteResponses.message3")}

{t("formDeleteResponses.message4")}

- - - {t("formDeleteResponses.cta")} - - + + {t("formDeleteResponses.cta")} + diff --git a/components/globals/Buttons/Button.tsx b/components/globals/Buttons/Button.tsx index f3a163e88c..981541a127 100644 --- a/components/globals/Buttons/Button.tsx +++ b/components/globals/Buttons/Button.tsx @@ -1,7 +1,8 @@ import React, { ReactElement } from "react"; -import { themes } from "./themes"; +import { themes, Theme } from "./themes"; export const Button = ({ + type = "button", children, onClick, className, @@ -15,6 +16,7 @@ export const Button = ({ buttonRef, dataTestId, }: { + type?: "button" | "submit" | "reset"; children?: JSX.Element | string; id?: string; onClick?: (e: React.MouseEvent) => void; @@ -23,7 +25,7 @@ export const Button = ({ iconWrapperClassName?: string; disabled?: boolean; "aria-label"?: string; - theme?: "primary" | "secondary" | "destructive" | "link" | "icon"; + theme?: Theme; tabIndex?: number; buttonRef?: (el: HTMLButtonElement) => void; dataTestId?: string; @@ -34,7 +36,7 @@ export const Button = ({ id={id} disabled={disabled} aria-label={ariaLabel} - type="button" + type={type} tabIndex={tabIndex} ref={buttonRef} data-testid={dataTestId} diff --git a/components/globals/Buttons/LinkButton.tsx b/components/globals/Buttons/LinkButton.tsx new file mode 100644 index 0000000000..1a81964a23 --- /dev/null +++ b/components/globals/Buttons/LinkButton.tsx @@ -0,0 +1,36 @@ +import React from "react"; +import { StyledLink } from "@components/globals/"; +import { themes } from "@components/globals"; + +type LinkButtonProps = { + href: string; + children: JSX.Element | string; + className?: string; +}; + +export const Primary = ({ href, children, className }: LinkButtonProps) => { + return ( + + {children} + + ); +}; + +export const Secondary = ({ href, className, children }: LinkButtonProps) => { + return ( + + {children} + + ); +}; + +export const LinkButton = { + Primary, + Secondary, +}; diff --git a/components/globals/Buttons/index.ts b/components/globals/Buttons/index.ts index 7c93fc7ecf..b9a35f5fe5 100644 --- a/components/globals/Buttons/index.ts +++ b/components/globals/Buttons/index.ts @@ -1,2 +1,3 @@ export { themes } from "./themes"; export { Button } from "./Button"; +export { LinkButton } from "./LinkButton"; diff --git a/components/globals/Buttons/themes.ts b/components/globals/Buttons/themes.ts index db8d4db146..70b2df50cc 100644 --- a/components/globals/Buttons/themes.ts +++ b/components/globals/Buttons/themes.ts @@ -9,4 +9,6 @@ export const themes = { "bg-red-destructive text-white-default border-red-destructive hover:bg-red-hover hover:border-red-hover", link: "!p-0 !border-none text-blue-default underline bg-transparent hover:no-underline focus:!text-white-default", icon: "!border-none bg-gray-selected hover:bg-gray-600 !rounded-full max-h-9 !p-1.5 ml-1.5", -}; +} as const; + +export type Theme = keyof typeof themes; diff --git a/components/globals/index.ts b/components/globals/index.ts index 0122f6ff4b..409362e45e 100644 --- a/components/globals/index.ts +++ b/components/globals/index.ts @@ -1 +1,2 @@ -export { themes, Button } from "./Buttons"; +export { themes, Button, LinkButton } from "./Buttons"; +export { StyledLink } from "./StyledLink/StyledLink"; diff --git a/pages/admin/login.tsx b/pages/admin/login.tsx index ae4cec9284..0bfee9e175 100644 --- a/pages/admin/login.tsx +++ b/pages/admin/login.tsx @@ -7,7 +7,7 @@ import React from "react"; import { useTranslation } from "next-i18next"; import { signIn } from "next-auth/react"; -import { Button } from "@components/forms"; +import { Button } from "@components/globals"; import { authOptions } from "@pages/api/auth/[...nextauth]"; const Login = (): JSX.Element => { diff --git a/pages/auth/login.tsx b/pages/auth/login.tsx index 77e338208e..fb9a51c8e5 100644 --- a/pages/auth/login.tsx +++ b/pages/auth/login.tsx @@ -1,6 +1,7 @@ import React, { ReactElement } from "react"; import { Formik } from "formik"; -import { Button, TextInput, Label, Alert, ErrorListItem, Description } from "@components/forms"; +import { TextInput, Label, Alert, ErrorListItem, Description } from "@components/forms"; +import { Button } from "@components/globals"; import { useAuth, useFlag } from "@lib/hooks"; import { useTranslation } from "next-i18next"; import { GetServerSideProps } from "next"; diff --git a/pages/auth/logout.tsx b/pages/auth/logout.tsx index 6bd4c2deb8..ab882fbaf9 100644 --- a/pages/auth/logout.tsx +++ b/pages/auth/logout.tsx @@ -1,10 +1,10 @@ import React, { ReactElement, useEffect, useState } from "react"; import { useTranslation } from "next-i18next"; -import Link from "next/link"; import Head from "next/head"; import { serverSideTranslations } from "next-i18next/serverSideTranslations"; import { GetServerSideProps } from "next"; import UserNavLayout from "@components/globals/layouts/UserNavLayout"; +import { LinkButton } from "@components/globals"; const Logout = () => { const { i18n, t } = useTranslation("logout"); @@ -31,7 +31,9 @@ const Logout = () => { {t("logoutDate")} : {logoutDate}
- {t("goToSignInLabel")} + + {t("goToSignInLabel")} +
diff --git a/pages/auth/resetpassword.tsx b/pages/auth/resetpassword.tsx index 29a44bfca9..98e7ce4372 100644 --- a/pages/auth/resetpassword.tsx +++ b/pages/auth/resetpassword.tsx @@ -1,6 +1,7 @@ import React, { ReactElement, useState } from "react"; import { Formik } from "formik"; -import { Button, TextInput, Label, Alert, ErrorListItem, Description } from "@components/forms"; +import { TextInput, Label, Alert, ErrorListItem, Description } from "@components/forms"; +import { Button } from "@components/globals"; import { useAuth } from "@lib/hooks"; import { useTranslation } from "next-i18next"; import { GetServerSideProps } from "next"; @@ -308,9 +309,7 @@ const ResetPassword = () => { />
- +
diff --git a/pages/signup/register.tsx b/pages/signup/register.tsx index db37730261..663b94f6c8 100644 --- a/pages/signup/register.tsx +++ b/pages/signup/register.tsx @@ -1,6 +1,7 @@ import React, { ReactElement } from "react"; import { Formik } from "formik"; -import { Button, TextInput, Label, Alert, ErrorListItem, Description } from "@components/forms"; +import { TextInput, Label, Alert, ErrorListItem, Description } from "@components/forms"; +import { Button } from "@components/globals"; import { useAuth, useFlag } from "@lib/hooks"; import { useTranslation } from "next-i18next"; import { GetServerSideProps } from "next"; From 52efe462f79ab3ea85527bb4b5acb58fa8bf22dd Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 10 May 2023 18:49:05 +0000 Subject: [PATCH 16/19] chore(deps): lock file maintenance (#2063) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Tim Arney --- utils/cognitoBackup/yarn.lock | 890 +++++++++++++++++----------------- utils/retrievalAPI/yarn.lock | 6 +- yarn.lock | 641 ++++++++++++------------ 3 files changed, 770 insertions(+), 767 deletions(-) diff --git a/utils/cognitoBackup/yarn.lock b/utils/cognitoBackup/yarn.lock index 0300fbe5f0..3f98866912 100644 --- a/utils/cognitoBackup/yarn.lock +++ b/utils/cognitoBackup/yarn.lock @@ -48,335 +48,335 @@ "@aws-sdk/util-utf8-browser" "^3.0.0" tslib "^1.11.1" -"@aws-sdk/abort-controller@3.310.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/abort-controller/-/abort-controller-3.310.0.tgz#0da2d29b823daa03b7c1f0b43de1f030583b4f51" - integrity sha512-v1zrRQxDLA1MdPim159Vx/CPHqsB4uybSxRi1CnfHO5ZjHryx3a5htW2gdGAykVCul40+yJXvfpufMrELVxH+g== +"@aws-sdk/abort-controller@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/abort-controller/-/abort-controller-3.329.0.tgz#f311f79cad1040b84b853c5e9386ea2e069e571a" + integrity sha512-hzrjPNQcJoSPe0oS20V5i98oiEZSM3mKNiR6P3xHTHTPI/F23lyjGZ+/CSkCmJbSWfGZ5sHZZcU6AWuS7xBdTw== dependencies: - "@aws-sdk/types" "3.310.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" "@aws-sdk/client-cognito-identity-provider@^3.234.0": - version "3.325.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-cognito-identity-provider/-/client-cognito-identity-provider-3.325.0.tgz#c17f150dbbd83800a309a36ddc198d97c814f9b1" - integrity sha512-nCVhEXZVYahmDVAKuesQ2P7oRUCalIlLsT05HSf4bkpuzbFBmAF00hcTKYWwv2tt+39nnSFUp8MpwrcZvd6qgQ== + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/client-cognito-identity-provider/-/client-cognito-identity-provider-3.329.0.tgz#6ae6e01730bee1e9ab513ec7b9b080c6229939af" + integrity sha512-w5RbIHFAKCXqZ5E3lr3hZ030PelmJYYR6u1bKOMTdpBv3XaUecIkNt3rCe8jy3yYaUhqNlFK2Mv/cg2RFyeG8A== dependencies: "@aws-crypto/sha256-browser" "3.0.0" "@aws-crypto/sha256-js" "3.0.0" - "@aws-sdk/client-sts" "3.325.0" - "@aws-sdk/config-resolver" "3.310.0" - "@aws-sdk/credential-provider-node" "3.325.0" - "@aws-sdk/fetch-http-handler" "3.310.0" - "@aws-sdk/hash-node" "3.310.0" - "@aws-sdk/invalid-dependency" "3.310.0" - "@aws-sdk/middleware-content-length" "3.325.0" - "@aws-sdk/middleware-endpoint" "3.325.0" - "@aws-sdk/middleware-host-header" "3.325.0" - "@aws-sdk/middleware-logger" "3.325.0" - "@aws-sdk/middleware-recursion-detection" "3.325.0" - "@aws-sdk/middleware-retry" "3.325.0" - "@aws-sdk/middleware-serde" "3.325.0" - "@aws-sdk/middleware-signing" "3.325.0" - "@aws-sdk/middleware-stack" "3.325.0" - "@aws-sdk/middleware-user-agent" "3.325.0" - "@aws-sdk/node-config-provider" "3.310.0" - "@aws-sdk/node-http-handler" "3.321.1" - "@aws-sdk/protocol-http" "3.310.0" - "@aws-sdk/smithy-client" "3.325.0" - "@aws-sdk/types" "3.310.0" - "@aws-sdk/url-parser" "3.310.0" + "@aws-sdk/client-sts" "3.329.0" + "@aws-sdk/config-resolver" "3.329.0" + "@aws-sdk/credential-provider-node" "3.329.0" + "@aws-sdk/fetch-http-handler" "3.329.0" + "@aws-sdk/hash-node" "3.329.0" + "@aws-sdk/invalid-dependency" "3.329.0" + "@aws-sdk/middleware-content-length" "3.329.0" + "@aws-sdk/middleware-endpoint" "3.329.0" + "@aws-sdk/middleware-host-header" "3.329.0" + "@aws-sdk/middleware-logger" "3.329.0" + "@aws-sdk/middleware-recursion-detection" "3.329.0" + "@aws-sdk/middleware-retry" "3.329.0" + "@aws-sdk/middleware-serde" "3.329.0" + "@aws-sdk/middleware-signing" "3.329.0" + "@aws-sdk/middleware-stack" "3.329.0" + "@aws-sdk/middleware-user-agent" "3.329.0" + "@aws-sdk/node-config-provider" "3.329.0" + "@aws-sdk/node-http-handler" "3.329.0" + "@aws-sdk/protocol-http" "3.329.0" + "@aws-sdk/smithy-client" "3.329.0" + "@aws-sdk/types" "3.329.0" + "@aws-sdk/url-parser" "3.329.0" "@aws-sdk/util-base64" "3.310.0" "@aws-sdk/util-body-length-browser" "3.310.0" "@aws-sdk/util-body-length-node" "3.310.0" - "@aws-sdk/util-defaults-mode-browser" "3.325.0" - "@aws-sdk/util-defaults-mode-node" "3.325.0" - "@aws-sdk/util-endpoints" "3.319.0" - "@aws-sdk/util-retry" "3.310.0" - "@aws-sdk/util-user-agent-browser" "3.310.0" - "@aws-sdk/util-user-agent-node" "3.310.0" + "@aws-sdk/util-defaults-mode-browser" "3.329.0" + "@aws-sdk/util-defaults-mode-node" "3.329.0" + "@aws-sdk/util-endpoints" "3.329.0" + "@aws-sdk/util-retry" "3.329.0" + "@aws-sdk/util-user-agent-browser" "3.329.0" + "@aws-sdk/util-user-agent-node" "3.329.0" "@aws-sdk/util-utf8" "3.310.0" tslib "^2.5.0" "@aws-sdk/client-iam@^3.238.0": - version "3.325.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-iam/-/client-iam-3.325.0.tgz#c9804184b2eb181831054f33ad6e7157721c4909" - integrity sha512-+vj9gKy9sGKlYVeZzGTVPN7KTKvnfBKcSGMOVBx2Fzif1Af532arTLhKujGgISSKqlGEOZckkDikjBGC8lvHuA== + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/client-iam/-/client-iam-3.329.0.tgz#035add10af017f95c2c0786fa613f00437f4bb79" + integrity sha512-khVGD9q0+B9oEkr6L8VpA2Zo/qW5JJf2GQAqaGkyGr9R942PTJbAvzmelqaUb+KpyRD74ZWAxRNY6EvKH1Um5w== dependencies: "@aws-crypto/sha256-browser" "3.0.0" "@aws-crypto/sha256-js" "3.0.0" - "@aws-sdk/client-sts" "3.325.0" - "@aws-sdk/config-resolver" "3.310.0" - "@aws-sdk/credential-provider-node" "3.325.0" - "@aws-sdk/fetch-http-handler" "3.310.0" - "@aws-sdk/hash-node" "3.310.0" - "@aws-sdk/invalid-dependency" "3.310.0" - "@aws-sdk/middleware-content-length" "3.325.0" - "@aws-sdk/middleware-endpoint" "3.325.0" - "@aws-sdk/middleware-host-header" "3.325.0" - "@aws-sdk/middleware-logger" "3.325.0" - "@aws-sdk/middleware-recursion-detection" "3.325.0" - "@aws-sdk/middleware-retry" "3.325.0" - "@aws-sdk/middleware-serde" "3.325.0" - "@aws-sdk/middleware-signing" "3.325.0" - "@aws-sdk/middleware-stack" "3.325.0" - "@aws-sdk/middleware-user-agent" "3.325.0" - "@aws-sdk/node-config-provider" "3.310.0" - "@aws-sdk/node-http-handler" "3.321.1" - "@aws-sdk/protocol-http" "3.310.0" - "@aws-sdk/smithy-client" "3.325.0" - "@aws-sdk/types" "3.310.0" - "@aws-sdk/url-parser" "3.310.0" + "@aws-sdk/client-sts" "3.329.0" + "@aws-sdk/config-resolver" "3.329.0" + "@aws-sdk/credential-provider-node" "3.329.0" + "@aws-sdk/fetch-http-handler" "3.329.0" + "@aws-sdk/hash-node" "3.329.0" + "@aws-sdk/invalid-dependency" "3.329.0" + "@aws-sdk/middleware-content-length" "3.329.0" + "@aws-sdk/middleware-endpoint" "3.329.0" + "@aws-sdk/middleware-host-header" "3.329.0" + "@aws-sdk/middleware-logger" "3.329.0" + "@aws-sdk/middleware-recursion-detection" "3.329.0" + "@aws-sdk/middleware-retry" "3.329.0" + "@aws-sdk/middleware-serde" "3.329.0" + "@aws-sdk/middleware-signing" "3.329.0" + "@aws-sdk/middleware-stack" "3.329.0" + "@aws-sdk/middleware-user-agent" "3.329.0" + "@aws-sdk/node-config-provider" "3.329.0" + "@aws-sdk/node-http-handler" "3.329.0" + "@aws-sdk/protocol-http" "3.329.0" + "@aws-sdk/smithy-client" "3.329.0" + "@aws-sdk/types" "3.329.0" + "@aws-sdk/url-parser" "3.329.0" "@aws-sdk/util-base64" "3.310.0" "@aws-sdk/util-body-length-browser" "3.310.0" "@aws-sdk/util-body-length-node" "3.310.0" - "@aws-sdk/util-defaults-mode-browser" "3.325.0" - "@aws-sdk/util-defaults-mode-node" "3.325.0" - "@aws-sdk/util-endpoints" "3.319.0" - "@aws-sdk/util-retry" "3.310.0" - "@aws-sdk/util-user-agent-browser" "3.310.0" - "@aws-sdk/util-user-agent-node" "3.310.0" + "@aws-sdk/util-defaults-mode-browser" "3.329.0" + "@aws-sdk/util-defaults-mode-node" "3.329.0" + "@aws-sdk/util-endpoints" "3.329.0" + "@aws-sdk/util-retry" "3.329.0" + "@aws-sdk/util-user-agent-browser" "3.329.0" + "@aws-sdk/util-user-agent-node" "3.329.0" "@aws-sdk/util-utf8" "3.310.0" - "@aws-sdk/util-waiter" "3.310.0" + "@aws-sdk/util-waiter" "3.329.0" fast-xml-parser "4.1.2" tslib "^2.5.0" -"@aws-sdk/client-sso-oidc@3.325.0": - version "3.325.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.325.0.tgz#be51bfc2df90f300fa8286a8385ce8b34c0ef906" - integrity sha512-D20mpgiZ5/O/CAR18F16h7hJlcmPvOjh6IcjtZexte0NhkSO4oV1MzgmXT/aWOo2zIeovPRzZTNULAH24sosNQ== +"@aws-sdk/client-sso-oidc@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.329.0.tgz#60c121cd6cdbd75a015c1ba9c64fb07c7209cb53" + integrity sha512-Dv0TMHcMLqkN43QbQsFYDjVI5Lb7ta+jQUC72H1pA0Z/EMRSKX/aaKIrH9TsnMqRPv57+SwUMw7i6yDIqR9nNg== dependencies: "@aws-crypto/sha256-browser" "3.0.0" "@aws-crypto/sha256-js" "3.0.0" - "@aws-sdk/config-resolver" "3.310.0" - "@aws-sdk/fetch-http-handler" "3.310.0" - "@aws-sdk/hash-node" "3.310.0" - "@aws-sdk/invalid-dependency" "3.310.0" - "@aws-sdk/middleware-content-length" "3.325.0" - "@aws-sdk/middleware-endpoint" "3.325.0" - "@aws-sdk/middleware-host-header" "3.325.0" - "@aws-sdk/middleware-logger" "3.325.0" - "@aws-sdk/middleware-recursion-detection" "3.325.0" - "@aws-sdk/middleware-retry" "3.325.0" - "@aws-sdk/middleware-serde" "3.325.0" - "@aws-sdk/middleware-stack" "3.325.0" - "@aws-sdk/middleware-user-agent" "3.325.0" - "@aws-sdk/node-config-provider" "3.310.0" - "@aws-sdk/node-http-handler" "3.321.1" - "@aws-sdk/protocol-http" "3.310.0" - "@aws-sdk/smithy-client" "3.325.0" - "@aws-sdk/types" "3.310.0" - "@aws-sdk/url-parser" "3.310.0" + "@aws-sdk/config-resolver" "3.329.0" + "@aws-sdk/fetch-http-handler" "3.329.0" + "@aws-sdk/hash-node" "3.329.0" + "@aws-sdk/invalid-dependency" "3.329.0" + "@aws-sdk/middleware-content-length" "3.329.0" + "@aws-sdk/middleware-endpoint" "3.329.0" + "@aws-sdk/middleware-host-header" "3.329.0" + "@aws-sdk/middleware-logger" "3.329.0" + "@aws-sdk/middleware-recursion-detection" "3.329.0" + "@aws-sdk/middleware-retry" "3.329.0" + "@aws-sdk/middleware-serde" "3.329.0" + "@aws-sdk/middleware-stack" "3.329.0" + "@aws-sdk/middleware-user-agent" "3.329.0" + "@aws-sdk/node-config-provider" "3.329.0" + "@aws-sdk/node-http-handler" "3.329.0" + "@aws-sdk/protocol-http" "3.329.0" + "@aws-sdk/smithy-client" "3.329.0" + "@aws-sdk/types" "3.329.0" + "@aws-sdk/url-parser" "3.329.0" "@aws-sdk/util-base64" "3.310.0" "@aws-sdk/util-body-length-browser" "3.310.0" "@aws-sdk/util-body-length-node" "3.310.0" - "@aws-sdk/util-defaults-mode-browser" "3.325.0" - "@aws-sdk/util-defaults-mode-node" "3.325.0" - "@aws-sdk/util-endpoints" "3.319.0" - "@aws-sdk/util-retry" "3.310.0" - "@aws-sdk/util-user-agent-browser" "3.310.0" - "@aws-sdk/util-user-agent-node" "3.310.0" + "@aws-sdk/util-defaults-mode-browser" "3.329.0" + "@aws-sdk/util-defaults-mode-node" "3.329.0" + "@aws-sdk/util-endpoints" "3.329.0" + "@aws-sdk/util-retry" "3.329.0" + "@aws-sdk/util-user-agent-browser" "3.329.0" + "@aws-sdk/util-user-agent-node" "3.329.0" "@aws-sdk/util-utf8" "3.310.0" tslib "^2.5.0" -"@aws-sdk/client-sso@3.325.0": - version "3.325.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-sso/-/client-sso-3.325.0.tgz#8debf43e8ae917568714f922dacba2033ee7643e" - integrity sha512-ajxL7cVtK0OPQz37hnKDbL6hPBNv3+sTgyZ+RTuBxjS3MKh/TVu/yXfrL+hfFFMijk494b7CctgRZrTABEvWdw== +"@aws-sdk/client-sso@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/client-sso/-/client-sso-3.329.0.tgz#3e4f9760df38f645b01ecd169b1fb7aafb9d3a0d" + integrity sha512-RzUEbXg+01PRD3UbFJlCNA51JYRZ9qGUSWRPVeQ6zR4RKx8146/xeL2j8CHEZbGQrRNoHvBziGSCxIdTpzM8XA== dependencies: "@aws-crypto/sha256-browser" "3.0.0" "@aws-crypto/sha256-js" "3.0.0" - "@aws-sdk/config-resolver" "3.310.0" - "@aws-sdk/fetch-http-handler" "3.310.0" - "@aws-sdk/hash-node" "3.310.0" - "@aws-sdk/invalid-dependency" "3.310.0" - "@aws-sdk/middleware-content-length" "3.325.0" - "@aws-sdk/middleware-endpoint" "3.325.0" - "@aws-sdk/middleware-host-header" "3.325.0" - "@aws-sdk/middleware-logger" "3.325.0" - "@aws-sdk/middleware-recursion-detection" "3.325.0" - "@aws-sdk/middleware-retry" "3.325.0" - "@aws-sdk/middleware-serde" "3.325.0" - "@aws-sdk/middleware-stack" "3.325.0" - "@aws-sdk/middleware-user-agent" "3.325.0" - "@aws-sdk/node-config-provider" "3.310.0" - "@aws-sdk/node-http-handler" "3.321.1" - "@aws-sdk/protocol-http" "3.310.0" - "@aws-sdk/smithy-client" "3.325.0" - "@aws-sdk/types" "3.310.0" - "@aws-sdk/url-parser" "3.310.0" + "@aws-sdk/config-resolver" "3.329.0" + "@aws-sdk/fetch-http-handler" "3.329.0" + "@aws-sdk/hash-node" "3.329.0" + "@aws-sdk/invalid-dependency" "3.329.0" + "@aws-sdk/middleware-content-length" "3.329.0" + "@aws-sdk/middleware-endpoint" "3.329.0" + "@aws-sdk/middleware-host-header" "3.329.0" + "@aws-sdk/middleware-logger" "3.329.0" + "@aws-sdk/middleware-recursion-detection" "3.329.0" + "@aws-sdk/middleware-retry" "3.329.0" + "@aws-sdk/middleware-serde" "3.329.0" + "@aws-sdk/middleware-stack" "3.329.0" + "@aws-sdk/middleware-user-agent" "3.329.0" + "@aws-sdk/node-config-provider" "3.329.0" + "@aws-sdk/node-http-handler" "3.329.0" + "@aws-sdk/protocol-http" "3.329.0" + "@aws-sdk/smithy-client" "3.329.0" + "@aws-sdk/types" "3.329.0" + "@aws-sdk/url-parser" "3.329.0" "@aws-sdk/util-base64" "3.310.0" "@aws-sdk/util-body-length-browser" "3.310.0" "@aws-sdk/util-body-length-node" "3.310.0" - "@aws-sdk/util-defaults-mode-browser" "3.325.0" - "@aws-sdk/util-defaults-mode-node" "3.325.0" - "@aws-sdk/util-endpoints" "3.319.0" - "@aws-sdk/util-retry" "3.310.0" - "@aws-sdk/util-user-agent-browser" "3.310.0" - "@aws-sdk/util-user-agent-node" "3.310.0" + "@aws-sdk/util-defaults-mode-browser" "3.329.0" + "@aws-sdk/util-defaults-mode-node" "3.329.0" + "@aws-sdk/util-endpoints" "3.329.0" + "@aws-sdk/util-retry" "3.329.0" + "@aws-sdk/util-user-agent-browser" "3.329.0" + "@aws-sdk/util-user-agent-node" "3.329.0" "@aws-sdk/util-utf8" "3.310.0" tslib "^2.5.0" -"@aws-sdk/client-sts@3.325.0": - version "3.325.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-sts/-/client-sts-3.325.0.tgz#483efe9c541970bce6735049407a5dbcda5e48c5" - integrity sha512-5ZOScg5EvyLV59mDUxSbL9x10cUbZsoSqvNETGLruyXILHaRHa8WS00wffcDA/dRzKIk9xQwJNwplcWnpT8WUw== +"@aws-sdk/client-sts@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/client-sts/-/client-sts-3.329.0.tgz#4954438706121b8d117f7af97b91d12f3f7cec7f" + integrity sha512-bJ8Uoi0v5gzjw8BUYZcd0gDQ6nbHHBjDedBdXzBjV4z8b8whaCOyyASPCLZ9COKdgpkm1kHz9z5IX1cB4Q2nfA== dependencies: "@aws-crypto/sha256-browser" "3.0.0" "@aws-crypto/sha256-js" "3.0.0" - "@aws-sdk/config-resolver" "3.310.0" - "@aws-sdk/credential-provider-node" "3.325.0" - "@aws-sdk/fetch-http-handler" "3.310.0" - "@aws-sdk/hash-node" "3.310.0" - "@aws-sdk/invalid-dependency" "3.310.0" - "@aws-sdk/middleware-content-length" "3.325.0" - "@aws-sdk/middleware-endpoint" "3.325.0" - "@aws-sdk/middleware-host-header" "3.325.0" - "@aws-sdk/middleware-logger" "3.325.0" - "@aws-sdk/middleware-recursion-detection" "3.325.0" - "@aws-sdk/middleware-retry" "3.325.0" - "@aws-sdk/middleware-sdk-sts" "3.325.0" - "@aws-sdk/middleware-serde" "3.325.0" - "@aws-sdk/middleware-signing" "3.325.0" - "@aws-sdk/middleware-stack" "3.325.0" - "@aws-sdk/middleware-user-agent" "3.325.0" - "@aws-sdk/node-config-provider" "3.310.0" - "@aws-sdk/node-http-handler" "3.321.1" - "@aws-sdk/protocol-http" "3.310.0" - "@aws-sdk/smithy-client" "3.325.0" - "@aws-sdk/types" "3.310.0" - "@aws-sdk/url-parser" "3.310.0" + "@aws-sdk/config-resolver" "3.329.0" + "@aws-sdk/credential-provider-node" "3.329.0" + "@aws-sdk/fetch-http-handler" "3.329.0" + "@aws-sdk/hash-node" "3.329.0" + "@aws-sdk/invalid-dependency" "3.329.0" + "@aws-sdk/middleware-content-length" "3.329.0" + "@aws-sdk/middleware-endpoint" "3.329.0" + "@aws-sdk/middleware-host-header" "3.329.0" + "@aws-sdk/middleware-logger" "3.329.0" + "@aws-sdk/middleware-recursion-detection" "3.329.0" + "@aws-sdk/middleware-retry" "3.329.0" + "@aws-sdk/middleware-sdk-sts" "3.329.0" + "@aws-sdk/middleware-serde" "3.329.0" + "@aws-sdk/middleware-signing" "3.329.0" + "@aws-sdk/middleware-stack" "3.329.0" + "@aws-sdk/middleware-user-agent" "3.329.0" + "@aws-sdk/node-config-provider" "3.329.0" + "@aws-sdk/node-http-handler" "3.329.0" + "@aws-sdk/protocol-http" "3.329.0" + "@aws-sdk/smithy-client" "3.329.0" + "@aws-sdk/types" "3.329.0" + "@aws-sdk/url-parser" "3.329.0" "@aws-sdk/util-base64" "3.310.0" "@aws-sdk/util-body-length-browser" "3.310.0" "@aws-sdk/util-body-length-node" "3.310.0" - "@aws-sdk/util-defaults-mode-browser" "3.325.0" - "@aws-sdk/util-defaults-mode-node" "3.325.0" - "@aws-sdk/util-endpoints" "3.319.0" - "@aws-sdk/util-retry" "3.310.0" - "@aws-sdk/util-user-agent-browser" "3.310.0" - "@aws-sdk/util-user-agent-node" "3.310.0" + "@aws-sdk/util-defaults-mode-browser" "3.329.0" + "@aws-sdk/util-defaults-mode-node" "3.329.0" + "@aws-sdk/util-endpoints" "3.329.0" + "@aws-sdk/util-retry" "3.329.0" + "@aws-sdk/util-user-agent-browser" "3.329.0" + "@aws-sdk/util-user-agent-node" "3.329.0" "@aws-sdk/util-utf8" "3.310.0" fast-xml-parser "4.1.2" tslib "^2.5.0" -"@aws-sdk/config-resolver@3.310.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/config-resolver/-/config-resolver-3.310.0.tgz#c02dce96546d5cd25551bc89907b27224e16ca7f" - integrity sha512-8vsT+/50lOqfDxka9m/rRt6oxv1WuGZoP8oPMk0Dt+TxXMbAzf4+rejBgiB96wshI1k3gLokYRjSQZn+dDtT8g== +"@aws-sdk/config-resolver@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/config-resolver/-/config-resolver-3.329.0.tgz#f4283c9c8e61752cecad8cfaebb4db52ac1bbf60" + integrity sha512-Oj6eiT3q+Jn685yvUrfRi8PhB3fb81hasJqdrsEivA8IP8qAgnVUTJzXsh8O2UX8UM2MF6A1gTgToSgneJuw2Q== dependencies: - "@aws-sdk/types" "3.310.0" + "@aws-sdk/types" "3.329.0" "@aws-sdk/util-config-provider" "3.310.0" - "@aws-sdk/util-middleware" "3.310.0" + "@aws-sdk/util-middleware" "3.329.0" tslib "^2.5.0" -"@aws-sdk/credential-provider-env@3.310.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-env/-/credential-provider-env-3.310.0.tgz#c52694fb276341db6ce4e816cf9ca90fa5830dad" - integrity sha512-vvIPQpI16fj95xwS7M3D48F7QhZJBnnCgB5lR+b7So+vsG9ibm1mZRVGzVpdxCvgyOhHFbvrby9aalNJmmIP1A== +"@aws-sdk/credential-provider-env@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-env/-/credential-provider-env-3.329.0.tgz#54bb313de01324e302b5927733083a4c93ed9962" + integrity sha512-B4orC9hMt9hG82vAR0TAnQqjk6cFDbO2S14RdzUj2n2NPlGWW4Blkv3NTo86K0lq011VRhtqaLcuTwn5EJD5Sg== dependencies: - "@aws-sdk/property-provider" "3.310.0" - "@aws-sdk/types" "3.310.0" + "@aws-sdk/property-provider" "3.329.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" -"@aws-sdk/credential-provider-imds@3.310.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.310.0.tgz#d8fb1223fee7e289a81e28177fe55dedf4d2745e" - integrity sha512-baxK7Zp6dai5AGW01FIW27xS2KAaPUmKLIXv5SvFYsUgXXvNW55im4uG3b+2gA0F7V+hXvVBH08OEqmwW6we5w== - dependencies: - "@aws-sdk/node-config-provider" "3.310.0" - "@aws-sdk/property-provider" "3.310.0" - "@aws-sdk/types" "3.310.0" - "@aws-sdk/url-parser" "3.310.0" - tslib "^2.5.0" - -"@aws-sdk/credential-provider-ini@3.325.0": - version "3.325.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.325.0.tgz#ff662a24d005ed686992d2e5f4ed7b4cac3f12da" - integrity sha512-jvNEHU4zEBbtvf2JqiC2ENb0Y55BurA5X6KVBP1vA3mvn7+zIGH9qD1nAkpvrRelzuorbC5Ey7AmZshR+AugTg== - dependencies: - "@aws-sdk/credential-provider-env" "3.310.0" - "@aws-sdk/credential-provider-imds" "3.310.0" - "@aws-sdk/credential-provider-process" "3.310.0" - "@aws-sdk/credential-provider-sso" "3.325.0" - "@aws-sdk/credential-provider-web-identity" "3.310.0" - "@aws-sdk/property-provider" "3.310.0" - "@aws-sdk/shared-ini-file-loader" "3.310.0" - "@aws-sdk/types" "3.310.0" - tslib "^2.5.0" - -"@aws-sdk/credential-provider-node@3.325.0": - version "3.325.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-node/-/credential-provider-node-3.325.0.tgz#fde318b8bdf110d66704c00c0b2da1b94c887433" - integrity sha512-SG3F3yywnSzYcG5diErez9ukG8tToQIksedL/pM/gYFJ1zKYH560VJRc7Rkt0yjnl2cPFewazvPoDLBN/5Azbw== - dependencies: - "@aws-sdk/credential-provider-env" "3.310.0" - "@aws-sdk/credential-provider-imds" "3.310.0" - "@aws-sdk/credential-provider-ini" "3.325.0" - "@aws-sdk/credential-provider-process" "3.310.0" - "@aws-sdk/credential-provider-sso" "3.325.0" - "@aws-sdk/credential-provider-web-identity" "3.310.0" - "@aws-sdk/property-provider" "3.310.0" - "@aws-sdk/shared-ini-file-loader" "3.310.0" - "@aws-sdk/types" "3.310.0" - tslib "^2.5.0" - -"@aws-sdk/credential-provider-process@3.310.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-process/-/credential-provider-process-3.310.0.tgz#0b2ee77f0c48262442d2768044d72332a4ad8884" - integrity sha512-h73sg6GPMUWC+3zMCbA1nZ2O03nNJt7G96JdmnantiXBwHpRKWW8nBTLzx5uhXn6hTuTaoQRP/P+oxQJKYdMmA== +"@aws-sdk/credential-provider-imds@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.329.0.tgz#566b21c37f5e89730ef3b4229f0824b4c455f669" + integrity sha512-ggPlnd7QROPTid0CwT01TYYGvstRRTpzTGsQ/B31wkh30IrRXE81W3S4xrOYuqQD3u0RnflSxnvhs+EayJEYjg== dependencies: - "@aws-sdk/property-provider" "3.310.0" - "@aws-sdk/shared-ini-file-loader" "3.310.0" - "@aws-sdk/types" "3.310.0" + "@aws-sdk/node-config-provider" "3.329.0" + "@aws-sdk/property-provider" "3.329.0" + "@aws-sdk/types" "3.329.0" + "@aws-sdk/url-parser" "3.329.0" tslib "^2.5.0" -"@aws-sdk/credential-provider-sso@3.325.0": - version "3.325.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.325.0.tgz#5f2855348114bf6e6373c2a790219b16e62efcb9" - integrity sha512-Te7jxJwjVGJAPWN3jCq2xcYrX8d4WkZFIqSIWSmrHqGKgWPc8+QgUkpRQkHaM+4NeNBJadRG1XbJNfu22gjDWA== +"@aws-sdk/credential-provider-ini@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.329.0.tgz#5a7384bdf79cf9eed83c2a225548a636ba0ed937" + integrity sha512-dtSYWPTKh4VHG2ooLIBT9XfFab7hdaNF0z6kFEPsZcecpeO7iAkxu57/xkB2KMXCi8Hy9qQUf+M9N4xDxEujVA== dependencies: - "@aws-sdk/client-sso" "3.325.0" - "@aws-sdk/property-provider" "3.310.0" - "@aws-sdk/shared-ini-file-loader" "3.310.0" - "@aws-sdk/token-providers" "3.325.0" - "@aws-sdk/types" "3.310.0" + "@aws-sdk/credential-provider-env" "3.329.0" + "@aws-sdk/credential-provider-imds" "3.329.0" + "@aws-sdk/credential-provider-process" "3.329.0" + "@aws-sdk/credential-provider-sso" "3.329.0" + "@aws-sdk/credential-provider-web-identity" "3.329.0" + "@aws-sdk/property-provider" "3.329.0" + "@aws-sdk/shared-ini-file-loader" "3.329.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" -"@aws-sdk/credential-provider-web-identity@3.310.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.310.0.tgz#c9fa09b0068027e58d31178e3fa06bf4e9ae9d36" - integrity sha512-H4SzuZXILNhK6/IR1uVvsUDZvzc051hem7GLyYghBCu8mU+tq28YhKE8MfSroi6eL2e5Vujloij1OM2EQQkPkw== +"@aws-sdk/credential-provider-node@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-node/-/credential-provider-node-3.329.0.tgz#5628e62fe96ced26ca0c6cc5d1903fb568adbf41" + integrity sha512-JTTn7H8p4j7EciCgoJdSwOSt843PmlL1BXoo61l2IE9novM9ZtCiU7VipuGEe7gFBfu+84UCAJh2D7Vp/KI9DA== dependencies: - "@aws-sdk/property-provider" "3.310.0" - "@aws-sdk/types" "3.310.0" + "@aws-sdk/credential-provider-env" "3.329.0" + "@aws-sdk/credential-provider-imds" "3.329.0" + "@aws-sdk/credential-provider-ini" "3.329.0" + "@aws-sdk/credential-provider-process" "3.329.0" + "@aws-sdk/credential-provider-sso" "3.329.0" + "@aws-sdk/credential-provider-web-identity" "3.329.0" + "@aws-sdk/property-provider" "3.329.0" + "@aws-sdk/shared-ini-file-loader" "3.329.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" -"@aws-sdk/fetch-http-handler@3.310.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.310.0.tgz#f31006b7b3103683d72e177cd27d80354f7a37c4" - integrity sha512-Bi9vIwzdkw1zMcvi/zGzlWS9KfIEnAq4NNhsnCxbQ4OoIRU9wvU+WGZdBBhxg0ZxZmpp1j1aZhU53lLjA07MHw== +"@aws-sdk/credential-provider-process@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-process/-/credential-provider-process-3.329.0.tgz#5c07b2f4c67cb97190c69d4af5890c9db3f8a31d" + integrity sha512-5oO220qoFc2pMdZDQa6XN/mVhp669I3+LqMbbscGtX/UgLJPSOb7YzPld9Wjv12L5rf+sD3G1PF3LZXO0vKLFA== dependencies: - "@aws-sdk/protocol-http" "3.310.0" - "@aws-sdk/querystring-builder" "3.310.0" - "@aws-sdk/types" "3.310.0" + "@aws-sdk/property-provider" "3.329.0" + "@aws-sdk/shared-ini-file-loader" "3.329.0" + "@aws-sdk/types" "3.329.0" + tslib "^2.5.0" + +"@aws-sdk/credential-provider-sso@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.329.0.tgz#b1522ed1ab3c4a6a55927fbed89d7ec7893f3cf3" + integrity sha512-R/TICn1Aty4PMvRXr7h8skWJ1rGF5CXWb0U63GhOyn23IE5FAkqzMhJLbXo/AYD8dQeMLrf03qVIEAs/B0d7mA== + dependencies: + "@aws-sdk/client-sso" "3.329.0" + "@aws-sdk/property-provider" "3.329.0" + "@aws-sdk/shared-ini-file-loader" "3.329.0" + "@aws-sdk/token-providers" "3.329.0" + "@aws-sdk/types" "3.329.0" + tslib "^2.5.0" + +"@aws-sdk/credential-provider-web-identity@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.329.0.tgz#5610293c03bc4c323dfcae522c545c20e2d8dd86" + integrity sha512-lcEibZD7AlutCacpQ6DyNUqElZJDq+ylaIo5a8MH9jGh7Pg2WpDg0Sy+B6FbGCkVn4eIjdHxeX54JM245nhESg== + dependencies: + "@aws-sdk/property-provider" "3.329.0" + "@aws-sdk/types" "3.329.0" + tslib "^2.5.0" + +"@aws-sdk/fetch-http-handler@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.329.0.tgz#5aee0c9a32ad8ff4fa96c6869bba68c345818532" + integrity sha512-9jfIeJhYCcTX4ScXOueRTB3S/tVce0bRsKxKDP0PnTxnGYOwKXoM9lAPmiYItzYmQ/+QzjTI8xfkA9Usz2SK/Q== + dependencies: + "@aws-sdk/protocol-http" "3.329.0" + "@aws-sdk/querystring-builder" "3.329.0" + "@aws-sdk/types" "3.329.0" "@aws-sdk/util-base64" "3.310.0" tslib "^2.5.0" -"@aws-sdk/hash-node@3.310.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/hash-node/-/hash-node-3.310.0.tgz#4c1c89b9a2da3bb9783de84f0b762cc055b90d67" - integrity sha512-NvE2fhRc8GRwCXBfDehxVAWCmVwVMILliAKVPAEr4yz2CkYs0tqU51S48x23dtna07H4qHtgpeNqVTthcIQOEQ== +"@aws-sdk/hash-node@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/hash-node/-/hash-node-3.329.0.tgz#91ef8b1b55e1a438c367f63747673bf146a00499" + integrity sha512-6RmnWXNWpi7yAs0oRDQlkMn2wfXOStr/8kTCgiAiqrk1KopGSBkC2veKiKRSfv02FTd1yV/ISqYNIRqW1VLyxg== dependencies: - "@aws-sdk/types" "3.310.0" + "@aws-sdk/types" "3.329.0" "@aws-sdk/util-buffer-from" "3.310.0" "@aws-sdk/util-utf8" "3.310.0" tslib "^2.5.0" -"@aws-sdk/invalid-dependency@3.310.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/invalid-dependency/-/invalid-dependency-3.310.0.tgz#b96da9b9f63b12d1c390f9a06eeb28840fcb5b3c" - integrity sha512-1s5RG5rSPXoa/aZ/Kqr5U/7lqpx+Ry81GprQ2bxWqJvWQIJ0IRUwo5pk8XFxbKVr/2a+4lZT/c3OGoBOM1yRRA== +"@aws-sdk/invalid-dependency@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/invalid-dependency/-/invalid-dependency-3.329.0.tgz#83dc33de710f80eba5e084a82aab656c1d240352" + integrity sha512-UXynGusDxN/HxLma5ByJ7u+XnuMd47NbHOjJgYsaAjb1CVZT7hEPXOB+mcZ+Ku7To5SCOKu2QbRn7m4bGespBg== dependencies: - "@aws-sdk/types" "3.310.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" "@aws-sdk/is-array-buffer@3.310.0": @@ -386,225 +386,225 @@ dependencies: tslib "^2.5.0" -"@aws-sdk/middleware-content-length@3.325.0": - version "3.325.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-content-length/-/middleware-content-length-3.325.0.tgz#1dbdc41766df195cc4d054d58b36ee78f26b990d" - integrity sha512-t38VBKCpNqSKqSu0OfWMJs7cwaRHFGQxIF9lV8JMCM/2lyUpN4JcfuzSTK+MFN2eDZEHp5DiNg8w07GXXusRYg== +"@aws-sdk/middleware-content-length@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-content-length/-/middleware-content-length-3.329.0.tgz#cadd0c3ba7fe3d0b21812523bb7d7f7526c9c700" + integrity sha512-7kCd+CvY/4KbyXB0uyL7jCwPjMi2yERMALFdEH9dsUciwmxIQT6eSc4aF6wImC4UrbafaqmXvvHErABKMVBTKA== dependencies: - "@aws-sdk/protocol-http" "3.310.0" - "@aws-sdk/types" "3.310.0" + "@aws-sdk/protocol-http" "3.329.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" -"@aws-sdk/middleware-endpoint@3.325.0": - version "3.325.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.325.0.tgz#78ad5239f3b4a91a5efd9a548582cb8d3878cb60" - integrity sha512-3CavuOHCKiWUnCtzrUFbhbEP26qIgzzRs5C3vpOJhDUhugBubIWgPGGRLpbnIro+P4XJPwM3pMziNzhKVuSDlQ== +"@aws-sdk/middleware-endpoint@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.329.0.tgz#50c5f71afa3b6d3062d3b542279009454898314e" + integrity sha512-hdJRoNdCM0BT4W+rrtee+kfFRgGPGXQDgtbIQlf/FuuuYz2sdef7/SYWr0mxuncnVBW5WkYSPP8h6q07whSKbg== dependencies: - "@aws-sdk/middleware-serde" "3.325.0" - "@aws-sdk/types" "3.310.0" - "@aws-sdk/url-parser" "3.310.0" - "@aws-sdk/util-middleware" "3.310.0" + "@aws-sdk/middleware-serde" "3.329.0" + "@aws-sdk/types" "3.329.0" + "@aws-sdk/url-parser" "3.329.0" + "@aws-sdk/util-middleware" "3.329.0" tslib "^2.5.0" -"@aws-sdk/middleware-host-header@3.325.0": - version "3.325.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-host-header/-/middleware-host-header-3.325.0.tgz#8f3a93948bd7c94ef39fc72a6c8b952dc8736675" - integrity sha512-IN28gsxcRy4J+FxxCHvzb2NORBx8uMA+h9QYS4BBZfpKVYIZh+mudHgYcdNHWlKXmlTGjhWBNWTeByhzuSKAiA== +"@aws-sdk/middleware-host-header@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-host-header/-/middleware-host-header-3.329.0.tgz#22b1a6d91f3f281ef802f21f2ab0b426526d6066" + integrity sha512-JrHeUdTIpTCfXDo9JpbAbZTS1x4mt63CCytJRq0mpWp+FlP9hjckBcNxWdR/wSKEzP9pDRnTri638BOwWH7O8w== dependencies: - "@aws-sdk/protocol-http" "3.310.0" - "@aws-sdk/types" "3.310.0" + "@aws-sdk/protocol-http" "3.329.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" -"@aws-sdk/middleware-logger@3.325.0": - version "3.325.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-logger/-/middleware-logger-3.325.0.tgz#a1208c66d215ad904c02fb46c9e192e1e5caa74c" - integrity sha512-S8rWgTpN2b/+UDDm+yZMFM6rw1zwO8KT0GAIQbAhB96shyD5eKen/UfihCTB7YMvbD2piebymwJTvxv6bn1VqQ== +"@aws-sdk/middleware-logger@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-logger/-/middleware-logger-3.329.0.tgz#fa8adc07928da24e713e384d4a32c8d0e36f96ee" + integrity sha512-lKeeTXsYC1NiwmxrXsZepcwNXPoQxTNNbeD1qaCELPGK2cJlrGoeAP2YRWzpwO2kNZWrDLaGAPT/EUEhqw+d1w== dependencies: - "@aws-sdk/types" "3.310.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" -"@aws-sdk/middleware-recursion-detection@3.325.0": - version "3.325.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.325.0.tgz#1b22e3eafa5992628277d991dfc0b81b40eebeaa" - integrity sha512-2l1ABF7KePsoKz8KaNvD2uxo1zHqkFHK4PL/wW/FbcwOcE08f0R7qX++st/bPpVjXX/j/5vWTnNNgJOIOrZhyw== +"@aws-sdk/middleware-recursion-detection@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.329.0.tgz#afa676f26f9a050cd3d57a2efa2b0247a6e1d614" + integrity sha512-0/TYOJwrj1Z8s+Y7thibD23hggBq/K/01NwPk32CwWG/G+1vWozs5DefknEl++w0vuV+39pkY4KHI8m/+wOCpg== dependencies: - "@aws-sdk/protocol-http" "3.310.0" - "@aws-sdk/types" "3.310.0" + "@aws-sdk/protocol-http" "3.329.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" -"@aws-sdk/middleware-retry@3.325.0": - version "3.325.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-retry/-/middleware-retry-3.325.0.tgz#8809c8bc603585b15ffb45b75bc90face3613319" - integrity sha512-oQM5AI3vkNQuCakBMgdohOcvRnVYcBBlv+KzCCj07ue9gk0x2dHOZY2pqTQ2CYilRqS/X1PtLogJXoyHP5Wvwg== +"@aws-sdk/middleware-retry@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-retry/-/middleware-retry-3.329.0.tgz#326fb0b7442d665689d311fba43eb49a510d2939" + integrity sha512-cB3D7GlhHUcHGOlygOYxD9cPhwsTYEAMcohK38An8+RHNp6VQEWezzLFCmHVKUSeCQ+wkjZfPA40jOG0rbjSgQ== dependencies: - "@aws-sdk/protocol-http" "3.310.0" - "@aws-sdk/service-error-classification" "3.310.0" - "@aws-sdk/types" "3.310.0" - "@aws-sdk/util-middleware" "3.310.0" - "@aws-sdk/util-retry" "3.310.0" + "@aws-sdk/protocol-http" "3.329.0" + "@aws-sdk/service-error-classification" "3.329.0" + "@aws-sdk/types" "3.329.0" + "@aws-sdk/util-middleware" "3.329.0" + "@aws-sdk/util-retry" "3.329.0" tslib "^2.5.0" uuid "^8.3.2" -"@aws-sdk/middleware-sdk-sts@3.325.0": - version "3.325.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.325.0.tgz#fc05f85299313d1112902085e215f06f742f9317" - integrity sha512-deRK1ZuNueQ6OOTEhBZ9bLmjPema/N3cwbtO+tDVwpi7MipjE4EZDXX8WL0xza5YLRnz9kxcHuyfL47vvKgO3A== +"@aws-sdk/middleware-sdk-sts@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.329.0.tgz#50056cca7688e708e3db6bd66203878bc373ff7d" + integrity sha512-bqtZuhkH8pANb2Gb4FEM1p27o+BoDBmVhEWm8sWH+APsyOor3jc6eUG2GxkfoO6D5tGNIuyCC/GuvW9XDIe4Kg== dependencies: - "@aws-sdk/middleware-signing" "3.325.0" - "@aws-sdk/types" "3.310.0" + "@aws-sdk/middleware-signing" "3.329.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" -"@aws-sdk/middleware-serde@3.325.0": - version "3.325.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-serde/-/middleware-serde-3.325.0.tgz#512ae03fbfa9266133aceafc010c6a9167ffb2f1" - integrity sha512-QAZYaFfAw1a06Vg39JiYIq0kSJ6EuUPOiKfK/Goj0cBv78lrXWuKdf04UF3U8Rqk/4mamnsTqUSwf4NoKkF0hw== +"@aws-sdk/middleware-serde@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-serde/-/middleware-serde-3.329.0.tgz#f822d7419953ba5d31104262724034340908dd28" + integrity sha512-tvM9NdPuRPCozPjTGNOeYZeLlyx3BcEyajrkRorCRf1YzG/mXdB6I1stote7i4q1doFtYTz0sYL8bqW3LUPn9A== dependencies: - "@aws-sdk/types" "3.310.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" -"@aws-sdk/middleware-signing@3.325.0": - version "3.325.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-signing/-/middleware-signing-3.325.0.tgz#46eea6805ca10ad4a4db8269e0bb3d31f906b887" - integrity sha512-SOwPwaCE3vSCGwFzkIlnOUSkeCUzKTyIQnFVjlQkqGuMxMX/iDaQQGaX+HUbuGIuULCEQqjZH4dLKZcor8eVZw== +"@aws-sdk/middleware-signing@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-signing/-/middleware-signing-3.329.0.tgz#25011abb0911c1a23840d8d228676758f5b55926" + integrity sha512-bL1nI+EUcF5B1ipwDXxiKL+Uw02Mbt/TNX54PbzunBGZIyO6DZG/H+M3U296bYbvPlwlZhp26O830g6K7VEWsA== dependencies: - "@aws-sdk/property-provider" "3.310.0" - "@aws-sdk/protocol-http" "3.310.0" - "@aws-sdk/signature-v4" "3.310.0" - "@aws-sdk/types" "3.310.0" - "@aws-sdk/util-middleware" "3.310.0" + "@aws-sdk/property-provider" "3.329.0" + "@aws-sdk/protocol-http" "3.329.0" + "@aws-sdk/signature-v4" "3.329.0" + "@aws-sdk/types" "3.329.0" + "@aws-sdk/util-middleware" "3.329.0" tslib "^2.5.0" -"@aws-sdk/middleware-stack@3.325.0": - version "3.325.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-stack/-/middleware-stack-3.325.0.tgz#3b592c7a6c32d2795746d050024585f588097621" - integrity sha512-cZWehA4grGvX1IKlY9atJgD0bq3ew7YRJgY7GA6DSgsU7GrZ61Qvi+H7IuGx5AdeAwaTnbnTGN4qCaA2EfxNhA== +"@aws-sdk/middleware-stack@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-stack/-/middleware-stack-3.329.0.tgz#745150a190cc025d0bd7a52c0db5580c05dbbb54" + integrity sha512-2huFLhJ45td2nuiIOjpc9JKJbFNn5CYmw9U8YDITTcydpteRN62CzCpeqroDvF89VOLWxh0ZFtuLCGUr7liSWQ== dependencies: tslib "^2.5.0" -"@aws-sdk/middleware-user-agent@3.325.0": - version "3.325.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.325.0.tgz#9ad9172b0002c7ad792839064b4f553ee14b2657" - integrity sha512-2aIdGId4o8eIStm1J1aWZwNDf6nvrwg5Nx7BomLAxKZ4lkH8knzXDtxaZR4ElcTsBlBcYxz2gbsrScMyKRDTGA== +"@aws-sdk/middleware-user-agent@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.329.0.tgz#54d6b97709a8910e07d43de3f51fcc92385baf1a" + integrity sha512-cA0AQ9dSZKVBgVNgzeJ2hzUYTG8iY/bLES+sOBK1A7XBl/VqwDQ8OelnoKj/ldL+dJfo9P85kdfYTQsjE4OUlQ== dependencies: - "@aws-sdk/protocol-http" "3.310.0" - "@aws-sdk/types" "3.310.0" - "@aws-sdk/util-endpoints" "3.319.0" + "@aws-sdk/protocol-http" "3.329.0" + "@aws-sdk/types" "3.329.0" + "@aws-sdk/util-endpoints" "3.329.0" tslib "^2.5.0" -"@aws-sdk/node-config-provider@3.310.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/node-config-provider/-/node-config-provider-3.310.0.tgz#ba8fb41af2db0316291ba9002267627553ec65ac" - integrity sha512-T/Pp6htc6hq/Cq+MLNDSyiwWCMVF6GqbBbXKVlO5L8rdHx4sq9xPdoPveZhGWrxvkanjA6eCwUp6E0riBOSVng== +"@aws-sdk/node-config-provider@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/node-config-provider/-/node-config-provider-3.329.0.tgz#32666077565924354a2216a5343ee768d3107eea" + integrity sha512-hg9rGNlkzh8aeR/sQbijrkFx2BIO53j4Z6qDxPNWwSGpl05jri1VHxHx2HZMwgbY6Zy/DSguETN/BL8vdFqyLg== dependencies: - "@aws-sdk/property-provider" "3.310.0" - "@aws-sdk/shared-ini-file-loader" "3.310.0" - "@aws-sdk/types" "3.310.0" + "@aws-sdk/property-provider" "3.329.0" + "@aws-sdk/shared-ini-file-loader" "3.329.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" -"@aws-sdk/node-http-handler@3.321.1": - version "3.321.1" - resolved "https://registry.yarnpkg.com/@aws-sdk/node-http-handler/-/node-http-handler-3.321.1.tgz#2de9380f3ce17f5b8b5d3c1300c8cd37d0ddddc5" - integrity sha512-DdQBrtFFDNtzphJIN3s93Vf+qd9LHSzH6WTQRrWoXhTDMHDzSI2Cn+c5KWfk89Nggp/n3+OTwUPQeCiBT5EBuw== +"@aws-sdk/node-http-handler@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/node-http-handler/-/node-http-handler-3.329.0.tgz#6dc721e6a9df7baebefd145295ef1a8bf1000a51" + integrity sha512-OrjaHjU2ZTPfoHa5DruRvTIbeHH/cc0wvh4ml+FwDpWaPaBpOhLiluhZ3anqX1l5QjrXNiQnL8FxSM5OV/zVCA== dependencies: - "@aws-sdk/abort-controller" "3.310.0" - "@aws-sdk/protocol-http" "3.310.0" - "@aws-sdk/querystring-builder" "3.310.0" - "@aws-sdk/types" "3.310.0" + "@aws-sdk/abort-controller" "3.329.0" + "@aws-sdk/protocol-http" "3.329.0" + "@aws-sdk/querystring-builder" "3.329.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" -"@aws-sdk/property-provider@3.310.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/property-provider/-/property-provider-3.310.0.tgz#5fae8a4c11bda052afa9747d47b031f1c4f0f246" - integrity sha512-3lxDb0akV6BBzmFe4nLPaoliQbAifyWJhuvuDOu7e8NzouvpQXs0275w9LePhhcgjKAEVXUIse05ZW2DLbxo/g== +"@aws-sdk/property-provider@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/property-provider/-/property-provider-3.329.0.tgz#069dda84e132c9d4eca1a4ae37c62f7a650a0046" + integrity sha512-1cHLTV6yyMGaMSWWDW/p4vTkJ1cc5BOEO+A0eHuAcoSOk+LDe9IKhUG3/ZOvvYKQYcqIj5jjGSni/noXNCl/qw== dependencies: - "@aws-sdk/types" "3.310.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" -"@aws-sdk/protocol-http@3.310.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/protocol-http/-/protocol-http-3.310.0.tgz#855c3314cba7ff3024a9a9701ca3c641691d997e" - integrity sha512-fgZ1aw/irQtnrsR58pS8ThKOWo57Py3xX6giRvwSgZDEcxHfVzuQjy9yPuV++v04fdmdtgpbGf8WfvAAJ11yXQ== +"@aws-sdk/protocol-http@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/protocol-http/-/protocol-http-3.329.0.tgz#a8a7e01477831961f5f040fe607c3552f9ccb013" + integrity sha512-0rLEHY6QTHTUUcVxzGbPUSmCKlXWplxT/fcYRh0bcc5MBK4naKfcQft1O6Ajp8uqs/9YPZ7XCVCn90pDeJfeaw== dependencies: - "@aws-sdk/types" "3.310.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" -"@aws-sdk/querystring-builder@3.310.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/querystring-builder/-/querystring-builder-3.310.0.tgz#5307ea52c3a4a1ae6818bbb6987cc6fce68b043f" - integrity sha512-ZHH8GV/80+pWGo7DzsvwvXR5xVxUHXUvPJPFAkhr6nCf78igdoF8gR10ScFoEKbtEapoNTaZlKHPXxpD8aPG7A== +"@aws-sdk/querystring-builder@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/querystring-builder/-/querystring-builder-3.329.0.tgz#c6e6dd03dcd4378d1fbee576ce2a81dd94ac46a6" + integrity sha512-UWgMKkS5trliaDJG4nPv3onu8Y0aBuwRo7RdIgggguOiU8pU6pq1I113nH2FBNWy+Me1bwf+bcviJh0pCo6bEg== dependencies: - "@aws-sdk/types" "3.310.0" + "@aws-sdk/types" "3.329.0" "@aws-sdk/util-uri-escape" "3.310.0" tslib "^2.5.0" -"@aws-sdk/querystring-parser@3.310.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/querystring-parser/-/querystring-parser-3.310.0.tgz#438183927e0b06e7c2ee004a1681b8d37c22e104" - integrity sha512-YkIznoP6lsiIUHinx++/lbb3tlMURGGqMpo0Pnn32zYzGrJXA6eC3D0as2EcMjo55onTfuLcIiX4qzXes2MYOA== +"@aws-sdk/querystring-parser@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/querystring-parser/-/querystring-parser-3.329.0.tgz#dbbf2fd23ff0dfa2e4663fa414de1d5e60814896" + integrity sha512-9mkK+FB7snJ2G7H3CqtprDwYIRhzm6jEezffCwUWrC+lbqHBbErbhE9IeU/MKxILmf0RbC2riXEY1MHGspjRrQ== dependencies: - "@aws-sdk/types" "3.310.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" -"@aws-sdk/service-error-classification@3.310.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/service-error-classification/-/service-error-classification-3.310.0.tgz#352c1db426dcf54a44393bc9a0607dde796b2abb" - integrity sha512-PuyC7k3qfIKeH2LCnDwbttMOKq3qAx4buvg0yfnJtQOz6t1AR8gsnAq0CjKXXyfkXwNKWTqCpE6lVNUIkXgsMw== +"@aws-sdk/service-error-classification@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/service-error-classification/-/service-error-classification-3.329.0.tgz#32db59091ff28f14e526cee738bc14e32a6850f6" + integrity sha512-TSNr0flOcCLe71aPp7MjblKNGsmxpTU4xR5772MDX9Cz9GUTNZCPFtvrcqd+wzEPP/AC7XwNXe8KjoXooZImUQ== -"@aws-sdk/shared-ini-file-loader@3.310.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.310.0.tgz#07e9c8e8e8bb0de7ed19b8cea908c920a493c9c9" - integrity sha512-N0q9pG0xSjQwc690YQND5bofm+4nfUviQ/Ppgan2kU6aU0WUq8KwgHJBto/YEEI+VlrME30jZJnxtOvcZJc2XA== +"@aws-sdk/shared-ini-file-loader@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.329.0.tgz#190eb922860d49b4259b20ca6df4d20769544802" + integrity sha512-e0hyd75fbjMd4aCoRwpP2/HR+0oScwogErVArIkq3F42c/hyNCQP3sph4JImuXIjuo6HNnpKpf20CEPPhNna8A== dependencies: - "@aws-sdk/types" "3.310.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" -"@aws-sdk/signature-v4@3.310.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/signature-v4/-/signature-v4-3.310.0.tgz#ad26426d3f72fa18e6808a36f827beb72d12bf2d" - integrity sha512-1M60P1ZBNAjCFv9sYW29OF6okktaeibWyW3lMXqzoHF70lHBZh+838iUchznXUA5FLabfn4jBFWMRxlAXJUY2Q== +"@aws-sdk/signature-v4@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/signature-v4/-/signature-v4-3.329.0.tgz#8d40683189678f49504169c923e8342247b1da70" + integrity sha512-9EnLoyOD5nFtCRAp+QRllDgQASCfY7jLHVhwht7jzwE80wE65Z9Ym5Z/mwTd4IyTz/xXfCvcE2VwClsBt0Ybdw== dependencies: "@aws-sdk/is-array-buffer" "3.310.0" - "@aws-sdk/types" "3.310.0" + "@aws-sdk/types" "3.329.0" "@aws-sdk/util-hex-encoding" "3.310.0" - "@aws-sdk/util-middleware" "3.310.0" + "@aws-sdk/util-middleware" "3.329.0" "@aws-sdk/util-uri-escape" "3.310.0" "@aws-sdk/util-utf8" "3.310.0" tslib "^2.5.0" -"@aws-sdk/smithy-client@3.325.0": - version "3.325.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/smithy-client/-/smithy-client-3.325.0.tgz#339f0ffa2824c5197a81831f9ff8a14d609517ec" - integrity sha512-sqDFuhjxd8+Q9qI8MmXe/g1/FgoViwetv14K+bpHK7pGlOIvDyT7TboDNClfgqSLdgTDCEaoC3JRSi9Y5RgbmA== +"@aws-sdk/smithy-client@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/smithy-client/-/smithy-client-3.329.0.tgz#54705963939855c87ae6e6c88196d23e819d728e" + integrity sha512-7E0fGpBKxwFqHHAOqNbgNsHSEmCZLuvmU9yvG9DXKVzrS4P48O/PfOro123WpcFZs3STyOVgH8wjUPftHAVKmg== dependencies: - "@aws-sdk/middleware-stack" "3.325.0" - "@aws-sdk/types" "3.310.0" + "@aws-sdk/middleware-stack" "3.329.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" -"@aws-sdk/token-providers@3.325.0": - version "3.325.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/token-providers/-/token-providers-3.325.0.tgz#481c79efbe5fceb2799a43d1e26bc83a32322447" - integrity sha512-h/ecgqXaMwEkUWo+SZJNcOMWJkAknjonWWpK/vQ4uz+qE9rBqRugsIeIiey+Ij7zCtwh6WhtpfCpt5RbxRHe6g== +"@aws-sdk/token-providers@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/token-providers/-/token-providers-3.329.0.tgz#96f1c6db53abc00a1d05547081cc4a152754df92" + integrity sha512-r53sH9OC8FjecIRavTfqvb2pLH3g1uVDFUuArKyzqY8Qypq/8oUc6LwsCWAwFQwHnmxsenKK/0ESHgNHfOW/+A== dependencies: - "@aws-sdk/client-sso-oidc" "3.325.0" - "@aws-sdk/property-provider" "3.310.0" - "@aws-sdk/shared-ini-file-loader" "3.310.0" - "@aws-sdk/types" "3.310.0" + "@aws-sdk/client-sso-oidc" "3.329.0" + "@aws-sdk/property-provider" "3.329.0" + "@aws-sdk/shared-ini-file-loader" "3.329.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" -"@aws-sdk/types@3.310.0", "@aws-sdk/types@^3.222.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/types/-/types-3.310.0.tgz#b83a0580feb38b58417abb8b4ed3eae1a0cb7bc1" - integrity sha512-j8eamQJ7YcIhw7fneUfs8LYl3t01k4uHi4ZDmNRgtbmbmTTG3FZc2MotStZnp3nZB6vLiPF1o5aoJxWVvkzS6A== +"@aws-sdk/types@3.329.0", "@aws-sdk/types@^3.222.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/types/-/types-3.329.0.tgz#bc20659abfcd666954196c3a24ad47785db80dd3" + integrity sha512-wFBW4yciDfzQBSFmWNaEvHShnSGLMxSu9Lls6EUf6xDMavxSB36bsrVRX6CyAo/W0NeIIyEOW1LclGPgJV1okg== dependencies: tslib "^2.5.0" -"@aws-sdk/url-parser@3.310.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/url-parser/-/url-parser-3.310.0.tgz#928c9eac2e3d74c3c5db4c6e364a1de00185dcaa" - integrity sha512-mCLnCaSB9rQvAgx33u0DujLvr4d5yEm/W5r789GblwwQnlNXedVu50QRizMLTpltYWyAUoXjJgQnJHmJMaKXhw== +"@aws-sdk/url-parser@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/url-parser/-/url-parser-3.329.0.tgz#a2862834a832ec1d379791f5233e378b75fc63ad" + integrity sha512-/VcfL7vNJKJGSjYYHVQF3bYCDFs4fSzB7j5qeVDwRdWr870gE7O1Dar+sLWBRKFF3AX+4VzplqzUfpu9t44JVA== dependencies: - "@aws-sdk/querystring-parser" "3.310.0" - "@aws-sdk/types" "3.310.0" + "@aws-sdk/querystring-parser" "3.329.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" "@aws-sdk/util-base64@3.310.0": @@ -644,34 +644,34 @@ dependencies: tslib "^2.5.0" -"@aws-sdk/util-defaults-mode-browser@3.325.0": - version "3.325.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.325.0.tgz#1ebe9b06c08adaba835c566da2cbf393cfaa504a" - integrity sha512-gcowpXTo8E8N3jxD2KW+csiicJ7HPkhWnpL925xgwe0oq091OpATsKFrBOL18h72VfRWf4FAsR9lVwxSQ78zSA== +"@aws-sdk/util-defaults-mode-browser@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.329.0.tgz#49fc6836e85968ff86917c56c82fc9ef595c0565" + integrity sha512-2iSiy/pzX3OXMhtSxtAzOiEFr3viQEFnYOTeZuiheuyS+cea2L79F6SlZ1110b/nOIU/UOrxxtz83HVad8YFMQ== dependencies: - "@aws-sdk/property-provider" "3.310.0" - "@aws-sdk/types" "3.310.0" + "@aws-sdk/property-provider" "3.329.0" + "@aws-sdk/types" "3.329.0" bowser "^2.11.0" tslib "^2.5.0" -"@aws-sdk/util-defaults-mode-node@3.325.0": - version "3.325.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.325.0.tgz#81ab64bcf41045adaf05f743387fe938d826e8b7" - integrity sha512-/5uoOrgNxoUxv3AwsdXjMA3f6KJA6fi69otA0RiINjilCdcbOxq5GI11AFEyRio/+e+imriX4+UYjsguUR+f4g== +"@aws-sdk/util-defaults-mode-node@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.329.0.tgz#2296652bcacd56c6abe159194aae283738a796b2" + integrity sha512-7A6C7YKjkZtmKtH29isYEtOCbhd7IcXPP8lftN8WAWlLOiZE4gV7PHveagUj7QserJzgRKGwwTQbBj53n18HYg== dependencies: - "@aws-sdk/config-resolver" "3.310.0" - "@aws-sdk/credential-provider-imds" "3.310.0" - "@aws-sdk/node-config-provider" "3.310.0" - "@aws-sdk/property-provider" "3.310.0" - "@aws-sdk/types" "3.310.0" + "@aws-sdk/config-resolver" "3.329.0" + "@aws-sdk/credential-provider-imds" "3.329.0" + "@aws-sdk/node-config-provider" "3.329.0" + "@aws-sdk/property-provider" "3.329.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" -"@aws-sdk/util-endpoints@3.319.0": - version "3.319.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-endpoints/-/util-endpoints-3.319.0.tgz#9be64762a8fae9eaac004cd3fa95576b3cb6ee38" - integrity sha512-3I64UMoYA2e2++oOUJXRcFtYLpLylnZFRltWfPo1B3dLlf+MIWat9djT+mMus+hW1ntLsvAIVu1hLVePJC0gvw== +"@aws-sdk/util-endpoints@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-endpoints/-/util-endpoints-3.329.0.tgz#b66db862437ad034f04417bbe1fe7ca40a7025c5" + integrity sha512-AlBHc4c+dj5pNMBoPFLGpB/+4Fe9nxe6eUf8T9Wu5QcTK+u6L8aiH1oGKv/1TxqwoPvqtrjb3HMBafUsB5Mw/g== dependencies: - "@aws-sdk/types" "3.310.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" "@aws-sdk/util-hex-encoding@3.310.0": @@ -688,19 +688,19 @@ dependencies: tslib "^2.5.0" -"@aws-sdk/util-middleware@3.310.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-middleware/-/util-middleware-3.310.0.tgz#713c5bfa296f4cf707150a0a1e911afd50dcf939" - integrity sha512-FTSUKL/eRb9X6uEZClrTe27QFXUNNp7fxYrPndZwk1hlaOP5ix+MIHBcI7pIiiY/JPfOUmPyZOu+HetlFXjWog== +"@aws-sdk/util-middleware@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-middleware/-/util-middleware-3.329.0.tgz#0d4056c8479d80760778928e807ff74c57fcead3" + integrity sha512-RhBOBaxzkTUghi4MSqr8S5qeeBCjgJ0XPJ6jIYkVkj1saCmqkuZCgl3zFaYdyhdxxPV6nflkFer+1HUoqT+Fqw== dependencies: tslib "^2.5.0" -"@aws-sdk/util-retry@3.310.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-retry/-/util-retry-3.310.0.tgz#4cdc35e2dfdacf2d928ab474ba8b67bbadd6be3c" - integrity sha512-FwWGhCBLfoivTMUHu1LIn4NjrN9JLJ/aX5aZmbcPIOhZVFJj638j0qDgZXyfvVqBuBZh7M8kGq0Oahy3dp69OA== +"@aws-sdk/util-retry@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-retry/-/util-retry-3.329.0.tgz#20b71504dd907e70a457cd56dcd131d08d6de39c" + integrity sha512-+3VQ9HZLinysnmryUs9Xjt1YVh4TYYHLt30ilu4iUnIHFQoamdzIbRCWseSVFPCxGroen9M9qmAleAsytHEKuA== dependencies: - "@aws-sdk/service-error-classification" "3.310.0" + "@aws-sdk/service-error-classification" "3.329.0" tslib "^2.5.0" "@aws-sdk/util-uri-escape@3.310.0": @@ -710,22 +710,22 @@ dependencies: tslib "^2.5.0" -"@aws-sdk/util-user-agent-browser@3.310.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.310.0.tgz#48d463a93351b78b678df324f3518a9798029c44" - integrity sha512-yU/4QnHHuQ5z3vsUqMQVfYLbZGYwpYblPiuZx4Zo9+x0PBkNjYMqctdDcrpoH9Z2xZiDN16AmQGK1tix117ZKw== +"@aws-sdk/util-user-agent-browser@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.329.0.tgz#6c3353a68f5d3d420156fabdcfab3bf4160f383b" + integrity sha512-8hLSmMCl8aw2++0Zuba8ELq8FkK6/VNyx470St201IpMn2GMbQMDl/rLolRKiTgji6wc+T3pOTidkJkz8/cIXA== dependencies: - "@aws-sdk/types" "3.310.0" + "@aws-sdk/types" "3.329.0" bowser "^2.11.0" tslib "^2.5.0" -"@aws-sdk/util-user-agent-node@3.310.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.310.0.tgz#ebefbedc5a4759adc958885741628ec0de1ab197" - integrity sha512-Ra3pEl+Gn2BpeE7KiDGpi4zj7WJXZA5GXnGo3mjbi9+Y3zrbuhJAbdZO3mO/o7xDgMC6ph4xCTbaSGzU6b6EDg== +"@aws-sdk/util-user-agent-node@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.329.0.tgz#eb0930a1f3315fa6ea6f72e4007bbfce1202a3e5" + integrity sha512-C50Zaeodc0+psEP+L4WpElrH8epuLWJPVN4hDOTORcM0cSoU2o025Ost9mbcU7UdoHNxF9vitLnzORGN9SHolg== dependencies: - "@aws-sdk/node-config-provider" "3.310.0" - "@aws-sdk/types" "3.310.0" + "@aws-sdk/node-config-provider" "3.329.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" "@aws-sdk/util-utf8-browser@^3.0.0": @@ -743,13 +743,13 @@ "@aws-sdk/util-buffer-from" "3.310.0" tslib "^2.5.0" -"@aws-sdk/util-waiter@3.310.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-waiter/-/util-waiter-3.310.0.tgz#a410739cfc637af9ccea21de079d00652e9b8363" - integrity sha512-AV5j3guH/Y4REu+Qh3eXQU9igljHuU4XjX2sADAgf54C0kkhcCCkkiuzk3IsX089nyJCqIcj5idbjdvpnH88Vw== +"@aws-sdk/util-waiter@3.329.0": + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-waiter/-/util-waiter-3.329.0.tgz#4e0d457548661e210cf716f8b18ff16a4dbd17c7" + integrity sha512-MIGs7snNL0ZV55zo1BDVPlrmbinUGV3260hp6HrW4zUbpYVoeIOGeewtrwAsF6FJ+vpZCxljPBB0X2jYR7Q7ZQ== dependencies: - "@aws-sdk/abort-controller" "3.310.0" - "@aws-sdk/types" "3.310.0" + "@aws-sdk/abort-controller" "3.329.0" + "@aws-sdk/types" "3.329.0" tslib "^2.5.0" "@cspotcode/source-map-support@^0.8.0": @@ -798,9 +798,9 @@ integrity sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ== "@types/node@^18.11.17": - version "18.16.3" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.16.3.tgz#6bda7819aae6ea0b386ebc5b24bdf602f1b42b01" - integrity sha512-OPs5WnnT1xkCBiuQrZA4+YAV4HEJejmHneyraIaxsbev5yCEr6KMwINNFP9wQeFIw8FWcoTqF3vQsa5CDaI+8Q== + version "18.16.7" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.16.7.tgz#86d0ba2541f808cb78d4dc5d3e40242a349d6db8" + integrity sha512-MFg7ua/bRtnA1hYE3pVyWxGd/r7aMqjNOdHvlSsXV3n8iaeGKkOaPzpJh6/ovf4bEXWcojkeMJpTsq3mzXW4IQ== acorn-walk@^8.1.1: version "8.2.0" diff --git a/utils/retrievalAPI/yarn.lock b/utils/retrievalAPI/yarn.lock index edfa5fee0a..b6571d097c 100644 --- a/utils/retrievalAPI/yarn.lock +++ b/utils/retrievalAPI/yarn.lock @@ -48,9 +48,9 @@ integrity sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ== "@types/node@^18.7.14": - version "18.16.3" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.16.3.tgz#6bda7819aae6ea0b386ebc5b24bdf602f1b42b01" - integrity sha512-OPs5WnnT1xkCBiuQrZA4+YAV4HEJejmHneyraIaxsbev5yCEr6KMwINNFP9wQeFIw8FWcoTqF3vQsa5CDaI+8Q== + version "18.16.7" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.16.7.tgz#86d0ba2541f808cb78d4dc5d3e40242a349d6db8" + integrity sha512-MFg7ua/bRtnA1hYE3pVyWxGd/r7aMqjNOdHvlSsXV3n8iaeGKkOaPzpJh6/ovf4bEXWcojkeMJpTsq3mzXW4IQ== acorn-walk@^8.1.1: version "8.2.0" diff --git a/yarn.lock b/yarn.lock index 5546c6086a..72f19f6e0b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -926,9 +926,9 @@ integrity sha512-5z4ewjuRFPXYPCV3gaoHDCdjwrpBUs+12uZFBEbGE0S4UV+YrOPN5ehy+rpAGbhrsKYDxbAg9tHLkX4vRDFVgw== "@aws-sdk/types@^3.1.0", "@aws-sdk/types@^3.110.0": - version "3.310.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/types/-/types-3.310.0.tgz#b83a0580feb38b58417abb8b4ed3eae1a0cb7bc1" - integrity sha512-j8eamQJ7YcIhw7fneUfs8LYl3t01k4uHi4ZDmNRgtbmbmTTG3FZc2MotStZnp3nZB6vLiPF1o5aoJxWVvkzS6A== + version "3.329.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/types/-/types-3.329.0.tgz#bc20659abfcd666954196c3a24ad47785db80dd3" + integrity sha512-wFBW4yciDfzQBSFmWNaEvHShnSGLMxSu9Lls6EUf6xDMavxSB36bsrVRX6CyAo/W0NeIIyEOW1LclGPgJV1okg== dependencies: tslib "^2.5.0" @@ -1559,93 +1559,93 @@ debug "^3.1.0" lodash.once "^4.1.1" -"@emotion/babel-plugin@^11.10.8": - version "11.10.8" - resolved "https://registry.yarnpkg.com/@emotion/babel-plugin/-/babel-plugin-11.10.8.tgz#bae325c902937665d00684038fd5294223ef9e1d" - integrity sha512-gxNky50AJL3AlkbjvTARiwAqei6/tNUxDZPSKd+3jqWVM3AmdVTTdpjHorR/an/M0VJqdsuq5oGcFH+rjtyujQ== +"@emotion/babel-plugin@^11.11.0": + version "11.11.0" + resolved "https://registry.yarnpkg.com/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz#c2d872b6a7767a9d176d007f5b31f7d504bb5d6c" + integrity sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ== dependencies: "@babel/helper-module-imports" "^7.16.7" "@babel/runtime" "^7.18.3" - "@emotion/hash" "^0.9.0" - "@emotion/memoize" "^0.8.0" - "@emotion/serialize" "^1.1.1" + "@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.1.4" + stylis "4.2.0" -"@emotion/cache@^11.10.8", "@emotion/cache@^11.4.0": - version "11.10.8" - resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-11.10.8.tgz#3b39b4761bea0ae2f4f07f0a425eec8b6977c03e" - integrity sha512-5fyqGHi51LU95o7qQ/vD1jyvC4uCY5GcBT+UgP4LHdpO9jPDlXqhrRr9/wCKmfoAvh5G/F7aOh4MwQa+8uEqhA== +"@emotion/cache@^11.11.0", "@emotion/cache@^11.4.0": + version "11.11.0" + resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-11.11.0.tgz#809b33ee6b1cb1a625fef7a45bc568ccd9b8f3ff" + integrity sha512-P34z9ssTCBi3e9EI1ZsWpNHcfY1r09ZO0rZbRO2ob3ZQMnFI35jB536qoXbkdesr5EUhYi22anuEJuyxifaqAQ== dependencies: - "@emotion/memoize" "^0.8.0" - "@emotion/sheet" "^1.2.1" - "@emotion/utils" "^1.2.0" - "@emotion/weak-memoize" "^0.3.0" - stylis "4.1.4" + "@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" -"@emotion/hash@^0.9.0": - version "0.9.0" - resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.9.0.tgz#c5153d50401ee3c027a57a177bc269b16d889cb7" - integrity sha512-14FtKiHhy2QoPIzdTcvh//8OyBlknNs2nXRwIhG904opCby3l+9Xaf/wuPvICBF0rc1ZCNBd3nKe9cd2mecVkQ== +"@emotion/hash@^0.9.1": + version "0.9.1" + resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.9.1.tgz#4ffb0055f7ef676ebc3a5a91fb621393294e2f43" + integrity sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ== -"@emotion/memoize@^0.8.0": - version "0.8.0" - resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.8.0.tgz#f580f9beb67176fa57aae70b08ed510e1b18980f" - integrity sha512-G/YwXTkv7Den9mXDO7AhLWkE3q+I92B+VqAE+dYG4NGPaHZGvt3G8Q0p9vmE+sq7rTGphUbAvmQ9YpbfMQGGlA== +"@emotion/memoize@^0.8.1": + version "0.8.1" + resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.8.1.tgz#c1ddb040429c6d21d38cc945fe75c818cfb68e17" + integrity sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA== "@emotion/react@^11.8.1": - version "11.10.8" - resolved "https://registry.yarnpkg.com/@emotion/react/-/react-11.10.8.tgz#02e274ecb45e03ab9d7a8eb9f0f0c064613eaf7b" - integrity sha512-ZfGfiABtJ1P1OXqOBsW08EgCDp5fK6C5I8hUJauc/VcJBGSzqAirMnFslhFWnZJ/w5HxPI36XbvMV0l4KZHl+w== + version "11.11.0" + resolved "https://registry.yarnpkg.com/@emotion/react/-/react-11.11.0.tgz#408196b7ef8729d8ad08fc061b03b046d1460e02" + integrity sha512-ZSK3ZJsNkwfjT3JpDAWJZlrGD81Z3ytNDsxw1LKq1o+xkmO5pnWfr6gmCC8gHEFf3nSSX/09YrG67jybNPxSUw== dependencies: "@babel/runtime" "^7.18.3" - "@emotion/babel-plugin" "^11.10.8" - "@emotion/cache" "^11.10.8" - "@emotion/serialize" "^1.1.1" - "@emotion/use-insertion-effect-with-fallbacks" "^1.0.0" - "@emotion/utils" "^1.2.0" - "@emotion/weak-memoize" "^0.3.0" + "@emotion/babel-plugin" "^11.11.0" + "@emotion/cache" "^11.11.0" + "@emotion/serialize" "^1.1.2" + "@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@^1.1.1": - version "1.1.1" - resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-1.1.1.tgz#0595701b1902feded8a96d293b26be3f5c1a5cf0" - integrity sha512-Zl/0LFggN7+L1liljxXdsVSVlg6E/Z/olVWpfxUTxOAmi8NU7YoeWeLfi1RmnB2TATHoaWwIBRoL+FvAJiTUQA== +"@emotion/serialize@^1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-1.1.2.tgz#017a6e4c9b8a803bd576ff3d52a0ea6fa5a62b51" + integrity sha512-zR6a/fkFP4EAcCMQtLOhIgpprZOwNmCldtpaISpvz348+DP4Mz8ZoKaGGCQpbzepNIUWbq4w6hNZkwDyKoS+HA== dependencies: - "@emotion/hash" "^0.9.0" - "@emotion/memoize" "^0.8.0" - "@emotion/unitless" "^0.8.0" - "@emotion/utils" "^1.2.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" -"@emotion/sheet@^1.2.1": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-1.2.1.tgz#0767e0305230e894897cadb6c8df2c51e61a6c2c" - integrity sha512-zxRBwl93sHMsOj4zs+OslQKg/uhF38MB+OMKoCrVuS0nyTkqnau+BM3WGEoOptg9Oz45T/aIGs1qbVAsEFo3nA== +"@emotion/sheet@^1.2.2": + version "1.2.2" + resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-1.2.2.tgz#d58e788ee27267a14342303e1abb3d508b6d0fec" + integrity sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA== -"@emotion/unitless@^0.8.0": - version "0.8.0" - resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.8.0.tgz#a4a36e9cbdc6903737cd20d38033241e1b8833db" - integrity sha512-VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw== +"@emotion/unitless@^0.8.1": + version "0.8.1" + resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.8.1.tgz#182b5a4704ef8ad91bde93f7a860a88fd92c79a3" + integrity sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ== -"@emotion/use-insertion-effect-with-fallbacks@^1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.0.tgz#ffadaec35dbb7885bd54de3fa267ab2f860294df" - integrity sha512-1eEgUGmkaljiBnRMTdksDV1W4kUnmwgp7X9G8B++9GYwl1lUdqSndSriIrTJ0N7LQaoauY9JJ2yhiOYK5+NI4A== +"@emotion/use-insertion-effect-with-fallbacks@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz#08de79f54eb3406f9daaf77c76e35313da963963" + integrity sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw== -"@emotion/utils@^1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.2.0.tgz#9716eaccbc6b5ded2ea5a90d65562609aab0f561" - integrity sha512-sn3WH53Kzpw8oQ5mgMmIzzyAaH2ZqFEbozVVBSYp538E06OSE6ytOp7pRAjNQR+Q/orwqdQYJSe2m3hCOeznkw== +"@emotion/utils@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.2.1.tgz#bbab58465738d31ae4cb3dbb6fc00a5991f755e4" + integrity sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg== -"@emotion/weak-memoize@^0.3.0": - version "0.3.0" - resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.3.0.tgz#ea89004119dc42db2e1dba0f97d553f7372f6fcb" - integrity sha512-AHPmaAx+RYfZz0eYu6Gviiagpmiyw98ySSlQvCUhVGDRtDFe4DBS0x1bSjdF3gqUDYOczB+yYvBTtEylYSdRhg== +"@emotion/weak-memoize@^0.3.1": + version "0.3.1" + resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz#d0fce5d07b0620caa282b5131c297bb60f9d87e6" + integrity sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww== "@eslint-community/eslint-utils@^4.2.0": version "4.4.0" @@ -1659,14 +1659,14 @@ resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.5.1.tgz#cdd35dce4fa1a89a4fd42b1599eb35b3af408884" integrity sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ== -"@eslint/eslintrc@^2.0.2": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.0.2.tgz#01575e38707add677cf73ca1589abba8da899a02" - integrity sha512-3W4f5tDUra+pA+FzgugqL2pRimUTDJWKr7BINqOpkZrC0uYI0NIc0/JFgBROCU07HR6GieA5m3/rsPIhDmCXTQ== +"@eslint/eslintrc@^2.0.3": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.0.3.tgz#4910db5505f4d503f27774bf356e3704818a0331" + integrity sha512-+5gy6OQfk+xx3q0d6jGZZC3f3KzAkXc/IanVxd1is/VIIziRqqt3ongQz0FiTUXqTk0c7aDB3OaFuKnuSoJicQ== dependencies: ajv "^6.12.4" debug "^4.3.2" - espree "^9.5.1" + espree "^9.5.2" globals "^13.19.0" ignore "^5.2.0" import-fresh "^3.2.1" @@ -1674,10 +1674,10 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@eslint/js@8.39.0": - version "8.39.0" - resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.39.0.tgz#58b536bcc843f4cd1e02a7e6171da5c040f4d44b" - integrity sha512-kf9RB0Fg7NZfap83B3QOqOGg9QmD9yBudqQXzzOtn3i4y7ZUXe5ONeW34Gwi+TxhH4mvj72R1Zc300KUMa9Bng== +"@eslint/js@8.40.0": + version "8.40.0" + resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.40.0.tgz#3ba73359e11f5a7bd3e407f70b3528abfae69cec" + integrity sha512-ElyB54bJIhXQYVKjDSvCkPO1iU1tSAeVQJbllWJq1XQSmmA4dgFk8CbiBGpiOPxleE48vDogxCtmMYku4HSVLA== "@floating-ui/core@^0.7.3": version "0.7.3" @@ -2238,10 +2238,10 @@ resolved "https://registry.yarnpkg.com/@next/env/-/env-13.4.1.tgz#57322da2630b6bb6d7204577b0a18f6f9324db0c" integrity sha512-eD6WCBMFjLFooLM19SIhSkWBHtaFrZFfg2Cxnyl3vS3DAdFRfnx5TY2RxlkuKXdIRCC0ySbtK9JXXt8qLCqzZg== -"@next/eslint-plugin-next@13.3.4", "@next/eslint-plugin-next@^13.1.3": - version "13.3.4" - resolved "https://registry.yarnpkg.com/@next/eslint-plugin-next/-/eslint-plugin-next-13.3.4.tgz#0f1092d89b0801dbe99fc7e712f9bf1d835431a3" - integrity sha512-mvS+HafOPy31oJbAi920WJXMdjbyb4v5FAMr9PeGZfRIdEcsLkA3mU/ZvmwzovJgP3nAWw2e2yM8iIFW8VpvIA== +"@next/eslint-plugin-next@13.4.1", "@next/eslint-plugin-next@^13.1.3": + version "13.4.1" + resolved "https://registry.yarnpkg.com/@next/eslint-plugin-next/-/eslint-plugin-next-13.4.1.tgz#9c943ccd035f5f4b79da23911e08e18c24941bed" + integrity sha512-tVPS/2FKlA3ANCRCYZVT5jdbUKasBU8LG6bYqcNhyORDFTlDYa4cAWQJjZ7msIgLwMQIbL8CAsxrOL8maa/4Lg== dependencies: glob "7.1.7" @@ -3608,13 +3608,6 @@ dependencies: "@sinonjs/commons" "^2.0.0" -"@sinonjs/fake-timers@^7.1.0": - version "7.1.2" - resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-7.1.2.tgz#2524eae70c4910edccf99b2f4e6efc5894aff7b5" - integrity sha512-iQADsW4LBMISqZ6Ci1dupJL9pprqwcVFTcOsEmQOEhW+KLCVn/Y4Jrvg2k19fIHCp+iFprriYPTdRcQR8NbUPg== - dependencies: - "@sinonjs/commons" "^1.7.0" - "@sinonjs/fake-timers@^9.1.2": version "9.1.2" resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-9.1.2.tgz#4eaab737fab77332ab132d396a3c0d364bd0ea8c" @@ -3809,9 +3802,9 @@ integrity sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA== "@types/formidable@^2.0.4": - version "2.0.5" - resolved "https://registry.yarnpkg.com/@types/formidable/-/formidable-2.0.5.tgz#e54e31d242ef750ac2d05aa163fa0274c8e6ef9c" - integrity sha512-uvMcdn/KK3maPOaVUAc3HEYbCEhjaGFwww4EsX6IJfWIJ1tzHtDHczuImH3GKdusPnAAmzB07St90uabZeCKPA== + version "2.0.6" + resolved "https://registry.yarnpkg.com/@types/formidable/-/formidable-2.0.6.tgz#811ed3cd8a8a7675e02420b3f861c317e055376a" + integrity sha512-L4HcrA05IgQyNYJj6kItuIkXrInJvsXTPC5B1i64FggWKKqSL+4hgt7asiSNva75AoLQjq29oPxFfU4GAQ6Z2w== dependencies: "@types/node" "*" @@ -3933,15 +3926,20 @@ dependencies: "@types/node" "*" -"@types/node@*", "@types/node@^18.11.18": - version "18.16.3" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.16.3.tgz#6bda7819aae6ea0b386ebc5b24bdf602f1b42b01" - integrity sha512-OPs5WnnT1xkCBiuQrZA4+YAV4HEJejmHneyraIaxsbev5yCEr6KMwINNFP9wQeFIw8FWcoTqF3vQsa5CDaI+8Q== +"@types/node@*": + version "20.1.2" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.1.2.tgz#8fd63447e3f99aba6c3168fd2ec4580d5b97886f" + integrity sha512-CTO/wa8x+rZU626cL2BlbCDzydgnFNgc19h4YvizpTO88MFQxab8wqisxaofQJ/9bLGugRdWIuX/TbIs6VVF6g== "@types/node@^14.14.31": - version "14.18.43" - resolved "https://registry.yarnpkg.com/@types/node/-/node-14.18.43.tgz#679e000d9f1d914132ea295b4a1ffdf20370ec49" - integrity sha512-n3eFEaoem0WNwLux+k272P0+aq++5o05bA9CfiwKPdYPB5ZambWKdWoeHy7/OJiizMhzg27NLaZ6uzjLTzXceQ== + version "14.18.46" + resolved "https://registry.yarnpkg.com/@types/node/-/node-14.18.46.tgz#ffc5a96cbe4fb5af9d16ac08e50229de30969487" + integrity sha512-n4yVT5FuY5NCcGHCosQSGvvCT74HhowymPN2OEcsHPw6U1NuxV9dvxWbrM2dnBukWjdMYzig1WfIkWdTTQJqng== + +"@types/node@^18.11.18": + version "18.16.7" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.16.7.tgz#86d0ba2541f808cb78d4dc5d3e40242a349d6db8" + integrity sha512-MFg7ua/bRtnA1hYE3pVyWxGd/r7aMqjNOdHvlSsXV3n8iaeGKkOaPzpJh6/ovf4bEXWcojkeMJpTsq3mzXW4IQ== "@types/parse-json@^4.0.0": version "4.0.0" @@ -3968,9 +3966,9 @@ integrity sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w== "@types/react-dom@^18.0.0": - version "18.2.1" - resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-18.2.1.tgz#663b2612feb5f6431a70207430d7c04881b87f29" - integrity sha512-8QZEV9+Kwy7tXFmjJrp3XUKQSs9LTnE0KnoUb0YCguWBiNW0Yfb2iBMYZ08WPg35IR6P3Z0s00B15SwZnO26+w== + version "18.2.4" + resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-18.2.4.tgz#13f25bfbf4e404d26f62ac6e406591451acba9e0" + integrity sha512-G2mHoTMTL4yoydITgOGwWdWMVd8sNgyEP85xVmMKAPUBwQWm9wBPQUmvbeF4V3WBY1P7mmL4BkjQ0SqUpf1snw== dependencies: "@types/react" "*" @@ -3982,16 +3980,16 @@ "@types/react" "*" "@types/react-transition-group@^4.4.0": - version "4.4.5" - resolved "https://registry.yarnpkg.com/@types/react-transition-group/-/react-transition-group-4.4.5.tgz#aae20dcf773c5aa275d5b9f7cdbca638abc5e416" - integrity sha512-juKD/eiSM3/xZYzjuzH6ZwpP+/lejltmiS3QEzV/vmb/Q8+HfDmxu+Baga8UEMGBqV88Nbg4l2hY/K2DkyaLLA== + version "4.4.6" + resolved "https://registry.yarnpkg.com/@types/react-transition-group/-/react-transition-group-4.4.6.tgz#18187bcda5281f8e10dfc48f0943e2fdf4f75e2e" + integrity sha512-VnCdSxfcm08KjsJVQcfBmhEQAPnLB8G08hAxn39azX1qYBQ/5RVQuoHuKIcfKOdncuaUvEpFKFzEvbtIMsfVew== dependencies: "@types/react" "*" "@types/react@*", "@types/react@^18.0.18": - version "18.2.0" - resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.0.tgz#15cda145354accfc09a18d2f2305f9fc099ada21" - integrity sha512-0FLj93y5USLHdnhIhABk83rm8XEGA7kH3cr+YUlvxoUGp1xNt/DINUMvqPxLyOQMzLmZe8i4RTHbvb8MC7NmrA== + version "18.2.6" + resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.6.tgz#5cd53ee0d30ffc193b159d3516c8c8ad2f19d571" + integrity sha512-wRZClXn//zxCFW+ye/D2qY65UsYP1Fpex2YXorHc8awoNamkMZSvBxwxdYVInsHOZZd2Ppq8isnSzJL5Mpf8OA== dependencies: "@types/prop-types" "*" "@types/scheduler" "*" @@ -4003,16 +4001,21 @@ integrity sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ== "@types/semver@^7.3.12": - version "7.3.13" - resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.3.13.tgz#da4bfd73f49bd541d28920ab0e2bf0ee80f71c91" - integrity sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw== + version "7.5.0" + resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.0.tgz#591c1ce3a702c45ee15f47a42ade72c2fd78978a" + integrity sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw== "@types/sinon@^10.0.10": - version "10.0.10" - resolved "https://registry.yarnpkg.com/@types/sinon/-/sinon-10.0.10.tgz#f8acd72fbc2e87c4679f3e2c1ab3530dff1ab6e2" - integrity sha512-US5E539UfeL2DiWALzCyk0c4zKh6sCv86V/0lpda/afMJJ0oEm2SrKgedH5optvFWstnJ8e1MNYhLmPhAy4rvQ== + version "10.0.14" + resolved "https://registry.yarnpkg.com/@types/sinon/-/sinon-10.0.14.tgz#6bd18b088ea5ef1e5153fa37d0b68e91eff09e22" + integrity sha512-mn72up6cjaMyMuaPaa/AwKf6WtsSRysQC7wxFkCm1XcOKXPM1z+5Y4H5wjIVBz4gdAkjvZxVVfjA6ba1nHr5WQ== dependencies: - "@sinonjs/fake-timers" "^7.1.0" + "@types/sinonjs__fake-timers" "*" + +"@types/sinonjs__fake-timers@*": + version "8.1.2" + resolved "https://registry.yarnpkg.com/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.2.tgz#bf2e02a3dbd4aecaf95942ecd99b7402e03fad5e" + integrity sha512-9GcLXF0/v3t80caGs5p2rRfkB+a8VBGLJZVih6CNFkx8IZ994wiKKLSRs9nuFwk1HevWs/1mnUmkApGrSGsShA== "@types/sinonjs__fake-timers@8.1.1": version "8.1.1" @@ -4066,14 +4069,14 @@ "@types/node" "*" "@typescript-eslint/eslint-plugin@^5.59.0": - version "5.59.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.2.tgz#684a2ce7182f3b4dac342eef7caa1c2bae476abd" - integrity sha512-yVrXupeHjRxLDcPKL10sGQ/QlVrA8J5IYOEWVqk0lJaSZP7X5DfnP7Ns3cc74/blmbipQ1htFNVGsHX6wsYm0A== + version "5.59.5" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.5.tgz#f156827610a3f8cefc56baeaa93cd4a5f32966b4" + integrity sha512-feA9xbVRWJZor+AnLNAr7A8JRWeZqHUf4T9tlP+TN04b05pFVhO5eN7/O93Y/1OUlLMHKbnJisgDURs/qvtqdg== dependencies: "@eslint-community/regexpp" "^4.4.0" - "@typescript-eslint/scope-manager" "5.59.2" - "@typescript-eslint/type-utils" "5.59.2" - "@typescript-eslint/utils" "5.59.2" + "@typescript-eslint/scope-manager" "5.59.5" + "@typescript-eslint/type-utils" "5.59.5" + "@typescript-eslint/utils" "5.59.5" debug "^4.3.4" grapheme-splitter "^1.0.4" ignore "^5.2.0" @@ -4082,71 +4085,71 @@ tsutils "^3.21.0" "@typescript-eslint/parser@^5.42.0", "@typescript-eslint/parser@^5.59.0": - version "5.59.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.59.2.tgz#c2c443247901d95865b9f77332d9eee7c55655e8" - integrity sha512-uq0sKyw6ao1iFOZZGk9F8Nro/8+gfB5ezl1cA06SrqbgJAt0SRoFhb9pXaHvkrxUpZaoLxt8KlovHNk8Gp6/HQ== + version "5.59.5" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.59.5.tgz#63064f5eafbdbfb5f9dfbf5c4503cdf949852981" + integrity sha512-NJXQC4MRnF9N9yWqQE2/KLRSOLvrrlZb48NGVfBa+RuPMN6B7ZcK5jZOvhuygv4D64fRKnZI4L4p8+M+rfeQuw== dependencies: - "@typescript-eslint/scope-manager" "5.59.2" - "@typescript-eslint/types" "5.59.2" - "@typescript-eslint/typescript-estree" "5.59.2" + "@typescript-eslint/scope-manager" "5.59.5" + "@typescript-eslint/types" "5.59.5" + "@typescript-eslint/typescript-estree" "5.59.5" debug "^4.3.4" -"@typescript-eslint/scope-manager@5.59.2": - version "5.59.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.59.2.tgz#f699fe936ee4e2c996d14f0fdd3a7da5ba7b9a4c" - integrity sha512-dB1v7ROySwQWKqQ8rEWcdbTsFjh2G0vn8KUyvTXdPoyzSL6lLGkiXEV5CvpJsEe9xIdKV+8Zqb7wif2issoOFA== +"@typescript-eslint/scope-manager@5.59.5": + version "5.59.5" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.59.5.tgz#33ffc7e8663f42cfaac873de65ebf65d2bce674d" + integrity sha512-jVecWwnkX6ZgutF+DovbBJirZcAxgxC0EOHYt/niMROf8p4PwxxG32Qdhj/iIQQIuOflLjNkxoXyArkcIP7C3A== dependencies: - "@typescript-eslint/types" "5.59.2" - "@typescript-eslint/visitor-keys" "5.59.2" + "@typescript-eslint/types" "5.59.5" + "@typescript-eslint/visitor-keys" "5.59.5" -"@typescript-eslint/type-utils@5.59.2": - version "5.59.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.59.2.tgz#0729c237503604cd9a7084b5af04c496c9a4cdcf" - integrity sha512-b1LS2phBOsEy/T381bxkkywfQXkV1dWda/z0PhnIy3bC5+rQWQDS7fk9CSpcXBccPY27Z6vBEuaPBCKCgYezyQ== +"@typescript-eslint/type-utils@5.59.5": + version "5.59.5" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.59.5.tgz#485b0e2c5b923460bc2ea6b338c595343f06fc9b" + integrity sha512-4eyhS7oGym67/pSxA2mmNq7X164oqDYNnZCUayBwJZIRVvKpBCMBzFnFxjeoDeShjtO6RQBHBuwybuX3POnDqg== dependencies: - "@typescript-eslint/typescript-estree" "5.59.2" - "@typescript-eslint/utils" "5.59.2" + "@typescript-eslint/typescript-estree" "5.59.5" + "@typescript-eslint/utils" "5.59.5" debug "^4.3.4" tsutils "^3.21.0" -"@typescript-eslint/types@5.59.2": - version "5.59.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.59.2.tgz#b511d2b9847fe277c5cb002a2318bd329ef4f655" - integrity sha512-LbJ/HqoVs2XTGq5shkiKaNTuVv5tTejdHgfdjqRUGdYhjW1crm/M7og2jhVskMt8/4wS3T1+PfFvL1K3wqYj4w== +"@typescript-eslint/types@5.59.5": + version "5.59.5" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.59.5.tgz#e63c5952532306d97c6ea432cee0981f6d2258c7" + integrity sha512-xkfRPHbqSH4Ggx4eHRIO/eGL8XL4Ysb4woL8c87YuAo8Md7AUjyWKa9YMwTL519SyDPrfEgKdewjkxNCVeJW7w== -"@typescript-eslint/typescript-estree@5.59.2": - version "5.59.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.2.tgz#6e2fabd3ba01db5d69df44e0b654c0b051fe9936" - integrity sha512-+j4SmbwVmZsQ9jEyBMgpuBD0rKwi9RxRpjX71Brr73RsYnEr3Lt5QZ624Bxphp8HUkSKfqGnPJp1kA5nl0Sh7Q== +"@typescript-eslint/typescript-estree@5.59.5": + version "5.59.5" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.5.tgz#9b252ce55dd765e972a7a2f99233c439c5101e42" + integrity sha512-+XXdLN2CZLZcD/mO7mQtJMvCkzRfmODbeSKuMY/yXbGkzvA9rJyDY5qDYNoiz2kP/dmyAxXquL2BvLQLJFPQIg== dependencies: - "@typescript-eslint/types" "5.59.2" - "@typescript-eslint/visitor-keys" "5.59.2" + "@typescript-eslint/types" "5.59.5" + "@typescript-eslint/visitor-keys" "5.59.5" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" semver "^7.3.7" tsutils "^3.21.0" -"@typescript-eslint/utils@5.59.2", "@typescript-eslint/utils@^5.58.0": - version "5.59.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.59.2.tgz#0c45178124d10cc986115885688db6abc37939f4" - integrity sha512-kSuF6/77TZzyGPhGO4uVp+f0SBoYxCDf+lW3GKhtKru/L8k/Hd7NFQxyWUeY7Z/KGB2C6Fe3yf2vVi4V9TsCSQ== +"@typescript-eslint/utils@5.59.5", "@typescript-eslint/utils@^5.58.0": + version "5.59.5" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.59.5.tgz#15b3eb619bb223302e60413adb0accd29c32bcae" + integrity sha512-sCEHOiw+RbyTii9c3/qN74hYDPNORb8yWCoPLmB7BIflhplJ65u2PBpdRla12e3SSTJ2erRkPjz7ngLHhUegxA== dependencies: "@eslint-community/eslint-utils" "^4.2.0" "@types/json-schema" "^7.0.9" "@types/semver" "^7.3.12" - "@typescript-eslint/scope-manager" "5.59.2" - "@typescript-eslint/types" "5.59.2" - "@typescript-eslint/typescript-estree" "5.59.2" + "@typescript-eslint/scope-manager" "5.59.5" + "@typescript-eslint/types" "5.59.5" + "@typescript-eslint/typescript-estree" "5.59.5" eslint-scope "^5.1.1" semver "^7.3.7" -"@typescript-eslint/visitor-keys@5.59.2": - version "5.59.2" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.2.tgz#37a419dc2723a3eacbf722512b86d6caf7d3b750" - integrity sha512-EEpsO8m3RASrKAHI9jpavNv9NlEUebV4qmF1OWxSTtKSFBpC1NCmWazDQHFivRf0O1DV11BA645yrLEVQ0/Lig== +"@typescript-eslint/visitor-keys@5.59.5": + version "5.59.5" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.5.tgz#ba5b8d6791a13cf9fea6716af1e7626434b29b9b" + integrity sha512-qL+Oz+dbeBRTeyJTIy0eniD3uvqU7x+y1QceBismZ41hd4aBSRh8UAw4pZP0+XzLuPZmx4raNMq/I+59W2lXKA== dependencies: - "@typescript-eslint/types" "5.59.2" + "@typescript-eslint/types" "5.59.5" eslint-visitor-keys "^3.3.0" "@ucast/core@^1.0.0", "@ucast/core@^1.4.1", "@ucast/core@^1.6.1": @@ -4177,125 +4180,125 @@ dependencies: "@ucast/core" "^1.4.1" -"@webassemblyjs/ast@1.11.5", "@webassemblyjs/ast@^1.11.5": - version "1.11.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.11.5.tgz#6e818036b94548c1fb53b754b5cae3c9b208281c" - integrity sha512-LHY/GSAZZRpsNQH+/oHqhRQ5FT7eoULcBqgfyTB5nQHogFnK3/7QoN7dLnwSE/JkUAF0SrRuclT7ODqMFtWxxQ== +"@webassemblyjs/ast@1.11.6", "@webassemblyjs/ast@^1.11.5": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.11.6.tgz#db046555d3c413f8966ca50a95176a0e2c642e24" + integrity sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q== dependencies: - "@webassemblyjs/helper-numbers" "1.11.5" - "@webassemblyjs/helper-wasm-bytecode" "1.11.5" + "@webassemblyjs/helper-numbers" "1.11.6" + "@webassemblyjs/helper-wasm-bytecode" "1.11.6" -"@webassemblyjs/floating-point-hex-parser@1.11.5": - version "1.11.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.5.tgz#e85dfdb01cad16b812ff166b96806c050555f1b4" - integrity sha512-1j1zTIC5EZOtCplMBG/IEwLtUojtwFVwdyVMbL/hwWqbzlQoJsWCOavrdnLkemwNoC/EOwtUFch3fuo+cbcXYQ== +"@webassemblyjs/floating-point-hex-parser@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz#dacbcb95aff135c8260f77fa3b4c5fea600a6431" + integrity sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw== -"@webassemblyjs/helper-api-error@1.11.5": - version "1.11.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.5.tgz#1e82fa7958c681ddcf4eabef756ce09d49d442d1" - integrity sha512-L65bDPmfpY0+yFrsgz8b6LhXmbbs38OnwDCf6NpnMUYqa+ENfE5Dq9E42ny0qz/PdR0LJyq/T5YijPnU8AXEpA== +"@webassemblyjs/helper-api-error@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz#6132f68c4acd59dcd141c44b18cbebbd9f2fa768" + integrity sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q== -"@webassemblyjs/helper-buffer@1.11.5": - version "1.11.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.5.tgz#91381652ea95bb38bbfd270702351c0c89d69fba" - integrity sha512-fDKo1gstwFFSfacIeH5KfwzjykIE6ldh1iH9Y/8YkAZrhmu4TctqYjSh7t0K2VyDSXOZJ1MLhht/k9IvYGcIxg== +"@webassemblyjs/helper-buffer@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.6.tgz#b66d73c43e296fd5e88006f18524feb0f2c7c093" + integrity sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA== -"@webassemblyjs/helper-numbers@1.11.5": - version "1.11.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.5.tgz#23380c910d56764957292839006fecbe05e135a9" - integrity sha512-DhykHXM0ZABqfIGYNv93A5KKDw/+ywBFnuWybZZWcuzWHfbp21wUfRkbtz7dMGwGgT4iXjWuhRMA2Mzod6W4WA== +"@webassemblyjs/helper-numbers@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz#cbce5e7e0c1bd32cf4905ae444ef64cea919f1b5" + integrity sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g== dependencies: - "@webassemblyjs/floating-point-hex-parser" "1.11.5" - "@webassemblyjs/helper-api-error" "1.11.5" + "@webassemblyjs/floating-point-hex-parser" "1.11.6" + "@webassemblyjs/helper-api-error" "1.11.6" "@xtuc/long" "4.2.2" -"@webassemblyjs/helper-wasm-bytecode@1.11.5": - version "1.11.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.5.tgz#e258a25251bc69a52ef817da3001863cc1c24b9f" - integrity sha512-oC4Qa0bNcqnjAowFn7MPCETQgDYytpsfvz4ujZz63Zu/a/v71HeCAAmZsgZ3YVKec3zSPYytG3/PrRCqbtcAvA== +"@webassemblyjs/helper-wasm-bytecode@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz#bb2ebdb3b83aa26d9baad4c46d4315283acd51e9" + integrity sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA== -"@webassemblyjs/helper-wasm-section@1.11.5": - version "1.11.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.5.tgz#966e855a6fae04d5570ad4ec87fbcf29b42ba78e" - integrity sha512-uEoThA1LN2NA+K3B9wDo3yKlBfVtC6rh0i4/6hvbz071E8gTNZD/pT0MsBf7MeD6KbApMSkaAK0XeKyOZC7CIA== +"@webassemblyjs/helper-wasm-section@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.6.tgz#ff97f3863c55ee7f580fd5c41a381e9def4aa577" + integrity sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g== dependencies: - "@webassemblyjs/ast" "1.11.5" - "@webassemblyjs/helper-buffer" "1.11.5" - "@webassemblyjs/helper-wasm-bytecode" "1.11.5" - "@webassemblyjs/wasm-gen" "1.11.5" + "@webassemblyjs/ast" "1.11.6" + "@webassemblyjs/helper-buffer" "1.11.6" + "@webassemblyjs/helper-wasm-bytecode" "1.11.6" + "@webassemblyjs/wasm-gen" "1.11.6" -"@webassemblyjs/ieee754@1.11.5": - version "1.11.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.11.5.tgz#b2db1b33ce9c91e34236194c2b5cba9b25ca9d60" - integrity sha512-37aGq6qVL8A8oPbPrSGMBcp38YZFXcHfiROflJn9jxSdSMMM5dS5P/9e2/TpaJuhE+wFrbukN2WI6Hw9MH5acg== +"@webassemblyjs/ieee754@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz#bb665c91d0b14fffceb0e38298c329af043c6e3a" + integrity sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg== dependencies: "@xtuc/ieee754" "^1.2.0" -"@webassemblyjs/leb128@1.11.5": - version "1.11.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.11.5.tgz#482e44d26b6b949edf042a8525a66c649e38935a" - integrity sha512-ajqrRSXaTJoPW+xmkfYN6l8VIeNnR4vBOTQO9HzR7IygoCcKWkICbKFbVTNMjMgMREqXEr0+2M6zukzM47ZUfQ== +"@webassemblyjs/leb128@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.11.6.tgz#70e60e5e82f9ac81118bc25381a0b283893240d7" + integrity sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ== dependencies: "@xtuc/long" "4.2.2" -"@webassemblyjs/utf8@1.11.5": - version "1.11.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.11.5.tgz#83bef94856e399f3740e8df9f63bc47a987eae1a" - integrity sha512-WiOhulHKTZU5UPlRl53gHR8OxdGsSOxqfpqWeA2FmcwBMaoEdz6b2x2si3IwC9/fSPLfe8pBMRTHVMk5nlwnFQ== +"@webassemblyjs/utf8@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.11.6.tgz#90f8bc34c561595fe156603be7253cdbcd0fab5a" + integrity sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA== "@webassemblyjs/wasm-edit@^1.11.5": - version "1.11.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.5.tgz#93ee10a08037657e21c70de31c47fdad6b522b2d" - integrity sha512-C0p9D2fAu3Twwqvygvf42iGCQ4av8MFBLiTb+08SZ4cEdwzWx9QeAHDo1E2k+9s/0w1DM40oflJOpkZ8jW4HCQ== - dependencies: - "@webassemblyjs/ast" "1.11.5" - "@webassemblyjs/helper-buffer" "1.11.5" - "@webassemblyjs/helper-wasm-bytecode" "1.11.5" - "@webassemblyjs/helper-wasm-section" "1.11.5" - "@webassemblyjs/wasm-gen" "1.11.5" - "@webassemblyjs/wasm-opt" "1.11.5" - "@webassemblyjs/wasm-parser" "1.11.5" - "@webassemblyjs/wast-printer" "1.11.5" - -"@webassemblyjs/wasm-gen@1.11.5": - version "1.11.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.5.tgz#ceb1c82b40bf0cf67a492c53381916756ef7f0b1" - integrity sha512-14vteRlRjxLK9eSyYFvw1K8Vv+iPdZU0Aebk3j6oB8TQiQYuO6hj9s4d7qf6f2HJr2khzvNldAFG13CgdkAIfA== - dependencies: - "@webassemblyjs/ast" "1.11.5" - "@webassemblyjs/helper-wasm-bytecode" "1.11.5" - "@webassemblyjs/ieee754" "1.11.5" - "@webassemblyjs/leb128" "1.11.5" - "@webassemblyjs/utf8" "1.11.5" - -"@webassemblyjs/wasm-opt@1.11.5": - version "1.11.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.5.tgz#b52bac29681fa62487e16d3bb7f0633d5e62ca0a" - integrity sha512-tcKwlIXstBQgbKy1MlbDMlXaxpucn42eb17H29rawYLxm5+MsEmgPzeCP8B1Cl69hCice8LeKgZpRUAPtqYPgw== - dependencies: - "@webassemblyjs/ast" "1.11.5" - "@webassemblyjs/helper-buffer" "1.11.5" - "@webassemblyjs/wasm-gen" "1.11.5" - "@webassemblyjs/wasm-parser" "1.11.5" - -"@webassemblyjs/wasm-parser@1.11.5", "@webassemblyjs/wasm-parser@^1.11.5": - version "1.11.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.5.tgz#7ba0697ca74c860ea13e3ba226b29617046982e2" - integrity sha512-SVXUIwsLQlc8srSD7jejsfTU83g7pIGr2YYNb9oHdtldSxaOhvA5xwvIiWIfcX8PlSakgqMXsLpLfbbJ4cBYew== - dependencies: - "@webassemblyjs/ast" "1.11.5" - "@webassemblyjs/helper-api-error" "1.11.5" - "@webassemblyjs/helper-wasm-bytecode" "1.11.5" - "@webassemblyjs/ieee754" "1.11.5" - "@webassemblyjs/leb128" "1.11.5" - "@webassemblyjs/utf8" "1.11.5" - -"@webassemblyjs/wast-printer@1.11.5": - version "1.11.5" - resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.11.5.tgz#7a5e9689043f3eca82d544d7be7a8e6373a6fa98" - integrity sha512-f7Pq3wvg3GSPUPzR0F6bmI89Hdb+u9WXrSKc4v+N0aV0q6r42WoF92Jp2jEorBEBRoRNXgjp53nBniDXcqZYPA== - dependencies: - "@webassemblyjs/ast" "1.11.5" + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.6.tgz#c72fa8220524c9b416249f3d94c2958dfe70ceab" + integrity sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw== + dependencies: + "@webassemblyjs/ast" "1.11.6" + "@webassemblyjs/helper-buffer" "1.11.6" + "@webassemblyjs/helper-wasm-bytecode" "1.11.6" + "@webassemblyjs/helper-wasm-section" "1.11.6" + "@webassemblyjs/wasm-gen" "1.11.6" + "@webassemblyjs/wasm-opt" "1.11.6" + "@webassemblyjs/wasm-parser" "1.11.6" + "@webassemblyjs/wast-printer" "1.11.6" + +"@webassemblyjs/wasm-gen@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.6.tgz#fb5283e0e8b4551cc4e9c3c0d7184a65faf7c268" + integrity sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA== + dependencies: + "@webassemblyjs/ast" "1.11.6" + "@webassemblyjs/helper-wasm-bytecode" "1.11.6" + "@webassemblyjs/ieee754" "1.11.6" + "@webassemblyjs/leb128" "1.11.6" + "@webassemblyjs/utf8" "1.11.6" + +"@webassemblyjs/wasm-opt@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.6.tgz#d9a22d651248422ca498b09aa3232a81041487c2" + integrity sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g== + dependencies: + "@webassemblyjs/ast" "1.11.6" + "@webassemblyjs/helper-buffer" "1.11.6" + "@webassemblyjs/wasm-gen" "1.11.6" + "@webassemblyjs/wasm-parser" "1.11.6" + +"@webassemblyjs/wasm-parser@1.11.6", "@webassemblyjs/wasm-parser@^1.11.5": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.6.tgz#bb85378c527df824004812bbdb784eea539174a1" + integrity sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ== + dependencies: + "@webassemblyjs/ast" "1.11.6" + "@webassemblyjs/helper-api-error" "1.11.6" + "@webassemblyjs/helper-wasm-bytecode" "1.11.6" + "@webassemblyjs/ieee754" "1.11.6" + "@webassemblyjs/leb128" "1.11.6" + "@webassemblyjs/utf8" "1.11.6" + +"@webassemblyjs/wast-printer@1.11.6": + version "1.11.6" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.11.6.tgz#a7bf8dd7e362aeb1668ff43f35cb849f188eff20" + integrity sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A== + dependencies: + "@webassemblyjs/ast" "1.11.6" "@xtuc/long" "4.2.2" "@xtuc/ieee754@^1.2.0": @@ -4960,9 +4963,9 @@ caniuse-api@^3.0.0: lodash.uniq "^4.5.0" caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001406, caniuse-lite@^1.0.30001449, caniuse-lite@^1.0.30001464: - version "1.0.30001482" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001482.tgz#8b3fad73dc35b2674a5c96df2d4f9f1c561435de" - integrity sha512-F1ZInsg53cegyjroxLNW9DmrEQ1SuGRTO1QlpA0o2/6OpQ0gFeDRoq1yFmnr8Sakn9qwwt9DmbxHB6w167OSuQ== + version "1.0.30001486" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001486.tgz#56a08885228edf62cbe1ac8980f2b5dae159997e" + integrity sha512-uv7/gXuHi10Whlj0pp5q/tsK/32J2QSqVRKQhs2j8VsDCjgyruAh/eEXHF822VqO9yT6iZKw3nRwZRSPBE9OQg== caseless@~0.12.0: version "0.12.0" @@ -5241,9 +5244,9 @@ copy-to-clipboard@3.3.3: toggle-selection "^1.0.6" core-js@^3, core-js@^3.19.2: - version "3.30.1" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.30.1.tgz#fc9c5adcc541d8e9fa3e381179433cbf795628ba" - integrity sha512-ZNS5nbiSwDTq4hFosEDqm65izl2CWmLz0hARJMyNQBgkUZMIF51cQiMvIQKA6hvuaeWxQDP3hEedM1JZIgTldQ== + version "3.30.2" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.30.2.tgz#6528abfda65e5ad728143ea23f7a14f0dcf503fc" + integrity sha512-uBJiDmwqsbJCWHAwjrx3cvjbMXP7xD72Dmsn5LOJpiRmE3WbBbN5rCqQ2Qh6Ek6/eOrjlWngEynBWo4VxerQhg== core-util-is@1.0.2: version "1.0.2" @@ -5437,9 +5440,9 @@ cypress-axe@^1.4.0: integrity sha512-Ut7NKfzjyKm0BEbt2WxuKtLkIXmx6FD2j0RwdvO/Ykl7GmB/qRQkwbKLk3VP35+83hiIr8GKD04PDdrTK5BnyA== cypress-each@^1.13.1: - version "1.13.1" - resolved "https://registry.yarnpkg.com/cypress-each/-/cypress-each-1.13.1.tgz#65121a7f9fe865a6ea52e0751133b4e0e84f47a8" - integrity sha512-YbVfrjk4gWTDLOV8YAb3tA6ovQiyl90zvl4M7aLADD0aUBei6nOSXI7xu6LVgLlVcLkM4jRSS2jBIiifauGgpQ== + version "1.13.3" + resolved "https://registry.yarnpkg.com/cypress-each/-/cypress-each-1.13.3.tgz#c0f59628975164e23a3fd10090b587a66ed9438e" + integrity sha512-aNFoDuybFAQ7OObbeO5yxBGmXkGKVAcT1wLHLiL3+HQi+g+q3vECbn4J9cYOXJ7yYfbcBLh8dgQd/IG3Ls2z7A== cypress-plugin-tab@^1.0.5: version "1.0.5" @@ -5449,9 +5452,9 @@ cypress-plugin-tab@^1.0.5: ally.js "^1.4.1" cypress@*, cypress@^12.11.0: - version "12.11.0" - resolved "https://registry.yarnpkg.com/cypress/-/cypress-12.11.0.tgz#b46dc6a1d0387f59a4b5c6a18cc03884fd61876e" - integrity sha512-TJE+CCWI26Hwr5Msb9GpQhFLubdYooW0fmlPwTsfiyxmngqc7+SZGLPeIkj2dTSSZSEtpQVzOzvcnzH0o8G7Vw== + version "12.12.0" + resolved "https://registry.yarnpkg.com/cypress/-/cypress-12.12.0.tgz#0da622a34c970d8699ca6562d8e905ed7ce33c77" + integrity sha512-UU5wFQ7SMVCR/hyKok/KmzG6fpZgBHHfrXcHzDmPHWrT+UUetxFzQgt7cxCszlwfozckzwkd22dxMwl/vNkWRw== dependencies: "@cypress/request" "^2.88.10" "@cypress/xvfb" "^1.2.4" @@ -5793,9 +5796,9 @@ ecdsa-sig-formatter@1.0.11: safe-buffer "^5.0.1" electron-to-chromium@^1.4.284: - version "1.4.380" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.380.tgz#195dc59d930c6b74efbee6f0e6a267ce4af5ed91" - integrity sha512-XKGdI4pWM78eLH2cbXJHiBnWUwFSzZM7XujsB6stDiGu9AeSqziedP6amNLpJzE3i0rLTcfAwdCTs5ecP5yeSg== + version "1.4.389" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.389.tgz#ad70b94514f633ee2d12bdd8d7db5e8b13b7816a" + integrity sha512-WDgWUOK8ROR7sDFyYmxCUOoDc50lPgYAHAHwnnD1iN3SKO/mpqftb9iIPiEkMKmqYdkrR0j3N/O+YB/U7lSxwg== emittery@^0.13.1: version "0.13.1" @@ -5825,9 +5828,9 @@ end-of-stream@^1.1.0: once "^1.4.0" enhanced-resolve@^5.12.0, enhanced-resolve@^5.13.0: - version "5.13.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.13.0.tgz#26d1ecc448c02de997133217b5c1053f34a0a275" - integrity sha512-eyV8f0y1+bzyfh8xAwW/WTSZpLbjhqc4ne9eGSH4Zo2ejdyiNG9pU6mf9DG8a7+Auk6MFTlNOT4Y2y/9k8GKVg== + version "5.14.0" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.14.0.tgz#0b6c676c8a3266c99fa281e4433a706f5c0c61c4" + integrity sha512-+DCows0XNwLDcUhbFJPdlQEVnT2zXlCv7hPxemTz86/O+B/hCQ+mb7ydkPKiflpVraqLPCAfu7lDy+hBXueojw== dependencies: graceful-fs "^4.2.4" tapable "^2.2.0" @@ -5974,11 +5977,11 @@ escodegen@^2.0.0: source-map "~0.6.1" eslint-config-next@^13.3.0: - version "13.3.4" - resolved "https://registry.yarnpkg.com/eslint-config-next/-/eslint-config-next-13.3.4.tgz#3243b19e48e76b5388917f27c9cd3f793ef381d6" - integrity sha512-TknEcP+EdTqLvJ2zMY1KnWqcx8ZHl1C2Tjjbq3qmtWcHRU5oxe1PAsz3vrKG3NOzonSaPcB2SpCSfYqcgj6nfA== + version "13.4.1" + resolved "https://registry.yarnpkg.com/eslint-config-next/-/eslint-config-next-13.4.1.tgz#5f5e083fab9997752852ea40f5d233632d18f085" + integrity sha512-ajuxjCkW1hvirr0EQZb3/B/bFH52Z7CT89uCtTcICFL9l30i5c8hN4p0LXvTjdOXNPV5fEDcxBgGHgXdzTj1/A== dependencies: - "@next/eslint-plugin-next" "13.3.4" + "@next/eslint-plugin-next" "13.4.1" "@rushstack/eslint-patch" "^1.1.3" "@typescript-eslint/parser" "^5.42.0" eslint-import-resolver-node "^0.3.6" @@ -6116,9 +6119,9 @@ eslint-plugin-react@^7.31.7, eslint-plugin-react@^7.32.2: string.prototype.matchall "^4.0.8" eslint-plugin-testing-library@^5.10.2: - version "5.10.3" - resolved "https://registry.yarnpkg.com/eslint-plugin-testing-library/-/eslint-plugin-testing-library-5.10.3.tgz#e613fbaf9a145e9eef115d080b32cb488fae622e" - integrity sha512-0yhsKFsjHLud5PM+f2dWr9K3rqYzMy4cSHs3lcmFYMa1CdSzRvHGgXvsFarBjZ41gU8jhTdMIkg8jHLxGJqLqw== + version "5.11.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-testing-library/-/eslint-plugin-testing-library-5.11.0.tgz#0bad7668e216e20dd12f8c3652ca353009163121" + integrity sha512-ELY7Gefo+61OfXKlQeXNIDVVLPcvKTeiQOoMZG9TeuWa7Ln4dUNRv8JdRWBQI9Mbb427XGlVB1aa1QPZxBJM8Q== dependencies: "@typescript-eslint/utils" "^5.58.0" @@ -6138,20 +6141,20 @@ eslint-scope@^7.2.0: esrecurse "^4.3.0" estraverse "^5.2.0" -eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.0.tgz#c7f0f956124ce677047ddbc192a68f999454dedc" - integrity sha512-HPpKPUBQcAsZOsHAFwTtIKcYlCje62XB7SEAcxjtmW6TD1WVpkS6i6/hOVtTZIl4zGj/mBqpFVGvaDneik+VoQ== +eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1: + version "3.4.1" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz#c22c48f48942d08ca824cc526211ae400478a994" + integrity sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA== eslint@^8.38.0: - version "8.39.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.39.0.tgz#7fd20a295ef92d43809e914b70c39fd5a23cf3f1" - integrity sha512-mwiok6cy7KTW7rBpo05k6+p4YVZByLNjAZ/ACB9DRCu4YDRwjXI01tWHp6KAUWelsBetTxKK/2sHB0vdS8Z2Og== + version "8.40.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.40.0.tgz#a564cd0099f38542c4e9a2f630fa45bf33bc42a4" + integrity sha512-bvR+TsP9EHL3TqNtj9sCNJVAFK3fBN8Q7g5waghxyRsPLIMwL73XSKnZFK0hk/O2ANC+iAoq6PWMQ+IfBAJIiQ== dependencies: "@eslint-community/eslint-utils" "^4.2.0" "@eslint-community/regexpp" "^4.4.0" - "@eslint/eslintrc" "^2.0.2" - "@eslint/js" "8.39.0" + "@eslint/eslintrc" "^2.0.3" + "@eslint/js" "8.40.0" "@humanwhocodes/config-array" "^0.11.8" "@humanwhocodes/module-importer" "^1.0.1" "@nodelib/fs.walk" "^1.2.8" @@ -6162,8 +6165,8 @@ eslint@^8.38.0: doctrine "^3.0.0" escape-string-regexp "^4.0.0" eslint-scope "^7.2.0" - eslint-visitor-keys "^3.4.0" - espree "^9.5.1" + eslint-visitor-keys "^3.4.1" + espree "^9.5.2" esquery "^1.4.2" esutils "^2.0.2" fast-deep-equal "^3.1.3" @@ -6189,14 +6192,14 @@ eslint@^8.38.0: strip-json-comments "^3.1.0" text-table "^0.2.0" -espree@^9.5.1: - version "9.5.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-9.5.1.tgz#4f26a4d5f18905bf4f2e0bd99002aab807e96dd4" - integrity sha512-5yxtHSZXRSW5pvv3hAlXM5+/Oswi1AUFqBmbibKb5s6bp3rGIDkyXU6xCoyuuLhijr4SFwPrXRoZjz0AZDN9tg== +espree@^9.5.2: + version "9.5.2" + resolved "https://registry.yarnpkg.com/espree/-/espree-9.5.2.tgz#e994e7dc33a082a7a82dceaf12883a829353215b" + integrity sha512-7OASN1Wma5fum5SrNhFMAMJxOUAbhyfQ8dQ//PJaJbNw0URTPWqIghHWt1MmAANKhHZIYOHruW4Kw4ruUWOdGw== dependencies: acorn "^8.8.0" acorn-jsx "^5.3.2" - eslint-visitor-keys "^3.4.0" + eslint-visitor-keys "^3.4.1" esprima@^4.0.0, esprima@^4.0.1: version "4.0.1" @@ -9043,9 +9046,9 @@ pino-pretty@^9.1.1: strip-json-comments "^3.1.1" pino-std-serializers@^6.0.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/pino-std-serializers/-/pino-std-serializers-6.2.0.tgz#169048c0df3f61352fce56aeb7fb962f1b66ab43" - integrity sha512-IWgSzUL8X1w4BIWTwErRgtV8PyOGOOi60uqv0oKuS/fOA8Nco/OeI6lBuc4dyP8MMfdFwyHqTMcBIA7nDiqEqA== + version "6.2.1" + resolved "https://registry.yarnpkg.com/pino-std-serializers/-/pino-std-serializers-6.2.1.tgz#369f4ae2a19eb6d769ddf2c88a2164b76879a284" + integrity sha512-wHuWB+CvSVb2XqXM0W/WOYUkVSPbiJb9S5fNB7TBhd8s892Xq910bRxwHtC4l71hgztObTjXL6ZheZXFjhDrDQ== pino@8.8.0: version "8.8.0" @@ -9774,9 +9777,9 @@ readable-stream@^3.6.0: util-deprecate "^1.0.1" readable-stream@^4.0.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-4.3.0.tgz#0914d0c72db03b316c9733bb3461d64a3cc50cba" - integrity sha512-MuEnA0lbSi7JS8XM+WNJlWZkHAAdm7gETHdFK//Q/mChGyj2akEFtdLZh32jSdkWGbRwCW9pn6g3LWDdDeZnBQ== + version "4.4.0" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-4.4.0.tgz#55ce132d60a988c460d75c631e9ccf6a7229b468" + integrity sha512-kDMOq0qLtxV9f/SQv522h8cxZBqNZXuXNyjyezmfAAuribMyVXziljpQ/uQhfE1XLg2/TLTW2DsnoE4VAi/krg== dependencies: abort-controller "^3.0.0" buffer "^6.0.3" @@ -10390,10 +10393,10 @@ stylehacks@^5.1.1: browserslist "^4.21.4" postcss-selector-parser "^6.0.4" -stylis@4.1.4: - version "4.1.4" - resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.1.4.tgz#9cb60e7153d8ac6d02d773552bf51c7a0344535b" - integrity sha512-USf5pszRYwuE6hg9by0OkKChkQYEXfkeTtm0xKw+jqQhwyjCVLdYyMBK7R+n7dhzsblAWJnGxju4vxq5eH20GQ== +stylis@4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.2.0.tgz#79daee0208964c8fe695a42fcffcac633a211a51" + integrity sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw== sucrase@^3.32.0: version "3.32.0" @@ -10512,20 +10515,20 @@ tapable@^2.1.1, tapable@^2.2.0: integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== terser-webpack-plugin@^5.3.7: - version "5.3.7" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.7.tgz#ef760632d24991760f339fe9290deb936ad1ffc7" - integrity sha512-AfKwIktyP7Cu50xNjXF/6Qb5lBNzYaWpU6YfoX3uZicTx0zTy0stDDCsvjDapKsSDvOeWo5MEq4TmdBy2cNoHw== + version "5.3.8" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.8.tgz#415e03d2508f7de63d59eca85c5d102838f06610" + integrity sha512-WiHL3ElchZMsK27P8uIUh4604IgJyAW47LVXGbEoB21DbQcZ+OuMpGjVYnEUaqcWM6dO8uS2qUbA7LSCWqvsbg== dependencies: "@jridgewell/trace-mapping" "^0.3.17" jest-worker "^27.4.5" schema-utils "^3.1.1" serialize-javascript "^6.0.1" - terser "^5.16.5" + terser "^5.16.8" -terser@^5.16.5: - version "5.17.1" - resolved "https://registry.yarnpkg.com/terser/-/terser-5.17.1.tgz#948f10830454761e2eeedc6debe45c532c83fd69" - integrity sha512-hVl35zClmpisy6oaoKALOpS0rDYLxRFLHhRuDlEGTKey9qHjS1w9GMORjuwIMt70Wan4lwsLYyWDVnWgF+KUEw== +terser@^5.16.8: + version "5.17.3" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.17.3.tgz#7f908f16b3cdf3f6c0f8338e6c1c674837f90d25" + integrity sha512-AudpAZKmZHkG9jueayypz4duuCFJMMNGRMwaPvQKWfxKedh8Z2x3OCoDqIIi1xx5+iwx1u6Au8XQcc9Lke65Yg== dependencies: "@jridgewell/source-map" "^0.3.2" acorn "^8.5.0" @@ -10978,9 +10981,9 @@ webpack-sources@^3.2.3: integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== webpack@^5.75.0: - version "5.81.0" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.81.0.tgz#27a2e8466c8b4820d800a8d90f06ef98294f9956" - integrity sha512-AAjaJ9S4hYCVODKLQTgG5p5e11hiMawBwV2v8MYLE0C/6UAGLuAF4n1qa9GOwdxnicaP+5k6M5HrLmD4+gIB8Q== + version "5.82.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.82.0.tgz#3c0d074dec79401db026b4ba0fb23d6333f88e7d" + integrity sha512-iGNA2fHhnDcV1bONdUu554eZx+XeldsaeQ8T67H6KKHl2nUSwX8Zm7cmzOA46ox/X1ARxf7Bjv8wQ/HsB5fxBg== dependencies: "@types/eslint-scope" "^3.7.3" "@types/estree" "^1.0.0" From f8ac97e2ef7450b2074231318ca4d1e939bd59e4 Mon Sep 17 00:00:00 2001 From: Bryan Robitaille Date: Wed, 10 May 2023 14:49:32 -0400 Subject: [PATCH 17/19] release 3.0.5 --- CHANGELOG.md | 6 ++++++ VERSION | 2 +- package.json | 2 +- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3cc587bcf7..5c7071fb0f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,9 +5,15 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [3.0.5] 2023-05-10 + ### Fixed - Download API will not override a response status that is different than `New`. [2052](https://github.com/cds-snc/platform-forms-client/issues/2052) +- Language Toggle +- Button styling across the product +- Error message when a user tries to login and the service is unavailable +- Unsupported browser page / Java Script not enable page ## [3.0.4] 2023-05-05 diff --git a/VERSION b/VERSION index b0f2dcb32f..eca690e737 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -3.0.4 +3.0.5 diff --git a/package.json b/package.json index 44ebcd061a..81c8002749 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "gcforms", - "version": "3.0.4", + "version": "3.0.5", "private": true, "prisma": { "seed": "ts-node --compiler-options {\"module\":\"CommonJS\"} prisma/seeds/seed.ts --environment=development" From 003538a09c65331f36de7a9d8d99348cc54b7b2d Mon Sep 17 00:00:00 2001 From: Bryan Robitaille Date: Wed, 10 May 2023 14:59:10 -0400 Subject: [PATCH 18/19] Update cypress.yml to use same cache as other workflows (#2082) --- .github/workflows/cypress.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/cypress.yml b/.github/workflows/cypress.yml index 64da230475..c6ea4c7db2 100644 --- a/.github/workflows/cypress.yml +++ b/.github/workflows/cypress.yml @@ -64,6 +64,8 @@ jobs: - name: Cypress Tests uses: cypress-io/github-action@d79d2d530a66e641eb4a5f227e13bc985c60b964 # v4.2.2 with: + # we have already installed all dependencies above + install: false browser: chrome headed: false build: yarn build:test @@ -73,6 +75,8 @@ jobs: - name: Cypress Component Tests uses: cypress-io/github-action@d79d2d530a66e641eb4a5f227e13bc985c60b964 # v4.2.2 with: + # we have already installed all dependencies above + install: false browser: chrome component: true headed: false From 8c10f92ff1118c89b8b242b8f6fc55e59de3adf5 Mon Sep 17 00:00:00 2001 From: Anik Brazeau <38330843+anikbrazeau@users.noreply.github.com> Date: Wed, 10 May 2023 15:27:16 -0400 Subject: [PATCH 19/19] Content tweak clarifying why we collect manager's email (#2083) clarify why we're collecting manager info --- public/static/locales/en/unlock-publishing.json | 2 +- public/static/locales/fr/unlock-publishing.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/public/static/locales/en/unlock-publishing.json b/public/static/locales/en/unlock-publishing.json index 63aed51bee..fb336aab66 100644 --- a/public/static/locales/en/unlock-publishing.json +++ b/public/static/locales/en/unlock-publishing.json @@ -1,7 +1,7 @@ { "unlockPublishing": { "title": "Unlock publishing", - "paragraph1": "Before you publish your first form, provide the contact information of your manager or the person you report to. GC Forms will not display their contact information publicly.", + "paragraph1": "Before you publish your first form, provide the contact information of your manager or the person you report to. We ask for their email, as a back-up, in case we cannot reach you in the future. We will not display their contact information publicly.", "form": { "field1": { "title": "Provide the email of your manager, or the person you report to", diff --git a/public/static/locales/fr/unlock-publishing.json b/public/static/locales/fr/unlock-publishing.json index fe1c4e4626..f33668ca1c 100644 --- a/public/static/locales/fr/unlock-publishing.json +++ b/public/static/locales/fr/unlock-publishing.json @@ -1,7 +1,7 @@ { "unlockPublishing": { "title": "Déverrouiller la publication de formulaires", - "paragraph1": "Avant de publier votre premier formulaire, veuillez fournir les coordonnées de votre gestionnaire ou de la personne a qui vous relevez. Formulaires GC n'affichera pas leurs coordonnées publiquement.", + "paragraph1": "Avant de publier votre premier formulaire, veuillez fournir les coordonnées de votre gestionnaire ou de la personne a qui vous relevez. Nous vous demandons leur courriel, comme deuxième point de contact, au case où nous ne parviendrons pas à vous contacter à l'avenir. Nous n'afficherons pas leurs coordonnées publiquement.", "form": { "field1": { "title": "Fournissez l’adresse courriel de votre gestionnaire ou de votre supérieur·e direct·e",