From 15a2c1facc5d6585d938a4862e553c28b1c4f718 Mon Sep 17 00:00:00 2001 From: Tim Wright Date: Thu, 24 Oct 2024 10:33:04 -0400 Subject: [PATCH 01/36] Updated iframe markup --- .../Components/Buttons and Links/Menus.md | 4 ++-- .../Layout and Organization/List/ListHeader.md | 4 ++-- .../Layout and Organization/MultiTouchCard.mdx | 4 ++-- .../Components/Layout and Organization/Nametag.md | 4 ++-- .../Selection and Input/Form Elements/RadioButton.md | 4 ++-- .../Form Elements/VATextInput.mdx | 4 ++-- .../Flagship design library/Components/Tags/Tag.mdx | 4 ++-- .../Foundation/Icons/index.md | 2 +- .../Foundation/color-palette.md | 2 +- .../Flagship design library/Foundation/layout.md | 2 +- .../Flagship design library/Foundation/typography.md | 2 +- .../Templates/NavigationModel.md | 2 +- .../Flagship design library/Templates/ScreenTypes.md | 12 ++++++------ .../docs/Operations/App metrics/Dashboard.md | 2 +- .../docs/Operations/Releases/release-process.md | 2 +- .../docs/UX/Foundations/Information-Architecture.md | 2 +- 16 files changed, 28 insertions(+), 28 deletions(-) diff --git a/VAMobile/documentation/docs/Flagship design library/Components/Buttons and Links/Menus.md b/VAMobile/documentation/docs/Flagship design library/Components/Buttons and Links/Menus.md index ae7c5be6ed4..8bb4c5cf9c6 100644 --- a/VAMobile/documentation/docs/Flagship design library/Components/Buttons and Links/Menus.md +++ b/VAMobile/documentation/docs/Flagship design library/Components/Buttons and Links/Menus.md @@ -7,10 +7,10 @@ Menus provide temporary access to functionality that's directly related to the o ## Examples ### Master component - + ### Examples - + ## Usage diff --git a/VAMobile/documentation/docs/Flagship design library/Components/Layout and Organization/List/ListHeader.md b/VAMobile/documentation/docs/Flagship design library/Components/Layout and Organization/List/ListHeader.md index 36f121ec641..34fe89097e9 100644 --- a/VAMobile/documentation/docs/Flagship design library/Components/Layout and Organization/List/ListHeader.md +++ b/VAMobile/documentation/docs/Flagship design library/Components/Layout and Organization/List/ListHeader.md @@ -7,10 +7,10 @@ The list header provides an overview of what the list is about and allows you to ## Examples ### Default - + ### Variations - + ## Usage diff --git a/VAMobile/documentation/docs/Flagship design library/Components/Layout and Organization/MultiTouchCard.mdx b/VAMobile/documentation/docs/Flagship design library/Components/Layout and Organization/MultiTouchCard.mdx index d0706312915..d4be9f27257 100644 --- a/VAMobile/documentation/docs/Flagship design library/Components/Layout and Organization/MultiTouchCard.mdx +++ b/VAMobile/documentation/docs/Flagship design library/Components/Layout and Organization/MultiTouchCard.mdx @@ -12,10 +12,10 @@ The multi-touch card provides multiple touch targets on a list item. ## Examples ### Default - + ### Variations - + ## Usage diff --git a/VAMobile/documentation/docs/Flagship design library/Components/Layout and Organization/Nametag.md b/VAMobile/documentation/docs/Flagship design library/Components/Layout and Organization/Nametag.md index da3381fc6f6..63b0dfef7a5 100644 --- a/VAMobile/documentation/docs/Flagship design library/Components/Layout and Organization/Nametag.md +++ b/VAMobile/documentation/docs/Flagship design library/Components/Layout and Organization/Nametag.md @@ -7,10 +7,10 @@ The Nametag provides an official identity to an authenticated user's experience ## Examples ### Default - + ### Variations - + ## Usage diff --git a/VAMobile/documentation/docs/Flagship design library/Components/Selection and Input/Form Elements/RadioButton.md b/VAMobile/documentation/docs/Flagship design library/Components/Selection and Input/Form Elements/RadioButton.md index 5a7cdebe4e5..e8bcbdd9cc0 100644 --- a/VAMobile/documentation/docs/Flagship design library/Components/Selection and Input/Form Elements/RadioButton.md +++ b/VAMobile/documentation/docs/Flagship design library/Components/Selection and Input/Form Elements/RadioButton.md @@ -7,10 +7,10 @@ Radio buttons allow users to select exactly one choice from a group. ## Examples ### Master component - + ### Examples - + ## Usage diff --git a/VAMobile/documentation/docs/Flagship design library/Components/Selection and Input/Form Elements/VATextInput.mdx b/VAMobile/documentation/docs/Flagship design library/Components/Selection and Input/Form Elements/VATextInput.mdx index 2b726f3b3ac..c07116de939 100644 --- a/VAMobile/documentation/docs/Flagship design library/Components/Selection and Input/Form Elements/VATextInput.mdx +++ b/VAMobile/documentation/docs/Flagship design library/Components/Selection and Input/Form Elements/VATextInput.mdx @@ -11,10 +11,10 @@ Text input allows people to enter any type of text unless otherwise restricted. ## Examples ### Default - + ### Examples - + ## Usage diff --git a/VAMobile/documentation/docs/Flagship design library/Components/Tags/Tag.mdx b/VAMobile/documentation/docs/Flagship design library/Components/Tags/Tag.mdx index 4c78f9f73cb..e2cb4bb0896 100644 --- a/VAMobile/documentation/docs/Flagship design library/Components/Tags/Tag.mdx +++ b/VAMobile/documentation/docs/Flagship design library/Components/Tags/Tag.mdx @@ -11,10 +11,10 @@ Tags provide quick contextual keywords to inform status of a row or item. ## Examples ### Default - + ### Variations - + ## Usage ### When to use Tags diff --git a/VAMobile/documentation/docs/Flagship design library/Foundation/Icons/index.md b/VAMobile/documentation/docs/Flagship design library/Foundation/Icons/index.md index 4e68802feab..61943e252b1 100644 --- a/VAMobile/documentation/docs/Flagship design library/Foundation/Icons/index.md +++ b/VAMobile/documentation/docs/Flagship design library/Foundation/Icons/index.md @@ -4,6 +4,6 @@ title: Icons Icons are used sparingly throughout the VA mobile app as a way to enhance user understanding and wayfinding. - + * [Icons in Figma](https://www.figma.com/file/QVLPB3eOunmKrgQOuOt0SU/%F0%9F%93%90-DesignLibrary2.0---VAMobile?type=design&node-id=4156%3A7676&t=LWuS4oyNuplsuZBa-1) \ No newline at end of file diff --git a/VAMobile/documentation/docs/Flagship design library/Foundation/color-palette.md b/VAMobile/documentation/docs/Flagship design library/Foundation/color-palette.md index 84701326e35..2432de774a3 100644 --- a/VAMobile/documentation/docs/Flagship design library/Foundation/color-palette.md +++ b/VAMobile/documentation/docs/Flagship design library/Foundation/color-palette.md @@ -5,7 +5,7 @@ sidebar_position: 2 The VA mobile app has two color themes: Light and Dark. [The VA mobile app themes](https://www.figma.com/file/bGO6g5cCvWycrNjoK66PXc/VA-Mobile-Design-Tokens?node-id=151%3A76) use colors from the [VA style guide](https://design.va.gov/foundation/color-palette), and only deviate if necessary for accessibility purposes. - + **Themes** - [Light theme in Figma](https://www.figma.com/file/yXL0MkEKyAPGXPZqRH0VFZ/VA-Mobile-light-theme?node-id=183%3A441) diff --git a/VAMobile/documentation/docs/Flagship design library/Foundation/layout.md b/VAMobile/documentation/docs/Flagship design library/Foundation/layout.md index 0ac4691dc90..c45ed11022f 100644 --- a/VAMobile/documentation/docs/Flagship design library/Foundation/layout.md +++ b/VAMobile/documentation/docs/Flagship design library/Foundation/layout.md @@ -3,6 +3,6 @@ title: Layout sidebar_position: 4 --- - + * [Grid in Figma](https://www.figma.com/file/QVLPB3eOunmKrgQOuOt0SU/%F0%9F%93%90-DesignLibrary2.0---VAMobile?type=design&node-id=3859%3A7737&t=EuJmlpcIxjibtKua-1) \ No newline at end of file diff --git a/VAMobile/documentation/docs/Flagship design library/Foundation/typography.md b/VAMobile/documentation/docs/Flagship design library/Foundation/typography.md index 595b23c7996..2451440b90e 100644 --- a/VAMobile/documentation/docs/Flagship design library/Foundation/typography.md +++ b/VAMobile/documentation/docs/Flagship design library/Foundation/typography.md @@ -64,7 +64,7 @@ Typography generally follows [VA.gov’s guidance](https://design.va.gov/foundat --> - + ## Front-end To support the common usage of colors for each font style, defaults colors have been set for each type of font under `src/styles/themes/standardTheme.ts`(See `buildTypography` function). Colors for each font style are based on the [Design Tokens - Design Library](https://www.figma.com/file/bGO6g5cCvWycrNjoK66PXc/%F0%9F%93%90-DesignTokens1.0---Library---VAMobile?node-id=115%3A157&t=RpifEcByzqSp4on7-1) file. \ No newline at end of file diff --git a/VAMobile/documentation/docs/Flagship design library/Templates/NavigationModel.md b/VAMobile/documentation/docs/Flagship design library/Templates/NavigationModel.md index 4af7947b0cd..9663272d435 100644 --- a/VAMobile/documentation/docs/Flagship design library/Templates/NavigationModel.md +++ b/VAMobile/documentation/docs/Flagship design library/Templates/NavigationModel.md @@ -4,7 +4,7 @@ sidebar_position: 2 --- The VA Health & Benefits mobile app's navigation model is the same on both iOS and Android. - + * **Primary navigation:** The app uses a standard tab navigation for its primary navigation. * The tab bar/bottom navigation bar is located at the bottom of the screen and is persistent—it appears on every screen in the hierarchy (except those that are modally presented) so that the user has a clear sense of all the main sections of the app and quick access to switch between them. diff --git a/VAMobile/documentation/docs/Flagship design library/Templates/ScreenTypes.md b/VAMobile/documentation/docs/Flagship design library/Templates/ScreenTypes.md index 0b50b46062e..6095c74956e 100644 --- a/VAMobile/documentation/docs/Flagship design library/Templates/ScreenTypes.md +++ b/VAMobile/documentation/docs/Flagship design library/Templates/ScreenTypes.md @@ -17,7 +17,7 @@ The VA mobile app has 5 main screen types that fall into two categories: ## Hierarchical screens ### Category landing screen​ - + - **Definition:** The Category landing screen template is used by the navigation categories at the top of the app's hierarchy: Health, Benefits, and Payments. These navigation category landing screens group features of a similar type, providing permanent entry points to features and variable description text for each feature when applicable. The app's Home screen also uses this template, but has a special set of rules that distinguish it from the other top-level categories ([see Home Screen for a more detailed description](https://department-of-veterans-affairs.github.io/va-mobile-app/docs/Flagship%20design%20library/Templates/Home)). The category landing screen template displays the tab bar and a link to the Veteran Crisis line. It does not display a back button. - **Screen transition:** Screen transition between categories is top-level peer (fade through). @@ -31,7 +31,7 @@ The VA mobile app has 5 main screen types that fall into two categories: - [Github ticket: Category landing screen template](https://github.com/department-of-veterans-affairs/va-mobile-app/issues/3996) ### Feature landing screen​ - + - **Definition:** The “home” screen of a feature. Features are parent sections with multiple children that generally live within a category. A complex feature (like Prescriptions or Messages) can also have subsections. Displays the tab bar and a descriptive back button. - **Screen transition:** Horizontal (pushing on & off from right). @@ -46,7 +46,7 @@ The VA mobile app has 5 main screen types that fall into two categories: - [Github ticket: Feature landing/child screen template](https://app.zenhub.com/workspaces/va-mobile-frontendqa-60f1a34998bc75000f2a489f/issues/gh/department-of-veterans-affairs/va-mobile-app/3977) ### Child screen​ - + * **Definition:** Child screens live within a feature, generally an item in a list. It’s often the end point of a hierarchy. Displays the tab bar and a descriptive back button. * **Screen transition:** Horizontal (pushing on & off from right). @@ -62,7 +62,7 @@ The VA mobile app has 5 main screen types that fall into two categories: ## Modal screens ### Fullscreen task/subtask​ - + * **Definition:** A contained, linear flow that is presented modally at any level of the app’s hierarchy, opening on a layer over the current screen and taking up the whole screen. A fullscreen task/subtask can be one or multiple steps, and it requires an explicit close or cancel button to exit. Use a task/subtask to enable something complex in order to lock in focus. Because it covers the entire screen, it is the only modally appearing screen over which other dialogs or panels can appear. It does not display the tab bar. * **Behaviors & Logic:** @@ -81,7 +81,7 @@ The VA mobile app has 5 main screen types that fall into two categories: * [Github ticket: Fullscreen subtask template](https://app.zenhub.com/workspaces/va-mobile-frontendqa-60f1a34998bc75000f2a489f/issues/gh/department-of-veterans-affairs/va-mobile-app/3978) ### Large panel​ - + * **Definition:** A contained (single step) task that is presented modally at any level of the app’s hierarchy and appears as a card that covers most of the underlying content. It displays a close button to exit, but can also swipe down or tap on background to close. Use a large panel to display more in depth detail (multiple paragraphs) or a small (quick) task, when you need to lock in focus and limit the possibility of abandoning. Cannot appear over another panel. Does not display the tab bar. * **Behaviors & Logic:** @@ -104,7 +104,7 @@ The VA mobile app has 5 main screen types that fall into two categories: * [Github ticket: Large panel template](https://app.zenhub.com/workspaces/va-mobile-frontendqa-60f1a34998bc75000f2a489f/issues/gh/department-of-veterans-affairs/va-mobile-app/3979) ### Web view - + * **Definition:** A screen that displays content from an outside website without requiring the user to leave the app. Requires an explicit close or cancel button to exit. Does not display tab bar due to required web toolbar. diff --git a/VAMobile/documentation/docs/Operations/App metrics/Dashboard.md b/VAMobile/documentation/docs/Operations/App metrics/Dashboard.md index 9b7362ed764..a2b976a816c 100644 --- a/VAMobile/documentation/docs/Operations/App metrics/Dashboard.md +++ b/VAMobile/documentation/docs/Operations/App metrics/Dashboard.md @@ -8,7 +8,7 @@ sidebar_position: 1 [Monthly overview dashboard](https://lookerstudio.google.com/embed/reporting/e28cd59a-b2e5-4f29-8ae4-a4eea6d23f9c/page/p_6ji09oht5c) - + ## Feature specific boards diff --git a/VAMobile/documentation/docs/Operations/Releases/release-process.md b/VAMobile/documentation/docs/Operations/Releases/release-process.md index ffbfc0ab5de..27f57861ca3 100644 --- a/VAMobile/documentation/docs/Operations/Releases/release-process.md +++ b/VAMobile/documentation/docs/Operations/Releases/release-process.md @@ -2,4 +2,4 @@ title: Release process --- - \ No newline at end of file + \ No newline at end of file diff --git a/VAMobile/documentation/docs/UX/Foundations/Information-Architecture.md b/VAMobile/documentation/docs/UX/Foundations/Information-Architecture.md index ff717f20798..4f3fd64b994 100644 --- a/VAMobile/documentation/docs/UX/Foundations/Information-Architecture.md +++ b/VAMobile/documentation/docs/UX/Foundations/Information-Architecture.md @@ -37,7 +37,7 @@ Understanding what’s guiding the app’s current information architecture and ### Sitemap/flow diagram A sitemap is a planning tool that visually shows how information will be grouped and labeled, where content will be located, and how a user will move through the app. This adaptation of a standard sitemap includes the system display logic for screens that have variants, key actions (buttons, links), common processes and points where it makes use of native mobile integrations. **This is the source of truth for the app’s IA.** - + [VA Mobile App - Detailed sitemap 2.0 (FigJam)](https://www.figma.com/file/TEEgHdlibzCilCj4LviHVF/VA-Mobile-app---Detailed-Sitemap-2.0?type=whiteboard&node-id=0%3A1&t=NOXEk15mCNO0XQ5Q-1) From fea407e5631addf4cb3de6ca9b82293b34af7edf Mon Sep 17 00:00:00 2001 From: Tim Wright Date: Thu, 24 Oct 2024 10:35:47 -0400 Subject: [PATCH 02/36] Updated iframe markup --- .../Components/Navigation/Secondary/Pagination.mdx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/VAMobile/documentation/docs/Flagship design library/Components/Navigation/Secondary/Pagination.mdx b/VAMobile/documentation/docs/Flagship design library/Components/Navigation/Secondary/Pagination.mdx index 2d854451c6c..9c51dc72162 100644 --- a/VAMobile/documentation/docs/Flagship design library/Components/Navigation/Secondary/Pagination.mdx +++ b/VAMobile/documentation/docs/Flagship design library/Components/Navigation/Secondary/Pagination.mdx @@ -10,10 +10,10 @@ Pagination is navigation for paginated content. ## Examples ### Master component - + ### Examples - + ## Usage * Refer to the [VA Design System for usage guidance](https://design.va.gov/components/pagination#usage) From fd8ec8100e96a953b52c0646c525c4e17bcaca96 Mon Sep 17 00:00:00 2001 From: Tim Wright Date: Thu, 24 Oct 2024 10:54:49 -0400 Subject: [PATCH 03/36] Fixing accessibility issues for the app features section of the docs site --- .../Availability Framework.md | 44 ++++++++++++------- .../EncouragedUpdate/EncouragedUpdate.md | 17 ++++--- .../docs/App Features/WhatsNew/WhatsNew.md | 21 ++++++--- 3 files changed, 52 insertions(+), 30 deletions(-) diff --git a/VAMobile/documentation/docs/App Features/Availability Framework/Availability Framework.md b/VAMobile/documentation/docs/App Features/Availability Framework/Availability Framework.md index 878d9191bc2..0c987bc0993 100644 --- a/VAMobile/documentation/docs/App Features/Availability Framework/Availability Framework.md +++ b/VAMobile/documentation/docs/App Features/Availability Framework/Availability Framework.md @@ -1,4 +1,6 @@ -# Availability Framework +--- +title: Availability Framework +--- ## Feature Summary @@ -6,36 +8,46 @@ Given the limitations of app store release processes between iOS and Android, we ## Use Cases -* Use Case 1: A screen is broken (for all users) and it can’t be rendered without crashing the app/red screen of death. -* Use Case 2: A screen element, feature, or part of a feature is broken (for all users) and the feature entry point can still be accessed and screen rendered (with missing or bad data), and we want to prevent everyone from accessing the broken feature. -* Use Case 3: A screen element, feature, or part of feature is broken (for SOME users. not all) and the feature entry point can still be accessed screen rendered, but some folks will have critically broken data/feature. +* **Use Case 1**: A screen is broken (for all users) and it can’t be rendered without crashing the app/red screen of death. +* **Use Case 2**: A screen element, feature, or part of a feature is broken (for all users) and the feature entry point can still be accessed and screen rendered (with missing or bad data), and we want to prevent everyone from accessing the broken feature. +* **Use Case 3**: A screen element, feature, or part of feature is broken (for SOME users. not all) and the feature entry point can still be accessed screen rendered, but some folks will have critically broken data/feature. -## Example Screenshots +## Use Case Screenshots -Use Case 1: ![](../../../static/img/availabilityFramework/AF-UseCase1.png) +### Use Case 1 -Use Case 2: ![](../../../static/img/availabilityFramework/AF-UseCase2.png) +![The VA Mobile app with a dismissable alert that says: We are sorry! There's something wrong and we are working on it!](../../../static/img/availabilityFramework/AF-UseCase1.png) -Use Case 3: ![](../../../static/img/availabilityFramework/AF-UseCase3.png) +### Use Case 2 + +![The VA Mobile app with a non-dismissable alert replacing page content that asks the user to update the app](../../../static/img/availabilityFramework/AF-UseCase2.png) + +### Use Case 3 + +![The VA Mobile app with a non-dismissable warning message letting the user know that something might be wrong for some users and we're working to fix the issue](../../../static/img/availabilityFramework/AF-UseCase3.png) ## How to Enable Here you'll see existing examples of previously enabled availability framework setups: -Firebase definitions: ![](../../../static/img/availabilityFramework/AF_in_Firebase.png) +### Firebase definitions + +![The firebase UI showing a created waygate](../../../static/img/availabilityFramework/AF_in_Firebase.png) [JSON documentation and the parameter setup](https://github.com/department-of-veterans-affairs/va.gov-team/blob/master/products/va-mobile-app/Teams/QA%20and%20Release/Policies/Process%20-%20Availability%20Framework.md#json-disclaimer). ## Developer Notes * If we run into an issue that requires ClaimsHistoryScreen to have an AF toggle, we will need to investigate doing the same for 'ClaimsHistory' for releases that happened in january if it's relevant to the scenario. +* We should endeavor to avoid screen name changes at all costs to avoid duplicative AF requirements. * All 'Else' clauses should be set to the default waygate configuration to avoid issues with the remote config developer setup. -Defaults: - enabled: true, - type: undefined, - errorMsgTitle: undefined, - errorMsgBody: undefined, - appUpdateButton: false +### Default waygate configuration -* We should endeavor to avoid screen name changes at all costs to avoid duplicative AF requirements. +```js +enabled: true, +type: undefined, +errorMsgTitle: undefined, +errorMsgBody: undefined, +appUpdateButton: false +``` diff --git a/VAMobile/documentation/docs/App Features/EncouragedUpdate/EncouragedUpdate.md b/VAMobile/documentation/docs/App Features/EncouragedUpdate/EncouragedUpdate.md index 2843e72fc32..1104b2eee18 100644 --- a/VAMobile/documentation/docs/App Features/EncouragedUpdate/EncouragedUpdate.md +++ b/VAMobile/documentation/docs/App Features/EncouragedUpdate/EncouragedUpdate.md @@ -1,5 +1,7 @@ -# Encouraged Update - +--- +title: Encouraged Update +--- + ## Feature Summary Encouraged update displays to the veteran that there is a newer version in the app store to encourage them to update with a button to click to either download in-app updates (Android) or to go to the app store to download (iOS). In doing so, they will download the latest version of the app and have access to all of the benefits that come with it. We also give them the option of skipping an update for a particular version, which hides this alert until the next version is released. This alert takes priority over the What's New alert. @@ -13,10 +15,11 @@ This is potentially a precursor to forced upgrading in the future after so many * Use Case 3: The version on the device is the same version in the store or newer (updates from the app store roll out to devices periodically, so it is possible that the app was updated but the store's API is returning an older version) so it displays the [What's New](../WhatsNew/WhatsNew.md) alert if applicable ## How to force this to appear in Demo Mode -Step 1: Go to the developer screen in the settings part of the app and scroll to the bottom where it has Encouraged Update and What's New versions -Step 2: Set the Encouraged Update version override to a version that is lower than the store version -Step 3: Logout of the app and log back into demo mode -## Screenshot +1. Go to the developer screen in the settings part of the app and scroll to the bottom where it has Encouraged Update and What's New versions +2. Set the Encouraged Update version override to a version that is lower than the store version +3. Logout of the app and log back into demo mode + +## Screenshot of an encouraged update -![](../../../static/img/encouragedUpdate/EncouragedUpdate.png) \ No newline at end of file +![The VA mobile app showing an example of an encouraged update for a user](../../../static/img/encouragedUpdate/EncouragedUpdate.png) \ No newline at end of file diff --git a/VAMobile/documentation/docs/App Features/WhatsNew/WhatsNew.md b/VAMobile/documentation/docs/App Features/WhatsNew/WhatsNew.md index 3b4707620c0..6117bd0368b 100644 --- a/VAMobile/documentation/docs/App Features/WhatsNew/WhatsNew.md +++ b/VAMobile/documentation/docs/App Features/WhatsNew/WhatsNew.md @@ -1,4 +1,6 @@ -# What's New +--- +title: What's New +--- ## Feature Summary @@ -12,13 +14,18 @@ What's new displays to the veteran what is new in the version that they upgraded * Use Case 4: The user is on the most recent version, but there are no notes to be displayed, so there is no alert ## How to force this to appear in Demo Mode -Step 1: Go to the developer screen in the settings part of the app and scroll to the bottom where it has Encouraged Update and What's New versions -Step 2: Set the Encouraged Update version override to a version that is equal to or greater than the store version -Step 3: Set the What's New version override to a version that is a valid version in the `common.json` file in the translations folder (Valid versions at the time of writing this are 2.0, 2.2, 2.3, 2.13, and 2.23) + +1. Go to the developer screen in the settings part of the app and scroll to the bottom where it has Encouraged Update and What's New versions +2. Set the Encouraged Update version override to a version that is equal to or greater than the store version +3. Set the What's New version override to a version that is a valid version in the `common.json` file in the translations folder (Valid versions at the time of writing this are 2.0, 2.2, 2.3, 2.13, and 2.23) Step 4: Logout of the app and log back into demo mode -## Example Screenshot +## Example Screenshots of the What's New feature + +### Expanded + +![The expanded state of the what's new component](../../../static/img/whatsNew/WhatsNewExpanded.png) -Expanded: ![](../../../static/img/whatsNew/WhatsNewExpanded.png) +### Not Expanded -Not Expanded: ![](../../../static/img/whatsNew/WhatsNewNotExpanded.png) +![The collapsed state of the what's new component](../../../static/img/whatsNew/WhatsNewNotExpanded.png) From 900f170a88d2e6a6cd4e150737d18c7c6d0aface Mon Sep 17 00:00:00 2001 From: Rachael Bontrager Date: Tue, 29 Oct 2024 08:49:12 -0500 Subject: [PATCH 04/36] bug/9962-rachael-detox-iOS-android-send-to-testRail-broken (#10022) --- .github/workflows/e2e_android.yml | 5 ----- .github/workflows/e2e_ios.yml | 5 ----- .github/workflows/update_testrail_results.yml | 12 ++---------- 3 files changed, 2 insertions(+), 20 deletions(-) diff --git a/.github/workflows/e2e_android.yml b/.github/workflows/e2e_android.yml index 8171cab4e40..c7b675e39a0 100644 --- a/.github/workflows/e2e_android.yml +++ b/.github/workflows/e2e_android.yml @@ -30,10 +30,6 @@ on: description: 'Add results to testRail?' type: boolean required: false - device_specific: - description: 'Is your testRail run Android only? (only check if adding results to testRail)' - type: boolean - required: false schedule: - cron: '0 4 * * 1,2,3,4,5' workflow_run: @@ -364,7 +360,6 @@ jobs: with: test_names: "${{matrix.testsuite}}" testRail_name: ${{ inputs.testRail_name }} - test_specific_OS_needed: ${{ inputs.device_specific}} test_OS_name: "Android" secrets: inherit diff --git a/.github/workflows/e2e_ios.yml b/.github/workflows/e2e_ios.yml index ca507211298..00822a7b1e3 100644 --- a/.github/workflows/e2e_ios.yml +++ b/.github/workflows/e2e_ios.yml @@ -30,10 +30,6 @@ on: description: 'Add results to testRail?' type: boolean required: false - device_specific: - description: 'Is your testRail run iOS only? (only check if adding results to testRail)' - type: boolean - required: false schedule: - cron: '0 4 * * 1,2,3,4,5' workflow_run: @@ -343,7 +339,6 @@ jobs: with: test_names: "${{matrix.testsuite}}" testRail_name: ${{ inputs.testRail_name }} - test_specific_OS_needed: ${{ inputs.device_specific}} test_OS_name: "iOS" secrets: inherit diff --git a/.github/workflows/update_testrail_results.yml b/.github/workflows/update_testrail_results.yml index 064d93e054d..a6bf3b822a5 100644 --- a/.github/workflows/update_testrail_results.yml +++ b/.github/workflows/update_testrail_results.yml @@ -16,9 +16,6 @@ on: testRail_name: type: string default: '' - test_specific_OS_needed: - type: boolean - default: false test_OS_name: type: string default: '' @@ -53,18 +50,13 @@ jobs: echo "TEST_RUN_ID=$resp" >> "$GITHUB_OUTPUT" if [ "$resp" == '' ]; then if [[ "${{ inputs.testRail_name }}" == "" ]]; then - if [[ ${{ inputs.test_specific_OS_needed}} == true ]]; then - OS_name="${{inputs.test_OS_name}}: " - else - OS_name='' - fi resp=$(curl -X POST -H 'Content-Type: application/json' \ -u "${{secrets.TEST_RAIL_USER}}:${{secrets.TEST_RAIL_KEY}}" \ - -d '{"suite_id": 92, "include_all": false, "name": "'"${OS_name}$(date +'%Y-%m-%d')"'"}' \ + -d '{"suite_id": 92, "include_all": false, "name": "'"$(date +'%Y-%m-%d')"'"}' \ "https://dsvavsp.testrail.io//index.php?/api/v2/add_run/29" ) resp=$(curl -X GET -H 'Content-Type: application/json' \ -u "${{secrets.TEST_RAIL_USER}}:${{secrets.TEST_RAIL_KEY}}" \ - "https://dsvavsp.testrail.io//index.php?/api/v2/get_runs/29&is_completed=0" | jq '.runs[] | select(.name =="'"${OS_name}$(date +'%Y-%m-%d')"'") | .id') + "https://dsvavsp.testrail.io//index.php?/api/v2/get_runs/29&is_completed=0" | jq '.runs[] | select(.name =="'"$(date +'%Y-%m-%d')"'") | .id') echo "$resp" echo "TEST_RUN_ID=$resp" >> "$GITHUB_OUTPUT" else From 552bc87edb61c6ee28a0bcf375dfae14089e1cdf Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 29 Oct 2024 10:06:11 -0400 Subject: [PATCH 05/36] Bump the babel group in /VAMobile with 4 updates (#10045) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- VAMobile/package.json | 8 +- VAMobile/yarn.lock | 1679 ++++++++++++++++++----------------------- 2 files changed, 722 insertions(+), 965 deletions(-) diff --git a/VAMobile/package.json b/VAMobile/package.json index 724b8533d5e..57012796e12 100644 --- a/VAMobile/package.json +++ b/VAMobile/package.json @@ -89,12 +89,12 @@ "underscore": "^1.13.7" }, "devDependencies": { - "@babel/core": "^7.24.9", + "@babel/core": "^7.26.0", "@babel/plugin-proposal-private-methods": "^7.18.6", "@babel/plugin-transform-runtime": "^7.24.7", - "@babel/preset-env": "^7.24.8", - "@babel/preset-typescript": "^7.25.7", - "@babel/runtime": "^7.24.8", + "@babel/preset-env": "^7.26.0", + "@babel/preset-typescript": "^7.26.0", + "@babel/runtime": "^7.26.0", "@department-of-veterans-affairs/eslint-config-mobile": "0.15.0", "@react-native/babel-preset": "0.75.4", "@react-native/eslint-config": "^0.75.3", diff --git a/VAMobile/yarn.lock b/VAMobile/yarn.lock index b4aa9fe9a97..17494072462 100644 --- a/VAMobile/yarn.lock +++ b/VAMobile/yarn.lock @@ -20,42 +20,35 @@ "@jridgewell/gen-mapping" "^0.3.0" "@jridgewell/trace-mapping" "^0.3.9" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.22.13", "@babel/code-frame@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.24.7.tgz#882fd9e09e8ee324e496bd040401c6f046ef4465" - integrity sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA== +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.22.13", "@babel/code-frame@^7.25.9", "@babel/code-frame@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.26.0.tgz#9374b5cd068d128dac0b94ff482594273b1c2815" + integrity sha512-INCKxTtbXtcNbUZ3YXutwMpEleqttcswhAdee7dhuoVrD2cnuc3PqtERBtxkX5nziX9vnBL8WXmSGwv8CuPV6g== dependencies: - "@babel/highlight" "^7.24.7" - picocolors "^1.0.0" - -"@babel/code-frame@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.25.7.tgz#438f2c524071531d643c6f0188e1e28f130cebc7" - integrity sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g== - dependencies: - "@babel/highlight" "^7.25.7" + "@babel/helper-validator-identifier" "^7.25.9" + js-tokens "^4.0.0" picocolors "^1.0.0" -"@babel/compat-data@^7.20.5", "@babel/compat-data@^7.22.6", "@babel/compat-data@^7.24.8": - version "7.24.9" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.9.tgz#53eee4e68f1c1d0282aa0eb05ddb02d033fc43a0" - integrity sha512-e701mcfApCJqMMueQI0Fb68Amflj83+dvAvHawoBpAz+GDjCIyGHzNwnefjsWJ3xiYAqqiQFoWbspGYBdb2/ng== +"@babel/compat-data@^7.20.5", "@babel/compat-data@^7.22.6", "@babel/compat-data@^7.25.9", "@babel/compat-data@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.26.0.tgz#f02ba6d34e88fadd5e8861e8b38902f43cc1c819" + integrity sha512-qETICbZSLe7uXv9VE8T/RWOdIE5qqyTucOt4zLYMafj2MRO271VGgLd4RACJMeBO37UPWhXiKMBk7YlJ0fOzQA== -"@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.13.16", "@babel/core@^7.20.0", "@babel/core@^7.21.3", "@babel/core@^7.24.9": - version "7.24.9" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.9.tgz#dc07c9d307162c97fa9484ea997ade65841c7c82" - integrity sha512-5e3FI4Q3M3Pbr21+5xJwCv6ZT6KmGkI0vw3Tozy5ODAQFTIWe37iT8Cr7Ice2Ntb+M3iSKCEWMB1MBgKrW3whg== +"@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.13.16", "@babel/core@^7.20.0", "@babel/core@^7.21.3", "@babel/core@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.26.0.tgz#d78b6023cc8f3114ccf049eb219613f74a747b40" + integrity sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg== dependencies: "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.24.7" - "@babel/generator" "^7.24.9" - "@babel/helper-compilation-targets" "^7.24.8" - "@babel/helper-module-transforms" "^7.24.9" - "@babel/helpers" "^7.24.8" - "@babel/parser" "^7.24.8" - "@babel/template" "^7.24.7" - "@babel/traverse" "^7.24.8" - "@babel/types" "^7.24.9" + "@babel/code-frame" "^7.26.0" + "@babel/generator" "^7.26.0" + "@babel/helper-compilation-targets" "^7.25.9" + "@babel/helper-module-transforms" "^7.26.0" + "@babel/helpers" "^7.26.0" + "@babel/parser" "^7.26.0" + "@babel/template" "^7.25.9" + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.26.0" convert-source-map "^2.0.0" debug "^4.1.0" gensync "^1.0.0-beta.2" @@ -80,32 +73,13 @@ jsesc "^2.5.1" source-map "^0.5.0" -"@babel/generator@^7.20.0", "@babel/generator@^7.23.0", "@babel/generator@^7.24.8", "@babel/generator@^7.24.9", "@babel/generator@^7.7.2": - version "7.24.9" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.9.tgz#5c2575a1070e661bbbc9df82a853989c9a656f12" - integrity sha512-G8v3jRg+z8IwY1jHFxvCNhOPYPterE4XljNgdGTYfSTtzzwjIswIzIaSPSLs3R7yFuqnqNeay5rjICfqVr+/6A== - dependencies: - "@babel/types" "^7.24.9" - "@jridgewell/gen-mapping" "^0.3.5" - "@jridgewell/trace-mapping" "^0.3.25" - jsesc "^2.5.1" - -"@babel/generator@^7.25.0": - version "7.25.0" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.25.0.tgz#f858ddfa984350bc3d3b7f125073c9af6988f18e" - integrity sha512-3LEEcj3PVW8pW2R1SR1M89g/qrYk/m/mB/tLqn7dn4sbBUQyTqnlod+II2U4dqiGtUmkcnAmkMDralTFZttRiw== +"@babel/generator@^7.20.0", "@babel/generator@^7.23.0", "@babel/generator@^7.25.9", "@babel/generator@^7.26.0", "@babel/generator@^7.7.2": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.26.0.tgz#505cc7c90d92513f458a477e5ef0703e7c91b8d7" + integrity sha512-/AIkAmInnWwgEAJGQr9vY0c66Mj6kjkE2ZPB1PurTRaRAh3U+J45sAQMjQDJdh4WbR3l0x5xkimXBKyBXXAu2w== dependencies: - "@babel/types" "^7.25.0" - "@jridgewell/gen-mapping" "^0.3.5" - "@jridgewell/trace-mapping" "^0.3.25" - jsesc "^2.5.1" - -"@babel/generator@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.25.7.tgz#de86acbeb975a3e11ee92dd52223e6b03b479c56" - integrity sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA== - dependencies: - "@babel/types" "^7.25.7" + "@babel/parser" "^7.26.0" + "@babel/types" "^7.26.0" "@jridgewell/gen-mapping" "^0.3.5" "@jridgewell/trace-mapping" "^0.3.25" jsesc "^3.0.2" @@ -124,36 +98,29 @@ dependencies: "@babel/types" "^7.22.5" -"@babel/helper-annotate-as-pure@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.24.7.tgz#5373c7bc8366b12a033b4be1ac13a206c6656aab" - integrity sha512-BaDeOonYvhdKw+JoMVkAixAAJzG2jVPIwWoKBPdYuY9b452e2rPuI9QPYh3KpofZ3pW2akOmwZLOiOsHMiqRAg== +"@babel/helper-annotate-as-pure@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz#d8eac4d2dc0d7b6e11fa6e535332e0d3184f06b4" + integrity sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g== dependencies: - "@babel/types" "^7.24.7" + "@babel/types" "^7.25.9" -"@babel/helper-annotate-as-pure@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.7.tgz#63f02dbfa1f7cb75a9bdb832f300582f30bb8972" - integrity sha512-4xwU8StnqnlIhhioZf1tqnVWeQ9pvH/ujS8hRfw/WOza+/a+1qv69BWNy+oY231maTCWgKWhfBU7kDpsds6zAA== +"@babel/helper-builder-binary-assignment-operator-visitor@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.25.9.tgz#f41752fe772a578e67286e6779a68a5a92de1ee9" + integrity sha512-C47lC7LIDCnz0h4vai/tpNOI95tCd5ZT3iBt/DBH5lXKHZsyNQv18yf1wIIg2ntiQNgmAvA+DgZ82iW8Qdym8g== dependencies: - "@babel/types" "^7.25.7" + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.25.9" -"@babel/helper-builder-binary-assignment-operator-visitor@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.24.7.tgz#37d66feb012024f2422b762b9b2a7cfe27c7fba3" - integrity sha512-xZeCVVdwb4MsDBkkyZ64tReWYrLRHlMN72vP7Bdm3OUOuyFZExhsHUUnuWnm2/XOlAJzR0LfPpB56WXZn0X/lA== +"@babel/helper-compilation-targets@^7.20.7", "@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.9.tgz#55af025ce365be3cdc0c1c1e56c6af617ce88875" + integrity sha512-j9Db8Suy6yV/VHa4qzrj9yZfZxhLWQdVnRlXxmKLYlhWUVB1sB2G5sxuWYXk/whHD9iW76PmNzxZ4UCnTQTVEQ== dependencies: - "@babel/traverse" "^7.24.7" - "@babel/types" "^7.24.7" - -"@babel/helper-compilation-targets@^7.20.7", "@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.24.7", "@babel/helper-compilation-targets@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.8.tgz#b607c3161cd9d1744977d4f97139572fe778c271" - integrity sha512-oU+UoqCHdp+nWVDkpldqIQL/i/bvAv53tRqLG/s+cOXxe66zOYLU7ar/Xs3LdmBihrUMEUhwu6dMZwbNOYDwvw== - dependencies: - "@babel/compat-data" "^7.24.8" - "@babel/helper-validator-option" "^7.24.8" - browserslist "^4.23.1" + "@babel/compat-data" "^7.25.9" + "@babel/helper-validator-option" "^7.25.9" + browserslist "^4.24.0" lru-cache "^5.1.1" semver "^6.3.1" @@ -172,32 +139,17 @@ "@babel/helper-split-export-declaration" "^7.18.6" semver "^6.3.0" -"@babel/helper-create-class-features-plugin@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.7.tgz#2eaed36b3a1c11c53bdf80d53838b293c52f5b3b" - integrity sha512-kTkaDl7c9vO80zeX1rJxnuRpEsD5tA81yh11X1gQo+PhSti3JS+7qeZo9U4RHobKRiFPKaGK3svUAeb8D0Q7eg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.24.7" - "@babel/helper-environment-visitor" "^7.24.7" - "@babel/helper-function-name" "^7.24.7" - "@babel/helper-member-expression-to-functions" "^7.24.7" - "@babel/helper-optimise-call-expression" "^7.24.7" - "@babel/helper-replace-supers" "^7.24.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" - "@babel/helper-split-export-declaration" "^7.24.7" - semver "^6.3.1" - -"@babel/helper-create-class-features-plugin@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.7.tgz#5d65074c76cae75607421c00d6bd517fe1892d6b" - integrity sha512-bD4WQhbkx80mAyj/WCm4ZHcF4rDxkoLFO6ph8/5/mQ3z4vAzltQXAmbc7GvVJx5H+lk5Mi5EmbTeox5nMGCsbw== - dependencies: - "@babel/helper-annotate-as-pure" "^7.25.7" - "@babel/helper-member-expression-to-functions" "^7.25.7" - "@babel/helper-optimise-call-expression" "^7.25.7" - "@babel/helper-replace-supers" "^7.25.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7" - "@babel/traverse" "^7.25.7" +"@babel/helper-create-class-features-plugin@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.9.tgz#7644147706bb90ff613297d49ed5266bde729f83" + integrity sha512-UTZQMvt0d/rSz6KI+qdu7GQze5TIajwTS++GUozlw8VBJDEOAqSXwm1WvmYEZwqdqSGQshRocPDqrt4HBZB3fQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.25.9" + "@babel/helper-member-expression-to-functions" "^7.25.9" + "@babel/helper-optimise-call-expression" "^7.25.9" + "@babel/helper-replace-supers" "^7.25.9" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" + "@babel/traverse" "^7.25.9" semver "^6.3.1" "@babel/helper-create-regexp-features-plugin@^7.18.6": @@ -209,13 +161,13 @@ regexpu-core "^5.3.1" semver "^6.3.0" -"@babel/helper-create-regexp-features-plugin@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.24.7.tgz#be4f435a80dc2b053c76eeb4b7d16dd22cfc89da" - integrity sha512-03TCmXy2FtXJEZfbXDTSqq1fRJArk7lX9DOFC/47VthYcxyIOx+eXQmdo6DOQvrbpIix+KfXwvuXdFDZHxt+rA== +"@babel/helper-create-regexp-features-plugin@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.25.9.tgz#3e8999db94728ad2b2458d7a470e7770b7764e26" + integrity sha512-ORPNZ3h6ZRkOyAa/SaHU+XsLZr0UQzRwuDQ0cczIA17nAzZ+85G5cVkOJIj7QavLZGSe8QXUmNFxSZzjcZF9bw== dependencies: - "@babel/helper-annotate-as-pure" "^7.24.7" - regexpu-core "^5.3.1" + "@babel/helper-annotate-as-pure" "^7.25.9" + regexpu-core "^6.1.1" semver "^6.3.1" "@babel/helper-define-polyfill-provider@^0.6.1": @@ -229,6 +181,17 @@ lodash.debounce "^4.0.8" resolve "^1.14.2" +"@babel/helper-define-polyfill-provider@^0.6.2": + version "0.6.2" + resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.2.tgz#18594f789c3594acb24cfdb4a7f7b7d2e8bd912d" + integrity sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ== + dependencies: + "@babel/helper-compilation-targets" "^7.22.6" + "@babel/helper-plugin-utils" "^7.22.5" + debug "^4.1.1" + lodash.debounce "^4.0.8" + resolve "^1.14.2" + "@babel/helper-environment-visitor@^7.18.9", "@babel/helper-environment-visitor@^7.21.5": version "7.21.5" resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.21.5.tgz#c769afefd41d171836f7cb63e295bedf689d48ba" @@ -239,13 +202,6 @@ resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167" integrity sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA== -"@babel/helper-environment-visitor@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz#4b31ba9551d1f90781ba83491dd59cf9b269f7d9" - integrity sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ== - dependencies: - "@babel/types" "^7.24.7" - "@babel/helper-function-name@^7.19.0", "@babel/helper-function-name@^7.21.0": version "7.21.0" resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz#d552829b10ea9f120969304023cd0645fa00b1b4" @@ -262,14 +218,6 @@ "@babel/template" "^7.22.15" "@babel/types" "^7.23.0" -"@babel/helper-function-name@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz#75f1e1725742f39ac6584ee0b16d94513da38dd2" - integrity sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA== - dependencies: - "@babel/template" "^7.24.7" - "@babel/types" "^7.24.7" - "@babel/helper-hoist-variables@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz#c01a007dac05c085914e8fb652b339db50d823bb" @@ -277,13 +225,6 @@ dependencies: "@babel/types" "^7.22.5" -"@babel/helper-hoist-variables@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz#b4ede1cde2fd89436397f30dc9376ee06b0f25ee" - integrity sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ== - dependencies: - "@babel/types" "^7.24.7" - "@babel/helper-member-expression-to-functions@^7.21.5": version "7.21.5" resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.5.tgz#3b1a009af932e586af77c1030fba9ee0bde396c0" @@ -291,21 +232,13 @@ dependencies: "@babel/types" "^7.21.5" -"@babel/helper-member-expression-to-functions@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.7.tgz#67613d068615a70e4ed5101099affc7a41c5225f" - integrity sha512-LGeMaf5JN4hAT471eJdBs/GK1DoYIJ5GCtZN/EsL6KUiiDZOvO/eKE11AMZJa2zP4zk4qe9V2O/hxAmkRc8p6w== +"@babel/helper-member-expression-to-functions@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.9.tgz#9dfffe46f727005a5ea29051ac835fb735e4c1a3" + integrity sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ== dependencies: - "@babel/traverse" "^7.24.7" - "@babel/types" "^7.24.7" - -"@babel/helper-member-expression-to-functions@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.7.tgz#541a33b071f0355a63a0fa4bdf9ac360116b8574" - integrity sha512-O31Ssjd5K6lPbTX9AAYpSKrZmLeagt9uwschJd+Ixo6QiRyfpvgtVQp8qrDR9UNFjZ8+DO34ZkdrN+BnPXemeA== - dependencies: - "@babel/traverse" "^7.25.7" - "@babel/types" "^7.25.7" + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.25.9" "@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.22.5", "@babel/helper-module-imports@^7.24.7": version "7.24.7" @@ -315,34 +248,22 @@ "@babel/traverse" "^7.24.7" "@babel/types" "^7.24.7" -"@babel/helper-module-imports@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.25.7.tgz#dba00d9523539152906ba49263e36d7261040472" - integrity sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw== - dependencies: - "@babel/traverse" "^7.25.7" - "@babel/types" "^7.25.7" - -"@babel/helper-module-transforms@^7.24.7", "@babel/helper-module-transforms@^7.24.9": - version "7.24.9" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.24.9.tgz#e13d26306b89eea569180868e652e7f514de9d29" - integrity sha512-oYbh+rtFKj/HwBQkFlUzvcybzklmVdVV3UU+mN7n2t/q3yGHbuVdNxyFvSBO1tfvjyArpHNcWMAzsSPdyI46hw== +"@babel/helper-module-imports@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz#e7f8d20602ebdbf9ebbea0a0751fb0f2a4141715" + integrity sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw== dependencies: - "@babel/helper-environment-visitor" "^7.24.7" - "@babel/helper-module-imports" "^7.24.7" - "@babel/helper-simple-access" "^7.24.7" - "@babel/helper-split-export-declaration" "^7.24.7" - "@babel/helper-validator-identifier" "^7.24.7" + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.25.9" -"@babel/helper-module-transforms@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.25.7.tgz#2ac9372c5e001b19bc62f1fe7d96a18cb0901d1a" - integrity sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ== +"@babel/helper-module-transforms@^7.25.9", "@babel/helper-module-transforms@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz#8ce54ec9d592695e58d84cd884b7b5c6a2fdeeae" + integrity sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw== dependencies: - "@babel/helper-module-imports" "^7.25.7" - "@babel/helper-simple-access" "^7.25.7" - "@babel/helper-validator-identifier" "^7.25.7" - "@babel/traverse" "^7.25.7" + "@babel/helper-module-imports" "^7.25.9" + "@babel/helper-validator-identifier" "^7.25.9" + "@babel/traverse" "^7.25.9" "@babel/helper-optimise-call-expression@^7.18.6": version "7.18.6" @@ -351,24 +272,17 @@ dependencies: "@babel/types" "^7.18.6" -"@babel/helper-optimise-call-expression@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.24.7.tgz#8b0a0456c92f6b323d27cfd00d1d664e76692a0f" - integrity sha512-jKiTsW2xmWwxT1ixIdfXUZp+P5yURx2suzLZr5Hi64rURpDYdMW0pv+Uf17EYk2Rd428Lx4tLsnjGJzYKDM/6A== +"@babel/helper-optimise-call-expression@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.9.tgz#3324ae50bae7e2ab3c33f60c9a877b6a0146b54e" + integrity sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ== dependencies: - "@babel/types" "^7.24.7" + "@babel/types" "^7.25.9" -"@babel/helper-optimise-call-expression@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.7.tgz#1de1b99688e987af723eed44fa7fc0ee7b97d77a" - integrity sha512-VAwcwuYhv/AT+Vfr28c9y6SHzTan1ryqrydSTFGjU0uDJHw3uZ+PduI8plCLkRsDnqK2DMEDmwrOQRsK/Ykjng== - dependencies: - "@babel/types" "^7.25.7" - -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.18.9", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.24.7", "@babel/helper-plugin-utils@^7.24.8", "@babel/helper-plugin-utils@^7.25.7", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.7.tgz#8ec5b21812d992e1ef88a9b068260537b6f0e36c" - integrity sha512-eaPZai0PiqCi09pPs3pAFfl/zYgGaE6IdXtYvmf0qlcDTd3WCtO7JWCcRd64e0EQrcYgiHibEZnOGsSY4QSgaw== +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.18.9", "@babel/helper-plugin-utils@^7.19.0", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.24.7", "@babel/helper-plugin-utils@^7.25.9", "@babel/helper-plugin-utils@^7.8.0": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.9.tgz#9cbdd63a9443a2c92a725cca7ebca12cc8dd9f46" + integrity sha512-kSMlyUVdWe25rEsRGviIgOWnoT/nfABVWlqt9N19/dIPWViAOW2s9wznP5tURbs/IDuNk4gPy3YdYRgH3uxhBw== "@babel/helper-remap-async-to-generator@^7.18.9": version "7.18.9" @@ -380,23 +294,14 @@ "@babel/helper-wrap-function" "^7.18.9" "@babel/types" "^7.18.9" -"@babel/helper-remap-async-to-generator@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.24.7.tgz#b3f0f203628522713849d49403f1a414468be4c7" - integrity sha512-9pKLcTlZ92hNZMQfGCHImUpDOlAgkkpqalWEeftW5FBya75k8Li2ilerxkM/uBEj01iBZXcCIB/bwvDYgWyibA== +"@babel/helper-remap-async-to-generator@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.25.9.tgz#e53956ab3d5b9fb88be04b3e2f31b523afd34b92" + integrity sha512-IZtukuUeBbhgOcaW2s06OXTzVNJR0ybm4W5xC1opWFFJMZbwRj5LCk+ByYH7WdZPZTt8KnFwA8pvjN2yqcPlgw== dependencies: - "@babel/helper-annotate-as-pure" "^7.24.7" - "@babel/helper-environment-visitor" "^7.24.7" - "@babel/helper-wrap-function" "^7.24.7" - -"@babel/helper-remap-async-to-generator@^7.25.0": - version "7.25.0" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.25.0.tgz#d2f0fbba059a42d68e5e378feaf181ef6055365e" - integrity sha512-NhavI2eWEIz/H9dbrG0TuOicDhNexze43i5z7lEqwYm0WEZVTwnPpA0EafUTP7+6/W79HWIP2cTe3Z5NiSTVpw== - dependencies: - "@babel/helper-annotate-as-pure" "^7.24.7" - "@babel/helper-wrap-function" "^7.25.0" - "@babel/traverse" "^7.25.0" + "@babel/helper-annotate-as-pure" "^7.25.9" + "@babel/helper-wrap-function" "^7.25.9" + "@babel/traverse" "^7.25.9" "@babel/helper-replace-supers@^7.21.5": version "7.21.5" @@ -410,39 +315,22 @@ "@babel/traverse" "^7.21.5" "@babel/types" "^7.21.5" -"@babel/helper-replace-supers@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.24.7.tgz#f933b7eed81a1c0265740edc91491ce51250f765" - integrity sha512-qTAxxBM81VEyoAY0TtLrx1oAEJc09ZK67Q9ljQToqCnA+55eNwCORaxlKyu+rNfX86o8OXRUSNUnrtsAZXM9sg== - dependencies: - "@babel/helper-environment-visitor" "^7.24.7" - "@babel/helper-member-expression-to-functions" "^7.24.7" - "@babel/helper-optimise-call-expression" "^7.24.7" - -"@babel/helper-replace-supers@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.25.7.tgz#38cfda3b6e990879c71d08d0fef9236b62bd75f5" - integrity sha512-iy8JhqlUW9PtZkd4pHM96v6BdJ66Ba9yWSE4z0W4TvSZwLBPkyDsiIU3ENe4SmrzRBs76F7rQXTy1lYC49n6Lw== +"@babel/helper-replace-supers@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.25.9.tgz#ba447224798c3da3f8713fc272b145e33da6a5c5" + integrity sha512-IiDqTOTBQy0sWyeXyGSC5TBJpGFXBkRynjBeXsvbhQFKj2viwJC76Epz35YLU1fpe/Am6Vppb7W7zM4fPQzLsQ== dependencies: - "@babel/helper-member-expression-to-functions" "^7.25.7" - "@babel/helper-optimise-call-expression" "^7.25.7" - "@babel/traverse" "^7.25.7" + "@babel/helper-member-expression-to-functions" "^7.25.9" + "@babel/helper-optimise-call-expression" "^7.25.9" + "@babel/traverse" "^7.25.9" -"@babel/helper-simple-access@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz#bcade8da3aec8ed16b9c4953b74e506b51b5edb3" - integrity sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg== +"@babel/helper-simple-access@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.25.9.tgz#6d51783299884a2c74618d6ef0f86820ec2e7739" + integrity sha512-c6WHXuiaRsJTyHYLJV75t9IqsmTbItYfdj99PnzYGQZkYKvan5/2jKJ7gu31J3/BJ/A18grImSPModuyG/Eo0Q== dependencies: - "@babel/traverse" "^7.24.7" - "@babel/types" "^7.24.7" - -"@babel/helper-simple-access@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.25.7.tgz#5eb9f6a60c5d6b2e0f76057004f8dacbddfae1c0" - integrity sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ== - dependencies: - "@babel/traverse" "^7.25.7" - "@babel/types" "^7.25.7" + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.25.9" "@babel/helper-skip-transparent-expression-wrappers@^7.20.0": version "7.20.0" @@ -451,21 +339,13 @@ dependencies: "@babel/types" "^7.20.0" -"@babel/helper-skip-transparent-expression-wrappers@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.24.7.tgz#5f8fa83b69ed5c27adc56044f8be2b3ea96669d9" - integrity sha512-IO+DLT3LQUElMbpzlatRASEyQtfhSE0+m465v++3jyyXeBTBUjtVZg28/gHeV5mrTJqvEKhKroBGAvhW+qPHiQ== +"@babel/helper-skip-transparent-expression-wrappers@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.9.tgz#0b2e1b62d560d6b1954893fd2b705dc17c91f0c9" + integrity sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA== dependencies: - "@babel/traverse" "^7.24.7" - "@babel/types" "^7.24.7" - -"@babel/helper-skip-transparent-expression-wrappers@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.7.tgz#382831c91038b1a6d32643f5f49505b8442cb87c" - integrity sha512-pPbNbchZBkPMD50K0p3JGcFMNLVUCuU/ABybm/PGNj4JiHrpmNyqqCphBk4i19xXtNV0JhldQJJtbSW5aUvbyA== - dependencies: - "@babel/traverse" "^7.25.7" - "@babel/types" "^7.25.7" + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.25.9" "@babel/helper-split-export-declaration@^7.18.6": version "7.18.6" @@ -481,42 +361,25 @@ dependencies: "@babel/types" "^7.22.5" -"@babel/helper-split-export-declaration@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz#83949436890e07fa3d6873c61a96e3bbf692d856" - integrity sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA== - dependencies: - "@babel/types" "^7.24.7" - -"@babel/helper-string-parser@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz#5b3329c9a58803d5df425e5785865881a81ca48d" - integrity sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ== - -"@babel/helper-string-parser@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.25.7.tgz#d50e8d37b1176207b4fe9acedec386c565a44a54" - integrity sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g== +"@babel/helper-string-parser@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz#1aabb72ee72ed35789b4bbcad3ca2862ce614e8c" + integrity sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA== "@babel/helper-validator-identifier@^7.16.7": version "7.22.20" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A== -"@babel/helper-validator-identifier@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz#75b889cfaf9e35c2aaf42cf0d72c8e91719251db" - integrity sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w== - -"@babel/helper-validator-identifier@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.7.tgz#77b7f60c40b15c97df735b38a66ba1d7c3e93da5" - integrity sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg== +"@babel/helper-validator-identifier@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz#24b64e2c3ec7cd3b3c547729b8d16871f22cbdc7" + integrity sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ== -"@babel/helper-validator-option@^7.21.0", "@babel/helper-validator-option@^7.24.8", "@babel/helper-validator-option@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.25.7.tgz#97d1d684448228b30b506d90cace495d6f492729" - integrity sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ== +"@babel/helper-validator-option@^7.21.0", "@babel/helper-validator-option@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz#86e45bd8a49ab7e03f276577f96179653d41da72" + integrity sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw== "@babel/helper-wrap-function@^7.18.9": version "7.20.5" @@ -528,103 +391,68 @@ "@babel/traverse" "^7.20.5" "@babel/types" "^7.20.5" -"@babel/helper-wrap-function@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.24.7.tgz#52d893af7e42edca7c6d2c6764549826336aae1f" - integrity sha512-N9JIYk3TD+1vq/wn77YnJOqMtfWhNewNE+DJV4puD2X7Ew9J4JvrzrFDfTfyv5EgEXVy9/Wt8QiOErzEmv5Ifw== - dependencies: - "@babel/helper-function-name" "^7.24.7" - "@babel/template" "^7.24.7" - "@babel/traverse" "^7.24.7" - "@babel/types" "^7.24.7" - -"@babel/helper-wrap-function@^7.25.0": - version "7.25.0" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.25.0.tgz#dab12f0f593d6ca48c0062c28bcfb14ebe812f81" - integrity sha512-s6Q1ebqutSiZnEjaofc/UKDyC4SbzV5n5SrA2Gq8UawLycr3i04f1dX4OzoQVnexm6aOCh37SQNYlJ/8Ku+PMQ== - dependencies: - "@babel/template" "^7.25.0" - "@babel/traverse" "^7.25.0" - "@babel/types" "^7.25.0" - -"@babel/helpers@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.8.tgz#2820d64d5d6686cca8789dd15b074cd862795873" - integrity sha512-gV2265Nkcz7weJJfvDoAEVzC1e2OTDpkGbEsebse8koXUJUXPsCMi7sRo/+SPMuMZ9MtUPnGwITTnQnU5YjyaQ== - dependencies: - "@babel/template" "^7.24.7" - "@babel/types" "^7.24.8" - -"@babel/highlight@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.7.tgz#a05ab1df134b286558aae0ed41e6c5f731bf409d" - integrity sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw== +"@babel/helper-wrap-function@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.25.9.tgz#d99dfd595312e6c894bd7d237470025c85eea9d0" + integrity sha512-ETzz9UTjQSTmw39GboatdymDq4XIQbR8ySgVrylRhPOFpsd+JrKHIuF0de7GCWmem+T4uC5z7EZguod7Wj4A4g== dependencies: - "@babel/helper-validator-identifier" "^7.24.7" - chalk "^2.4.2" - js-tokens "^4.0.0" - picocolors "^1.0.0" + "@babel/template" "^7.25.9" + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.25.9" -"@babel/highlight@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.25.7.tgz#20383b5f442aa606e7b5e3043b0b1aafe9f37de5" - integrity sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw== +"@babel/helpers@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.26.0.tgz#30e621f1eba5aa45fe6f4868d2e9154d884119a4" + integrity sha512-tbhNuIxNcVb21pInl3ZSjksLCvgdZy9KwJ8brv993QtIVKJBBkYXz4q4ZbAv31GdnC+R90np23L5FbEBlthAEw== dependencies: - "@babel/helper-validator-identifier" "^7.25.7" - chalk "^2.4.2" - js-tokens "^4.0.0" - picocolors "^1.0.0" + "@babel/template" "^7.25.9" + "@babel/types" "^7.26.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.13.16", "@babel/parser@^7.14.7", "@babel/parser@^7.20.0", "@babel/parser@^7.20.5", "@babel/parser@^7.23.0", "@babel/parser@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.8.tgz#58a4dbbcad7eb1d48930524a3fd93d93e9084c6f" - integrity sha512-WzfbgXOkGzZiXXCqk43kKwZjzwx4oulxZi3nq2TYL9mOjQv6kYwul9mz6ID36njuL7Xkp6nJEfok848Zj10j/w== - -"@babel/parser@^7.25.3": - version "7.25.3" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.25.3.tgz#91fb126768d944966263f0657ab222a642b82065" - integrity sha512-iLTJKDbJ4hMvFPgQwwsVoxtHyWpKKPBrxkANrSYewDPaPpT5py5yeVkgPIJ7XYXhndxJpaA3PyALSXQ7u8e/Dw== +"@babel/parser@^7.1.0", "@babel/parser@^7.13.16", "@babel/parser@^7.14.7", "@babel/parser@^7.20.0", "@babel/parser@^7.20.5", "@babel/parser@^7.23.0", "@babel/parser@^7.25.9", "@babel/parser@^7.26.0": + version "7.26.1" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.26.1.tgz#44e02499960df2cdce2c456372a3e8e0c3c5c975" + integrity sha512-reoQYNiAJreZNsJzyrDNzFQ+IQ5JFiIzAHJg9bn94S3l+4++J7RsIhNMoB+lgP/9tpmiAQqspv+xfdxTSzREOw== dependencies: - "@babel/types" "^7.25.2" + "@babel/types" "^7.26.0" -"@babel/parser@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.25.7.tgz#99b927720f4ddbfeb8cd195a363ed4532f87c590" - integrity sha512-aZn7ETtQsjjGG5HruveUK06cU3Hljuhd9Iojm4M8WWv3wLE6OkE5PWbDUkItmMgegmccaITudyuW5RPYrYlgWw== +"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.25.9.tgz#cc2e53ebf0a0340777fff5ed521943e253b4d8fe" + integrity sha512-ZkRyVkThtxQ/J6nv3JFYv1RYY+JT5BvU0y3k5bWrmuG4woXypRa4PXmm9RhOwodRkYFWqC0C0cqcJ4OqR7kW+g== dependencies: - "@babel/types" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/traverse" "^7.25.9" -"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.24.7.tgz#fd059fd27b184ea2b4c7e646868a9a381bbc3055" - integrity sha512-TiT1ss81W80eQsN+722OaeQMY/G4yTb4G9JrqeiDADs3N8lbPMGldWi9x8tyqCW5NLx1Jh2AvkE6r6QvEltMMQ== +"@babel/plugin-bugfix-safari-class-field-initializer-scope@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.25.9.tgz#af9e4fb63ccb8abcb92375b2fcfe36b60c774d30" + integrity sha512-MrGRLZxLD/Zjj0gdU15dfs+HH/OXvnw/U4jJD8vpcP2CJQapPEv1IWwjc/qMg7ItBlPwSv1hRBbb7LeuANdcnw== dependencies: - "@babel/helper-environment-visitor" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.24.7.tgz#468096ca44bbcbe8fcc570574e12eb1950e18107" - integrity sha512-unaQgZ/iRu/By6tsjMZzpeBZjChYfLYry6HrEXPoz3KmfF0sVBQ1l8zKMQ4xRGLWVsjuvB8nQfjNP/DcfEOCsg== +"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.25.9.tgz#e8dc26fcd616e6c5bf2bd0d5a2c151d4f92a9137" + integrity sha512-2qUwwfAFpJLZqxd02YW9btUCZHl+RFvdDkNfZwaIJrvB8Tesjsk8pEQkTvGwZXLqXUx/2oyY3ySRhm6HOXuCug== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.24.7.tgz#e4eabdd5109acc399b38d7999b2ef66fc2022f89" - integrity sha512-+izXIbke1T33mY4MSNnrqhPXDz01WYhEf3yF5NbnUtkiNnm+XBZJl3kNfoK6NKmYlz/D07+l2GWVK/QfDkNCuQ== +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.25.9.tgz#807a667f9158acac6f6164b4beb85ad9ebc9e1d1" + integrity sha512-6xWgLZTJXwilVjlnV7ospI3xi+sl8lN8rXXbBD6vYn3UYDlGsag8wrZkKcSI8G6KgqKP7vNFaDgeDnfAABq61g== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" - "@babel/plugin-transform-optional-chaining" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" + "@babel/plugin-transform-optional-chaining" "^7.25.9" -"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.24.7.tgz#71b21bb0286d5810e63a1538aa901c58e87375ec" - integrity sha512-utA4HuR6F4Vvcr+o4DnjL8fCOlgRFGbeeBEGNg3ZTrLFw6VWG5XmUrvcQ0FjIYMU2ST4XcR2Wsp7t9qOAPnxMg== +"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.25.9.tgz#de7093f1e7deaf68eadd7cc6b07f2ab82543269e" + integrity sha512-aLnMXYPnzwwqhYSCyXfKkIkYgJ8zv9RK+roo9DkTXz38ynIhd9XCbN08s3MGvqL2MYGVUGdRQLL/JqBIeJhJBg== dependencies: - "@babel/helper-environment-visitor" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/traverse" "^7.25.9" "@babel/plugin-proposal-async-generator-functions@^7.0.0": version "7.20.7" @@ -723,21 +551,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-class-properties@^7.12.13", "@babel/plugin-syntax-class-properties@^7.8.3": +"@babel/plugin-syntax-class-properties@^7.8.3": version "7.12.13" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== dependencies: "@babel/helper-plugin-utils" "^7.12.13" -"@babel/plugin-syntax-class-static-block@^7.14.5": - version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz#195df89b146b4b78b3bf897fd7a257c84659d406" - integrity sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw== - dependencies: - "@babel/helper-plugin-utils" "^7.14.5" - -"@babel/plugin-syntax-dynamic-import@^7.8.0", "@babel/plugin-syntax-dynamic-import@^7.8.3": +"@babel/plugin-syntax-dynamic-import@^7.8.0": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ== @@ -751,13 +572,6 @@ dependencies: "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-syntax-export-namespace-from@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz#028964a9ba80dbc094c915c487ad7c4e7a66465a" - integrity sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q== - dependencies: - "@babel/helper-plugin-utils" "^7.8.3" - "@babel/plugin-syntax-flow@^7.12.1", "@babel/plugin-syntax-flow@^7.18.0", "@babel/plugin-syntax-flow@^7.18.6": version "7.21.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.21.4.tgz#3e37fca4f06d93567c1cd9b75156422e90a67107" @@ -765,21 +579,21 @@ dependencies: "@babel/helper-plugin-utils" "^7.20.2" -"@babel/plugin-syntax-import-assertions@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.24.7.tgz#2a0b406b5871a20a841240586b1300ce2088a778" - integrity sha512-Ec3NRUMoi8gskrkBe3fNmEQfxDvY8bgfQpz6jlk/41kX9eUjvpyqWU7PBP/pLAvMaSQjbMNKJmvX57jP+M6bPg== +"@babel/plugin-syntax-import-assertions@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.26.0.tgz#620412405058efa56e4a564903b79355020f445f" + integrity sha512-QCWT5Hh830hK5EQa7XzuqIkQU9tT/whqbDz7kuaZMHFl1inRRg7JnuAEOQ0Ur0QUl0NufCk1msK2BeY79Aj/eg== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-syntax-import-attributes@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.24.7.tgz#b4f9ea95a79e6912480c4b626739f86a076624ca" - integrity sha512-hbX+lKKeUMGihnK8nvKqmXBInriT3GVjzXKFriV3YC6APGxMbP8RZNFwy91+hocLXq90Mta+HshoB31802bb8A== +"@babel/plugin-syntax-import-attributes@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.26.0.tgz#3b1412847699eea739b4f2602c74ce36f6b0b0f7" + integrity sha512-e2dttdsJ1ZTpi3B9UYGLw41hifAubg19AtCu/2I/F1QNVclOBr1dYpTdmdyZ84Xiz43BS/tCUkMAZNLv12Pi+A== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-syntax-import-meta@^7.10.4", "@babel/plugin-syntax-import-meta@^7.8.3": +"@babel/plugin-syntax-import-meta@^7.8.3": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== @@ -793,14 +607,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-jsx@^7.22.5", "@babel/plugin-syntax-jsx@^7.25.7", "@babel/plugin-syntax-jsx@^7.7.2": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.7.tgz#5352d398d11ea5e7ef330c854dea1dae0bf18165" - integrity sha512-ruZOnKO+ajVL/MVx+PwNBPOkrnXTXoWMtte1MBpegfCArhqOe3Bj52avVj1huLLxNKYKXYaSxZ2F+woK1ekXfw== +"@babel/plugin-syntax-jsx@^7.22.5", "@babel/plugin-syntax-jsx@^7.25.9", "@babel/plugin-syntax-jsx@^7.7.2": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.9.tgz#a34313a178ea56f1951599b929c1ceacee719290" + integrity sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-syntax-logical-assignment-operators@^7.10.4", "@babel/plugin-syntax-logical-assignment-operators@^7.8.3": +"@babel/plugin-syntax-logical-assignment-operators@^7.8.3": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== @@ -842,26 +656,19 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-private-property-in-object@^7.14.5": - version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz#0dc6671ec0ea22b6e94a1114f857970cd39de1ad" - integrity sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg== - dependencies: - "@babel/helper-plugin-utils" "^7.14.5" - -"@babel/plugin-syntax-top-level-await@^7.14.5", "@babel/plugin-syntax-top-level-await@^7.8.3": +"@babel/plugin-syntax-top-level-await@^7.8.3": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-typescript@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.7.tgz#bfc05b0cc31ebd8af09964650cee723bb228108b" - integrity sha512-rR+5FDjpCHqqZN2bzZm18bVYGaejGq5ZkpVCJLXor/+zlSrSoc4KWcHI0URVWjl/68Dyr1uwZUz/1njycEAv9g== +"@babel/plugin-syntax-typescript@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.9.tgz#67dda2b74da43727cf21d46cf9afef23f4365399" + integrity sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" "@babel/plugin-syntax-typescript@^7.7.2": version "7.14.5" @@ -878,130 +685,132 @@ "@babel/helper-create-regexp-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-arrow-functions@^7.0.0", "@babel/plugin-transform-arrow-functions@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.24.7.tgz#4f6886c11e423bd69f3ce51dbf42424a5f275514" - integrity sha512-Dt9LQs6iEY++gXUwY03DNFat5C2NbO48jj+j/bSAz6b3HgPs39qcPiYt77fDObIcFwj3/C2ICX9YMwGflUoSHQ== +"@babel/plugin-transform-arrow-functions@^7.0.0", "@babel/plugin-transform-arrow-functions@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.25.9.tgz#7821d4410bee5daaadbb4cdd9a6649704e176845" + integrity sha512-6jmooXYIwn9ca5/RylZADJ+EnSxVUS5sjeJ9UPk6RWRzXCmOJCy6dqItPJFpw2cuCangPK4OYr5uhGKcmrm5Qg== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-async-generator-functions@^7.24.3", "@babel/plugin-transform-async-generator-functions@^7.24.7": - version "7.25.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.0.tgz#b785cf35d73437f6276b1e30439a57a50747bddf" - integrity sha512-uaIi2FdqzjpAMvVqvB51S42oC2JEVgh0LDsGfZVDysWE8LrJtQC2jvKmOqEYThKyB7bDEb7BP1GYWDm7tABA0Q== +"@babel/plugin-transform-async-generator-functions@^7.24.3", "@babel/plugin-transform-async-generator-functions@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.9.tgz#1b18530b077d18a407c494eb3d1d72da505283a2" + integrity sha512-RXV6QAzTBbhDMO9fWwOmwwTuYaiPbggWQ9INdZqAYeSHyG7FzQ+nOZaUUjNwKv9pV3aE4WFqFm1Hnbci5tBCAw== dependencies: - "@babel/helper-plugin-utils" "^7.24.8" - "@babel/helper-remap-async-to-generator" "^7.25.0" - "@babel/plugin-syntax-async-generators" "^7.8.4" - "@babel/traverse" "^7.25.0" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-remap-async-to-generator" "^7.25.9" + "@babel/traverse" "^7.25.9" -"@babel/plugin-transform-async-to-generator@^7.20.0", "@babel/plugin-transform-async-to-generator@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.24.7.tgz#72a3af6c451d575842a7e9b5a02863414355bdcc" - integrity sha512-SQY01PcJfmQ+4Ash7NE+rpbLFbmqA2GPIgqzxfFTL4t1FKRq4zTms/7htKpoCUI9OcFYgzqfmCdH53s6/jn5fA== +"@babel/plugin-transform-async-to-generator@^7.20.0", "@babel/plugin-transform-async-to-generator@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.25.9.tgz#c80008dacae51482793e5a9c08b39a5be7e12d71" + integrity sha512-NT7Ejn7Z/LjUH0Gv5KsBCxh7BH3fbLTV0ptHvpeMvrt3cPThHfJfst9Wrb7S8EvJ7vRTFI7z+VAvFVEQn/m5zQ== dependencies: - "@babel/helper-module-imports" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/helper-remap-async-to-generator" "^7.24.7" + "@babel/helper-module-imports" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-remap-async-to-generator" "^7.25.9" -"@babel/plugin-transform-block-scoped-functions@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.24.7.tgz#a4251d98ea0c0f399dafe1a35801eaba455bbf1f" - integrity sha512-yO7RAz6EsVQDaBH18IDJcMB1HnrUn2FJ/Jslc/WtPPWcjhpUJXU/rjbwmluzp7v/ZzWcEhTMXELnnsz8djWDwQ== +"@babel/plugin-transform-block-scoped-functions@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.25.9.tgz#5700691dbd7abb93de300ca7be94203764fce458" + integrity sha512-toHc9fzab0ZfenFpsyYinOX0J/5dgJVA2fm64xPewu7CoYHWEivIWKxkK2rMi4r3yQqLnVmheMXRdG+k239CgA== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-block-scoping@^7.0.0", "@babel/plugin-transform-block-scoping@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.24.7.tgz#42063e4deb850c7bd7c55e626bf4e7ab48e6ce02" - integrity sha512-Nd5CvgMbWc+oWzBsuaMcbwjJWAcp5qzrbg69SZdHSP7AMY0AbWFqFO0WTFCA1jxhMCwodRwvRec8k0QUbZk7RQ== +"@babel/plugin-transform-block-scoping@^7.0.0", "@babel/plugin-transform-block-scoping@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.25.9.tgz#c33665e46b06759c93687ca0f84395b80c0473a1" + integrity sha512-1F05O7AYjymAtqbsFETboN1NvBdcnzMerO+zlMyJBEz6WkMdejvGWw9p05iTSjC85RLlBseHHQpYaM4gzJkBGg== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-class-properties@^7.24.1", "@babel/plugin-transform-class-properties@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.24.7.tgz#256879467b57b0b68c7ddfc5b76584f398cd6834" - integrity sha512-vKbfawVYayKcSeSR5YYzzyXvsDFWU2mD8U5TFeXtbCPLFUqe7GyCgvO6XDHzje862ODrOwy6WCPmKeWHbCFJ4w== +"@babel/plugin-transform-class-properties@^7.24.1", "@babel/plugin-transform-class-properties@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.25.9.tgz#a8ce84fedb9ad512549984101fa84080a9f5f51f" + integrity sha512-bbMAII8GRSkcd0h0b4X+36GksxuheLFjP65ul9w6C3KgAamI3JqErNgSrosX6ZPj+Mpim5VvEbawXxJCyEUV3Q== dependencies: - "@babel/helper-create-class-features-plugin" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-create-class-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-class-static-block@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.7.tgz#c82027ebb7010bc33c116d4b5044fbbf8c05484d" - integrity sha512-HMXK3WbBPpZQufbMG4B46A90PkuuhN9vBCb5T8+VAHqvAqvcLi+2cKoukcpmUYkszLhScU3l1iudhrks3DggRQ== +"@babel/plugin-transform-class-static-block@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.26.0.tgz#6c8da219f4eb15cae9834ec4348ff8e9e09664a0" + integrity sha512-6J2APTs7BDDm+UMqP1useWqhcRAXo0WIoVj26N7kPFB6S73Lgvyka4KTZYIxtgYXiN5HTyRObA72N2iu628iTQ== dependencies: - "@babel/helper-create-class-features-plugin" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/plugin-syntax-class-static-block" "^7.14.5" - -"@babel/plugin-transform-classes@^7.0.0", "@babel/plugin-transform-classes@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.8.tgz#ad23301fe5bc153ca4cf7fb572a9bc8b0b711cf7" - integrity sha512-VXy91c47uujj758ud9wx+OMgheXm4qJfyhj1P18YvlrQkNOSrwsteHk+EFS3OMGfhMhpZa0A+81eE7G4QC+3CA== - dependencies: - "@babel/helper-annotate-as-pure" "^7.24.7" - "@babel/helper-compilation-targets" "^7.24.8" - "@babel/helper-environment-visitor" "^7.24.7" - "@babel/helper-function-name" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.8" - "@babel/helper-replace-supers" "^7.24.7" - "@babel/helper-split-export-declaration" "^7.24.7" + "@babel/helper-create-class-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + +"@babel/plugin-transform-classes@^7.0.0", "@babel/plugin-transform-classes@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.9.tgz#7152457f7880b593a63ade8a861e6e26a4469f52" + integrity sha512-mD8APIXmseE7oZvZgGABDyM34GUmK45Um2TXiBUt7PnuAxrgoSVf123qUzPxEr/+/BHrRn5NMZCdE2m/1F8DGg== + dependencies: + "@babel/helper-annotate-as-pure" "^7.25.9" + "@babel/helper-compilation-targets" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-replace-supers" "^7.25.9" + "@babel/traverse" "^7.25.9" globals "^11.1.0" -"@babel/plugin-transform-computed-properties@^7.0.0", "@babel/plugin-transform-computed-properties@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.24.7.tgz#4cab3214e80bc71fae3853238d13d097b004c707" - integrity sha512-25cS7v+707Gu6Ds2oY6tCkUwsJ9YIDbggd9+cu9jzzDgiNq7hR/8dkzxWfKWnTic26vsI3EsCXNd4iEB6e8esQ== +"@babel/plugin-transform-computed-properties@^7.0.0", "@babel/plugin-transform-computed-properties@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.25.9.tgz#db36492c78460e534b8852b1d5befe3c923ef10b" + integrity sha512-HnBegGqXZR12xbcTHlJ9HGxw1OniltT26J5YpfruGqtUHlz/xKf/G2ak9e+t0rVqrjXa9WOhvYPz1ERfMj23AA== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/template" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/template" "^7.25.9" -"@babel/plugin-transform-destructuring@^7.20.0", "@babel/plugin-transform-destructuring@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.8.tgz#c828e814dbe42a2718a838c2a2e16a408e055550" - integrity sha512-36e87mfY8TnRxc7yc6M9g9gOB7rKgSahqkIKwLpz4Ppk2+zC2Cy1is0uwtuSG6AE4zlTOUa+7JGz9jCJGLqQFQ== +"@babel/plugin-transform-destructuring@^7.20.0", "@babel/plugin-transform-destructuring@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.25.9.tgz#966ea2595c498224340883602d3cfd7a0c79cea1" + integrity sha512-WkCGb/3ZxXepmMiX101nnGiU+1CAdut8oHyEOHxkKuS1qKpU2SMXE2uSvfz8PBuLd49V6LEsbtyPhWC7fnkgvQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.8" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-dotall-regex@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.24.7.tgz#5f8bf8a680f2116a7207e16288a5f974ad47a7a0" - integrity sha512-ZOA3W+1RRTSWvyqcMJDLqbchh7U4NRGqwRfFSVbOLS/ePIP4vHB5e8T8eXcuqyN1QkgKyj5wuW0lcS85v4CrSw== +"@babel/plugin-transform-dotall-regex@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.25.9.tgz#bad7945dd07734ca52fe3ad4e872b40ed09bb09a" + integrity sha512-t7ZQ7g5trIgSRYhI9pIJtRl64KHotutUJsh4Eze5l7olJv+mRSg4/MmbZ0tv1eeqRbdvo/+trvJD/Oc5DmW2cA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-create-regexp-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-duplicate-keys@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.24.7.tgz#dd20102897c9a2324e5adfffb67ff3610359a8ee" - integrity sha512-JdYfXyCRihAe46jUIliuL2/s0x0wObgwwiGxw/UbgJBr20gQBThrokO4nYKgWkD7uBaqM7+9x5TU7NkExZJyzw== +"@babel/plugin-transform-duplicate-keys@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.25.9.tgz#8850ddf57dce2aebb4394bb434a7598031059e6d" + integrity sha512-LZxhJ6dvBb/f3x8xwWIuyiAHy56nrRG3PeYTpBkkzkYRRQ6tJLu68lEF5VIqMUZiAV7a8+Tb78nEoMCMcqjXBw== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-dynamic-import@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.24.7.tgz#4d8b95e3bae2b037673091aa09cd33fecd6419f4" - integrity sha512-sc3X26PhZQDb3JhORmakcbvkeInvxz+A8oda99lj7J60QRuPZvNAk9wQlTBS1ZynelDrDmTU4pw1tyc5d5ZMUg== +"@babel/plugin-transform-duplicate-named-capturing-groups-regex@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.25.9.tgz#6f7259b4de127721a08f1e5165b852fcaa696d31" + integrity sha512-0UfuJS0EsXbRvKnwcLjFtJy/Sxc5J5jhLHnFhy7u4zih97Hz6tJkLU+O+FMMrNZrosUPxDi6sYxJ/EA8jDiAog== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/plugin-syntax-dynamic-import" "^7.8.3" + "@babel/helper-create-regexp-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-exponentiation-operator@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.24.7.tgz#b629ee22645f412024297d5245bce425c31f9b0d" - integrity sha512-Rqe/vSc9OYgDajNIK35u7ot+KeCoetqQYFXM4Epf7M7ez3lWlOjrDjrwMei6caCVhfdw+mIKD4cgdGNy5JQotQ== +"@babel/plugin-transform-dynamic-import@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.25.9.tgz#23e917de63ed23c6600c5dd06d94669dce79f7b8" + integrity sha512-GCggjexbmSLaFhqsojeugBpeaRIgWNTcgKVq/0qIteFEqY2A+b9QidYadrWlnbWQUrW5fn+mCvf3tr7OeBFTyg== dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-export-namespace-from@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.24.7.tgz#176d52d8d8ed516aeae7013ee9556d540c53f197" - integrity sha512-v0K9uNYsPL3oXZ/7F9NNIbAj2jv1whUEtyA6aujhekLs56R++JDQuzRcP2/z4WX5Vg/c5lE9uWZA0/iUoFhLTA== +"@babel/plugin-transform-exponentiation-operator@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.25.9.tgz#ece47b70d236c1d99c263a1e22b62dc20a4c8b0f" + integrity sha512-KRhdhlVk2nObA5AYa7QMgTMTVJdfHprfpAk4DjZVtllqRg9qarilstTKEhpVjyt+Npi8ThRyiV8176Am3CodPA== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/plugin-syntax-export-namespace-from" "^7.8.3" + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + +"@babel/plugin-transform-export-namespace-from@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.25.9.tgz#90745fe55053394f554e40584cda81f2c8a402a2" + integrity sha512-2NsEz+CxzJIVOPx2o9UsW1rXLqtChtLoVnwYHHiB04wS5sgn7mrV45fWMBX0Kk+ub9uXytVYfNP2HjbVbCB3Ww== + dependencies: + "@babel/helper-plugin-utils" "^7.25.9" "@babel/plugin-transform-flow-strip-types@^7.20.0", "@babel/plugin-transform-flow-strip-types@^7.21.0": version "7.21.0" @@ -1011,185 +820,177 @@ "@babel/helper-plugin-utils" "^7.20.2" "@babel/plugin-syntax-flow" "^7.18.6" -"@babel/plugin-transform-for-of@^7.0.0", "@babel/plugin-transform-for-of@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.24.7.tgz#f25b33f72df1d8be76399e1b8f3f9d366eb5bc70" - integrity sha512-wo9ogrDG1ITTTBsy46oGiN1dS9A7MROBTcYsfS8DtsImMkHk9JXJ3EWQM6X2SUw4x80uGPlwj0o00Uoc6nEE3g== +"@babel/plugin-transform-for-of@^7.0.0", "@babel/plugin-transform-for-of@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.25.9.tgz#4bdc7d42a213397905d89f02350c5267866d5755" + integrity sha512-LqHxduHoaGELJl2uhImHwRQudhCM50pT46rIBNvtT/Oql3nqiS3wOwP+5ten7NpYSXrrVLgtZU3DZmPtWZo16A== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" -"@babel/plugin-transform-function-name@^7.0.0", "@babel/plugin-transform-function-name@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.24.7.tgz#6d8601fbffe665c894440ab4470bc721dd9131d6" - integrity sha512-U9FcnA821YoILngSmYkW6FjyQe2TyZD5pHt4EVIhmcTkrJw/3KqcrRSxuOo5tFZJi7TE19iDyI1u+weTI7bn2w== +"@babel/plugin-transform-function-name@^7.0.0", "@babel/plugin-transform-function-name@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.25.9.tgz#939d956e68a606661005bfd550c4fc2ef95f7b97" + integrity sha512-8lP+Yxjv14Vc5MuWBpJsoUCd3hD6V9DgBon2FVYL4jJgbnVQ9fTgYmonchzZJOVNgzEgbxp4OwAf6xz6M/14XA== dependencies: - "@babel/helper-compilation-targets" "^7.24.7" - "@babel/helper-function-name" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-compilation-targets" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/traverse" "^7.25.9" -"@babel/plugin-transform-json-strings@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.24.7.tgz#f3e9c37c0a373fee86e36880d45b3664cedaf73a" - integrity sha512-2yFnBGDvRuxAaE/f0vfBKvtnvvqU8tGpMHqMNpTN2oWMKIR3NqFkjaAgGwawhqK/pIN2T3XdjGPdaG0vDhOBGw== +"@babel/plugin-transform-json-strings@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.25.9.tgz#c86db407cb827cded902a90c707d2781aaa89660" + integrity sha512-xoTMk0WXceiiIvsaquQQUaLLXSW1KJ159KP87VilruQm0LNNGxWzahxSS6T6i4Zg3ezp4vA4zuwiNUR53qmQAw== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/plugin-syntax-json-strings" "^7.8.3" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-literals@^7.0.0", "@babel/plugin-transform-literals@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.24.7.tgz#36b505c1e655151a9d7607799a9988fc5467d06c" - integrity sha512-vcwCbb4HDH+hWi8Pqenwnjy+UiklO4Kt1vfspcQYFhJdpthSnW8XvWGyDZWKNVrVbVViI/S7K9PDJZiUmP2fYQ== +"@babel/plugin-transform-literals@^7.0.0", "@babel/plugin-transform-literals@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.25.9.tgz#1a1c6b4d4aa59bc4cad5b6b3a223a0abd685c9de" + integrity sha512-9N7+2lFziW8W9pBl2TzaNht3+pgMIRP74zizeCSrtnSKVdUl8mAjjOP2OOVQAfZ881P2cNjDj1uAMEdeD50nuQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-logical-assignment-operators@^7.24.1", "@babel/plugin-transform-logical-assignment-operators@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.24.7.tgz#a58fb6eda16c9dc8f9ff1c7b1ba6deb7f4694cb0" - integrity sha512-4D2tpwlQ1odXmTEIFWy9ELJcZHqrStlzK/dAOWYyxX3zT0iXQB6banjgeOJQXzEc4S0E0a5A+hahxPaEFYftsw== +"@babel/plugin-transform-logical-assignment-operators@^7.24.1", "@babel/plugin-transform-logical-assignment-operators@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.25.9.tgz#b19441a8c39a2fda0902900b306ea05ae1055db7" + integrity sha512-wI4wRAzGko551Y8eVf6iOY9EouIDTtPb0ByZx+ktDGHwv6bHFimrgJM/2T021txPZ2s4c7bqvHbd+vXG6K948Q== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-member-expression-literals@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.24.7.tgz#3b4454fb0e302e18ba4945ba3246acb1248315df" - integrity sha512-T/hRC1uqrzXMKLQ6UCwMT85S3EvqaBXDGf0FaMf4446Qx9vKwlghvee0+uuZcDUCZU5RuNi4781UQ7R308zzBw== +"@babel/plugin-transform-member-expression-literals@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.25.9.tgz#63dff19763ea64a31f5e6c20957e6a25e41ed5de" + integrity sha512-PYazBVfofCQkkMzh2P6IdIUaCEWni3iYEerAsRWuVd8+jlM1S9S9cz1dF9hIzyoZ8IA3+OwVYIp9v9e+GbgZhA== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-modules-amd@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.7.tgz#65090ed493c4a834976a3ca1cde776e6ccff32d7" - integrity sha512-9+pB1qxV3vs/8Hdmz/CulFB8w2tuu6EB94JZFsjdqxQokwGa9Unap7Bo2gGBGIvPmDIVvQrom7r5m/TCDMURhg== +"@babel/plugin-transform-modules-amd@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.25.9.tgz#49ba478f2295101544abd794486cd3088dddb6c5" + integrity sha512-g5T11tnI36jVClQlMlt4qKDLlWnG5pP9CSM4GhdRciTNMRgkfpo5cR6b4rGIOYPgRRuFAvwjPQ/Yk+ql4dyhbw== dependencies: - "@babel/helper-module-transforms" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-module-transforms" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-modules-commonjs@^7.0.0", "@babel/plugin-transform-modules-commonjs@^7.13.8", "@babel/plugin-transform-modules-commonjs@^7.24.8", "@babel/plugin-transform-modules-commonjs@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.25.7.tgz#173f0c791bb7407c092ce6d77ee90eb3f2d1d2fd" - integrity sha512-L9Gcahi0kKFYXvweO6n0wc3ZG1ChpSFdgG+eV1WYZ3/dGbJK7vvk91FgGgak8YwRgrCuihF8tE/Xg07EkL5COg== +"@babel/plugin-transform-modules-commonjs@^7.0.0", "@babel/plugin-transform-modules-commonjs@^7.13.8", "@babel/plugin-transform-modules-commonjs@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.25.9.tgz#d165c8c569a080baf5467bda88df6425fc060686" + integrity sha512-dwh2Ol1jWwL2MgkCzUSOvfmKElqQcuswAZypBSUsScMXvgdT8Ekq5YA6TtqpTVWH+4903NmboMuH1o9i8Rxlyg== dependencies: - "@babel/helper-module-transforms" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-simple-access" "^7.25.7" + "@babel/helper-module-transforms" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-simple-access" "^7.25.9" -"@babel/plugin-transform-modules-systemjs@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.24.7.tgz#f8012316c5098f6e8dee6ecd58e2bc6f003d0ce7" - integrity sha512-GYQE0tW7YoaN13qFh3O1NCY4MPkUiAH3fiF7UcV/I3ajmDKEdG3l+UOcbAm4zUE3gnvUU+Eni7XrVKo9eO9auw== +"@babel/plugin-transform-modules-systemjs@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.25.9.tgz#8bd1b43836269e3d33307151a114bcf3ba6793f8" + integrity sha512-hyss7iIlH/zLHaehT+xwiymtPOpsiwIIRlCAOwBB04ta5Tt+lNItADdlXw3jAWZ96VJ2jlhl/c+PNIQPKNfvcA== dependencies: - "@babel/helper-hoist-variables" "^7.24.7" - "@babel/helper-module-transforms" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/helper-validator-identifier" "^7.24.7" + "@babel/helper-module-transforms" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-validator-identifier" "^7.25.9" + "@babel/traverse" "^7.25.9" -"@babel/plugin-transform-modules-umd@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.24.7.tgz#edd9f43ec549099620df7df24e7ba13b5c76efc8" - integrity sha512-3aytQvqJ/h9z4g8AsKPLvD4Zqi2qT+L3j7XoFFu1XBlZWEl2/1kWnhmAbxpLgPrHSY0M6UA02jyTiwUVtiKR6A== +"@babel/plugin-transform-modules-umd@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.25.9.tgz#6710079cdd7c694db36529a1e8411e49fcbf14c9" + integrity sha512-bS9MVObUgE7ww36HEfwe6g9WakQ0KF07mQF74uuXdkoziUPfKyu/nIm663kz//e5O1nPInPFx36z7WJmJ4yNEw== dependencies: - "@babel/helper-module-transforms" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-module-transforms" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-named-capturing-groups-regex@^7.0.0", "@babel/plugin-transform-named-capturing-groups-regex@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.24.7.tgz#9042e9b856bc6b3688c0c2e4060e9e10b1460923" - integrity sha512-/jr7h/EWeJtk1U/uz2jlsCioHkZk1JJZVcc8oQsJ1dUlaJD83f4/6Zeh2aHt9BIFokHIsSeDfhUmju0+1GPd6g== +"@babel/plugin-transform-named-capturing-groups-regex@^7.0.0", "@babel/plugin-transform-named-capturing-groups-regex@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.25.9.tgz#454990ae6cc22fd2a0fa60b3a2c6f63a38064e6a" + integrity sha512-oqB6WHdKTGl3q/ItQhpLSnWWOpjUJLsOCLVyeFgeTktkBSCiurvPOsyt93gibI9CmuKvTUEtWmG5VhZD+5T/KA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-create-regexp-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-new-target@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.24.7.tgz#31ff54c4e0555cc549d5816e4ab39241dfb6ab00" - integrity sha512-RNKwfRIXg4Ls/8mMTza5oPF5RkOW8Wy/WgMAp1/F1yZ8mMbtwXW+HDoJiOsagWrAhI5f57Vncrmr9XeT4CVapA== +"@babel/plugin-transform-new-target@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.25.9.tgz#42e61711294b105c248336dcb04b77054ea8becd" + integrity sha512-U/3p8X1yCSoKyUj2eOBIx3FOn6pElFOKvAAGf8HTtItuPyB+ZeOqfn+mvTtg9ZlOAjsPdK3ayQEjqHjU/yLeVQ== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-nullish-coalescing-operator@^7.24.1", "@babel/plugin-transform-nullish-coalescing-operator@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.7.tgz#1de4534c590af9596f53d67f52a92f12db984120" - integrity sha512-Ts7xQVk1OEocqzm8rHMXHlxvsfZ0cEF2yomUqpKENHWMF4zKk175Y4q8H5knJes6PgYad50uuRmt3UJuhBw8pQ== +"@babel/plugin-transform-nullish-coalescing-operator@^7.24.1", "@babel/plugin-transform-nullish-coalescing-operator@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.25.9.tgz#bcb1b0d9e948168102d5f7104375ca21c3266949" + integrity sha512-ENfftpLZw5EItALAD4WsY/KUWvhUlZndm5GC7G3evUsVeSJB6p0pBeLQUnRnBCBx7zV0RKQjR9kCuwrsIrjWog== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-numeric-separator@^7.24.1", "@babel/plugin-transform-numeric-separator@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.24.7.tgz#bea62b538c80605d8a0fac9b40f48e97efa7de63" - integrity sha512-e6q1TiVUzvH9KRvicuxdBTUj4AdKSRwzIyFFnfnezpCfP2/7Qmbb8qbU2j7GODbl4JMkblitCQjKYUaX/qkkwA== +"@babel/plugin-transform-numeric-separator@^7.24.1", "@babel/plugin-transform-numeric-separator@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.25.9.tgz#bfed75866261a8b643468b0ccfd275f2033214a1" + integrity sha512-TlprrJ1GBZ3r6s96Yq8gEQv82s8/5HnCVHtEJScUj90thHQbwe+E5MLhi2bbNHBEJuzrvltXSru+BUxHDoog7Q== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/plugin-syntax-numeric-separator" "^7.10.4" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-object-rest-spread@^7.24.5", "@babel/plugin-transform-object-rest-spread@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.7.tgz#d13a2b93435aeb8a197e115221cab266ba6e55d6" - integrity sha512-4QrHAr0aXQCEFni2q4DqKLD31n2DL+RxcwnNjDFkSG0eNQ/xCavnRkfCUjsyqGC2OviNJvZOF/mQqZBw7i2C5Q== +"@babel/plugin-transform-object-rest-spread@^7.24.5", "@babel/plugin-transform-object-rest-spread@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.25.9.tgz#0203725025074164808bcf1a2cfa90c652c99f18" + integrity sha512-fSaXafEE9CVHPweLYw4J0emp1t8zYTXyzN3UuG+lylqkvYd7RMrsOQ8TYx5RF231be0vqtFC6jnx3UmpJmKBYg== dependencies: - "@babel/helper-compilation-targets" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-transform-parameters" "^7.24.7" + "@babel/helper-compilation-targets" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/plugin-transform-parameters" "^7.25.9" -"@babel/plugin-transform-object-super@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.24.7.tgz#66eeaff7830bba945dd8989b632a40c04ed625be" - integrity sha512-A/vVLwN6lBrMFmMDmPPz0jnE6ZGx7Jq7d6sT/Ev4H65RER6pZ+kczlf1DthF5N0qaPHBsI7UXiE8Zy66nmAovg== +"@babel/plugin-transform-object-super@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.25.9.tgz#385d5de135162933beb4a3d227a2b7e52bb4cf03" + integrity sha512-Kj/Gh+Rw2RNLbCK1VAWj2U48yxxqL2x0k10nPtSdRa0O2xnHXalD0s+o1A6a0W43gJ00ANo38jxkQreckOzv5A== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/helper-replace-supers" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-replace-supers" "^7.25.9" -"@babel/plugin-transform-optional-catch-binding@^7.24.1", "@babel/plugin-transform-optional-catch-binding@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.24.7.tgz#00eabd883d0dd6a60c1c557548785919b6e717b4" - integrity sha512-uLEndKqP5BfBbC/5jTwPxLh9kqPWWgzN/f8w6UwAIirAEqiIVJWWY312X72Eub09g5KF9+Zn7+hT7sDxmhRuKA== +"@babel/plugin-transform-optional-catch-binding@^7.24.1", "@babel/plugin-transform-optional-catch-binding@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.25.9.tgz#10e70d96d52bb1f10c5caaac59ac545ea2ba7ff3" + integrity sha512-qM/6m6hQZzDcZF3onzIhZeDHDO43bkNNlOX0i8n3lR6zLbu0GN2d8qfM/IERJZYauhAHSLHy39NF0Ctdvcid7g== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-optional-chaining@^7.24.5", "@babel/plugin-transform-optional-chaining@^7.24.7", "@babel/plugin-transform-optional-chaining@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.8.tgz#bb02a67b60ff0406085c13d104c99a835cdf365d" - integrity sha512-5cTOLSMs9eypEy8JUVvIKOu6NgvbJMnpG62VpIHrTmROdQ+L5mDAaI40g25k5vXti55JWNX5jCkq3HZxXBQANw== +"@babel/plugin-transform-optional-chaining@^7.24.5", "@babel/plugin-transform-optional-chaining@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.25.9.tgz#e142eb899d26ef715435f201ab6e139541eee7dd" + integrity sha512-6AvV0FsLULbpnXeBjrY4dmWF8F7gf8QnvTEoO/wX/5xm/xE1Xo8oPuD3MPS+KS9f9XBEAWN7X1aWr4z9HdOr7A== dependencies: - "@babel/helper-plugin-utils" "^7.24.8" - "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" - "@babel/plugin-syntax-optional-chaining" "^7.8.3" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" -"@babel/plugin-transform-parameters@^7.0.0", "@babel/plugin-transform-parameters@^7.20.7", "@babel/plugin-transform-parameters@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.7.tgz#5881f0ae21018400e320fc7eb817e529d1254b68" - integrity sha512-yGWW5Rr+sQOhK0Ot8hjDJuxU3XLRQGflvT4lhlSY0DFvdb3TwKaY26CJzHtYllU0vT9j58hc37ndFPsqT1SrzA== +"@babel/plugin-transform-parameters@^7.0.0", "@babel/plugin-transform-parameters@^7.20.7", "@babel/plugin-transform-parameters@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.25.9.tgz#b856842205b3e77e18b7a7a1b94958069c7ba257" + integrity sha512-wzz6MKwpnshBAiRmn4jR8LYz/g8Ksg0o80XmwZDlordjwEk9SxBzTWC7F5ef1jhbrbOW2DJ5J6ayRukrJmnr0g== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-private-methods@^7.22.5", "@babel/plugin-transform-private-methods@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.24.7.tgz#e6318746b2ae70a59d023d5cc1344a2ba7a75f5e" - integrity sha512-COTCOkG2hn4JKGEKBADkA8WNb35TGkkRbI5iT845dB+NyqgO8Hn+ajPbSnIQznneJTa3d30scb6iz/DhH8GsJQ== +"@babel/plugin-transform-private-methods@^7.22.5", "@babel/plugin-transform-private-methods@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.25.9.tgz#847f4139263577526455d7d3223cd8bda51e3b57" + integrity sha512-D/JUozNpQLAPUVusvqMxyvjzllRaF8/nSrP1s2YGQT/W4LHK4xxsMcHjhOGTS01mp9Hda8nswb+FblLdJornQw== dependencies: - "@babel/helper-create-class-features-plugin" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-create-class-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-private-property-in-object@^7.22.11", "@babel/plugin-transform-private-property-in-object@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.24.7.tgz#4eec6bc701288c1fab5f72e6a4bbc9d67faca061" - integrity sha512-9z76mxwnwFxMyxZWEgdgECQglF2Q7cFLm0kMf8pGwt+GSJsY0cONKj/UuO4bOH0w/uAel3ekS4ra5CEAyJRmDA== +"@babel/plugin-transform-private-property-in-object@^7.22.11", "@babel/plugin-transform-private-property-in-object@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.25.9.tgz#9c8b73e64e6cc3cbb2743633885a7dd2c385fe33" + integrity sha512-Evf3kcMqzXA3xfYJmZ9Pg1OvKdtqsDMSWBDzZOPLvHiTt36E75jLDQo5w1gtRU95Q4E5PDttrTf25Fw8d/uWLw== dependencies: - "@babel/helper-annotate-as-pure" "^7.24.7" - "@babel/helper-create-class-features-plugin" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/plugin-syntax-private-property-in-object" "^7.14.5" + "@babel/helper-annotate-as-pure" "^7.25.9" + "@babel/helper-create-class-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" -"@babel/plugin-transform-property-literals@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.24.7.tgz#f0d2ed8380dfbed949c42d4d790266525d63bbdc" - integrity sha512-EMi4MLQSHfd2nrCqQEWxFdha2gBCqU4ZcCng4WBGZ5CJL4bBRW0ptdqqDdeirGZcpALazVVNJqRmsO8/+oNCBA== +"@babel/plugin-transform-property-literals@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.25.9.tgz#d72d588bd88b0dec8b62e36f6fda91cedfe28e3f" + integrity sha512-IvIUeV5KrS/VPavfSM/Iu+RE6llrHrYIKY1yfCzyO/lMXHQ+p7uGhonmGVisv6tSBSVgWzMBohTcvkC9vQcQFA== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.9" "@babel/plugin-transform-react-display-name@^7.0.0": version "7.22.5" @@ -1223,20 +1024,28 @@ "@babel/plugin-syntax-jsx" "^7.22.5" "@babel/types" "^7.22.5" -"@babel/plugin-transform-regenerator@^7.20.0", "@babel/plugin-transform-regenerator@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.24.7.tgz#021562de4534d8b4b1851759fd7af4e05d2c47f8" - integrity sha512-lq3fvXPdimDrlg6LWBoqj+r/DEWgONuwjuOuQCSYgRroXDH/IdM1C0IZf59fL5cHLpjEH/O6opIRBbqv7ELnuA== +"@babel/plugin-transform-regenerator@^7.20.0", "@babel/plugin-transform-regenerator@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.25.9.tgz#03a8a4670d6cebae95305ac6defac81ece77740b" + integrity sha512-vwDcDNsgMPDGP0nMqzahDWE5/MLcX8sv96+wfX7as7LoF/kr97Bo/7fI00lXY4wUXYfVmwIIyG80fGZ1uvt2qg== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-plugin-utils" "^7.25.9" regenerator-transform "^0.15.2" -"@babel/plugin-transform-reserved-words@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.24.7.tgz#80037fe4fbf031fc1125022178ff3938bb3743a4" - integrity sha512-0DUq0pHcPKbjFZCfTss/pGkYMfy3vFWydkUBd9r0GHpIyfs2eCDENvqadMycRS9wZCXR41wucAfJHJmwA0UmoQ== +"@babel/plugin-transform-regexp-modifiers@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.26.0.tgz#2f5837a5b5cd3842a919d8147e9903cc7455b850" + integrity sha512-vN6saax7lrA2yA/Pak3sCxuD6F5InBjn9IcrIKQPjpsLvuHYLVroTxjdlVRHjjBWxKOqIwpTXDkOssYT4BFdRw== dependencies: - "@babel/helper-plugin-utils" "^7.24.7" + "@babel/helper-create-regexp-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + +"@babel/plugin-transform-reserved-words@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.25.9.tgz#0398aed2f1f10ba3f78a93db219b27ef417fb9ce" + integrity sha512-7DL7DKYjn5Su++4RXu8puKZm2XBPHyjWLUidaPEkCUBbE7IPcsrkRHggAOOKydH1dASWdcUBxrkOGNxUv5P3Jg== + dependencies: + "@babel/helper-plugin-utils" "^7.25.9" "@babel/plugin-transform-runtime@^7.0.0", "@babel/plugin-transform-runtime@^7.24.7": version "7.24.7" @@ -1250,169 +1059,157 @@ babel-plugin-polyfill-regenerator "^0.6.1" semver "^6.3.1" -"@babel/plugin-transform-shorthand-properties@^7.0.0", "@babel/plugin-transform-shorthand-properties@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.24.7.tgz#85448c6b996e122fa9e289746140aaa99da64e73" - integrity sha512-KsDsevZMDsigzbA09+vacnLpmPH4aWjcZjXdyFKGzpplxhbeB4wYtury3vglQkg6KM/xEPKt73eCjPPf1PgXBA== - dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - -"@babel/plugin-transform-spread@^7.0.0", "@babel/plugin-transform-spread@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.24.7.tgz#e8a38c0fde7882e0fb8f160378f74bd885cc7bb3" - integrity sha512-x96oO0I09dgMDxJaANcRyD4ellXFLLiWhuwDxKZX5g2rWP1bTPkBSwCYv96VDXVT1bD9aPj8tppr5ITIh8hBng== - dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.24.7" - -"@babel/plugin-transform-sticky-regex@^7.0.0", "@babel/plugin-transform-sticky-regex@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.24.7.tgz#96ae80d7a7e5251f657b5cf18f1ea6bf926f5feb" - integrity sha512-kHPSIJc9v24zEml5geKg9Mjx5ULpfncj0wRpYtxbvKyTtHCYDkVE3aHQ03FrpEo4gEe2vrJJS1Y9CJTaThA52g== - dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - -"@babel/plugin-transform-template-literals@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.24.7.tgz#a05debb4a9072ae8f985bcf77f3f215434c8f8c8" - integrity sha512-AfDTQmClklHCOLxtGoP7HkeMw56k1/bTQjwsfhL6pppo/M4TOBSq+jjBUBLmV/4oeFg4GWMavIl44ZeCtmmZTw== - dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - -"@babel/plugin-transform-typeof-symbol@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.8.tgz#383dab37fb073f5bfe6e60c654caac309f92ba1c" - integrity sha512-adNTUpDCVnmAE58VEqKlAA6ZBlNkMnWD0ZcW76lyNFN3MJniyGFZfNwERVk8Ap56MCnXztmDr19T4mPTztcuaw== - dependencies: - "@babel/helper-plugin-utils" "^7.24.8" - -"@babel/plugin-transform-typescript@^7.25.7", "@babel/plugin-transform-typescript@^7.5.0": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.25.7.tgz#8fc7c3d28ddd36bce45b9b48594129d0e560cfbe" - integrity sha512-VKlgy2vBzj8AmEzunocMun2fF06bsSWV+FvVXohtL6FGve/+L217qhHxRTVGHEDO/YR8IANcjzgJsd04J8ge5Q== - dependencies: - "@babel/helper-annotate-as-pure" "^7.25.7" - "@babel/helper-create-class-features-plugin" "^7.25.7" - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.25.7" - "@babel/plugin-syntax-typescript" "^7.25.7" - -"@babel/plugin-transform-unicode-escapes@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.24.7.tgz#2023a82ced1fb4971630a2e079764502c4148e0e" - integrity sha512-U3ap1gm5+4edc2Q/P+9VrBNhGkfnf+8ZqppY71Bo/pzZmXhhLdqgaUl6cuB07O1+AQJtCLfaOmswiNbSQ9ivhw== - dependencies: - "@babel/helper-plugin-utils" "^7.24.7" - -"@babel/plugin-transform-unicode-property-regex@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.24.7.tgz#9073a4cd13b86ea71c3264659590ac086605bbcd" - integrity sha512-uH2O4OV5M9FZYQrwc7NdVmMxQJOCCzFeYudlZSzUAHRFeOujQefa92E74TQDVskNHCzOXoigEuoyzHDhaEaK5w== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" - -"@babel/plugin-transform-unicode-regex@^7.0.0", "@babel/plugin-transform-unicode-regex@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.24.7.tgz#dfc3d4a51127108099b19817c0963be6a2adf19f" - integrity sha512-hlQ96MBZSAXUq7ltkjtu3FJCCSMx/j629ns3hA3pXnBXjanNP0LHi+JpPeA81zaWgVK1VGH95Xuy7u0RyQ8kMg== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" - -"@babel/plugin-transform-unicode-sets-regex@^7.24.7": - version "7.24.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.24.7.tgz#d40705d67523803a576e29c63cef6e516b858ed9" - integrity sha512-2G8aAvF4wy1w/AGZkemprdGMRg5o6zPNhbHVImRz3lss55TYCBd6xStN19rt8XJHq20sqV0JbyWjOWwQRwV/wg== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.24.7" - "@babel/helper-plugin-utils" "^7.24.7" - -"@babel/preset-env@^7.24.8": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.24.8.tgz#e0db94d7f17d6f0e2564e8d29190bc8cdacec2d1" - integrity sha512-vObvMZB6hNWuDxhSaEPTKCwcqkAIuDtE+bQGn4XMXne1DSLzFVY8Vmj1bm+mUQXYNN8NmaQEO+r8MMbzPr1jBQ== - dependencies: - "@babel/compat-data" "^7.24.8" - "@babel/helper-compilation-targets" "^7.24.8" - "@babel/helper-plugin-utils" "^7.24.8" - "@babel/helper-validator-option" "^7.24.8" - "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.24.7" - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.24.7" - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.24.7" - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.24.7" +"@babel/plugin-transform-shorthand-properties@^7.0.0", "@babel/plugin-transform-shorthand-properties@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.25.9.tgz#bb785e6091f99f826a95f9894fc16fde61c163f2" + integrity sha512-MUv6t0FhO5qHnS/W8XCbHmiRWOphNufpE1IVxhK5kuN3Td9FT1x4rx4K42s3RYdMXCXpfWkGSbCSd0Z64xA7Ng== + dependencies: + "@babel/helper-plugin-utils" "^7.25.9" + +"@babel/plugin-transform-spread@^7.0.0", "@babel/plugin-transform-spread@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.25.9.tgz#24a35153931b4ba3d13cec4a7748c21ab5514ef9" + integrity sha512-oNknIB0TbURU5pqJFVbOOFspVlrpVwo2H1+HUIsVDvp5VauGGDP1ZEvO8Nn5xyMEs3dakajOxlmkNW7kNgSm6A== + dependencies: + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" + +"@babel/plugin-transform-sticky-regex@^7.0.0", "@babel/plugin-transform-sticky-regex@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.25.9.tgz#c7f02b944e986a417817b20ba2c504dfc1453d32" + integrity sha512-WqBUSgeVwucYDP9U/xNRQam7xV8W5Zf+6Eo7T2SRVUFlhRiMNFdFz58u0KZmCVVqs2i7SHgpRnAhzRNmKfi2uA== + dependencies: + "@babel/helper-plugin-utils" "^7.25.9" + +"@babel/plugin-transform-template-literals@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.25.9.tgz#6dbd4a24e8fad024df76d1fac6a03cf413f60fe1" + integrity sha512-o97AE4syN71M/lxrCtQByzphAdlYluKPDBzDVzMmfCobUjjhAryZV0AIpRPrxN0eAkxXO6ZLEScmt+PNhj2OTw== + dependencies: + "@babel/helper-plugin-utils" "^7.25.9" + +"@babel/plugin-transform-typeof-symbol@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.25.9.tgz#224ba48a92869ddbf81f9b4a5f1204bbf5a2bc4b" + integrity sha512-v61XqUMiueJROUv66BVIOi0Fv/CUuZuZMl5NkRoCVxLAnMexZ0A3kMe7vvZ0nulxMuMp0Mk6S5hNh48yki08ZA== + dependencies: + "@babel/helper-plugin-utils" "^7.25.9" + +"@babel/plugin-transform-typescript@^7.25.9", "@babel/plugin-transform-typescript@^7.5.0": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.25.9.tgz#69267905c2b33c2ac6d8fe765e9dc2ddc9df3849" + integrity sha512-7PbZQZP50tzv2KGGnhh82GSyMB01yKY9scIjf1a+GfZCtInOWqUH5+1EBU4t9fyR5Oykkkc9vFTs4OHrhHXljQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.25.9" + "@babel/helper-create-class-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-skip-transparent-expression-wrappers" "^7.25.9" + "@babel/plugin-syntax-typescript" "^7.25.9" + +"@babel/plugin-transform-unicode-escapes@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.25.9.tgz#a75ef3947ce15363fccaa38e2dd9bc70b2788b82" + integrity sha512-s5EDrE6bW97LtxOcGj1Khcx5AaXwiMmi4toFWRDP9/y0Woo6pXC+iyPu/KuhKtfSrNFd7jJB+/fkOtZy6aIC6Q== + dependencies: + "@babel/helper-plugin-utils" "^7.25.9" + +"@babel/plugin-transform-unicode-property-regex@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.25.9.tgz#a901e96f2c1d071b0d1bb5dc0d3c880ce8f53dd3" + integrity sha512-Jt2d8Ga+QwRluxRQ307Vlxa6dMrYEMZCgGxoPR8V52rxPyldHu3hdlHspxaqYmE7oID5+kB+UKUB/eWS+DkkWg== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + +"@babel/plugin-transform-unicode-regex@^7.0.0", "@babel/plugin-transform-unicode-regex@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.25.9.tgz#5eae747fe39eacf13a8bd006a4fb0b5d1fa5e9b1" + integrity sha512-yoxstj7Rg9dlNn9UQxzk4fcNivwv4nUYz7fYXBaKxvw/lnmPuOm/ikoELygbYq68Bls3D/D+NBPHiLwZdZZ4HA== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + +"@babel/plugin-transform-unicode-sets-regex@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.25.9.tgz#65114c17b4ffc20fa5b163c63c70c0d25621fabe" + integrity sha512-8BYqO3GeVNHtx69fdPshN3fnzUNLrWdHhk/icSwigksJGczKSizZ+Z6SBCxTs723Fr5VSNorTIK7a+R2tISvwQ== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + +"@babel/preset-env@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.26.0.tgz#30e5c6bc1bcc54865bff0c5a30f6d4ccdc7fa8b1" + integrity sha512-H84Fxq0CQJNdPFT2DrfnylZ3cf5K43rGfWK4LJGPpjKHiZlk0/RzwEus3PDDZZg+/Er7lCA03MVacueUuXdzfw== + dependencies: + "@babel/compat-data" "^7.26.0" + "@babel/helper-compilation-targets" "^7.25.9" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-validator-option" "^7.25.9" + "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.25.9" + "@babel/plugin-bugfix-safari-class-field-initializer-scope" "^7.25.9" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.25.9" + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.25.9" + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.25.9" "@babel/plugin-proposal-private-property-in-object" "7.21.0-placeholder-for-preset-env.2" - "@babel/plugin-syntax-async-generators" "^7.8.4" - "@babel/plugin-syntax-class-properties" "^7.12.13" - "@babel/plugin-syntax-class-static-block" "^7.14.5" - "@babel/plugin-syntax-dynamic-import" "^7.8.3" - "@babel/plugin-syntax-export-namespace-from" "^7.8.3" - "@babel/plugin-syntax-import-assertions" "^7.24.7" - "@babel/plugin-syntax-import-attributes" "^7.24.7" - "@babel/plugin-syntax-import-meta" "^7.10.4" - "@babel/plugin-syntax-json-strings" "^7.8.3" - "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" - "@babel/plugin-syntax-numeric-separator" "^7.10.4" - "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" - "@babel/plugin-syntax-optional-chaining" "^7.8.3" - "@babel/plugin-syntax-private-property-in-object" "^7.14.5" - "@babel/plugin-syntax-top-level-await" "^7.14.5" + "@babel/plugin-syntax-import-assertions" "^7.26.0" + "@babel/plugin-syntax-import-attributes" "^7.26.0" "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6" - "@babel/plugin-transform-arrow-functions" "^7.24.7" - "@babel/plugin-transform-async-generator-functions" "^7.24.7" - "@babel/plugin-transform-async-to-generator" "^7.24.7" - "@babel/plugin-transform-block-scoped-functions" "^7.24.7" - "@babel/plugin-transform-block-scoping" "^7.24.7" - "@babel/plugin-transform-class-properties" "^7.24.7" - "@babel/plugin-transform-class-static-block" "^7.24.7" - "@babel/plugin-transform-classes" "^7.24.8" - "@babel/plugin-transform-computed-properties" "^7.24.7" - "@babel/plugin-transform-destructuring" "^7.24.8" - "@babel/plugin-transform-dotall-regex" "^7.24.7" - "@babel/plugin-transform-duplicate-keys" "^7.24.7" - "@babel/plugin-transform-dynamic-import" "^7.24.7" - "@babel/plugin-transform-exponentiation-operator" "^7.24.7" - "@babel/plugin-transform-export-namespace-from" "^7.24.7" - "@babel/plugin-transform-for-of" "^7.24.7" - "@babel/plugin-transform-function-name" "^7.24.7" - "@babel/plugin-transform-json-strings" "^7.24.7" - "@babel/plugin-transform-literals" "^7.24.7" - "@babel/plugin-transform-logical-assignment-operators" "^7.24.7" - "@babel/plugin-transform-member-expression-literals" "^7.24.7" - "@babel/plugin-transform-modules-amd" "^7.24.7" - "@babel/plugin-transform-modules-commonjs" "^7.24.8" - "@babel/plugin-transform-modules-systemjs" "^7.24.7" - "@babel/plugin-transform-modules-umd" "^7.24.7" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.24.7" - "@babel/plugin-transform-new-target" "^7.24.7" - "@babel/plugin-transform-nullish-coalescing-operator" "^7.24.7" - "@babel/plugin-transform-numeric-separator" "^7.24.7" - "@babel/plugin-transform-object-rest-spread" "^7.24.7" - "@babel/plugin-transform-object-super" "^7.24.7" - "@babel/plugin-transform-optional-catch-binding" "^7.24.7" - "@babel/plugin-transform-optional-chaining" "^7.24.8" - "@babel/plugin-transform-parameters" "^7.24.7" - "@babel/plugin-transform-private-methods" "^7.24.7" - "@babel/plugin-transform-private-property-in-object" "^7.24.7" - "@babel/plugin-transform-property-literals" "^7.24.7" - "@babel/plugin-transform-regenerator" "^7.24.7" - "@babel/plugin-transform-reserved-words" "^7.24.7" - "@babel/plugin-transform-shorthand-properties" "^7.24.7" - "@babel/plugin-transform-spread" "^7.24.7" - "@babel/plugin-transform-sticky-regex" "^7.24.7" - "@babel/plugin-transform-template-literals" "^7.24.7" - "@babel/plugin-transform-typeof-symbol" "^7.24.8" - "@babel/plugin-transform-unicode-escapes" "^7.24.7" - "@babel/plugin-transform-unicode-property-regex" "^7.24.7" - "@babel/plugin-transform-unicode-regex" "^7.24.7" - "@babel/plugin-transform-unicode-sets-regex" "^7.24.7" + "@babel/plugin-transform-arrow-functions" "^7.25.9" + "@babel/plugin-transform-async-generator-functions" "^7.25.9" + "@babel/plugin-transform-async-to-generator" "^7.25.9" + "@babel/plugin-transform-block-scoped-functions" "^7.25.9" + "@babel/plugin-transform-block-scoping" "^7.25.9" + "@babel/plugin-transform-class-properties" "^7.25.9" + "@babel/plugin-transform-class-static-block" "^7.26.0" + "@babel/plugin-transform-classes" "^7.25.9" + "@babel/plugin-transform-computed-properties" "^7.25.9" + "@babel/plugin-transform-destructuring" "^7.25.9" + "@babel/plugin-transform-dotall-regex" "^7.25.9" + "@babel/plugin-transform-duplicate-keys" "^7.25.9" + "@babel/plugin-transform-duplicate-named-capturing-groups-regex" "^7.25.9" + "@babel/plugin-transform-dynamic-import" "^7.25.9" + "@babel/plugin-transform-exponentiation-operator" "^7.25.9" + "@babel/plugin-transform-export-namespace-from" "^7.25.9" + "@babel/plugin-transform-for-of" "^7.25.9" + "@babel/plugin-transform-function-name" "^7.25.9" + "@babel/plugin-transform-json-strings" "^7.25.9" + "@babel/plugin-transform-literals" "^7.25.9" + "@babel/plugin-transform-logical-assignment-operators" "^7.25.9" + "@babel/plugin-transform-member-expression-literals" "^7.25.9" + "@babel/plugin-transform-modules-amd" "^7.25.9" + "@babel/plugin-transform-modules-commonjs" "^7.25.9" + "@babel/plugin-transform-modules-systemjs" "^7.25.9" + "@babel/plugin-transform-modules-umd" "^7.25.9" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.25.9" + "@babel/plugin-transform-new-target" "^7.25.9" + "@babel/plugin-transform-nullish-coalescing-operator" "^7.25.9" + "@babel/plugin-transform-numeric-separator" "^7.25.9" + "@babel/plugin-transform-object-rest-spread" "^7.25.9" + "@babel/plugin-transform-object-super" "^7.25.9" + "@babel/plugin-transform-optional-catch-binding" "^7.25.9" + "@babel/plugin-transform-optional-chaining" "^7.25.9" + "@babel/plugin-transform-parameters" "^7.25.9" + "@babel/plugin-transform-private-methods" "^7.25.9" + "@babel/plugin-transform-private-property-in-object" "^7.25.9" + "@babel/plugin-transform-property-literals" "^7.25.9" + "@babel/plugin-transform-regenerator" "^7.25.9" + "@babel/plugin-transform-regexp-modifiers" "^7.26.0" + "@babel/plugin-transform-reserved-words" "^7.25.9" + "@babel/plugin-transform-shorthand-properties" "^7.25.9" + "@babel/plugin-transform-spread" "^7.25.9" + "@babel/plugin-transform-sticky-regex" "^7.25.9" + "@babel/plugin-transform-template-literals" "^7.25.9" + "@babel/plugin-transform-typeof-symbol" "^7.25.9" + "@babel/plugin-transform-unicode-escapes" "^7.25.9" + "@babel/plugin-transform-unicode-property-regex" "^7.25.9" + "@babel/plugin-transform-unicode-regex" "^7.25.9" + "@babel/plugin-transform-unicode-sets-regex" "^7.25.9" "@babel/preset-modules" "0.1.6-no-external-plugins" babel-plugin-polyfill-corejs2 "^0.4.10" - babel-plugin-polyfill-corejs3 "^0.10.4" + babel-plugin-polyfill-corejs3 "^0.10.6" babel-plugin-polyfill-regenerator "^0.6.1" - core-js-compat "^3.37.1" + core-js-compat "^3.38.1" semver "^6.3.1" "@babel/preset-flow@^7.13.13": @@ -1433,16 +1230,16 @@ "@babel/types" "^7.4.4" esutils "^2.0.2" -"@babel/preset-typescript@^7.13.0", "@babel/preset-typescript@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.25.7.tgz#43c5b68eccb856ae5b52274b77b1c3c413cde1b7" - integrity sha512-rkkpaXJZOFN45Fb+Gki0c+KMIglk4+zZXOoMJuyEK8y8Kkc8Jd3BDmP7qPsz0zQMJj+UD7EprF+AqAXcILnexw== +"@babel/preset-typescript@^7.13.0", "@babel/preset-typescript@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.26.0.tgz#4a570f1b8d104a242d923957ffa1eaff142a106d" + integrity sha512-NMk1IGZ5I/oHhoXEElcm+xUnL/szL6xflkFZmoEU9xj1qSJXpiS7rsspYo92B4DRCDvZn2erT5LdsCeXAKNCkg== dependencies: - "@babel/helper-plugin-utils" "^7.25.7" - "@babel/helper-validator-option" "^7.25.7" - "@babel/plugin-syntax-jsx" "^7.25.7" - "@babel/plugin-transform-modules-commonjs" "^7.25.7" - "@babel/plugin-transform-typescript" "^7.25.7" + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/helper-validator-option" "^7.25.9" + "@babel/plugin-syntax-jsx" "^7.25.9" + "@babel/plugin-transform-modules-commonjs" "^7.25.9" + "@babel/plugin-transform-typescript" "^7.25.9" "@babel/register@^7.13.16": version "7.21.0" @@ -1460,21 +1257,21 @@ resolved "https://registry.yarnpkg.com/@babel/regjsgen/-/regjsgen-0.8.0.tgz#f0ba69b075e1f05fb2825b7fad991e7adbb18310" integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== -"@babel/runtime@^7.0.0", "@babel/runtime@^7.21.0", "@babel/runtime@^7.23.2", "@babel/runtime@^7.23.9", "@babel/runtime@^7.24.8", "@babel/runtime@^7.8.4", "@babel/runtime@^7.9.2": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.24.8.tgz#5d958c3827b13cc6d05e038c07fb2e5e3420d82e" - integrity sha512-5F7SDGs1T72ZczbRwbGO9lQi0NLjQxzl6i4lJxLxfW9U5UluCSyEJeniWvnhl3/euNiqQVbo8zruhsDfid0esA== +"@babel/runtime@^7.0.0", "@babel/runtime@^7.21.0", "@babel/runtime@^7.23.2", "@babel/runtime@^7.23.9", "@babel/runtime@^7.24.8", "@babel/runtime@^7.26.0", "@babel/runtime@^7.8.4", "@babel/runtime@^7.9.2": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.26.0.tgz#8600c2f595f277c60815256418b85356a65173c1" + integrity sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw== dependencies: regenerator-runtime "^0.14.0" -"@babel/template@^7.0.0", "@babel/template@^7.18.10", "@babel/template@^7.20.7", "@babel/template@^7.22.15", "@babel/template@^7.24.7", "@babel/template@^7.25.0", "@babel/template@^7.25.7", "@babel/template@^7.3.3": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.25.7.tgz#27f69ce382855d915b14ab0fe5fb4cbf88fa0769" - integrity sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA== +"@babel/template@^7.0.0", "@babel/template@^7.18.10", "@babel/template@^7.20.7", "@babel/template@^7.22.15", "@babel/template@^7.25.9", "@babel/template@^7.3.3": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.25.9.tgz#ecb62d81a8a6f5dc5fe8abfc3901fc52ddf15016" + integrity sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg== dependencies: - "@babel/code-frame" "^7.25.7" - "@babel/parser" "^7.25.7" - "@babel/types" "^7.25.7" + "@babel/code-frame" "^7.25.9" + "@babel/parser" "^7.25.9" + "@babel/types" "^7.25.9" "@babel/traverse@7.23.2": version "7.23.2" @@ -1492,45 +1289,16 @@ debug "^4.1.0" globals "^11.1.0" -"@babel/traverse@^7.20.0", "@babel/traverse@^7.20.5", "@babel/traverse@^7.21.5", "@babel/traverse@^7.24.7", "@babel/traverse@^7.24.8", "@babel/traverse@^7.4.5": - version "7.24.8" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.8.tgz#6c14ed5232b7549df3371d820fbd9abfcd7dfab7" - integrity sha512-t0P1xxAPzEDcEPmjprAQq19NWum4K0EQPjMwZQZbHt+GiZqvjCHjj755Weq1YRPVzBI+3zSfvScfpnuIecVFJQ== - dependencies: - "@babel/code-frame" "^7.24.7" - "@babel/generator" "^7.24.8" - "@babel/helper-environment-visitor" "^7.24.7" - "@babel/helper-function-name" "^7.24.7" - "@babel/helper-hoist-variables" "^7.24.7" - "@babel/helper-split-export-declaration" "^7.24.7" - "@babel/parser" "^7.24.8" - "@babel/types" "^7.24.8" - debug "^4.3.1" - globals "^11.1.0" - -"@babel/traverse@^7.25.0": - version "7.25.3" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.3.tgz#f1b901951c83eda2f3e29450ce92743783373490" - integrity sha512-HefgyP1x754oGCsKmV5reSmtV7IXj/kpaE1XYY+D9G5PvKKoFfSbiS4M77MdjuwlZKDIKFCffq9rPU+H/s3ZdQ== +"@babel/traverse@^7.20.0", "@babel/traverse@^7.20.5", "@babel/traverse@^7.21.5", "@babel/traverse@^7.24.7", "@babel/traverse@^7.25.9", "@babel/traverse@^7.4.5": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.9.tgz#a50f8fe49e7f69f53de5bea7e413cd35c5e13c84" + integrity sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw== dependencies: - "@babel/code-frame" "^7.24.7" - "@babel/generator" "^7.25.0" - "@babel/parser" "^7.25.3" - "@babel/template" "^7.25.0" - "@babel/types" "^7.25.2" - debug "^4.3.1" - globals "^11.1.0" - -"@babel/traverse@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.7.tgz#83e367619be1cab8e4f2892ef30ba04c26a40fa8" - integrity sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg== - dependencies: - "@babel/code-frame" "^7.25.7" - "@babel/generator" "^7.25.7" - "@babel/parser" "^7.25.7" - "@babel/template" "^7.25.7" - "@babel/types" "^7.25.7" + "@babel/code-frame" "^7.25.9" + "@babel/generator" "^7.25.9" + "@babel/parser" "^7.25.9" + "@babel/template" "^7.25.9" + "@babel/types" "^7.25.9" debug "^4.3.1" globals "^11.1.0" @@ -1542,32 +1310,13 @@ "@babel/helper-validator-identifier" "^7.16.7" to-fast-properties "^2.0.0" -"@babel/types@^7.0.0", "@babel/types@^7.17.0", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.20.0", "@babel/types@^7.20.5", "@babel/types@^7.21.0", "@babel/types@^7.21.3", "@babel/types@^7.21.5", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.24.7", "@babel/types@^7.24.8", "@babel/types@^7.24.9", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": - version "7.24.9" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.9.tgz#228ce953d7b0d16646e755acf204f4cf3d08cc73" - integrity sha512-xm8XrMKz0IlUdocVbYJe0Z9xEgidU7msskG8BbhnTPK/HZ2z/7FP7ykqPgrUH+C+r414mNfNWam1f2vqOjqjYQ== - dependencies: - "@babel/helper-string-parser" "^7.24.8" - "@babel/helper-validator-identifier" "^7.24.7" - to-fast-properties "^2.0.0" - -"@babel/types@^7.25.0", "@babel/types@^7.25.2": - version "7.25.2" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.25.2.tgz#55fb231f7dc958cd69ea141a4c2997e819646125" - integrity sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q== +"@babel/types@^7.0.0", "@babel/types@^7.17.0", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.20.0", "@babel/types@^7.20.5", "@babel/types@^7.21.0", "@babel/types@^7.21.3", "@babel/types@^7.21.5", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.24.7", "@babel/types@^7.25.9", "@babel/types@^7.26.0", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.26.0.tgz#deabd08d6b753bc8e0f198f8709fb575e31774ff" + integrity sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA== dependencies: - "@babel/helper-string-parser" "^7.24.8" - "@babel/helper-validator-identifier" "^7.24.7" - to-fast-properties "^2.0.0" - -"@babel/types@^7.25.7": - version "7.25.7" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.25.7.tgz#1b7725c1d3a59f328cb700ce704c46371e6eef9b" - integrity sha512-vwIVdXG+j+FOpkwqHRcBgHLYNL7XMkufrlaFvL9o6Ai9sJn9+PdyIL5qa0XzTZw084c+u9LOls53eoZWP/W5WQ== - dependencies: - "@babel/helper-string-parser" "^7.25.7" - "@babel/helper-validator-identifier" "^7.25.7" - to-fast-properties "^2.0.0" + "@babel/helper-string-parser" "^7.25.9" + "@babel/helper-validator-identifier" "^7.25.9" "@bcoe/v8-coverage@^0.2.3": version "0.2.3" @@ -3794,13 +3543,13 @@ babel-plugin-polyfill-corejs2@^0.4.10: "@babel/helper-define-polyfill-provider" "^0.6.1" semver "^6.3.1" -babel-plugin-polyfill-corejs3@^0.10.1, babel-plugin-polyfill-corejs3@^0.10.4: - version "0.10.4" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.4.tgz#789ac82405ad664c20476d0233b485281deb9c77" - integrity sha512-25J6I8NGfa5YkCDogHRID3fVCadIR8/pGl1/spvCkzb6lVn6SR3ojpx9nOn9iEBcUsjY24AmdKm5khcfKdylcg== +babel-plugin-polyfill-corejs3@^0.10.1, babel-plugin-polyfill-corejs3@^0.10.6: + version "0.10.6" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.6.tgz#2deda57caef50f59c525aeb4964d3b2f867710c7" + integrity sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA== dependencies: - "@babel/helper-define-polyfill-provider" "^0.6.1" - core-js-compat "^3.36.1" + "@babel/helper-define-polyfill-provider" "^0.6.2" + core-js-compat "^3.38.0" babel-plugin-polyfill-regenerator@^0.6.1: version "0.6.1" @@ -3932,25 +3681,15 @@ browser-process-hrtime@^1.0.0: resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== -browserslist@^4.23.0: - version "4.23.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.0.tgz#8f3acc2bbe73af7213399430890f86c63a5674ab" - integrity sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ== - dependencies: - caniuse-lite "^1.0.30001587" - electron-to-chromium "^1.4.668" - node-releases "^2.0.14" - update-browserslist-db "^1.0.13" - -browserslist@^4.23.1: - version "4.23.2" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.2.tgz#244fe803641f1c19c28c48c4b6ec9736eb3d32ed" - integrity sha512-qkqSyistMYdxAcw+CzbZwlBy8AGmS/eEWs+sEV5TnLRGDOL+C5M2EnH6tlZyg0YoAxGJAFKh61En9BR941GnHA== +browserslist@^4.23.3, browserslist@^4.24.0: + version "4.24.2" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.24.2.tgz#f5845bc91069dbd55ee89faf9822e1d885d16580" + integrity sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg== dependencies: - caniuse-lite "^1.0.30001640" - electron-to-chromium "^1.4.820" - node-releases "^2.0.14" - update-browserslist-db "^1.1.0" + caniuse-lite "^1.0.30001669" + electron-to-chromium "^1.5.41" + node-releases "^2.0.18" + update-browserslist-db "^1.1.1" bs-logger@^0.2.6: version "0.2.6" @@ -4128,17 +3867,12 @@ camelize@^1.0.0: resolved "https://registry.yarnpkg.com/camelize/-/camelize-1.0.1.tgz#89b7e16884056331a35d6b5ad064332c91daa6c3" integrity sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ== -caniuse-lite@^1.0.30001587: - version "1.0.30001600" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001600.tgz#93a3ee17a35aa6a9f0c6ef1b2ab49507d1ab9079" - integrity sha512-+2S9/2JFhYmYaDpZvo0lKkfvuKIglrx68MwOBqMGHhQsNkLjB5xtc/TGoEPs+MxjSyN/72qer2g97nzR641mOQ== - -caniuse-lite@^1.0.30001640: - version "1.0.30001642" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001642.tgz#6aa6610eb24067c246d30c57f055a9d0a7f8d05f" - integrity sha512-3XQ0DoRgLijXJErLSl+bLnJ+Et4KqV1PY6JJBGAFlsNsz31zeAIncyeZfLCabHK/jtSh+671RM9YMldxjUPZtA== +caniuse-lite@^1.0.30001669: + version "1.0.30001673" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001673.tgz#5aa291557af1c71340e809987367410aab7a5a9e" + integrity sha512-WTrjUCSMp3LYX0nE12ECkV0a+e6LC85E0Auz75555/qr78Oc8YWhEPNfDd6SHdtlCMSzqtuXY0uyEMNRcsKpKw== -chalk@^2.0.1, chalk@^2.4.2: +chalk@^2.0.1: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -4484,12 +4218,12 @@ convert-source-map@^2.0.0: resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== -core-js-compat@^3.36.1, core-js-compat@^3.37.1: - version "3.37.1" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.37.1.tgz#c844310c7852f4bdf49b8d339730b97e17ff09ee" - integrity sha512-9TNiImhKvQqSUkOvk/mMRZzOANTiEVC7WaBNhHcKM7x+/5E1l5NvsysR19zuDQScE8k+kfQXWRN3AtS/eOSHpg== +core-js-compat@^3.38.0, core-js-compat@^3.38.1: + version "3.38.1" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.38.1.tgz#2bc7a298746ca5a7bcb9c164bcb120f2ebc09a09" + integrity sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw== dependencies: - browserslist "^4.23.0" + browserslist "^4.23.3" core-util-is@~1.0.0: version "1.0.3" @@ -5054,15 +4788,10 @@ ejs@^3.1.10: dependencies: jake "^10.8.5" -electron-to-chromium@^1.4.668: - version "1.4.715" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.715.tgz#bb16bcf2a3537962fccfa746b5c98c5f7404ff46" - integrity sha512-XzWNH4ZSa9BwVUQSDorPWAUQ5WGuYz7zJUNpNif40zFCiCl20t8zgylmreNmn26h5kiyw2lg7RfTmeMBsDklqg== - -electron-to-chromium@^1.4.820: - version "1.4.827" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.827.tgz#76068ed1c71dd3963e1befc8ae815004b2da6a02" - integrity sha512-VY+J0e4SFcNfQy19MEoMdaIcZLmDCprqvBtkii1WTCTQHpRvf5N8+3kTYCgL/PcntvwQvmMJWTuDPsq+IlhWKQ== +electron-to-chromium@^1.5.41: + version "1.5.47" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.47.tgz#ef0751bc19b28be8ee44cd8405309de3bf3b20c7" + integrity sha512-zS5Yer0MOYw4rtK2iq43cJagHZ8sXN0jDHDKzB+86gSBSAI4v07S97mcq+Gs2vclAxSh1j7vOAHxSVgduiiuVQ== electron@^23.1.2, electron@^25.8.1: version "25.9.8" @@ -5464,10 +5193,10 @@ escalade@^3.1.1: resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== -escalade@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" - integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== +escalade@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5" + integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== escape-html@~1.0.3: version "1.0.3" @@ -7761,7 +7490,7 @@ jsesc@^2.5.1: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== -jsesc@^3.0.2: +jsesc@^3.0.2, jsesc@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.0.2.tgz#bb8b09a6597ba426425f2e4a07245c3d00b9343e" integrity sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g== @@ -8672,10 +8401,10 @@ node-ipc@9.2.1: js-message "1.0.7" js-queue "2.0.2" -node-releases@^2.0.14: - version "2.0.14" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" - integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw== +node-releases@^2.0.18: + version "2.0.18" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.18.tgz#f010e8d35e2fe8d6b2944f03f70213ecedc4ca3f" + integrity sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g== node-stream-zip@^1.9.1: version "1.15.0" @@ -9137,11 +8866,16 @@ pend@~1.2.0: resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" integrity sha1-elfrVQpng/kRUzH89GY9XI4AelA= -picocolors@^1.0.0, picocolors@^1.0.1: +picocolors@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.1.tgz#a8ad579b571952f0e5d25892de5445bcfe25aaa1" integrity sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew== +picocolors@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" + integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== + picomatch@^2.0.4, picomatch@^2.2.3, picomatch@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" @@ -9786,6 +9520,13 @@ regenerate-unicode-properties@^10.1.0: dependencies: regenerate "^1.4.2" +regenerate-unicode-properties@^10.2.0: + version "10.2.0" + resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.0.tgz#626e39df8c372338ea9b8028d1f99dc3fd9c3db0" + integrity sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA== + dependencies: + regenerate "^1.4.2" + regenerate@^1.4.2: version "1.4.2" resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" @@ -9839,6 +9580,18 @@ regexpu-core@^5.3.1: unicode-match-property-ecmascript "^2.0.0" unicode-match-property-value-ecmascript "^2.1.0" +regexpu-core@^6.1.1: + version "6.1.1" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-6.1.1.tgz#b469b245594cb2d088ceebc6369dceb8c00becac" + integrity sha512-k67Nb9jvwJcJmVpw0jPttR1/zVfnKf8Km0IPatrU/zJ5XeG3+Slx0xLXs9HByJSzXzrlz5EDvN6yLNMDc2qdnw== + dependencies: + regenerate "^1.4.2" + regenerate-unicode-properties "^10.2.0" + regjsgen "^0.8.0" + regjsparser "^0.11.0" + unicode-match-property-ecmascript "^2.0.0" + unicode-match-property-value-ecmascript "^2.1.0" + registry-auth-token@^3.0.1: version "3.4.0" resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-3.4.0.tgz#d7446815433f5d5ed6431cd5dca21048f66b397e" @@ -9854,6 +9607,18 @@ registry-url@^3.0.3: dependencies: rc "^1.0.1" +regjsgen@^0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.8.0.tgz#df23ff26e0c5b300a6470cad160a9d090c3a37ab" + integrity sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q== + +regjsparser@^0.11.0: + version "0.11.2" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.11.2.tgz#7404ad42be00226d72bcf1f003f1f441861913d8" + integrity sha512-3OGZZ4HoLJkkAZx/48mTXJNlmqTGOzc0o9OWQPuWpkOlXXPbyN6OafCcoXUnBqE2D3f/T5L+pWc1kdEmnfnRsA== + dependencies: + jsesc "~3.0.2" + regjsparser@^0.9.1: version "0.9.1" resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.9.1.tgz#272d05aa10c7c1f67095b1ff0addae8442fc5709" @@ -11312,21 +11077,13 @@ unpipe@~1.0.0: resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== -update-browserslist-db@^1.0.13: - version "1.0.13" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz#3c5e4f5c083661bd38ef64b6328c26ed6c8248c4" - integrity sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg== - dependencies: - escalade "^3.1.1" - picocolors "^1.0.0" - -update-browserslist-db@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz#7ca61c0d8650766090728046e416a8cde682859e" - integrity sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ== +update-browserslist-db@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz#80846fba1d79e82547fb661f8d141e0945755fe5" + integrity sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A== dependencies: - escalade "^3.1.2" - picocolors "^1.0.1" + escalade "^3.2.0" + picocolors "^1.1.0" update-notifier@^2.1.0: version "2.5.0" From 199b66ad35d791273ad37dd7425c923dd355f1f1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 29 Oct 2024 10:07:43 -0400 Subject: [PATCH 06/36] Bump eslint-plugin-react from 7.37.1 to 7.37.2 in /VAMobile in the eslint group (#10046) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- VAMobile/package.json | 2 +- VAMobile/yarn.lock | 38 +++++++++++++++++++++++--------------- 2 files changed, 24 insertions(+), 16 deletions(-) diff --git a/VAMobile/package.json b/VAMobile/package.json index 57012796e12..c7af8b00205 100644 --- a/VAMobile/package.json +++ b/VAMobile/package.json @@ -124,7 +124,7 @@ "eslint-config-prettier": "^9.1.0", "eslint-plugin-jest": "^27.9.0", "eslint-plugin-prettier": "^5.2.1", - "eslint-plugin-react": "^7.37.1", + "eslint-plugin-react": "^7.37.2", "eslint-plugin-react-hooks": "^4.6.2", "eslint-plugin-react-native": "^4.1.0", "husky": "^9.1.6", diff --git a/VAMobile/yarn.lock b/VAMobile/yarn.lock index 17494072462..4488b540b49 100644 --- a/VAMobile/yarn.lock +++ b/VAMobile/yarn.lock @@ -5115,10 +5115,10 @@ es-errors@^1.2.1, es-errors@^1.3.0: resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== -es-iterator-helpers@^1.0.19: - version "1.0.19" - resolved "https://registry.yarnpkg.com/es-iterator-helpers/-/es-iterator-helpers-1.0.19.tgz#117003d0e5fec237b4b5c08aded722e0c6d50ca8" - integrity sha512-zoMwbCcH5hwUkKJkT8kDIBZSz9I6mVG//+lDCinLCGov4+r7NIy0ld8o03M0cJxl2spVf6ESYVS6/gpIfq1FFw== +es-iterator-helpers@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/es-iterator-helpers/-/es-iterator-helpers-1.1.0.tgz#f6d745d342aea214fe09497e7152170dc333a7a6" + integrity sha512-/SurEfycdyssORP/E+bj4sEu1CWw4EmLDsHynHwSXQ7utgbrMRWW195pTrCjFgFCddf/UkYm3oqKPRq5i8bJbw== dependencies: call-bind "^1.0.7" define-properties "^1.2.1" @@ -5127,12 +5127,12 @@ es-iterator-helpers@^1.0.19: es-set-tostringtag "^2.0.3" function-bind "^1.1.2" get-intrinsic "^1.2.4" - globalthis "^1.0.3" + globalthis "^1.0.4" has-property-descriptors "^1.0.2" has-proto "^1.0.3" has-symbols "^1.0.3" internal-slot "^1.0.7" - iterator.prototype "^1.1.2" + iterator.prototype "^1.1.3" safe-array-concat "^1.1.2" es-object-atoms@^1.0.0: @@ -5293,17 +5293,17 @@ eslint-plugin-react-native@^4.0.0, eslint-plugin-react-native@^4.1.0: dependencies: eslint-plugin-react-native-globals "^0.1.1" -eslint-plugin-react@^7.30.1, eslint-plugin-react@^7.37.1: - version "7.37.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.37.1.tgz#56493d7d69174d0d828bc83afeffe96903fdadbd" - integrity sha512-xwTnwDqzbDRA8uJ7BMxPs/EXRB3i8ZfnOIp8BsxEQkT0nHPp+WWceqGgo6rKb9ctNi8GJLDT4Go5HAWELa/WMg== +eslint-plugin-react@^7.30.1, eslint-plugin-react@^7.37.2: + version "7.37.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.37.2.tgz#cd0935987876ba2900df2f58339f6d92305acc7a" + integrity sha512-EsTAnj9fLVr/GZleBLFbj/sSuXeWmp1eXIN60ceYnZveqEaUCyW4X+Vh4WTdUhCkW4xutXYqTXCUSyqD4rB75w== dependencies: array-includes "^3.1.8" array.prototype.findlast "^1.2.5" array.prototype.flatmap "^1.3.2" array.prototype.tosorted "^1.1.4" doctrine "^2.1.0" - es-iterator-helpers "^1.0.19" + es-iterator-helpers "^1.1.0" estraverse "^5.3.0" hasown "^2.0.2" jsx-ast-utils "^2.4.1 || ^3.0.0" @@ -6074,6 +6074,14 @@ globalthis@^1.0.3: dependencies: define-properties "^1.1.3" +globalthis@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.4.tgz#7430ed3a975d97bfb59bcce41f5cabbafa651236" + integrity sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ== + dependencies: + define-properties "^1.2.1" + gopd "^1.0.1" + globby@^11.1.0: version "11.1.0" resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" @@ -6905,10 +6913,10 @@ istanbul-reports@^3.1.3: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" -iterator.prototype@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/iterator.prototype/-/iterator.prototype-1.1.2.tgz#5e29c8924f01916cb9335f1ff80619dcff22b0c0" - integrity sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w== +iterator.prototype@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/iterator.prototype/-/iterator.prototype-1.1.3.tgz#016c2abe0be3bbdb8319852884f60908ac62bf9c" + integrity sha512-FW5iMbeQ6rBGm/oKgzq2aW4KvAGpxPzYES8N4g4xNXUKpL1mclMvOe+76AcLDTvD+Ze+sOpVhgdAQEKF4L9iGQ== dependencies: define-properties "^1.2.1" get-intrinsic "^1.2.1" From 38953d684188fb9783468925b8c572ed7313cc1b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 29 Oct 2024 10:46:02 -0400 Subject: [PATCH 07/36] Bump @testing-library/react-native from 12.7.2 to 12.8.0 in /VAMobile in the unit-tests group (#10047) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- VAMobile/package.json | 2 +- VAMobile/yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/VAMobile/package.json b/VAMobile/package.json index c7af8b00205..55706892da5 100644 --- a/VAMobile/package.json +++ b/VAMobile/package.json @@ -101,7 +101,7 @@ "@react-native/metro-config": "^0.75.3", "@react-native/typescript-config": "0.76.0", "@testing-library/jest-dom": "^6.6.2", - "@testing-library/react-native": "^12.7.2", + "@testing-library/react-native": "^12.8.0", "@trivago/prettier-plugin-sort-imports": "^4.3.0", "@tsconfig/react-native": "^3.0.5", "@types/detox": "^18.1.0", diff --git a/VAMobile/yarn.lock b/VAMobile/yarn.lock index 4488b540b49..465e30e606e 100644 --- a/VAMobile/yarn.lock +++ b/VAMobile/yarn.lock @@ -2558,10 +2558,10 @@ lodash "^4.17.21" redent "^3.0.0" -"@testing-library/react-native@^12.7.2": - version "12.7.2" - resolved "https://registry.yarnpkg.com/@testing-library/react-native/-/react-native-12.7.2.tgz#d9dc62979264902c22ac9154eee0dc10914d1518" - integrity sha512-fSUIruOUFcuwssC8+m9H+9ib7P/+JrtIszHS4eZ6O9e4FjpjS3m24UnkJXTRl+FCbknz8oxH5Tw+thzy0qsIMg== +"@testing-library/react-native@^12.8.0": + version "12.8.0" + resolved "https://registry.yarnpkg.com/@testing-library/react-native/-/react-native-12.8.0.tgz#696e9ed09666c9cecd460160d47a52bfed28da09" + integrity sha512-peMIg+tKWGiR2GV4V7Zw74Nnn97Goqws1DrZleyj9NQXbK13FZIKxRBNM4tf1z4rAS8KE9nJ2nLXo0HFRBcqpw== dependencies: jest-matcher-utils "^29.7.0" pretty-format "^29.7.0" From 57dc8034e085c443afb3f17f3628002b113f1495 Mon Sep 17 00:00:00 2001 From: Chikaodi Adibemma <53785439+cadibemma@users.noreply.github.com> Date: Tue, 29 Oct 2024 11:20:45 -0400 Subject: [PATCH 08/36] CU/9768-Chika-Rollback-2779-and-test-RQ (#10038) Co-authored-by: Jon Bindbeutel --- .../src/api/claimsAndAppeals/getAppeal.tsx | 8 +++---- .../src/api/claimsAndAppeals/getClaim.tsx | 8 +++---- .../AppealDetailsScreen.test.tsx | 22 +++++++++---------- .../AppealDetailsScreen.tsx | 13 ++--------- .../ClaimDetailsScreen.test.tsx | 4 ++-- .../ClaimDetailsScreen/ClaimDetailsScreen.tsx | 5 +---- .../AskForClaimDecision.test.tsx | 8 +++---- .../ClaimFileUpload/FileRequest.test.tsx | 8 +++---- .../ClaimFileUpload/FileRequest.tsx | 2 +- VAMobile/src/store/api/api.ts | 16 +++++++------- 10 files changed, 41 insertions(+), 53 deletions(-) diff --git a/VAMobile/src/api/claimsAndAppeals/getAppeal.tsx b/VAMobile/src/api/claimsAndAppeals/getAppeal.tsx index 89e4d48bb22..d747048113d 100644 --- a/VAMobile/src/api/claimsAndAppeals/getAppeal.tsx +++ b/VAMobile/src/api/claimsAndAppeals/getAppeal.tsx @@ -8,19 +8,19 @@ import { claimsAndAppealsKeys } from './queryKeys' /** * Fetch user Appeal */ -const getAppeal = async (id: string, abortSignal: AbortSignal): Promise => { - const response = await get(`/v0/appeal/${id}`, {}, abortSignal) +const getAppeal = async (id: string): Promise => { + const response = await get(`/v0/appeal/${id}`, {}) return response?.data } /** * Returns a query for user Appeal */ -export const useAppeal = (id: string, abortSignal: AbortSignal, options?: { enabled?: boolean }) => { +export const useAppeal = (id: string, options?: { enabled?: boolean }) => { return useQuery({ ...options, queryKey: [claimsAndAppealsKeys.appeal, id], - queryFn: () => getAppeal(id, abortSignal), + queryFn: () => getAppeal(id), meta: { errorName: 'getAppeal: Service error', }, diff --git a/VAMobile/src/api/claimsAndAppeals/getClaim.tsx b/VAMobile/src/api/claimsAndAppeals/getClaim.tsx index 6e22392688d..4d61137875d 100644 --- a/VAMobile/src/api/claimsAndAppeals/getClaim.tsx +++ b/VAMobile/src/api/claimsAndAppeals/getClaim.tsx @@ -8,19 +8,19 @@ import { claimsAndAppealsKeys } from './queryKeys' /** * Fetch user Claim */ -const getClaim = async (id: string, abortSignal?: AbortSignal): Promise => { - const response = await get(`/v0/claim/${id}`, {}, abortSignal) +const getClaim = async (id: string): Promise => { + const response = await get(`/v0/claim/${id}`, {}) return response?.data } /** * Returns a query for user Claim */ -export const useClaim = (id: string, abortSignal?: AbortSignal, options?: { enabled?: boolean }) => { +export const useClaim = (id: string, options?: { enabled?: boolean }) => { return useQuery({ ...options, queryKey: [claimsAndAppealsKeys.claim, id], - queryFn: () => getClaim(id, abortSignal), + queryFn: () => getClaim(id), meta: { errorName: 'getClaim: Service error', }, diff --git a/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/AppealDetailsScreen/AppealDetailsScreen.test.tsx b/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/AppealDetailsScreen/AppealDetailsScreen.test.tsx index 6434470f32c..70fa8776987 100644 --- a/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/AppealDetailsScreen/AppealDetailsScreen.test.tsx +++ b/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/AppealDetailsScreen/AppealDetailsScreen.test.tsx @@ -49,7 +49,7 @@ context('AppealDetailsScreen', () => { const date = DateTime.fromISO('2018-01-19T10:20:42-05:00') const dateTime = date.toLocaleString(Object.assign(DateTime.DATETIME_FULL, { day: '2-digit' })) when(api.get as jest.Mock) - .calledWith(`/v0/appeal/0`, {}, expect.anything()) + .calledWith(`/v0/appeal/0`, {}) .mockResolvedValue({ data: { ...appealData, @@ -115,7 +115,7 @@ context('AppealDetailsScreen', () => { describe('when the selected tab is issues', () => { it('should display the AppealStatus component', async () => { when(api.get as jest.Mock) - .calledWith(`/v0/appeal/0`, {}, expect.anything()) + .calledWith(`/v0/appeal/0`, {}) .mockResolvedValue({ data: { ...appealData, @@ -157,7 +157,7 @@ context('AppealDetailsScreen', () => { describe('when the type is higherLevelReview', () => { it('should display "Higher level review appeal for {{ programArea }}" as the title', async () => { when(api.get as jest.Mock) - .calledWith(`/v0/appeal/0`, {}, expect.anything()) + .calledWith(`/v0/appeal/0`, {}) .mockResolvedValue({ data: { ...appealData, @@ -173,7 +173,7 @@ context('AppealDetailsScreen', () => { it('should display the Received date as the event date where the type is "hlr_request"', async () => { when(api.get as jest.Mock) - .calledWith(`/v0/appeal/0`, {}, expect.anything()) + .calledWith(`/v0/appeal/0`, {}) .mockResolvedValue({ data: { ...appealData, @@ -205,7 +205,7 @@ context('AppealDetailsScreen', () => { describe('when the type is legacyAppeal', () => { it('should display "Appeal for {{ programArea }}" as the title', async () => { when(api.get as jest.Mock) - .calledWith(`/v0/appeal/0`, {}, expect.anything()) + .calledWith(`/v0/appeal/0`, {}) .mockResolvedValue({ data: { ...appealData, @@ -221,7 +221,7 @@ context('AppealDetailsScreen', () => { it('should display the Received date as the event date where the type is "nod"', async () => { when(api.get as jest.Mock) - .calledWith(`/v0/appeal/0`, {}, expect.anything()) + .calledWith(`/v0/appeal/0`, {}) .mockResolvedValue({ data: { ...appealData, @@ -253,7 +253,7 @@ context('AppealDetailsScreen', () => { describe('when the type is appeal', () => { it('should display "Appeal for {{ programArea }}" as the title', async () => { when(api.get as jest.Mock) - .calledWith(`/v0/appeal/0`, {}, expect.anything()) + .calledWith(`/v0/appeal/0`, {}) .mockResolvedValue({ data: { ...appealData, @@ -269,7 +269,7 @@ context('AppealDetailsScreen', () => { it('should display the Received date as the event date where the type is "nod"', async () => { when(api.get as jest.Mock) - .calledWith(`/v0/appeal/0`, {}, expect.anything()) + .calledWith(`/v0/appeal/0`, {}) .mockResolvedValue({ data: { ...appealData, @@ -301,7 +301,7 @@ context('AppealDetailsScreen', () => { describe('when the type is supplementalClaim', () => { it('should display "Supplemental claim appeal for {{ programArea }}" as the title', async () => { when(api.get as jest.Mock) - .calledWith(`/v0/appeal/0`, {}, expect.anything()) + .calledWith(`/v0/appeal/0`, {}) .mockResolvedValue({ data: { ...appealData, @@ -319,7 +319,7 @@ context('AppealDetailsScreen', () => { it('should display the Received date as the event date where the type is "sc_request"', async () => { when(api.get as jest.Mock) - .calledWith(`/v0/appeal/0`, {}, expect.anything()) + .calledWith(`/v0/appeal/0`, {}) .mockResolvedValue({ data: { ...appealData, @@ -351,7 +351,7 @@ context('AppealDetailsScreen', () => { describe('when common error occurs', () => { it('should render error component when the stores screenID matches the components screenID', async () => { when(api.get as jest.Mock) - .calledWith(`/v0/appeal/0`, {}, expect.anything()) + .calledWith(`/v0/appeal/0`, {}) .mockRejectedValue({ networkError: true } as api.APIError) renderWithData() await waitFor(() => expect(screen.getByRole('header', { name: "The app can't be loaded." })).toBeTruthy()) diff --git a/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/AppealDetailsScreen/AppealDetailsScreen.tsx b/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/AppealDetailsScreen/AppealDetailsScreen.tsx index ff7e6e4efa4..d3cc73f0a15 100644 --- a/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/AppealDetailsScreen/AppealDetailsScreen.tsx +++ b/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/AppealDetailsScreen/AppealDetailsScreen.tsx @@ -15,7 +15,7 @@ import { BenefitsStackParamList } from 'screens/BenefitsScreen/BenefitsStackScre import { ScreenIDTypesConstants } from 'store/api/types/Screens' import { logAnalyticsEvent } from 'utils/analytics' import { formatDateMMMMDDYYYY, getFormattedTimeForTimeZone, getTranslation } from 'utils/formattingUtils' -import { useBeforeNavBackListener, useTheme } from 'utils/hooks' +import { useTheme } from 'utils/hooks' import { registerReviewEvent } from 'utils/inAppReviews' import { screenContentAllowed } from 'utils/waygateConfig' @@ -37,26 +37,17 @@ function AppealDetailsScreen({ navigation, route }: AppealDetailsScreenProps) { t('appealDetails.viewYourAppeal', { tabName: t('claimDetails.status') }), t('appealDetails.viewYourAppeal', { tabName: t('appealDetails.issuesTab') }), ] - const abortController = new AbortController() - const abortSignal = abortController.signal const { appealID } = route.params const { data: appeal, error: appealError, refetch: refetchAppeals, isFetching: loadingAppeal, - } = useAppeal(appealID, abortSignal, { enabled: screenContentAllowed('WG_AppealDetailsScreen') }) + } = useAppeal(appealID, { enabled: screenContentAllowed('WG_AppealDetailsScreen') }) const { attributes, type } = appeal || ({} as AppealData) const { updated, programArea, events, status, aoj, docket, issues, active } = attributes || ({} as AppealAttributesData) - useBeforeNavBackListener(navigation, () => { - // if appeals is still loading cancel it - if (loadingAppeal) { - abortController.abort() - } - }) - useEffect(() => { if (appeal && !loadingAppeal && !appealError) { registerReviewEvent(true) diff --git a/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/ClaimDetailsScreen/ClaimDetailsScreen.test.tsx b/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/ClaimDetailsScreen/ClaimDetailsScreen.test.tsx index a55b634cb3d..8a231052be3 100644 --- a/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/ClaimDetailsScreen/ClaimDetailsScreen.test.tsx +++ b/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/ClaimDetailsScreen/ClaimDetailsScreen.test.tsx @@ -59,7 +59,7 @@ context('ClaimDetailsScreen', () => { beforeEach(() => { when(api.get as jest.Mock) - .calledWith(`/v0/claim/600156928`, {}, expect.anything()) + .calledWith(`/v0/claim/600156928`, {}) .mockResolvedValue({ data: { ...claimData, @@ -183,7 +183,7 @@ context('ClaimDetailsScreen', () => { describe('when common error occurs', () => { it('should render error component when the stores screenID matches the components screenID', async () => { when(api.get as jest.Mock) - .calledWith(`/v0/claim/600156928`, {}, expect.anything()) + .calledWith(`/v0/claim/600156928`, {}) .mockRejectedValue({ networkError: true } as api.APIError) renderWithData() diff --git a/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/ClaimDetailsScreen/ClaimDetailsScreen.tsx b/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/ClaimDetailsScreen/ClaimDetailsScreen.tsx index b474df6172b..125b9683a1a 100644 --- a/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/ClaimDetailsScreen/ClaimDetailsScreen.tsx +++ b/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/ClaimDetailsScreen/ClaimDetailsScreen.tsx @@ -62,14 +62,12 @@ function ClaimDetailsScreen({ navigation, route }: ClaimDetailsScreenProps) { const { claimID, claimType } = route.params const queryClient = useQueryClient() - const abortController = new AbortController() - const abortSignal = abortController.signal const { data: claim, isFetching: loadingClaim, error: claimError, refetch: refetchClaim, - } = useClaim(claimID, abortSignal, { enabled: screenContentAllowed('WG_ClaimDetailsScreen') }) + } = useClaim(claimID, { enabled: screenContentAllowed('WG_ClaimDetailsScreen') }) const { data: decisionLetterData } = useDecisionLetters() const { data: userAuthorizedServices } = useAuthorizedServices() const { attributes } = claim || ({} as ClaimData) @@ -93,7 +91,6 @@ function ClaimDetailsScreen({ navigation, route }: ClaimDetailsScreenProps) { // if claim is still loading cancel it if (loadingClaim) { queryClient.invalidateQueries({ queryKey: claimsAndAppealsKeys.claim }) - abortController.abort() } }) diff --git a/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/ClaimDetailsScreen/ClaimStatus/ClaimFileUpload/AskForClaimDecision/AskForClaimDecision.test.tsx b/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/ClaimDetailsScreen/ClaimStatus/ClaimFileUpload/AskForClaimDecision/AskForClaimDecision.test.tsx index 2dd152ad4cd..cf9594f38f1 100644 --- a/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/ClaimDetailsScreen/ClaimStatus/ClaimFileUpload/AskForClaimDecision/AskForClaimDecision.test.tsx +++ b/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/ClaimDetailsScreen/ClaimStatus/ClaimFileUpload/AskForClaimDecision/AskForClaimDecision.test.tsx @@ -19,7 +19,7 @@ jest.mock('utils/hooks', () => { }) when(api.get as jest.Mock) - .calledWith(`/v0/claim/600156928/request-decision`, {}, expect.anything()) + .calledWith(`/v0/claim/600156928/request-decision`, {}) .mockResolvedValue({}) context('AskForClaimDecision', () => { @@ -53,7 +53,7 @@ context('AskForClaimDecision', () => { it('should initialize', async () => { when(api.get as jest.Mock) - .calledWith(`/v0/claim/600156928`, {}, undefined) + .calledWith(`/v0/claim/600156928`, {}) .mockResolvedValue({ data: { ...claim, @@ -95,7 +95,7 @@ context('AskForClaimDecision', () => { describe('when submitted decision is false or there is an erroror check box is not checked', () => { it('should not call navigation go back and display a field error when not checked', async () => { when(api.get as jest.Mock) - .calledWith(`/v0/claim/600156928`, {}, undefined) + .calledWith(`/v0/claim/600156928`, {}) .mockResolvedValue({ data: { ...claim, @@ -131,7 +131,7 @@ context('AskForClaimDecision', () => { describe('when common error occurs', () => { it('should render error component when the stores screenID matches the components screenID', async () => { when(api.get as jest.Mock) - .calledWith(`/v0/claim/600156928`, {}, undefined) + .calledWith(`/v0/claim/600156928`, {}) .mockRejectedValue({ networkError: true } as api.APIError) initializeTestInstance() await waitFor(() => expect(screen.getByRole('header', { name: "The app can't be loaded." })).toBeTruthy()) diff --git a/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/ClaimDetailsScreen/ClaimStatus/ClaimFileUpload/FileRequest.test.tsx b/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/ClaimDetailsScreen/ClaimStatus/ClaimFileUpload/FileRequest.test.tsx index 831a5f6a732..a51b0634adc 100644 --- a/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/ClaimDetailsScreen/ClaimStatus/ClaimFileUpload/FileRequest.test.tsx +++ b/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/ClaimDetailsScreen/ClaimStatus/ClaimFileUpload/FileRequest.test.tsx @@ -69,7 +69,7 @@ context('FileRequest', () => { ] when(api.get as jest.Mock) - .calledWith(`/v0/claim/600156928`, {}, undefined) + .calledWith(`/v0/claim/600156928`, {}) .mockResolvedValue({ data: { ...Claim, @@ -90,7 +90,7 @@ context('FileRequest', () => { describe('when number of requests is equal to 1', () => { it('display correctly', async () => { when(api.get as jest.Mock) - .calledWith(`/v0/claim/600156928`, {}, undefined) + .calledWith(`/v0/claim/600156928`, {}) .mockResolvedValue({ data: { ...Claim, @@ -132,7 +132,7 @@ context('FileRequest', () => { describe('when common error occurs', () => { it('should render error component when the stores screenID matches the components screenID', async () => { when(api.get as jest.Mock) - .calledWith(`/v0/claim/600156928`, {}, undefined) + .calledWith(`/v0/claim/600156928`, {}) .mockRejectedValue({ networkError: true } as api.APIError) renderWithData(request) @@ -162,7 +162,7 @@ context('FileRequest', () => { }, ] when(api.get as jest.Mock) - .calledWith(`/v0/claim/600156928`, {}, undefined) + .calledWith(`/v0/claim/600156928`, {}) .mockResolvedValue({ data: { ...Claim, diff --git a/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/ClaimDetailsScreen/ClaimStatus/ClaimFileUpload/FileRequest.tsx b/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/ClaimDetailsScreen/ClaimStatus/ClaimFileUpload/FileRequest.tsx index 7b0d8afcded..20ee6112943 100644 --- a/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/ClaimDetailsScreen/ClaimStatus/ClaimFileUpload/FileRequest.tsx +++ b/VAMobile/src/screens/BenefitsScreen/ClaimsScreen/ClaimDetailsScreen/ClaimStatus/ClaimFileUpload/FileRequest.tsx @@ -39,7 +39,7 @@ function FileRequest({ navigation, route }: FileRequestProps) { error: claimError, refetch: refetchClaim, isFetching: loadingClaim, - } = useClaim(claimID, undefined, { enabled: !claim }) + } = useClaim(claimID, { enabled: !claim }) const requests = currentRequestsForVet( claim?.attributes.eventsTimeline || claimFallBack?.attributes.eventsTimeline || [], ) diff --git a/VAMobile/src/store/api/api.ts b/VAMobile/src/store/api/api.ts index eeefc4c2870..08d9f0e4edd 100644 --- a/VAMobile/src/store/api/api.ts +++ b/VAMobile/src/store/api/api.ts @@ -215,12 +215,8 @@ const call = async function ( } } -export const get = async function ( - endpoint: string, - params: Params = {}, - abortSignal?: AbortSignal, -): Promise { - return call('GET', endpoint, params, undefined, abortSignal) +export const get = async function (endpoint: string, params: Params = {}): Promise { + return call('GET', endpoint, params, undefined) } export const post = async function ( @@ -232,8 +228,12 @@ export const post = async function ( return call('POST', endpoint, params, contentType, abortSignal) } -export const put = async function (endpoint: string, params: Params = {}): Promise { - return call('PUT', endpoint, params) +export const put = async function ( + endpoint: string, + params: Params = {}, + abortSignal?: AbortSignal, +): Promise { + return call('PUT', endpoint, params, undefined, abortSignal) } export const patch = async function (endpoint: string, params: Params = {}): Promise { From 183cbef108c1f3a652f7a6cfef1493c83393cdd2 Mon Sep 17 00:00:00 2001 From: VA Automation Bot Date: Wed, 30 Oct 2024 07:05:44 +0000 Subject: [PATCH 09/36] Automated bundler and fastlane updates --- VAMobile/android/Gemfile.lock | 16 ++++++++-------- VAMobile/ios/Gemfile.lock | 24 ++++++++++++------------ 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/VAMobile/android/Gemfile.lock b/VAMobile/android/Gemfile.lock index 3cd8acc8321..ee304c14cb0 100644 --- a/VAMobile/android/Gemfile.lock +++ b/VAMobile/android/Gemfile.lock @@ -10,7 +10,7 @@ GEM artifactory (3.0.17) atomos (0.1.3) aws-eventstream (1.3.0) - aws-partitions (1.993.0) + aws-partitions (1.998.0) aws-sdk-core (3.211.0) aws-eventstream (~> 1, >= 1.3.0) aws-partitions (~> 1, >= 1.992.0) @@ -113,7 +113,7 @@ GEM google-apis-firebaseappdistribution_v1alpha (~> 0.2.0) fastlane-plugin-slack_bot (1.4.0) gh_inspector (1.1.3) - google-apis-androidpublisher_v3 (0.73.0) + google-apis-androidpublisher_v3 (0.74.0) google-apis-core (>= 0.15.0, < 2.a) google-apis-core (0.15.1) addressable (~> 2.5, >= 2.5.1) @@ -148,7 +148,7 @@ GEM google-cloud-core (~> 1.6) googleauth (~> 1.9) mini_mime (~> 1.0) - googleauth (1.11.1) + googleauth (1.11.2) faraday (>= 1.0, < 3.a) google-cloud-env (~> 2.1) jwt (>= 1.4, < 3.0) @@ -160,7 +160,7 @@ GEM domain_name (~> 0.5) httpclient (2.8.3) jmespath (1.6.2) - json (2.7.2) + json (2.7.4) jwt (2.9.3) base64 mini_magick (4.13.2) @@ -168,7 +168,7 @@ GEM multi_json (1.15.0) multipart-post (2.4.1) mutex_m (0.2.0) - nanaimo (0.3.0) + nanaimo (0.4.0) naturally (2.2.1) nkf (0.2.0) optparse (0.5.0) @@ -181,7 +181,7 @@ GEM trailblazer-option (>= 0.1.1, < 0.2.0) uber (< 0.2.0) retriable (3.1.2) - rexml (3.3.8) + rexml (3.3.9) rouge (2.0.7) ruby2_keywords (0.0.5) rubyzip (2.3.2) @@ -205,12 +205,12 @@ GEM uber (0.1.0) unicode-display_width (2.6.0) word_wrap (1.0.0) - xcodeproj (1.25.1) + xcodeproj (1.26.0) CFPropertyList (>= 2.3.3, < 4.0) atomos (~> 0.1.3) claide (>= 1.0.2, < 2.0) colored2 (~> 3.1) - nanaimo (~> 0.3.0) + nanaimo (~> 0.4.0) rexml (>= 3.3.6, < 4.0) xcpretty (0.3.0) rouge (~> 2.0.7) diff --git a/VAMobile/ios/Gemfile.lock b/VAMobile/ios/Gemfile.lock index f2ba1c7c2d3..e60cfae3a4c 100644 --- a/VAMobile/ios/Gemfile.lock +++ b/VAMobile/ios/Gemfile.lock @@ -5,7 +5,7 @@ GEM base64 nkf rexml - activesupport (7.2.1.1) + activesupport (7.2.1.2) base64 bigdecimal concurrent-ruby (~> 1.0, >= 1.3.1) @@ -24,7 +24,7 @@ GEM artifactory (3.0.17) atomos (0.1.3) aws-eventstream (1.3.0) - aws-partitions (1.993.0) + aws-partitions (1.998.0) aws-sdk-core (3.211.0) aws-eventstream (~> 1, >= 1.3.0) aws-partitions (~> 1, >= 1.992.0) @@ -43,10 +43,10 @@ GEM base64 (0.2.0) bigdecimal (3.1.8) claide (1.1.0) - cocoapods (1.15.2) + cocoapods (1.16.1) addressable (~> 2.8) claide (>= 1.0.2, < 2.0) - cocoapods-core (= 1.15.2) + cocoapods-core (= 1.16.1) cocoapods-deintegrate (>= 1.0.3, < 2.0) cocoapods-downloader (>= 2.1, < 3.0) cocoapods-plugins (>= 1.0.0, < 2.0) @@ -60,8 +60,8 @@ GEM molinillo (~> 0.8.0) nap (~> 1.0) ruby-macho (>= 2.3.0, < 3.0) - xcodeproj (>= 1.23.0, < 2.0) - cocoapods-core (1.15.2) + xcodeproj (>= 1.26.0, < 2.0) + cocoapods-core (1.16.1) activesupport (>= 5.0, < 8) addressable (~> 2.8) algoliasearch (~> 1.0) @@ -126,7 +126,7 @@ GEM faraday_middleware (1.2.1) faraday (~> 1.0) fastimage (2.3.1) - fastlane (2.224.0) + fastlane (2.225.0) CFPropertyList (>= 2.3, < 4.0.0) addressable (>= 2.8, < 3.0.0) artifactory (~> 3.0) @@ -219,7 +219,7 @@ GEM i18n (1.14.6) concurrent-ruby (~> 1.0) jmespath (1.6.2) - json (2.7.2) + json (2.7.4) jwt (2.9.3) base64 logger (1.6.1) @@ -229,7 +229,7 @@ GEM molinillo (0.8.0) multi_json (1.15.0) multipart-post (2.4.1) - nanaimo (0.3.0) + nanaimo (0.4.0) nap (1.1.0) naturally (2.2.1) netrc (0.11.0) @@ -244,7 +244,7 @@ GEM trailblazer-option (>= 0.1.1, < 0.2.0) uber (< 0.2.0) retriable (3.1.2) - rexml (3.3.8) + rexml (3.3.9) rouge (2.0.7) ruby-macho (2.5.1) ruby2_keywords (0.0.5) @@ -278,12 +278,12 @@ GEM xcode-install (2.8.1) claide (>= 0.9.1) fastlane (>= 2.1.0, < 3.0.0) - xcodeproj (1.25.1) + xcodeproj (1.26.0) CFPropertyList (>= 2.3.3, < 4.0) atomos (~> 0.1.3) claide (>= 1.0.2, < 2.0) colored2 (~> 3.1) - nanaimo (~> 0.3.0) + nanaimo (~> 0.4.0) rexml (>= 3.3.6, < 4.0) xcpretty (0.3.0) rouge (~> 2.0.7) From a4bc3fcdac2f02a0b29d980964cd92daf5256e5f Mon Sep 17 00:00:00 2001 From: Therese <94404065+TKDickson@users.noreply.github.com> Date: Thu, 31 Oct 2024 10:41:05 -0500 Subject: [PATCH 10/36] 9205 updating years in demo mode (#10039) --- VAMobile/e2e/tests/Messages.e2e.ts | 59 +++++----- VAMobile/e2e/tests/Payments.e2e.ts | 10 +- .../src/store/api/demo/mocks/payments.json | 66 +++++------ .../store/api/demo/mocks/secureMessaging.json | 104 +++++++++--------- VAMobile/src/store/api/demo/payments.ts | 8 +- 5 files changed, 123 insertions(+), 124 deletions(-) diff --git a/VAMobile/e2e/tests/Messages.e2e.ts b/VAMobile/e2e/tests/Messages.e2e.ts index ea5110971ad..fa91c9bc234 100644 --- a/VAMobile/e2e/tests/Messages.e2e.ts +++ b/VAMobile/e2e/tests/Messages.e2e.ts @@ -11,16 +11,17 @@ import { } from './utils' export const MessagesE2eIdConstants = { - MESSAGE_1_ID: 'Unread: Martha Kaplan, Md October 26, 2021 Medication: Naproxen side effects', - MESSAGE_1_READ_ID: 'Martha Kaplan, Md October 26, 2021 Medication: Naproxen side effects', - MESSAGE_2_ID: 'Unread: Diana Persson, Md October 26, 2021 Has attachment COVID: Prepping for your visit', - MESSAGE_2_READ_ID: 'Diana Persson, Md October 26, 2021 Has attachment COVID: Prepping for your visit', - MESSAGE_3_ID: 'Unread: Sarah Kotagal, Md October 26, 2021 General: Your requested info', - MESSAGE_4_ID: 'Cheryl Rodger, Md October 26, 2021 Appointment: Please read and prepare appropriately', - MESSAGE_5_ID: 'Vija A. Ravi, Md October 21, 2021 General: Summary of visit', - MESSAGE_6_ID: 'Ratana, Narin October 21, 2021 Test: Preparing for your visit', - MESSAGE_7_ID: 'Ratana, Narin September 17, 2021 Education: Good morning to you', - MESSAGE_10_ID: 'Ratana, Narin September 17, 2021 COVID: Test', + MESSAGE_1_ID: 'Unread: Martha Kaplan, Md October 26, 2024 Medication: Naproxen side effects', + MESSAGE_1_READ_ID: 'Martha Kaplan, Md October 26, 2024 Medication: Naproxen side effects', + MESSAGE_2_ID: 'Unread: Diana Persson, Md October 19, 2024 Has attachment COVID: Prepping for your visit', + MESSAGE_2_READ_ID: 'Diana Persson, Md October 19, 2024 Has attachment COVID: Prepping for your visit', + MESSAGE_3_ID: 'Unread: Sarah Kotagal, Md August 26, 2024 General: Your requested info', + MESSAGE_3_READ_ID: 'Sarah Kotagal, Md August 26, 2024 General: Your requested info', + MESSAGE_4_ID: 'Cheryl Rodger, Md August 26, 2024 Appointment: Please read and prepare appropriately', + MESSAGE_5_ID: 'Vija A. Ravi, Md July 21, 2024 General: Summary of visit', + MESSAGE_6_ID: 'Ratana, Narin July 21, 2024 Test: Preparing for your visit', + MESSAGE_7_ID: 'Ratana, Narin June 17, 2024 Education: Good morning to you', + MESSAGE_10_ID: 'Ratana, Narin February 17, 2024 COVID: Test', FOLDERS_ID: 'foldersID', MESSAGES_ID: 'messagesTestID', REVIEW_MESSAGE_REPLY_ID: 'replyTestID', @@ -116,22 +117,17 @@ describe('Messages Screen', () => { it('verify message OLDER than 45 days information', async () => { await element(by.id(MessagesE2eIdConstants.MESSAGES_ID)).scrollTo('top') - await element(by.id(MessagesE2eIdConstants.MESSAGE_2_ID)).tap() + await expect(element(by.id(MessagesE2eIdConstants.MESSAGE_3_ID))).toBeVisible() + await element(by.id(MessagesE2eIdConstants.MESSAGE_3_ID)).tap() await expect(element(by.id('secureMessagingOlderThan45DaysAlertID'))).toExist() await expect(element(by.text(MessagesE2eIdConstants.ONLY_USE_MESSAGES_TEXT))).toExist() await expect(element(by.id(MessagesE2eIdConstants.REVIEW_MESSAGE_REPLY_ID))).not.toExist() await expect(element(by.id(CommonE2eIdConstants.START_NEW_MESSAGE_BUTTON_ID))) }) - it('verify the message just opened is displayed as read', async () => { - await element(by.id(MessagesE2eIdConstants.BACK_TO_MESSAGES_ID)).tap() - await expect( - element(by.id('Diana Persson, Md October 26, 2021 Has attachment COVID: Prepping for your visit')), - ).toExist() - await expect(element(by.text('Inbox (2)'))).toExist() - }) - it('verify message NEWER than 45 days information', async () => { + await element(by.id(MessagesE2eIdConstants.BACK_TO_MESSAGES_ID)).tap() + await element(by.id(MessagesE2eIdConstants.MESSAGES_ID)).scrollTo('top') await element(by.id(MessagesE2eIdConstants.MESSAGE_1_ID)).tap() await expect(element(by.text(MessagesE2eIdConstants.ONLY_USE_MESSAGES_TEXT))).toExist() await expect(element(by.id(MessagesE2eIdConstants.REVIEW_MESSAGE_REPLY_ID))).toExist() @@ -176,21 +172,26 @@ describe('Messages Screen', () => { } }) - it('verify medication message details', async () => { + it('verify the messages just opened are displayed as read', async () => { await element(by.id(MessagesE2eIdConstants.BACK_TO_MESSAGES_ID)).tap() - await element(by.id('Martha Kaplan, Md October 26, 2021 Medication: Naproxen side effects')).tap() + await expect(element(by.id(MessagesE2eIdConstants.MESSAGE_1_READ_ID))).toExist() + await expect(element(by.text('Inbox (1)'))).toExist() + }) + + it('verify medication message details', async () => { + await element(by.id(MessagesE2eIdConstants.MESSAGE_1_READ_ID)).tap() await expect(element(by.text('Medication: Naproxen side effects'))).toExist() await element(by.id(MessagesE2eIdConstants.BACK_TO_MESSAGES_ID)).tap() }) it('verify COVID message details', async () => { - await element(by.id('Diana Persson, Md October 26, 2021 Has attachment COVID: Prepping for your visit')).tap() + await element(by.id(MessagesE2eIdConstants.MESSAGE_2_ID)).tap() await expect(element(by.text('COVID: Your requested info'))).toExist() await element(by.id(MessagesE2eIdConstants.BACK_TO_MESSAGES_ID)).tap() }) it('verify general message details', async () => { - await element(by.id(MessagesE2eIdConstants.MESSAGE_3_ID)).tap() + await element(by.id(MessagesE2eIdConstants.MESSAGE_3_READ_ID)).tap() await expect(element(by.text('General: Vaccine Booster'))).toExist() await element(by.id(MessagesE2eIdConstants.BACK_TO_MESSAGES_ID)).tap() }) @@ -447,13 +448,11 @@ describe('Messages Screen', () => { await element(by.text(MessagesE2eIdConstants.MESSAGE_CANCEL_DELETE_TEXT)).tap() await expect(element(by.id(CommonE2eIdConstants.START_NEW_MESSAGE_BUTTON_ID))).toExist() await expect(element(by.id(MessagesE2eIdConstants.FOLDERS_ID))).toExist() - await expect( - element(by.id('Diana Persson, Md October 26, 2021 Has attachment COVID: Prepping for your visit')), - ).toExist() + await expect(element(by.id(MessagesE2eIdConstants.MESSAGE_2_READ_ID))).toExist() }) it('verify the attachment is on message with attachment', async () => { - await element(by.id('Diana Persson, Md October 26, 2021 Has attachment COVID: Prepping for your visit')).tap() + await element(by.id(MessagesE2eIdConstants.MESSAGE_2_READ_ID)).tap() await expect(element(by.text('COVID-19-mRNA-infographic_G_508.pdf (0.17 MB)'))).toExist() }) @@ -467,7 +466,7 @@ describe('Messages Screen', () => { it('verify a message threads', async () => { await element( by.id( - 'Va Flagship Mobile Applications Interface 2_dayt29 November 16, 2021 Appointment: Preparing for your visit', + 'Va Flagship Mobile Applications Interface 2_dayt29 November 16, 2024 Appointment: Preparing for your visit', ), ).tap() await element(by.id(MessagesE2eIdConstants.VIEW_MESSAGE_ID)).scrollTo('bottom') @@ -566,7 +565,7 @@ describe('Messages Screen', () => { await expect( element( by.id( - 'Va Flagship Mobile Applications Interface 2_dayt29 November 16, 2021 Appointment: Preparing for your visit', + 'Va Flagship Mobile Applications Interface 2_dayt29 November 16, 2024 Appointment: Preparing for your visit', ), ), ).toExist() @@ -575,7 +574,7 @@ describe('Messages Screen', () => { it('verify a sent messages can display attachments', async () => { await element( by.id( - 'Va Flagship Mobile Applications Interface 2_dayt29 November 3, 2021 Has attachment Education: Education Inquiry', + 'Va Flagship Mobile Applications Interface 2_dayt29 November 3, 2024 Has attachment Education: Education Inquiry', ), ).tap() await expect(element(by.text('rn_image_picker_lib_temp_52383988-331b-4acc-baaf-9ae21c8a508e.jpg (0.92 MB)'))) diff --git a/VAMobile/e2e/tests/Payments.e2e.ts b/VAMobile/e2e/tests/Payments.e2e.ts index 8d36aba215a..04c750c24b2 100644 --- a/VAMobile/e2e/tests/Payments.e2e.ts +++ b/VAMobile/e2e/tests/Payments.e2e.ts @@ -50,7 +50,7 @@ describe('Payments Screen', () => { it('payment details: verify the payment details for paper check', async () => { await element(by.id(PaymentsE2eIDConstants.PAYMENT_HISTORY_1_ID)).atIndex(0).tap() - await expect(element(by.text('June 1, 2017'))).toExist() + await expect(element(by.text('June 1, 2024'))).toExist() await expect(element(by.text('Regular Chapter 31'))).toExist() await expect(element(by.text('$603.33'))).toExist() await expect(element(by.text('Paper Check'))).toExist() @@ -90,14 +90,14 @@ describe('Payments Screen', () => { await element(by.id(PaymentsE2eIDConstants.PAYMENTS_YEAR_PICKER_ID)).tap() await expect(element(by.text('Select a year'))).toExist() await element(by.id(PaymentsE2eIDConstants.SELECT_A_YEAR_CANCEL_ID)).tap() - await expect(element(by.text('2017')).atIndex(0)).toExist() + await expect(element(by.text('2024')).atIndex(0)).toExist() }) - it('should tap on and select 2016 from the select a year picker', async () => { + it('should tap on and select 2023 from the select a year picker', async () => { await element(by.id(PaymentsE2eIDConstants.PAYMENTS_YEAR_PICKER_ID)).tap() - await element(by.text('2016')).tap() + await element(by.text('2023')).tap() await element(by.id(PaymentsE2eIDConstants.SELECT_A_YEAR_CONFIRM_ID)).tap() - await expect(element(by.text('2016')).atIndex(0)).toExist() + await expect(element(by.text('2023')).atIndex(0)).toExist() }) it('should verify the next and back page arrows work', async () => { diff --git a/VAMobile/src/store/api/demo/mocks/payments.json b/VAMobile/src/store/api/demo/mocks/payments.json index 16525fed908..e0f00363f59 100644 --- a/VAMobile/src/store/api/demo/mocks/payments.json +++ b/VAMobile/src/store/api/demo/mocks/payments.json @@ -1,6 +1,6 @@ { "/v0/payment-history": { - "2017": { + "2024": { "1": { "data": [ { @@ -10,7 +10,7 @@ "account": null, "amount": "$603.33", "bank": null, - "date": "2017-06-01T00:00:00.000-05:00", + "date": "2024-06-01T00:00:00.000-05:00", "paymentMethod": "Paper Check", "paymentType": "Regular Chapter 31" } @@ -22,7 +22,7 @@ "account": null, "amount": "$603.33", "bank": null, - "date": "2017-05-01T00:00:00.000-05:00", + "date": "2024-05-01T00:00:00.000-05:00", "paymentMethod": "Paper Check", "paymentType": "Regular Chapter 31" } @@ -34,7 +34,7 @@ "account": null, "amount": "$603.33", "bank": null, - "date": "2017-03-31T00:00:00.000-05:00", + "date": "2024-03-31T00:00:00.000-05:00", "paymentMethod": "Paper Check", "paymentType": "Regular Chapter 31" } @@ -46,7 +46,7 @@ "account": null, "amount": "$603.33", "bank": null, - "date": "2017-03-01T00:00:00.000-06:00", + "date": "2024-03-01T00:00:00.000-06:00", "paymentMethod": "Paper Check", "paymentType": "Regular Chapter 31" } @@ -58,7 +58,7 @@ "account": null, "amount": "$603.33", "bank": null, - "date": "2017-02-01T00:00:00.000-06:00", + "date": "2024-02-01T00:00:00.000-06:00", "paymentMethod": "Paper Check", "paymentType": "Regular Chapter 31" } @@ -70,7 +70,7 @@ "account": "********0567", "amount": "$3,746.20", "bank": "BANK OF AMERICA, N.A.", - "date": "2017-02-01T00:00:00.000-06:00", + "date": "2024-02-01T00:00:00.000-06:00", "paymentMethod": "Direct Deposit", "paymentType": "Compensation & Pension - Recurring" } @@ -82,7 +82,7 @@ "account": "********0567", "amount": "$1,172.60", "bank": "BANK OF AMERICA, N.A.", - "date": "2017-03-01T00:00:00.000-06:00", + "date": "2024-03-01T00:00:00.000-06:00", "paymentMethod": "Direct Deposit", "paymentType": "Post-9/11 GI Bill" } @@ -95,7 +95,7 @@ "totalPages": 1, "totalEntries": 7 }, - "availableYears": [2017, 2016] + "availableYears": [2024, 2023] }, "links": { "self": "https://staging-api.va.gov/mobile/v0/payment-history?startDate=&endDate=&page[size]=10&page[number]=1", @@ -106,7 +106,7 @@ } } }, - "2016": { + "2023": { "1": { "data": [ { @@ -116,7 +116,7 @@ "account": null, "amount": "$603.33", "bank": null, - "date": "2016-12-30T00:00:00.000-06:00", + "date": "2023-12-30T00:00:00.000-06:00", "paymentMethod": "Paper Check", "paymentType": "Regular Chapter 31" } @@ -128,7 +128,7 @@ "account": null, "amount": "$603.33", "bank": null, - "date": "2016-12-01T00:00:00.000-06:00", + "date": "2023-12-01T00:00:00.000-06:00", "paymentMethod": "Paper Check", "paymentType": "Regular Chapter 31" } @@ -140,7 +140,7 @@ "account": null, "amount": "$603.33", "bank": null, - "date": "2016-11-01T00:00:00.000-05:00", + "date": "2023-11-01T00:00:00.000-05:00", "paymentMethod": "Paper Check", "paymentType": "Regular Chapter 31" } @@ -152,7 +152,7 @@ "account": null, "amount": "$603.33", "bank": null, - "date": "2016-09-30T00:00:00.000-05:00", + "date": "2023-09-30T00:00:00.000-05:00", "paymentMethod": "Paper Check", "paymentType": "Regular Chapter 31" } @@ -164,7 +164,7 @@ "account": null, "amount": "$603.33", "bank": null, - "date": "2016-09-01T00:00:00.000-05:00", + "date": "2023-09-01T00:00:00.000-05:00", "paymentMethod": "Paper Check", "paymentType": "Regular Chapter 31" } @@ -176,7 +176,7 @@ "account": null, "amount": "$603.33", "bank": null, - "date": "2016-08-01T00:00:00.000-05:00", + "date": "2023-08-01T00:00:00.000-05:00", "paymentMethod": "Paper Check", "paymentType": "Regular Chapter 31" } @@ -188,7 +188,7 @@ "account": null, "amount": "$603.33", "bank": null, - "date": "2016-07-01T00:00:00.000-05:00", + "date": "2023-07-01T00:00:00.000-05:00", "paymentMethod": "Paper Check", "paymentType": "Regular Chapter 31" } @@ -200,7 +200,7 @@ "account": null, "amount": "$603.33", "bank": null, - "date": "2016-06-01T00:00:00.000-05:00", + "date": "2023-06-01T00:00:00.000-05:00", "paymentMethod": "Paper Check", "paymentType": "Regular Chapter 31" } @@ -212,7 +212,7 @@ "account": null, "amount": "$685.91", "bank": null, - "date": "2016-05-13T00:00:00.000-05:00", + "date": "2023-05-13T00:00:00.000-05:00", "paymentMethod": "Paper Check", "paymentType": "Retro/One Time - CH31" } @@ -224,7 +224,7 @@ "account": null, "amount": "$603.33", "bank": null, - "date": "2016-04-29T00:00:00.000-05:00", + "date": "2023-04-29T00:00:00.000-05:00", "paymentMethod": "Paper Check", "paymentType": "Regular Chapter 31" } @@ -237,14 +237,14 @@ "totalPages": 2, "totalEntries": 13 }, - "availableYears": [2017, 2016] + "availableYears": [2024, 2023] }, "links": { - "self": "https://staging-api.va.gov/mobile/v0/payment-history?startDate=2016-01-01T00:00:00-05:00&endDate=2016-12-31T23:59:59-05:00&page[size]=10&page[number]=1", - "first": "https://staging-api.va.gov/mobile/v0/payment-history?startDate=2016-01-01T00:00:00-05:00&endDate=2016-12-31T23:59:59-05:00&page[size]=10&page[number]=1", + "self": "https://staging-api.va.gov/mobile/v0/payment-history?startDate=2023-01-01T00:00:00-05:00&endDate=2023-12-31T23:59:59-05:00&page[size]=10&page[number]=1", + "first": "https://staging-api.va.gov/mobile/v0/payment-history?startDate=2023-01-01T00:00:00-05:00&endDate=2023-12-31T23:59:59-05:00&page[size]=10&page[number]=1", "prev": null, - "next": "https://staging-api.va.gov/mobile/v0/payment-history?startDate=2016-01-01T00:00:00-05:00&endDate=2016-12-31T23:59:59-05:00&page[size]=10&page[number]=2", - "last": "https://staging-api.va.gov/mobile/v0/payment-history?startDate=2016-01-01T00:00:00-05:00&endDate=2016-12-31T23:59:59-05:00&page[size]=10&page[number]=2" + "next": "https://staging-api.va.gov/mobile/v0/payment-history?startDate=2023-01-01T00:00:00-05:00&endDate=2023-12-31T23:59:59-05:00&page[size]=10&page[number]=2", + "last": "https://staging-api.va.gov/mobile/v0/payment-history?startDate=2023-01-01T00:00:00-05:00&endDate=2023-12-31T23:59:59-05:00&page[size]=10&page[number]=2" } }, "2": { @@ -256,7 +256,7 @@ "account": null, "amount": "$603.33", "bank": null, - "date": "2016-04-01T00:00:00.000-05:00", + "date": "2023-04-01T00:00:00.000-05:00", "paymentMethod": "Paper Check", "paymentType": "Regular Chapter 31" } @@ -268,7 +268,7 @@ "account": null, "amount": "$603.33", "bank": null, - "date": "2016-03-01T00:00:00.000-06:00", + "date": "2023-03-01T00:00:00.000-06:00", "paymentMethod": "Paper Check", "paymentType": "Regular Chapter 31" } @@ -280,7 +280,7 @@ "account": null, "amount": "$603.33", "bank": null, - "date": "2016-02-01T00:00:00.000-06:00", + "date": "2023-02-01T00:00:00.000-06:00", "paymentMethod": "Paper Check", "paymentType": "Regular Chapter 31" } @@ -293,14 +293,14 @@ "totalPages": 2, "totalEntries": 13 }, - "availableYears": [2017, 2016] + "availableYears": [2024, 2023] }, "links": { - "self": "https://staging-api.va.gov/mobile/v0/payment-history?startDate=2016-01-01T00:00:00-05:00&endDate=2016-12-31T23:59:59-05:00&page[size]=10&page[number]=2", - "first": "https://staging-api.va.gov/mobile/v0/payment-history?startDate=2016-01-01T00:00:00-05:00&endDate=2016-12-31T23:59:59-05:00&page[size]=10&page[number]=1", - "prev": "https://staging-api.va.gov/mobile/v0/payment-history?startDate=2016-01-01T00:00:00-05:00&endDate=2016-12-31T23:59:59-05:00&page[size]=10&page[number]=1", + "self": "https://staging-api.va.gov/mobile/v0/payment-history?startDate=2023-01-01T00:00:00-05:00&endDate=2023-12-31T23:59:59-05:00&page[size]=10&page[number]=2", + "first": "https://staging-api.va.gov/mobile/v0/payment-history?startDate=2023-01-01T00:00:00-05:00&endDate=2023-12-31T23:59:59-05:00&page[size]=10&page[number]=1", + "prev": "https://staging-api.va.gov/mobile/v0/payment-history?startDate=2023-01-01T00:00:00-05:00&endDate=2023-12-31T23:59:59-05:00&page[size]=10&page[number]=1", "next": null, - "last": "https://staging-api.va.gov/mobile/v0/payment-history?startDate=2016-01-01T00:00:00-05:00&endDate=2016-12-31T23:59:59-05:00&page[size]=10&page[number]=2" + "last": "https://staging-api.va.gov/mobile/v0/payment-history?startDate=2023-01-01T00:00:00-05:00&endDate=2023-12-31T23:59:59-05:00&page[size]=10&page[number]=2" } } } diff --git a/VAMobile/src/store/api/demo/mocks/secureMessaging.json b/VAMobile/src/store/api/demo/mocks/secureMessaging.json index bc3cb0c10f4..bb7f22f9eb6 100644 --- a/VAMobile/src/store/api/demo/mocks/secureMessaging.json +++ b/VAMobile/src/store/api/demo/mocks/secureMessaging.json @@ -131,7 +131,7 @@ "body": null, "hasAttachments": false, "attachment": false, - "sentDate": "2021-10-26T22:22:06.000Z", + "sentDate": "2024-10-26T22:22:06.000Z", "senderId": 1835650, "senderName": "MARTHA KAPLAN, MD", "recipientId": 523757, @@ -152,7 +152,7 @@ "body": null, "hasAttachments": true, "attachment": true, - "sentDate": "2021-10-26T22:21:11.000Z", + "sentDate": "2024-10-19T22:21:11.000Z", "senderId": 1835650, "senderName": "DIANA PERSSON, MD", "recipientId": 523757, @@ -173,7 +173,7 @@ "body": null, "hasAttachments": false, "attachment": false, - "sentDate": "2021-10-26T22:17:38.000Z", + "sentDate": "2024-08-26T22:17:38.000Z", "senderId": 1835650, "senderName": "SARAH KOTAGAL, MD", "recipientId": 523757, @@ -194,7 +194,7 @@ "body": null, "hasAttachments": false, "attachment": false, - "sentDate": "2021-10-26T22:14:45.000Z", + "sentDate": "2024-08-26T22:14:45.000Z", "senderId": 1835650, "senderName": "CHERYL RODGER, MD", "recipientId": 523757, @@ -215,7 +215,7 @@ "body": null, "hasAttachments": false, "attachment": false, - "sentDate": "2021-10-21T15:59:15.000Z", + "sentDate": "2024-07-21T15:59:15.000Z", "senderId": 1835650, "senderName": "VIJA A. RAVI, MD", "recipientId": 523757, @@ -236,7 +236,7 @@ "body": null, "hasAttachments": false, "attachment": false, - "sentDate": "2021-10-21T15:58:36.000Z", + "sentDate": "2024-07-21T15:58:36.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -257,7 +257,7 @@ "body": null, "hasAttachments": false, "attachment": false, - "sentDate": "2021-09-17T23:17:02.000Z", + "sentDate": "2024-06-17T23:17:02.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -278,7 +278,7 @@ "body": null, "hasAttachments": false, "attachment": false, - "sentDate": "2021-09-17T23:16:44.000Z", + "sentDate": "2024-06-17T23:16:44.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -299,7 +299,7 @@ "body": null, "hasAttachments": false, "attachment": false, - "sentDate": "2021-09-17T23:13:58.000Z", + "sentDate": "2024-04-17T23:13:58.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -320,7 +320,7 @@ "body": null, "hasAttachments": false, "attachment": false, - "sentDate": "2021-09-17T23:13:30.000Z", + "sentDate": "2024-02-17T23:13:30.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -341,7 +341,7 @@ "body": null, "hasAttachments": false, "attachment": false, - "sentDate": "2021-09-17T23:12:45.000Z", + "sentDate": "2024-02-17T23:12:45.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -362,7 +362,7 @@ "body": null, "hasAttachments": false, "attachment": false, - "sentDate": "2021-09-17T23:11:23.000Z", + "sentDate": "2024-02-17T23:11:23.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -405,7 +405,7 @@ "body": "Upset stomach is a common side effect of this medication.\nMild stomach pain is normal, but if you are having severe stomach pains, please let us know or seek in-person care.\tIf you need further assistance that isn't an emergency please call 8006982411 or 800-698-2411 or (800)698-2411, or (800)-698-2411 or 800 698 2411 or +8006982411 or +18006982411 or 1-800-698-2411. For more information on the side effects please go to one of these links: https://www.va.gov/ or https://rb.gy/riwea or https://va.gov or http://www.va.gov/ or https://www.va.gov/education/about-gi-bill-benefits/ or www.va.gov or www.google.com or google.com you can also email me at test@va.gov or mailto:test@va.gov or you can come to the office at iOS: http://maps.apple.com/?q=Mexican+Restaurant&sll=50.894967,4.341626&z=10&t=s or android: http://maps.google.com/?q=50.894967,4.341626", "hasAttachments": false, "attachment": false, - "sentDate": "2021-10-26T22:22:06.000Z", + "sentDate": "2024-10-26T22:22:06.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -454,7 +454,7 @@ "body": null, "hasAttachments": false, "attachment": false, - "sentDate": "2021-11-17T01:00:53.000Z", + "sentDate": "2024-11-17T01:00:53.000Z", "senderId": 523757, "senderName": "FREEMAN, MELVIN V", "recipientId": 1918816, @@ -479,7 +479,7 @@ "body": "Upset stomach is a common side effect of this medication. Mild stomach pain is normal, but if you are having severe stomach pains, please let us know or seek in-person care. If you need further assistance that isn't an emergency please call 8006982411 or 800-698-2411 or (800)698-2411, or (800)-698-2411 or 800 698 2411 or +8006982411 or +18006982411 or 1-800-698-2411. For more information on the side effects please go to one of these links: https://www.va.gov/ or https://rb.gy/riwea or https://va.gov or http://www.va.gov/ or https://www.va.gov/education/about-gi-bill-benefits/ or www.va.gov or www.google.com or google.com you can also email me at test@va.gov or mailto:test@va.gov or you can come to the office at iOS: http://maps.apple.com/?q=Mexican+Restaurant&sll=50.894967,4.341626&z=10&t=s or android: http://maps.google.com/?q=50.894967,4.341626", "hasAttachments": false, "attachment": false, - "sentDate": "2021-10-26T22:22:06.000Z", + "sentDate": "2024-10-26T22:22:06.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -503,7 +503,7 @@ "body": "Special character testing\nAmpersand: &\nDouble Quotes: “\nSingle Quote: ’", "hasAttachments": true, "attachment": true, - "sentDate": "2021-10-26T22:21:11.000Z", + "sentDate": "2024-10-19T22:21:11.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -553,7 +553,7 @@ "body": "As discussed in your last visit, we recommend getting a vaccine booster to improve your immunity to COVID-19. Please let us know if you have any other questions.", "hasAttachments": false, "attachment": false, - "sentDate": "2021-10-26T22:17:38.000Z", + "sentDate": "2024-08-26T22:17:38.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -584,7 +584,7 @@ "body": "See you at your appointment. Please do not forget to fast for at least 12 hours before your blood test.", "hasAttachments": false, "attachment": false, - "sentDate": "2021-10-26T22:14:45.000Z", + "sentDate": "2024-08-26T22:14:45.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -615,7 +615,7 @@ "body": "Boosters are recommended and to improve your prevention.", "hasAttachments": false, "attachment": false, - "sentDate": "2021-10-21T15:59:15.000Z", + "sentDate": "2024-07-21T15:59:15.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -646,7 +646,7 @@ "body": "See you at your appointment. Please do not forget to fast.", "hasAttachments": false, "attachment": false, - "sentDate": "2021-10-21T15:58:36.000Z", + "sentDate": "2024-07-21T15:58:36.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -674,7 +674,7 @@ "body": "Please fast for at least 12 hours before your upcoming visit on October 19th. Eating or drinking anything besides water will have an effect on your blood lab results. Thank you. If you need further assistance that isn't an emergency please call 8006982411 or 800-698-2411 or (800)698-2411, or (800)-698-2411 or 800 698 2411 or +8006982411 or +18006982411 or 1-800-698-2411. For more information on the side effects please go to one of these links: https://www.va.gov/ or https://rb.gy/riwea or https://va.gov or http://www.va.gov/ or https://www.va.gov/education/about-gi-bill-benefits/ or www.va.gov or www.google.com or google.com you can also email me at test@va.gov or mailto:test@va.gov or you can come to the office at iOS: http://maps.apple.com/?q=Mexican+Restaurant&sll=50.894967,4.341626&z=10&t=s or android: http://maps.google.com/?q=50.894967,4.341626", "hasAttachments": true, "attachment": true, - "sentDate": "2021-10-21T15:58:36.000Z", + "sentDate": "2024-10-21T15:58:36.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -722,7 +722,7 @@ "body": "Testing ", "hasAttachments": false, "attachment": false, - "sentDate": "2021-10-15T22:55:06.000Z", + "sentDate": "2024-10-15T22:55:06.000Z", "senderId": 523757, "senderName": "FREEMAN, MELVIN V", "recipientId": 1918816, @@ -743,7 +743,7 @@ "body": "Please fast for at least 12 hours before your upcoming visit on October 19th. Eating or drinking anything besides water will have an effect on your blood lab results. Thank you. If you need further assistance that isn't an emergency please call 8006982411 or 800-698-2411 or (800)698-2411, or (800)-698-2411 or 800 698 2411 or +8006982411 or +18006982411 or 1-800-698-2411. For more information on the side effects please go to one of these links: https://www.va.gov/ or https://rb.gy/riwea or https://va.gov or http://www.va.gov/ or https://www.va.gov/education/about-gi-bill-benefits/ or www.va.gov or www.google.com or google.com you can also email me at test@va.gov or mailto:test@va.gov or you can come to the office at iOS: http://maps.apple.com/?q=Mexican+Restaurant&sll=50.894967,4.341626&z=10&t=s or android: http://maps.google.com/?q=50.894967,4.341626", "hasAttachments": true, "attachment": true, - "sentDate": "2021-10-01T22:23:13.000Z", + "sentDate": "2024-10-01T22:23:13.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -767,7 +767,7 @@ "body": "test", "hasAttachments": false, "attachment": false, - "sentDate": "2021-09-17T23:17:02.000Z", + "sentDate": "2024-06-17T23:17:02.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -798,7 +798,7 @@ "body": "test reply", "hasAttachments": false, "attachment": false, - "sentDate": "2021-09-17T23:16:44.000Z", + "sentDate": "2024-06-17T23:16:44.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -829,7 +829,7 @@ "body": "test reply", "hasAttachments": false, "attachment": false, - "sentDate": "2021-09-17T23:13:58.000Z", + "sentDate": "2024-04-17T23:13:58.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -860,7 +860,7 @@ "body": "test", "hasAttachments": false, "attachment": false, - "sentDate": "2021-09-17T23:13:30.000Z", + "sentDate": "2024-02-17T23:13:30.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -891,7 +891,7 @@ "body": "test", "hasAttachments": false, "attachment": false, - "sentDate": "2021-09-17T23:12:45.000Z", + "sentDate": "2024-02-17T23:12:45.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -922,7 +922,7 @@ "body": "test", "hasAttachments": false, "attachment": false, - "sentDate": "2021-09-17T23:11:23.000Z", + "sentDate": "2024-02-17T23:11:23.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -971,7 +971,7 @@ "body": null, "hasAttachments": false, "attachment": false, - "sentDate": "2021-11-16T21:29:11.000Z", + "sentDate": "2024-11-16T21:29:11.000Z", "senderId": 523757, "senderName": "FREEMAN, MELVIN V", "recipientId": 1918816, @@ -992,7 +992,7 @@ "body": null, "hasAttachments": false, "attachment": false, - "sentDate": "2021-11-03T16:14:24.000Z", + "sentDate": "2024-11-03T16:14:24.000Z", "senderId": 523757, "senderName": "FREEMAN, MELVIN V", "recipientId": 1918816, @@ -1013,7 +1013,7 @@ "body": null, "hasAttachments": true, "attachment": true, - "sentDate": "2021-11-03T16:13:34.000Z", + "sentDate": "2024-11-03T16:13:34.000Z", "senderId": 523757, "senderName": "FREEMAN, MELVIN V", "recipientId": 1918816, @@ -1034,7 +1034,7 @@ "body": null, "hasAttachments": true, "attachment": true, - "sentDate": "2021-11-03T16:05:23.000Z", + "sentDate": "2024-11-03T16:05:23.000Z", "senderId": 523757, "senderName": "FREEMAN, MELVIN V", "recipientId": 1918816, @@ -1055,7 +1055,7 @@ "body": null, "hasAttachments": false, "attachment": false, - "sentDate": "2021-10-28T18:47:43.000Z", + "sentDate": "2024-10-28T18:47:43.000Z", "senderId": 523757, "senderName": "FREEMAN, MELVIN V", "recipientId": 1918816, @@ -1098,7 +1098,7 @@ "body": "Thanks for the reminder, Dr. Ratana! Is drinking flavored water OK or should I just stick to regular water?\n\nThanks,\nMelvin Freeman\nUSMC Veteran", "hasAttachments": false, "attachment": false, - "sentDate": "2021-11-16T21:29:11.000Z", + "sentDate": "2024-11-16T21:29:11.000Z", "senderId": 523757, "senderName": "FREEMAN, MELVIN V", "recipientId": 1918816, @@ -1127,7 +1127,7 @@ "body": "Melvin Freeman\nUSMC Veteran", "hasAttachments": false, "attachment": false, - "sentDate": "2021-11-13T00:07:21.000Z", + "sentDate": "2024-11-13T00:07:21.000Z", "senderId": 523757, "senderName": "FREEMAN, MELVIN V", "recipientId": 1918816, @@ -1148,7 +1148,7 @@ "body": "See you at your appointment. Please do not forget to fast.", "hasAttachments": false, "attachment": false, - "sentDate": "2021-10-21T15:58:36.000Z", + "sentDate": "2024-10-21T15:58:36.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -1169,7 +1169,7 @@ "body": "Testing ", "hasAttachments": true, "attachment": true, - "sentDate": "2021-10-15T22:55:06.000Z", + "sentDate": "2024-10-15T22:55:06.000Z", "senderId": 523757, "senderName": "FREEMAN, MELVIN V", "recipientId": 1918816, @@ -1190,7 +1190,7 @@ "body": "Please fast for at least 12 hours before your upcoming visit on October 19th. Eating or drinking anything besides water will have an effect on your blood lab results. Thank you.", "hasAttachments": false, "attachment": false, - "sentDate": "2021-10-01T22:23:13.000Z", + "sentDate": "2024-10-01T22:23:13.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -1214,7 +1214,7 @@ "body": "Simple reply\n\n\n\nMelvin Freeman\nUSMC Veteran", "hasAttachments": false, "attachment": false, - "sentDate": "2021-11-03T16:14:24.000Z", + "sentDate": "2024-11-03T16:14:24.000Z", "senderId": 523757, "senderName": "FREEMAN, MELVIN V", "recipientId": 1918816, @@ -1243,7 +1243,7 @@ "body": "Reply \n\n\n\nMelvin Freeman\nUSMC Veteran", "hasAttachments": false, "attachment": false, - "sentDate": "2021-11-03T16:06:13.000Z", + "sentDate": "2024-11-03T16:06:13.000Z", "senderId": 523757, "senderName": "FREEMAN, MELVIN V", "recipientId": 1918816, @@ -1264,7 +1264,7 @@ "body": "A reply. \n\n\n\nMelvin Freeman\nUSMC Veteran", "hasAttachments": false, "attachment": false, - "sentDate": "2021-10-29T18:00:41.000Z", + "sentDate": "2024-10-29T18:00:41.000Z", "senderId": 523757, "senderName": "FREEMAN, MELVIN V", "recipientId": 1918816, @@ -1285,7 +1285,7 @@ "body": "Upset stomach is a common side effect of this medication. Mild stomach pain is normal, but if you are having severe stomach pains, please let us know or seek in-person care. If you need further assistance that isn't an emergency please call 8006982411 or 800-698-2411 or (800)698-2411, or (800)-698-2411 or 800 698 2411 or +8006982411 or +18006982411 or 1-800-698-2411. For more information on the side effects please go to one of these links: https://www.va.gov/ or https://rb.gy/riwea or https://va.gov or http://www.va.gov/ or https://www.va.gov/education/about-gi-bill-benefits/ or www.va.gov or www.google.com or google.com you can also email me at test@va.gov or mailto:test@va.gov or you can come to the office at iOS: http://maps.apple.com/?q=Mexican+Restaurant&sll=50.894967,4.341626&z=10&t=s or android: http://maps.google.com/?q=50.894967,4.341626", "hasAttachments": false, "attachment": false, - "sentDate": "2021-10-26T22:22:06.000Z", + "sentDate": "2024-10-26T22:22:06.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, @@ -1309,7 +1309,7 @@ "body": "Android smoke\n\n\n\nMelvin Freeman\nUSMC Veteran", "hasAttachments": true, "attachment": true, - "sentDate": "2021-11-03T16:13:34.000Z", + "sentDate": "2024-11-03T16:13:34.000Z", "senderId": 523757, "senderName": "FREEMAN, MELVIN V", "recipientId": 1918816, @@ -1359,7 +1359,7 @@ "body": "Smoke\n\n\n\nMelvin Freeman\nUSMC Veteran", "hasAttachments": true, "attachment": true, - "sentDate": "2021-11-03T16:05:23.000Z", + "sentDate": "2024-11-03T16:05:23.000Z", "senderId": 523757, "senderName": "FREEMAN, MELVIN V", "recipientId": 1918816, @@ -1409,7 +1409,7 @@ "body": "Review 1\n\n\n\nMelvin Freeman\nUSMC Veteran\n", "hasAttachments": false, "attachment": false, - "sentDate": "2021-10-28T18:47:43.000Z", + "sentDate": "2024-10-28T18:47:43.000Z", "senderId": 523757, "senderName": "FREEMAN, MELVIN V", "recipientId": 1918816, @@ -1478,7 +1478,7 @@ "body": null, "hasAttachments": false, "attachment": false, - "sentDate": "2021-11-17T01:00:53.000Z", + "sentDate": "2024-11-17T01:00:53.000Z", "senderId": 523757, "senderName": "FREEMAN, MELVIN V", "recipientId": 1918816, @@ -1499,7 +1499,7 @@ "body": null, "hasAttachments": false, "attachment": false, - "sentDate": "2021-11-16T17:19:04.000Z", + "sentDate": "2024-11-16T17:19:04.000Z", "senderId": 523757, "senderName": "FREEMAN, MELVIN V", "recipientId": 1918816, @@ -1765,7 +1765,7 @@ "body": "Simple reply\n\n\n\nMelvin Freeman\nUSMC Veteran", "hasAttachments": false, "attachment": false, - "sentDate": "2021-11-03T16:14:24.000Z", + "sentDate": "2024-11-03T16:14:24.000Z", "senderId": 523757, "senderName": "FREEMAN, MELVIN V", "recipientId": 1918816, @@ -1786,7 +1786,7 @@ "body": "Reply \n\n\n\nMelvin Freeman\nUSMC Veteran", "hasAttachments": false, "attachment": false, - "sentDate": "2021-11-03T16:06:13.000Z", + "sentDate": "2024-11-03T16:06:13.000Z", "senderId": 523757, "senderName": "FREEMAN, MELVIN V", "recipientId": 1918816, @@ -1807,7 +1807,7 @@ "body": "A reply. \n\n\n\nMelvin Freeman\nUSMC Veteran", "hasAttachments": false, "attachment": false, - "sentDate": "2021-10-29T18:00:41.000Z", + "sentDate": "2024-10-29T18:00:41.000Z", "senderId": 523757, "senderName": "FREEMAN, MELVIN V", "recipientId": 1918816, @@ -1828,7 +1828,7 @@ "body": "Upset stomach is a common side effect of this medication. Mild stomach pain is normal, but if you are having severe stomach pains, please let us know or seek in-person care. If you need further assistance that isn't an emergency please call 8006982411 or 800-698-2411 or (800)698-2411, or (800)-698-2411 or 800 698 2411 or +8006982411 or +18006982411 or 1-800-698-2411. For more information on the side effects please go to one of these links: https://www.va.gov/ or https://rb.gy/riwea or https://va.gov or http://www.va.gov/ or https://www.va.gov/education/about-gi-bill-benefits/ or www.va.gov or www.google.com or google.com you can also email me at test@va.gov or mailto:test@va.gov or you can come to the office at iOS: http://maps.apple.com/?q=Mexican+Restaurant&sll=50.894967,4.341626&z=10&t=s or android: http://maps.google.com/?q=50.894967,4.341626", "hasAttachments": false, "attachment": false, - "sentDate": "2021-10-26T22:22:06.000Z", + "sentDate": "2024-10-26T22:22:06.000Z", "senderId": 1835650, "senderName": "RATANA, NARIN ", "recipientId": 523757, diff --git a/VAMobile/src/store/api/demo/payments.ts b/VAMobile/src/store/api/demo/payments.ts index ed9ae90c6b4..a4013b2d2de 100644 --- a/VAMobile/src/store/api/demo/payments.ts +++ b/VAMobile/src/store/api/demo/payments.ts @@ -5,15 +5,15 @@ import { Params } from '..' import { DemoStore } from './store' type PaymentsPageNumber = '1' & '2' -type PaymentsYearNumber = '2017' | '2016' +type PaymentsYearNumber = '2024' | '2023' /** * Type denoting the demo data store */ export type PaymenDemoStore = { '/v0/payment-history': { - '2017': { '1': PaymentsGetData } - '2016': { + '2024': { '1': PaymentsGetData } + '2023': { '1': PaymentsGetData '2': PaymentsGetData } @@ -27,7 +27,7 @@ export type PaymentsDemoReturnTypes = undefined | PaymentsGetData export const getPaymentsHistory = (store: DemoStore, params: Params, endpoint: string): PaymentsGetData => { const page = params['page[number]'] || '1' - const year = params.startDate ? getFormattedDate(params.startDate.toString(), 'yyyy') : '2017' + const year = params.startDate ? getFormattedDate(params.startDate.toString(), 'yyyy') : '2024' return store[endpoint as keyof PaymenDemoStore][year as PaymentsYearNumber][ page as PaymentsPageNumber ] as PaymentsGetData From c0c705f6ef206370d69237c08c7939579edc9181 Mon Sep 17 00:00:00 2001 From: Jessica Woodin <82840483+jessicawoodin@users.noreply.github.com> Date: Thu, 31 Oct 2024 16:39:41 +0000 Subject: [PATCH 11/36] Update Figma instructions for Experience Teams --- .../documentation/design/About/designers.md | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/VAMobile/documentation/design/About/designers.md b/VAMobile/documentation/design/About/designers.md index 0c0adf3737f..8f8db755633 100644 --- a/VAMobile/documentation/design/About/designers.md +++ b/VAMobile/documentation/design/About/designers.md @@ -48,12 +48,12 @@ Once you’ve loaded the library, you should be able to access everything in it ## Figma -VA mobile design teams at Ad Hoc use Figma to view, share, and collaborate on our work. Only designers actively working on products at VA can be added to Figma. Once you have been added, you may access the libraries in the cloud. +VA mobile app design teams use Figma to view, share, and collaborate on our work. Currently, only designers at Ad Hoc can be added as Editors to the Mobile App team's Figma account. If you're working on an external Experience Team and need access to our files, you can follow the steps below to be added as a Viewer. ### Get added to Figma 1. Go to [figma.com](https://www.figma.com/) and [create a Figma account](https://help.figma.com/hc/en-us/articles/360039811114-Create-a-Figma-account) -2. In the [#va-mobile-app-shared-systems](https://dsva.slack.com/archives/C05HF9ULKJ4) channel in Slack, ping a Figma admin (currently Jen Ecker and Jessica Woodin) requesting to be added. +2. In the [#va-mobile-app-shared-systems](https://dsva.slack.com/archives/C05HF9ULKJ4) channel in Slack, ping a Figma admin (currently Kelly Lein, Jessica Woodin, and Holly Collier) requesting to be added. 3. Receive the invite via email and accept the invitation. 4. Boom, you’re in! @@ -65,4 +65,15 @@ Figma contains a few important features that help teams work together: * You receive library updates automatically (a big advantage of using Figma) * You can see what everyone else is working on in the VA workspace * Developers can inspect any element on a page -* You can [create a branch](https://department-of-veterans-affairs.github.io/va-mobile-app/docs/UX/How-We-Work/figma-branching) of your file at any time \ No newline at end of file +* You can [create a branch](https://department-of-veterans-affairs.github.io/va-mobile-app/docs/UX/How-We-Work/figma-branching) of your file at any time + +### Designers on Experience Teams +Currently, designers on Experience Teams can only be added as Viewers in the **VA Mobile App's Figma account**. In order to use the Mobile App libraries in the **VA.gov Platform team's Figma account**, designers should follow the steps below. + +1. In the [VA Mobile App team's Figma account](https://www.figma.com/files/827597988283174959/team/1114266503868297401), open the [Component Library](https://www.figma.com/design/Zzt8z60hCtdEzXx2GFWghH/%F0%9F%93%90-Component-Library---Design-System---VA-Mobile?m=auto&t=h1T1ozCx1hqbFSDa-7) and/or [Flagship Library](https://www.figma.com/design/QVLPB3eOunmKrgQOuOt0SU/Flagship-Library---%F0%9F%93%90-Resource---VA-Mobile?m=auto&t=h1T1ozCx1hqbFSDa-7). +2. Find the component you need. +3. Copy the component. +4. In the [VA.gov Platform team's Figma account](https://www.figma.com/files/team/1278375444205744118/all-projects), open your working file. +5. Paste the component into your working file. + +If you have questions or need assistance, reach out in the [#va-mobile-app-shared-systems](https://dsva.slack.com/archives/C05HF9ULKJ4) channel. \ No newline at end of file From c5d48d58e7b3bcfb08d2d1dc99faf63716c2eadc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 31 Oct 2024 12:50:54 -0700 Subject: [PATCH 12/36] Bump react-native-haptic-feedback from 2.2.0 to 2.3.3 in /VAMobile (#9873) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Dylan Nienberg Co-authored-by: Theo Bentum --- VAMobile/ios/Podfile.lock | 31 +++++++++++++++++++++++++------ VAMobile/jest/testSetup.ts | 4 ++++ VAMobile/package.json | 2 +- VAMobile/yarn.lock | 8 ++++---- 4 files changed, 34 insertions(+), 11 deletions(-) diff --git a/VAMobile/ios/Podfile.lock b/VAMobile/ios/Podfile.lock index 6fc01d9a335..822cbb93c65 100644 --- a/VAMobile/ios/Podfile.lock +++ b/VAMobile/ios/Podfile.lock @@ -1713,7 +1713,7 @@ PODS: - ReactNativeWebPFormat (1.2.0): - React-Core - SDWebImageWebPCoder - - RNCAsyncStorage (1.23.1): + - RNCAsyncStorage (1.24.0): - React-Core - RNFBAnalytics (18.9.0): - Firebase/AnalyticsWithoutAdIdSupport (= 10.20.0) @@ -1765,10 +1765,29 @@ PODS: - Yoga - RNKeychain (8.2.0): - React-Core - - RNLocalize (3.1.0): + - RNLocalize (3.2.1): - React-Core - - RNReactNativeHapticFeedback (2.2.0): + - RNReactNativeHapticFeedback (2.3.3): + - DoubleConversion + - glog + - hermes-engine + - RCT-Folly (= 2024.01.01.00) + - RCTRequired + - RCTTypeSafety - React-Core + - React-debug + - React-Fabric + - React-featureflags + - React-graphics + - React-ImageManager + - React-NativeModulesApple + - React-RCTFabric + - React-rendererdebug + - React-utils + - ReactCodegen + - ReactCommon/turbomodule/bridging + - ReactCommon/turbomodule/core + - Yoga - RNScreens (3.34.0): - DoubleConversion - glog @@ -2194,7 +2213,7 @@ SPEC CHECKSUMS: ReactCommon: 289214026502e6a93484f4a46bcc0efa4f3f2864 ReactNativeKeyboardManager: 60292dbac467c49841a7d69588208ec4a4f7b2a2 ReactNativeWebPFormat: f5f043cc9ded052e535c3869ec341f91ba5a67c5 - RNCAsyncStorage: 826b603ae9c0f88b5ac4e956801f755109fa4d5c + RNCAsyncStorage: ec53e44dc3e75b44aa2a9f37618a49c3bc080a7a RNFBAnalytics: 60ffe0c9c80f404246e384d0d2076e35dd129b16 RNFBApp: a3e139715386fe79a09c387f2dbeb6890eb05b39 RNFBCrashlytics: e6d595ed2619e5e8ee3cdfd12c6a62e470280a03 @@ -2204,8 +2223,8 @@ SPEC CHECKSUMS: RNFileViewer: ce7ca3ac370e18554d35d6355cffd7c30437c592 RNGestureHandler: 939f21fabf5d45a725c0bf175eb819dd25cf2e70 RNKeychain: bfe3d12bf4620fe488771c414530bf16e88f3678 - RNLocalize: e8694475db034bf601e17bd3dfa8986565e769eb - RNReactNativeHapticFeedback: ec56a5f81c3941206fd85625fa669ffc7b4545f9 + RNLocalize: 4f22418187ecd5ca693231093ff1d912d1b3c9bc + RNReactNativeHapticFeedback: 0d591ea1e150f36cb96d868d4e8d77272243d78a RNScreens: 19719a9c326e925498ac3b2d35c4e50fe87afc06 RNSVG: 963a95f1f5d512a13d11ffd50d351c87fb5c6890 SDWebImage: 8a6b7b160b4d710e2a22b6900e25301075c34cb3 diff --git a/VAMobile/jest/testSetup.ts b/VAMobile/jest/testSetup.ts index 89fa935594f..adaa5e09744 100644 --- a/VAMobile/jest/testSetup.ts +++ b/VAMobile/jest/testSetup.ts @@ -315,3 +315,7 @@ jest.mock('react-native-webview', () => { WebView: View, } }) + +jest.mock('react-native-haptic-feedback', () => ({ + HapticFeedbackTypes: {}, +})) diff --git a/VAMobile/package.json b/VAMobile/package.json index 55706892da5..3bae62f556b 100644 --- a/VAMobile/package.json +++ b/VAMobile/package.json @@ -70,7 +70,7 @@ "react-native-dotenv": "^3.4.11", "react-native-file-viewer": "^2.1.4", "react-native-gesture-handler": "~2.18.1", - "react-native-haptic-feedback": "^2.2.0", + "react-native-haptic-feedback": "^2.3.3", "react-native-image-picker": "^7.1.2", "react-native-keyboard-manager": "^6.5.11-2", "react-native-keychain": "^8.2.0", diff --git a/VAMobile/yarn.lock b/VAMobile/yarn.lock index 465e30e606e..92b10ca6e9f 100644 --- a/VAMobile/yarn.lock +++ b/VAMobile/yarn.lock @@ -9252,10 +9252,10 @@ react-native-gesture-handler@~2.18.1: invariant "^2.2.4" prop-types "^15.7.2" -react-native-haptic-feedback@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/react-native-haptic-feedback/-/react-native-haptic-feedback-2.2.0.tgz#bc46edd1f053265bfbe6c32487cbce074e099429" - integrity sha512-3tqJOjCguWhIrX0nkURn4yw6kXdsSDjjrvZCRjKXYGlL28hdQmoW2okAHduDTD9FWj9lA+lHgwFWgGs4aFNN7A== +react-native-haptic-feedback@^2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/react-native-haptic-feedback/-/react-native-haptic-feedback-2.3.3.tgz#88b6876e91399a69bd1b551fe1681b2f3dc1214e" + integrity sha512-svS4D5PxfNv8o68m9ahWfwje5NqukM3qLS48+WTdhbDkNUkOhP9rDfDSRHzlhk4zq+ISjyw95EhLeh8NkKX5vQ== react-native-image-picker@^7.1.2: version "7.1.2" From 93b74f3c294874bb0ac0cb3fabb5ff549305b96b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 4 Nov 2024 08:22:22 -0800 Subject: [PATCH 13/36] Bump the unit-tests group in /VAMobile with 2 updates (#10096) Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- VAMobile/package.json | 4 ++-- VAMobile/yarn.lock | 16 ++++++++-------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/VAMobile/package.json b/VAMobile/package.json index 3bae62f556b..aaf8311505e 100644 --- a/VAMobile/package.json +++ b/VAMobile/package.json @@ -100,8 +100,8 @@ "@react-native/eslint-config": "^0.75.3", "@react-native/metro-config": "^0.75.3", "@react-native/typescript-config": "0.76.0", - "@testing-library/jest-dom": "^6.6.2", - "@testing-library/react-native": "^12.8.0", + "@testing-library/jest-dom": "^6.6.3", + "@testing-library/react-native": "^12.8.1", "@trivago/prettier-plugin-sort-imports": "^4.3.0", "@tsconfig/react-native": "^3.0.5", "@types/detox": "^18.1.0", diff --git a/VAMobile/yarn.lock b/VAMobile/yarn.lock index 92b10ca6e9f..028396cb42d 100644 --- a/VAMobile/yarn.lock +++ b/VAMobile/yarn.lock @@ -2545,10 +2545,10 @@ dependencies: "@tanstack/query-core" "5.59.13" -"@testing-library/jest-dom@^6.6.2": - version "6.6.2" - resolved "https://registry.yarnpkg.com/@testing-library/jest-dom/-/jest-dom-6.6.2.tgz#8186aa9a07263adef9cc5a59a4772db8c31f4a5b" - integrity sha512-P6GJD4yqc9jZLbe98j/EkyQDTPgqftohZF5FBkHY5BUERZmcf4HeO2k0XaefEg329ux2p21i1A1DmyQ1kKw2Jw== +"@testing-library/jest-dom@^6.6.3": + version "6.6.3" + resolved "https://registry.yarnpkg.com/@testing-library/jest-dom/-/jest-dom-6.6.3.tgz#26ba906cf928c0f8172e182c6fe214eb4f9f2bd2" + integrity sha512-IteBhl4XqYNkM54f4ejhLRJiZNqcSCoXUOG2CPK7qbD322KjQozM4kHQOfkG2oln9b9HTYqs+Sae8vBATubxxA== dependencies: "@adobe/css-tools" "^4.4.0" aria-query "^5.0.0" @@ -2558,10 +2558,10 @@ lodash "^4.17.21" redent "^3.0.0" -"@testing-library/react-native@^12.8.0": - version "12.8.0" - resolved "https://registry.yarnpkg.com/@testing-library/react-native/-/react-native-12.8.0.tgz#696e9ed09666c9cecd460160d47a52bfed28da09" - integrity sha512-peMIg+tKWGiR2GV4V7Zw74Nnn97Goqws1DrZleyj9NQXbK13FZIKxRBNM4tf1z4rAS8KE9nJ2nLXo0HFRBcqpw== +"@testing-library/react-native@^12.8.1": + version "12.8.1" + resolved "https://registry.yarnpkg.com/@testing-library/react-native/-/react-native-12.8.1.tgz#833c73a825aa87b9127717a44d4aeee44b59a963" + integrity sha512-/7PIFCpeqAD3j7nzKQhZtm1T6RR/O/tB1We7JHtYP5RpTBj8rPitEpt6xGrD8R0ymOh+DxDKK7Zovfv5uDSRWg== dependencies: jest-matcher-utils "^29.7.0" pretty-format "^29.7.0" From 9ab707280fbfe13f94fb6133a52852161e120d87 Mon Sep 17 00:00:00 2001 From: Rachael Bontrager Date: Tue, 5 Nov 2024 10:38:20 -0600 Subject: [PATCH 14/36] CU/10042-rachael-detox-change-send-to-testRail-job (#10043) --- .github/workflows/e2e_android.yml | 10 ++---- .github/workflows/e2e_ios.yml | 13 ++------ .github/workflows/update_testrail_results.yml | 31 ++++++++++--------- 3 files changed, 21 insertions(+), 33 deletions(-) diff --git a/.github/workflows/e2e_android.yml b/.github/workflows/e2e_android.yml index c7b675e39a0..20602023e2a 100644 --- a/.github/workflows/e2e_android.yml +++ b/.github/workflows/e2e_android.yml @@ -242,7 +242,7 @@ jobs: if: failure() || success() uses: actions/upload-artifact@v4 with: - name: ${{matrix.testsuite}}-e2e-junit + name: e2e-junit-${{matrix.testsuite}} path: VAMobile/e2e/test_reports/e2e-junit.xml - name: Upload artifacts on failure @@ -349,16 +349,10 @@ jobs: matrix_send_test_results_to_testrail: if: (!cancelled()) && github.event.inputs.run_testRail == 'true' - needs: [matrix-e2e-android, output_detox_tests_to_run] - strategy: - fail-fast: false - max-parallel: 1 - matrix: - testsuite: ${{ fromJSON(needs.output_detox_tests_to_run.outputs.output1) }} + needs: [matrix-e2e-android, output_detox_tests_to_run] name: Update testRail Results uses: ./.github/workflows/update_testrail_results.yml with: - test_names: "${{matrix.testsuite}}" testRail_name: ${{ inputs.testRail_name }} test_OS_name: "Android" secrets: inherit diff --git a/.github/workflows/e2e_ios.yml b/.github/workflows/e2e_ios.yml index 00822a7b1e3..5b622856147 100644 --- a/.github/workflows/e2e_ios.yml +++ b/.github/workflows/e2e_ios.yml @@ -139,7 +139,6 @@ jobs: IOS_PROJ_FILE: 'VAMobile.xcodeproj' # Xcode scheme to build IOS_SCHEME: 'VAMobileRelease' - strategy: fail-fast: false matrix: @@ -220,8 +219,8 @@ jobs: if: failure() || success() uses: actions/upload-artifact@v4 with: - name: ${{matrix.testsuite}}-e2e-junit - path: VAMobile/e2e/test_reports/e2e-junit.xml + name: e2e-junit-${{matrix.testsuite}} + path: VAMobile/e2e/test_reports/e2e-junit.xml - name: Upload artifacts on failure if: failure() || steps.run_e2e_tests.outcome == 'failure' @@ -328,16 +327,10 @@ jobs: matrix_send_test_results_to_testrail: if: (!cancelled()) && github.event.inputs.run_testRail == 'true' - needs: [matrix-e2e-ios, output_detox_tests_to_run] - strategy: - fail-fast: false - max-parallel: 1 - matrix: - testsuite: ${{ fromJSON(needs.output_detox_tests_to_run.outputs.output1) }} + needs: [matrix-e2e-ios, output_detox_tests_to_run] name: Update testRail Results uses: ./.github/workflows/update_testrail_results.yml with: - test_names: "${{matrix.testsuite}}" testRail_name: ${{ inputs.testRail_name }} test_OS_name: "iOS" secrets: inherit diff --git a/.github/workflows/update_testrail_results.yml b/.github/workflows/update_testrail_results.yml index a6bf3b822a5..e2b4ebf3cd6 100644 --- a/.github/workflows/update_testrail_results.yml +++ b/.github/workflows/update_testrail_results.yml @@ -10,9 +10,6 @@ on: description: "TestRail api key" required: true inputs: - test_names: - type: string - default: '' testRail_name: type: string default: '' @@ -39,7 +36,7 @@ jobs: - name: Download junit file uses: actions/download-artifact@v4 with: - name: ${{inputs.test_names}}-e2e-junit + pattern: e2e-junit-* - name: 'Find run ID in testRail' id: run-id-selection run: | @@ -86,15 +83,19 @@ jobs: python-version: '3.x' - name: TestRail CLI upload results if: always() - run: | + run: | pip install trcli - trcli -y \ - -h https://dsvavsp.testrail.io/ \ - --project "VA Mobile App" \ - --project-id 29 \ - -u ${{secrets.TEST_RAIL_USER}} \ - -k ${{secrets.TEST_RAIL_KEY}} \ - parse_junit \ - --run-id ${{steps.run-id-selection.outputs.TEST_RUN_ID}} \ - --section-id ${{steps.section-id-selection.outputs.SECTION_RUN_ID}} \ - -f "/home/runner/work/va-mobile-app/va-mobile-app/e2e-junit.xml" + for dir in /home/runner/work/va-mobile-app/va-mobile-app/e2e-junit-*/; do + echo "$dir" + trcli -y \ + -h https://dsvavsp.testrail.io/ \ + --project "VA Mobile App" \ + --project-id 29 \ + -u ${{secrets.TEST_RAIL_USER}} \ + -k ${{secrets.TEST_RAIL_KEY}} \ + parse_junit \ + --run-id ${{steps.run-id-selection.outputs.TEST_RUN_ID}} \ + --section-id ${{steps.section-id-selection.outputs.SECTION_RUN_ID}} \ + -f "${dir}e2e-junit.xml" + done + From bea67752ba5eb26cad0785d757ad6986f3443251 Mon Sep 17 00:00:00 2001 From: Jon Bindbeutel Date: Tue, 5 Nov 2024 13:33:55 -0500 Subject: [PATCH 15/36] feature/9265-Binny-PushLoginFlowChanges (#9864) --- .../e2e/tests/AvailabilityFramework.e2e.ts | 14 +- VAMobile/e2e/tests/utils.ts | 8 ++ VAMobile/src/App.tsx | 25 +++- .../NotificationManager.tsx | 8 +- .../BiometricsPreferenceScreen.test.tsx | 99 --------------- .../NotificationsSettingsScreen.test.tsx | 22 +++- .../NotificationsSettingsScreen.tsx | 90 +++++++++---- .../BiometricsPreferenceScreen.test.tsx | 120 ++++++++++++++++++ .../BiometricsPreferenceScreen.tsx | 20 ++- .../BiometricsPreferenceScreen/index.ts | 0 .../RequestNotificationsScreen.test.tsx | 71 +++++++++++ .../RequestNotificationsScreen.tsx | 65 ++++++++++ VAMobile/src/store/slices/authSlice.ts | 69 +++++++++- VAMobile/src/translations/en/common.json | 22 ++-- 14 files changed, 461 insertions(+), 172 deletions(-) delete mode 100644 VAMobile/src/screens/BiometricsPreferenceScreen/BiometricsPreferenceScreen.test.tsx create mode 100644 VAMobile/src/screens/auth/BiometricsPreferenceScreen/BiometricsPreferenceScreen.test.tsx rename VAMobile/src/screens/{ => auth}/BiometricsPreferenceScreen/BiometricsPreferenceScreen.tsx (81%) rename VAMobile/src/screens/{ => auth}/BiometricsPreferenceScreen/index.ts (100%) create mode 100644 VAMobile/src/screens/auth/RequestNotifications/RequestNotificationsScreen.test.tsx create mode 100644 VAMobile/src/screens/auth/RequestNotifications/RequestNotificationsScreen.tsx diff --git a/VAMobile/e2e/tests/AvailabilityFramework.e2e.ts b/VAMobile/e2e/tests/AvailabilityFramework.e2e.ts index 064495a41be..c838ec428fa 100644 --- a/VAMobile/e2e/tests/AvailabilityFramework.e2e.ts +++ b/VAMobile/e2e/tests/AvailabilityFramework.e2e.ts @@ -131,13 +131,13 @@ const AFNavigationForIndividual = [ ['BenefitLetters.e2e', 'WG_ClaimLettersScreen', 'Benefits', 'Claims', 'Claim letters'], ['Claims.e2e', 'WG_ClaimDetailsScreen', 'Benefits', 'Claims', 'Claims history', 'Received December 05, 2021'], // [ - // 'Claims.e2e', - // 'WG_SubmitEvidence', - // 'Benefits', - // 'Claims', - // 'Claims history', - // 'Received December 05, 2021', - // 'Submit evidence', + // 'Claims.e2e', + // 'WG_SubmitEvidence', + // 'Benefits', + // 'Claims', + // 'Claims history', + // 'Received December 05, 2021', + // 'Submit evidence', // ], ['Appeals.e2e', 'WG_AppealDetailsScreen', 'Benefits', 'Claims', 'Claims history', 'Received July 17, 2008'], [ diff --git a/VAMobile/e2e/tests/utils.ts b/VAMobile/e2e/tests/utils.ts index 2b0baf4b7d5..a7dff46ea37 100644 --- a/VAMobile/e2e/tests/utils.ts +++ b/VAMobile/e2e/tests/utils.ts @@ -28,6 +28,7 @@ export const CommonE2eIdConstants = { DEMO_BTN_ID: 'demo-btn', SIGN_IN_BTN_ID: 'Sign in', SKIP_BTN_TEXT: 'Skip', + TURN_ON_NOTIFICATIONS_TEXT: 'Turn on notifications', VETERAN_CRISIS_LINE_BTN_TEXT: 'Talk to the Veterans Crisis Line now', VETERAN_CRISIS_LINE_BTN_ID: 'veteransCrisisLineID', VETERAN_CRISIS_LINE_BACK_ID: 'veteranCrisisLineBackID', @@ -131,6 +132,13 @@ export async function loginToDemoMode(skipOnboarding = true, pushNotifications?: await element(by.text(CommonE2eIdConstants.SKIP_BTN_TEXT)).tap() } } + const turnOnNotificationsBtnExist = await checkIfElementIsPresent( + CommonE2eIdConstants.TURN_ON_NOTIFICATIONS_TEXT, + true, + ) + if (turnOnNotificationsBtnExist) { + await element(by.text(CommonE2eIdConstants.TURN_ON_NOTIFICATIONS_TEXT)).tap() + } } /** this function is to see if a element is present that could sometime not be like the carousel for example diff --git a/VAMobile/src/App.tsx b/VAMobile/src/App.tsx index 5f0ba1d06f3..29a66624dbe 100644 --- a/VAMobile/src/App.tsx +++ b/VAMobile/src/App.tsx @@ -42,9 +42,10 @@ import { getHomeScreens, getPaymentsScreens, } from 'screens' -import BiometricsPreferenceScreen from 'screens/BiometricsPreferenceScreen' import { profileAddressType } from 'screens/HomeScreen/ProfileScreen/ContactInformationScreen/AddressSummary' import EditAddressScreen from 'screens/HomeScreen/ProfileScreen/ContactInformationScreen/EditAddressScreen' +import BiometricsPreferenceScreen from 'screens/auth/BiometricsPreferenceScreen' +import RequestNotificationsScreen from 'screens/auth/RequestNotifications/RequestNotificationsScreen' import store, { RootState } from 'store' import { injectStore } from 'store/api/api' import { AnalyticsState, AuthState, handleTokenCallbackUrl, initializeAuth } from 'store/slices' @@ -103,6 +104,7 @@ export type RootNavStackParamList = WebviewStackParams & { type StackNavParamList = WebviewStackParams & { Splash: undefined BiometricsPreference: undefined + RequestNotifications: undefined Sync: undefined Login: undefined LoaGate: undefined @@ -187,8 +189,15 @@ function MainApp() { export function AuthGuard() { const dispatch = useAppDispatch() - const { initializing, loggedIn, syncing, firstTimeLogin, canStoreWithBiometric, displayBiometricsPreferenceScreen } = - useSelector((state) => state.auth) + const { + initializing, + loggedIn, + syncing, + firstTimeLogin, + canStoreWithBiometric, + displayBiometricsPreferenceScreen, + requestNotificationsPreferenceScreen, + } = useSelector((state) => state.auth) const { tappedForegroundNotification, setTappedForegroundNotification } = useNotificationContext() const { loadingRemoteConfig, remoteConfigActivated } = useSelector( (state) => state.settings, @@ -348,6 +357,16 @@ export function AuthGuard() { ) } else if (firstTimeLogin && loggedIn) { content = + } else if (!firstTimeLogin && loggedIn && requestNotificationsPreferenceScreen) { + content = ( + + + + ) } else if (loggedIn) { content = ( <> diff --git a/VAMobile/src/components/NotificationManager/NotificationManager.tsx b/VAMobile/src/components/NotificationManager/NotificationManager.tsx index 487303b7b47..ad9d1f5121d 100644 --- a/VAMobile/src/components/NotificationManager/NotificationManager.tsx +++ b/VAMobile/src/components/NotificationManager/NotificationManager.tsx @@ -30,7 +30,7 @@ const NotificationContext = createContext({ * notification manager component to handle all push logic */ const NotificationManager: FC = ({ children }) => { - const { loggedIn } = useSelector((state) => state.auth) + const { loggedIn, firstTimeLogin, requestNotifications } = useSelector((state) => state.auth) const { data: personalInformation } = usePersonalInformation({ enabled: loggedIn }) const { mutate: registerDevice } = useRegisterDevice() const [tappedForegroundNotification, setTappedForegroundNotification] = useState(false) @@ -57,13 +57,15 @@ const NotificationManager: FC = ({ children }) => { registeredNotifications.remove() failedNotifications.remove() }) - Notifications.registerRemoteNotifications() + if (firstTimeLogin === false && requestNotifications === true) { + Notifications.registerRemoteNotifications() + } } if (loggedIn && personalInformation?.id) { register() } - }, [loggedIn, personalInformation?.id, registerDevice]) + }, [loggedIn, firstTimeLogin, requestNotifications, personalInformation?.id, registerDevice]) const registerNotificationEvents = () => { // Register callbacks for notifications that happen when the app is in the foreground diff --git a/VAMobile/src/screens/BiometricsPreferenceScreen/BiometricsPreferenceScreen.test.tsx b/VAMobile/src/screens/BiometricsPreferenceScreen/BiometricsPreferenceScreen.test.tsx deleted file mode 100644 index a49b172f2b2..00000000000 --- a/VAMobile/src/screens/BiometricsPreferenceScreen/BiometricsPreferenceScreen.test.tsx +++ /dev/null @@ -1,99 +0,0 @@ -import React from 'react' -import { BIOMETRY_TYPE } from 'react-native-keychain' - -import { fireEvent, screen } from '@testing-library/react-native' - -import { InitialState, setBiometricsPreference, setDisplayBiometricsPreferenceScreen } from 'store/slices' -import { context, render } from 'testUtils' - -import BiometricsPreferenceScreen from './BiometricsPreferenceScreen' - -jest.mock('store/slices', () => { - const actual = jest.requireActual('store/slices') - return { - ...actual, - setBiometricsPreference: jest.fn(() => { - return { - type: '', - payload: '', - } - }), - setDisplayBiometricsPreferenceScreen: jest.fn(() => { - return { - type: '', - payload: '', - } - }), - } -}) - -context('BiometricsPreferenceScreen', () => { - const initializeTestInstance = (biometric = BIOMETRY_TYPE.TOUCH_ID) => { - render(, { - preloadedState: { - auth: { - ...InitialState.auth, - supportedBiometric: biometric, - }, - }, - }) - } - - beforeEach(() => { - initializeTestInstance() - }) - - it('initializes correctly', () => { - expect(screen.getByRole('header', { name: 'Do you want to allow us to use Touch ID for sign in?' })).toBeTruthy() - expect( - screen.getByText( - 'Touch ID lets you use your fingerprint to sign in to this app.\nYou can always change this later in your app settings.', - ), - ).toBeTruthy() - initializeTestInstance(BIOMETRY_TYPE.FACE_ID) - expect(screen.getByRole('header', { name: 'Do you want to allow us to use Face ID for sign in?' })).toBeTruthy() - expect( - screen.getByText( - 'Face ID lets us recognize an image of your face to sign you in to this app.\nYou can always change this later in your app settings.', - ), - ).toBeTruthy() - initializeTestInstance(BIOMETRY_TYPE.FACE) - expect( - screen.getByRole('header', { name: 'Do you want to allow us to use Face Recognition for sign in?' }), - ).toBeTruthy() - expect( - screen.getByText( - 'Face recognition lets you use facial recognition to sign into this app.\nYou can always change this later in your app settings.', - ), - ).toBeTruthy() - initializeTestInstance(BIOMETRY_TYPE.FINGERPRINT) - expect(screen.getByRole('header', { name: 'Do you want to allow us to use Fingerprint for sign in?' })).toBeTruthy() - expect( - screen.getByText( - 'Fingerprint lets you use your fingerprint to sign into this app.\nYou can always change this later in your app settings.', - ), - ).toBeTruthy() - initializeTestInstance(BIOMETRY_TYPE.IRIS) - expect(screen.getByRole('header', { name: 'Do you want to allow us to use Iris for sign in?' })).toBeTruthy() - expect( - screen.getByText( - 'Iris lets us recognize a video image of your eyes to sign you in to this app.\nYou can always change this later in your app settings.', - ), - ).toBeTruthy() - }) - - describe('on click of the use biometric button', () => { - it('should call setBiometricsPreference and setDisplayBiometricsPreferenceScreen', () => { - fireEvent.press(screen.getByRole('button', { name: 'Turn on Touch ID' })) - expect(setBiometricsPreference).toHaveBeenCalledWith(true) - expect(setDisplayBiometricsPreferenceScreen).toHaveBeenCalledWith(false) - }) - }) - - describe('on click of the skip button button', () => { - it('should call setDisplayBiometricsPreferenceScreen', () => { - fireEvent.press(screen.getByRole('button', { name: 'Skip' })) - expect(setDisplayBiometricsPreferenceScreen).toHaveBeenCalledWith(false) - }) - }) -}) diff --git a/VAMobile/src/screens/HomeScreen/ProfileScreen/SettingsScreen/NotificationsSettingsScreen/NotificationsSettingsScreen.test.tsx b/VAMobile/src/screens/HomeScreen/ProfileScreen/SettingsScreen/NotificationsSettingsScreen/NotificationsSettingsScreen.test.tsx index 1491d01f6e0..83474786887 100644 --- a/VAMobile/src/screens/HomeScreen/ProfileScreen/SettingsScreen/NotificationsSettingsScreen/NotificationsSettingsScreen.test.tsx +++ b/VAMobile/src/screens/HomeScreen/ProfileScreen/SettingsScreen/NotificationsSettingsScreen/NotificationsSettingsScreen.test.tsx @@ -3,6 +3,7 @@ import React from 'react' import AsyncStorage from '@react-native-async-storage/async-storage' import { screen } from '@testing-library/react-native' +import { t } from 'i18next' import { notificationKeys } from 'api/notifications' import { GetPushPrefsResponse, PushPreference } from 'api/types' @@ -34,11 +35,13 @@ context('NotificationsSettingsScreen', () => { } const renderWithProps = ( + requestNots: boolean, notificationsEnabled: boolean, systemNotificationsOn: boolean, preferences: PushPreference[], ) => { const props = mockNavProps() + mockPushEnabled = notificationsEnabled const notificationQueriesData: QueriesData = [ @@ -56,7 +59,10 @@ context('NotificationsSettingsScreen', () => { }, ] - render(, { queriesData: notificationQueriesData }) + render(, { + queriesData: notificationQueriesData, + preloadedState: { auth: { requestNotifications: requestNots } }, + }) } describe('appointment reminders switch', () => { @@ -76,7 +82,7 @@ context('NotificationsSettingsScreen', () => { when(api.get as jest.Mock) .calledWith('/v0/push/prefs/1') .mockResolvedValue(responseData) - renderWithProps(true, true, [apptPrefOn]) + renderWithProps(true, true, true, [apptPrefOn]) await waitFor(() => expect(screen.getByRole('switch', { name: 'Upcoming appointments' }).props.accessibilityState.checked).toEqual( true, @@ -100,7 +106,7 @@ context('NotificationsSettingsScreen', () => { when(api.get as jest.Mock) .calledWith('/v0/push/prefs/1') .mockResolvedValue(responseData) - renderWithProps(true, true, [apptPrefOff]) + renderWithProps(true, true, true, [apptPrefOff]) await waitFor(() => expect(screen.getByRole('switch', { name: 'Upcoming appointments' }).props.accessibilityState.checked).toEqual( false, @@ -126,13 +132,19 @@ context('NotificationsSettingsScreen', () => { when(api.get as jest.Mock) .calledWith('/v0/push/prefs/1') .mockResolvedValue(responseData) - renderWithProps(false, false, [apptPrefOff]) + renderWithProps(true, false, false, [apptPrefOff]) await waitFor(() => expect(screen.queryByRole('switch', { name: 'Upcoming appointments' })).toBeFalsy()) await waitFor(() => expect(screen.getByText('To get app notifications, turn them on in your device settings.')).toBeTruthy(), ) }) }) + describe('when system notifications havent been requested', () => { + it('hides the notification switches', async () => { + renderWithProps(false, true, true, [apptPrefOff]) + await waitFor(() => expect(screen.getByText(t('requestNotifications.getNotified'))).toBeTruthy()) + }) + }) it("renders error component when preferences can't be loaded", async () => { const responseData: GetPushPrefsResponse = { @@ -147,7 +159,7 @@ context('NotificationsSettingsScreen', () => { when(api.get as jest.Mock) .calledWith('/v0/push/prefs/1') .mockResolvedValue(responseData) - renderWithProps(true, true, []) + renderWithProps(true, true, true, []) await waitFor(() => expect( screen.getByText( diff --git a/VAMobile/src/screens/HomeScreen/ProfileScreen/SettingsScreen/NotificationsSettingsScreen/NotificationsSettingsScreen.tsx b/VAMobile/src/screens/HomeScreen/ProfileScreen/SettingsScreen/NotificationsSettingsScreen/NotificationsSettingsScreen.tsx index ad1f00b6393..f3aaf430770 100644 --- a/VAMobile/src/screens/HomeScreen/ProfileScreen/SettingsScreen/NotificationsSettingsScreen/NotificationsSettingsScreen.tsx +++ b/VAMobile/src/screens/HomeScreen/ProfileScreen/SettingsScreen/NotificationsSettingsScreen/NotificationsSettingsScreen.tsx @@ -2,6 +2,7 @@ import React, { ReactNode } from 'react' import { useTranslation } from 'react-i18next' import { Alert, Linking } from 'react-native' import { Notifications } from 'react-native-notifications' +import { useSelector } from 'react-redux' import AsyncStorage from '@react-native-async-storage/async-storage' import { useIsFocused } from '@react-navigation/native' @@ -35,13 +36,18 @@ import { import { Events } from 'constants/analytics' import { NAMESPACE } from 'constants/namespaces' import { HomeStackParamList } from 'screens/HomeScreen/HomeStackScreens' +import { RootState } from 'store' import { ScreenIDTypesConstants } from 'store/api/types' +import { AuthState, setNotificationsPreferenceScreen, setRequestNotifications } from 'store/slices' import { a11yLabelVA } from 'utils/a11yLabel' import { logAnalyticsEvent } from 'utils/analytics' import getEnv from 'utils/env' -import { useOnResumeForeground, useTheme } from 'utils/hooks' +import { useAppDispatch, useOnResumeForeground, useTheme } from 'utils/hooks' import { screenContentAllowed } from 'utils/waygateConfig' +const NOTIFICATION_COMPLETED_KEY = '@store_notification_preference_complete' +const FIRST_NOTIFICATION_STORAGE_VAL = 'COMPLETE' + const { LINK_URL_VA_NOTIFICATIONS } = getEnv() type NotificationsSettingsScreenProps = StackScreenProps @@ -49,6 +55,7 @@ type NotificationsSettingsScreenProps = StackScreenProps((state) => state.auth) + + const onUseNotifications = (): void => { + AsyncStorage.setItem(NOTIFICATION_COMPLETED_KEY, FIRST_NOTIFICATION_STORAGE_VAL) + dispatch(setNotificationsPreferenceScreen(false)) + //This actually triggers the notification manager code to request via OS. + dispatch(setRequestNotifications(true)) + } const openSettings = () => { queryClient.invalidateQueries({ @@ -79,6 +94,7 @@ function NotificationsSettingsScreen({ navigation }: NotificationsSettingsScreen }) Linking.openSettings() } + const goToSettings = () => { logAnalyticsEvent(Events.vama_click(t('notifications.settings.alert.openSettings'), t('notifications.title'))) Alert.alert(t('leavingApp.title'), t('leavingApp.body.settings'), [ @@ -91,39 +107,49 @@ function NotificationsSettingsScreen({ navigation }: NotificationsSettingsScreen } const fetchPreferences = async () => { - const endpoint_sid = await AsyncStorage.getItem(DEVICE_ENDPOINT_SID) - const deviceToken = await AsyncStorage.getItem(DEVICE_TOKEN_KEY) - - if (endpoint_sid && deviceToken) { - refetchPushPreferences() - } else { - Notifications.events().registerRemoteNotificationsRegistered((event) => { - const registerParams = { - deviceToken: event.deviceToken, - userID: personalInformation?.id, - } - const mutateOptions: MutateOptions = - { + if (requestNotifications) { + const endpoint_sid = await AsyncStorage.getItem(DEVICE_ENDPOINT_SID) + const deviceToken = await AsyncStorage.getItem(DEVICE_TOKEN_KEY) + + if (endpoint_sid && deviceToken) { + refetchPushPreferences() + } else { + Notifications.events().registerRemoteNotificationsRegistered((event) => { + const registerParams = { + deviceToken: event.deviceToken, + userID: personalInformation?.id, + } + const mutateOptions: MutateOptions< + PushRegistrationResponse | undefined, + Error, + RegisterDeviceParams, + unknown + > = { onSettled: () => { refetchPushPreferences() }, } - registerDevice(registerParams, mutateOptions) - }) - Notifications.events().registerRemoteNotificationsRegistrationFailed(() => { - const registerParams = { - deviceToken: undefined, - userID: undefined, - } - const mutateOptions: MutateOptions = - { + registerDevice(registerParams, mutateOptions) + }) + Notifications.events().registerRemoteNotificationsRegistrationFailed(() => { + const registerParams = { + deviceToken: undefined, + userID: undefined, + } + const mutateOptions: MutateOptions< + PushRegistrationResponse | undefined, + Error, + RegisterDeviceParams, + unknown + > = { onSettled: () => { refetchPushPreferences() }, } - registerDevice(registerParams, mutateOptions) - }) - Notifications.registerRemoteNotifications() + registerDevice(registerParams, mutateOptions) + }) + Notifications.registerRemoteNotifications() + } } } @@ -173,7 +199,17 @@ function NotificationsSettingsScreen({ navigation }: NotificationsSettingsScreen /> ) : ( - {systemNotificationData?.systemNotificationsOn ? ( + {!requestNotifications ? ( + + ) : systemNotificationData?.systemNotificationsOn ? ( <> {t('notifications.settings.personalize.text.systemNotificationsOn')} diff --git a/VAMobile/src/screens/auth/BiometricsPreferenceScreen/BiometricsPreferenceScreen.test.tsx b/VAMobile/src/screens/auth/BiometricsPreferenceScreen/BiometricsPreferenceScreen.test.tsx new file mode 100644 index 00000000000..1854032a199 --- /dev/null +++ b/VAMobile/src/screens/auth/BiometricsPreferenceScreen/BiometricsPreferenceScreen.test.tsx @@ -0,0 +1,120 @@ +import React from 'react' +import { BIOMETRY_TYPE } from 'react-native-keychain' + +import { fireEvent, screen } from '@testing-library/react-native' +import { t } from 'i18next' + +import { InitialState, setBiometricsPreference, setDisplayBiometricsPreferenceScreen } from 'store/slices' +import { context, render } from 'testUtils' +import { getSupportedBiometricText } from 'utils/formattingUtils' + +import BiometricsPreferenceScreen from './BiometricsPreferenceScreen' + +jest.mock('store/slices', () => { + const actual = jest.requireActual('store/slices') + return { + ...actual, + setBiometricsPreference: jest.fn(() => { + return { + type: '', + payload: '', + } + }), + setDisplayBiometricsPreferenceScreen: jest.fn(() => { + return { + type: '', + payload: '', + } + }), + } +}) + +context('BiometricsPreferenceScreen', () => { + const initializeTestInstance = (biometric = BIOMETRY_TYPE.TOUCH_ID) => { + render(, { + preloadedState: { + auth: { + ...InitialState.auth, + supportedBiometric: biometric, + }, + }, + }) + } + + beforeEach(() => { + initializeTestInstance() + }) + + it('initializes correctly', () => { + expect( + screen.getByRole('header', { + name: t('biometricsPreference.doYouWantToAllow', { + biometricsText: t('biometric.touchID'), + }), + }), + ).toBeTruthy() + expect(screen.getByText(t('biometricsPreference.bodyText.touchID'))).toBeTruthy() + expect(screen.getByText(t('biometricsPreference.youCanAlwaysChangeThis'))).toBeTruthy() + initializeTestInstance(BIOMETRY_TYPE.FACE_ID) + expect( + screen.getByRole('header', { + name: t('biometricsPreference.doYouWantToAllow', { + biometricsText: t('biometric.faceID'), + }), + }), + ).toBeTruthy() + expect(screen.getByText(t('biometricsPreference.bodyText.faceID'))).toBeTruthy() + expect(screen.getByText(t('biometricsPreference.youCanAlwaysChangeThis'))).toBeTruthy() + initializeTestInstance(BIOMETRY_TYPE.FACE) + expect( + screen.getByRole('header', { + name: t('biometricsPreference.doYouWantToAllow', { + biometricsText: t('biometric.faceRecognition'), + }), + }), + ).toBeTruthy() + expect(screen.getByText(t('biometricsPreference.bodyText.faceRecognition'))).toBeTruthy() + expect(screen.getByText(t('biometricsPreference.youCanAlwaysChangeThis'))).toBeTruthy() + initializeTestInstance(BIOMETRY_TYPE.FINGERPRINT) + expect( + screen.getByRole('header', { + name: t('biometricsPreference.doYouWantToAllow', { + biometricsText: t('biometric.fingerPrint'), + }), + }), + ).toBeTruthy() + expect(screen.getByText(t('biometricsPreference.bodyText.fingerPrint'))).toBeTruthy() + expect(screen.getByText(t('biometricsPreference.youCanAlwaysChangeThis'))).toBeTruthy() + initializeTestInstance(BIOMETRY_TYPE.IRIS) + expect( + screen.getByRole('header', { + name: t('biometricsPreference.doYouWantToAllow', { + biometricsText: t('biometric.iris'), + }), + }), + ).toBeTruthy() + expect(screen.getByText(t('biometricsPreference.bodyText.iris'))).toBeTruthy() + expect(screen.getByText(t('biometricsPreference.youCanAlwaysChangeThis'))).toBeTruthy() + }) + + describe('on click of the use biometric button', () => { + it('should call setBiometricsPreference and setDisplayBiometricsPreferenceScreen', () => { + fireEvent.press( + screen.getByRole('button', { + name: t('biometricsPreference.useBiometric', { + biometricsText: getSupportedBiometricText(BIOMETRY_TYPE.TOUCH_ID || '', t), + }), + }), + ) + expect(setBiometricsPreference).toHaveBeenCalledWith(true) + expect(setDisplayBiometricsPreferenceScreen).toHaveBeenCalledWith(false) + }) + }) + + describe('on click of the skip button button', () => { + it('should call setDisplayBiometricsPreferenceScreen', () => { + fireEvent.press(screen.getByRole('button', { name: t('biometricsPreference.skip') })) + expect(setDisplayBiometricsPreferenceScreen).toHaveBeenCalledWith(false) + }) + }) +}) diff --git a/VAMobile/src/screens/BiometricsPreferenceScreen/BiometricsPreferenceScreen.tsx b/VAMobile/src/screens/auth/BiometricsPreferenceScreen/BiometricsPreferenceScreen.tsx similarity index 81% rename from VAMobile/src/screens/BiometricsPreferenceScreen/BiometricsPreferenceScreen.tsx rename to VAMobile/src/screens/auth/BiometricsPreferenceScreen/BiometricsPreferenceScreen.tsx index 955a062d5b7..9dd2fddcefb 100644 --- a/VAMobile/src/screens/BiometricsPreferenceScreen/BiometricsPreferenceScreen.tsx +++ b/VAMobile/src/screens/auth/BiometricsPreferenceScreen/BiometricsPreferenceScreen.tsx @@ -8,12 +8,7 @@ import { Box, TextView, VAScrollView } from 'components' import { NAMESPACE } from 'constants/namespaces' import { RootState } from 'store' import { AuthState, setBiometricsPreference, setDisplayBiometricsPreferenceScreen } from 'store/slices' -import { - getSupportedBiometricA11yLabel, - getSupportedBiometricText, - getSupportedBiometricTranslationTag, - getTranslation, -} from 'utils/formattingUtils' +import { getSupportedBiometricText, getSupportedBiometricTranslationTag, getTranslation } from 'utils/formattingUtils' import { useAppDispatch, useTheme } from 'utils/hooks' export type SyncScreenProps = Record @@ -25,7 +20,6 @@ function BiometricsPreferenceScreen({}: SyncScreenProps) { const { supportedBiometric } = useSelector((state) => state.auth) const biometricsText = getSupportedBiometricText(supportedBiometric || '', t) - const biometricsA11yLabel = getSupportedBiometricA11yLabel(supportedBiometric || '', t) const bodyText = getTranslation( `biometricsPreference.bodyText.${getSupportedBiometricTranslationTag(supportedBiometric || '')}`, t, @@ -43,14 +37,16 @@ function BiometricsPreferenceScreen({}: SyncScreenProps) { return ( - + {t('biometricsPreference.doYouWantToAllow', { biometricsText })} - + {bodyText} + + {t('biometricsPreference.youCanAlwaysChangeThis')}