From db1b13cf957205f640c92b1e56dbd1a1a31d57e3 Mon Sep 17 00:00:00 2001 From: Wes Risenmay Date: Wed, 23 Sep 2026 12:22:00 -0600 Subject: [PATCH] fix: replacing kyper token provider with a stub --- package-lock.json | 15 +---- package.json | 2 +- src/Connect.tsx | 2 +- src/ConnectedTokenProvider.tsx | 8 +-- src/components/ActionTile.js | 2 +- src/components/ActionableUtilityRow.tsx | 2 +- src/components/ClientLogo.js | 2 +- src/components/ConnectInstitutionHeader.js | 2 +- src/components/ConnectLogoHeader.tsx | 2 +- src/components/Container.tsx | 2 +- src/components/DataCluster.js | 2 +- src/components/DetailReviewItem.js | 2 +- src/components/FindAccountInfo.js | 2 +- src/components/InstitutionBlock.js | 2 +- src/components/InstitutionGridTile.js | 2 +- src/components/InstitutionTile.js | 2 +- src/components/InstructionList.js | 2 +- src/components/RenderConnectStep.js | 2 +- src/components/StickyComponentContainer.tsx | 2 +- src/components/StyledAccountTypeIcon.tsx | 2 +- src/components/ViewTitle.js | 2 +- src/components/support/GeneralSupport.js | 2 +- src/components/support/Support.js | 2 +- src/components/support/SupportMenu.js | 2 +- src/components/support/SupportSuccess.js | 2 +- src/context/LegacyTokenProvider.test.tsx | 57 +++++++++++++++++ src/context/LegacyTokenProvider.tsx | 63 +++++++++++++++++++ src/views/connected/Connected.tsx | 2 +- src/views/connecting/Connecting.js | 2 +- .../connecting/progress/ProgressCheckMark.js | 2 +- .../connecting/progress/ProgressCircle.js | 2 +- .../connecting/progress/ProgressLine.tsx | 2 +- .../connecting/progress/ProgressLogo.tsx | 2 +- .../connecting/progress/ProgressMessage.js | 2 +- src/views/consent/DynamicDisclosure.tsx | 2 +- .../DeleteMemberSuccess.js | 2 +- src/views/disclosure/DataAvailable.js | 2 +- src/views/loginError/ImpededMemberError.js | 2 +- src/views/loginError/PrimaryActions.js | 2 +- src/views/loginError/SecondaryActions.js | 2 +- .../manualAccount/ManualAccountSuccess.js | 2 +- src/views/mfa/DefaultMFA.js | 2 +- src/views/mfa/MFAForm.js | 2 +- src/views/mfa/MFAImages.js | 2 +- src/views/mfa/MFAOptions.js | 2 +- src/views/mfa/MFAStep.js | 2 +- src/views/microdeposits/ComeBack.js | 2 +- src/views/microdeposits/ConfirmDetails.js | 2 +- src/views/microdeposits/HowItWorks.js | 2 +- src/views/microdeposits/MicrodepositErrors.js | 2 +- src/views/microdeposits/PersonalInfoForm.js | 2 +- src/views/microdeposits/RoutingNumber.js | 2 +- src/views/microdeposits/Verified.js | 2 +- src/views/microdeposits/Verifying.js | 2 +- src/views/oauth/OAuthDefault.js | 2 +- src/views/oauth/OAuthError.js | 2 +- src/views/oauth/OAuthStartError.js | 2 +- src/views/oauth/WaitingForOAuth.js | 2 +- src/views/search/Search.js | 2 +- .../search/views/PopularInstitutionsList.js | 2 +- src/views/search/views/SearchNoResult.js | 2 +- .../search/views/SearchedInstitutionsList.js | 2 +- src/views/verification/VerifyError.js | 2 +- typings/kyper.d.ts | 1 - 64 files changed, 185 insertions(+), 77 deletions(-) create mode 100644 src/context/LegacyTokenProvider.test.tsx create mode 100644 src/context/LegacyTokenProvider.tsx diff --git a/package-lock.json b/package-lock.json index 64e836b722..9fa72a9786 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,9 +13,9 @@ "@emotion/styled": "^11.14.1", "@kyper/hooks": "^1.3.0", "@kyper/icon": "^1.22.0", - "@kyper/tokenprovider": "^4.4.0", "@mui/icons-material": "^7.3.9", "@mui/material": "^7.3.9", + "@mxenabled/design-tokens": "^1.0.3", "@mxenabled/mxui": "^2.10.0", "@reduxjs/toolkit": "^2.2.7", "@types/node": "^22.1.0", @@ -1631,18 +1631,6 @@ "react-dom": "^16.14.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" } }, - "node_modules/@kyper/tokenprovider": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@kyper/tokenprovider/-/tokenprovider-4.4.0.tgz", - "integrity": "sha512-zHeANyaflgm21Hr8BJPgbhp9jfHFCTibpJC5/nz7B1EoM1ML4WcvBmI2RI47qiz7FaFvdD5A5jm/co71EMAEiA==", - "license": "MIT", - "peerDependencies": { - "@mxenabled/design-tokens": "^1.0.0", - "prop-types": "^15.7.2", - "react": "^16.14.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^16.14.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" - } - }, "node_modules/@microsoft/api-extractor": { "version": "7.58.0", "resolved": "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.58.0.tgz", @@ -2592,6 +2580,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/@mxenabled/design-tokens/-/design-tokens-1.0.3.tgz", "integrity": "sha512-8c75eOjzU7XbApGve0Msodvi6culN93orLRlS2esLhkNMt7WE6JjxWLEX/BT7kU1qseK4hlky4VryocIKMLHbg==", + "license": "ISC", "engines": { "node": ">=12.13.1", "npm": ">=6.14.0" diff --git a/package.json b/package.json index 8dc967ef43..1d36c30359 100644 --- a/package.json +++ b/package.json @@ -46,9 +46,9 @@ "@emotion/styled": "^11.14.1", "@kyper/hooks": "^1.3.0", "@kyper/icon": "^1.22.0", - "@kyper/tokenprovider": "^4.4.0", "@mui/icons-material": "^7.3.9", "@mui/material": "^7.3.9", + "@mxenabled/design-tokens": "^1.0.3", "@mxenabled/mxui": "^2.10.0", "@reduxjs/toolkit": "^2.2.7", "@types/node": "^22.1.0", diff --git a/src/Connect.tsx b/src/Connect.tsx index 267e07bff1..c8da3b8ace 100644 --- a/src/Connect.tsx +++ b/src/Connect.tsx @@ -6,7 +6,7 @@ import _isNil from 'lodash/isNil' import _toLower from 'lodash/toLower' import { Message, sha256 } from 'js-sha256' // import 'posthog-js/dist/recorder-v2' // Added for security requirements to use PostHog Session Recording -import { TokenContext } from '@kyper/tokenprovider' +import { TokenContext } from 'src/context/LegacyTokenProvider' import { usePrevious } from '@kyper/hooks' import * as connectActions from 'src/redux/actions/Connect' diff --git a/src/ConnectedTokenProvider.tsx b/src/ConnectedTokenProvider.tsx index 66b75a6d5c..8673f3e022 100644 --- a/src/ConnectedTokenProvider.tsx +++ b/src/ConnectedTokenProvider.tsx @@ -4,7 +4,7 @@ import { useSelector } from 'react-redux' import { ThemeProvider } from '@mui/material' import { createMXTheme } from '@mxenabled/mxui' -import { TokenProvider, THEMES } from '@kyper/tokenprovider' +import { LegacyTokenProvider, THEMES } from 'src/context/LegacyTokenProvider' import { getPrimarySeedColor } from 'src/redux/selectors/ClientColorScheme' @@ -52,17 +52,17 @@ export const ConnectedTokenProvider = ({ children }: Props): React.ReactNode => Container: mxTheme.palette.background.paper, }, }), - // TokenProvider keys a useEffect off this object's identity, so it has to + // LegacyTokenProvider keys a useEffect off this object's identity, so it has to // be stable across renders. [isDarkModeEnabled, mxTheme.palette.primary, mxTheme.palette.background], ) return ( - {children} - + ) } diff --git a/src/components/ActionTile.js b/src/components/ActionTile.js index 3dcea02efc..ccb0361bda 100644 --- a/src/components/ActionTile.js +++ b/src/components/ActionTile.js @@ -1,7 +1,7 @@ import React from 'react' import PropTypes from 'prop-types' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Text, Icon } from '@mxenabled/mxui' import { Button } from '@mui/material' diff --git a/src/components/ActionableUtilityRow.tsx b/src/components/ActionableUtilityRow.tsx index f7cf77dac5..bca4b4b60e 100644 --- a/src/components/ActionableUtilityRow.tsx +++ b/src/components/ActionableUtilityRow.tsx @@ -2,7 +2,7 @@ import React from 'react' import { Text } from '@mxenabled/mxui' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Button } from '@mui/material' interface ActionableUtilityRowProps { diff --git a/src/components/ClientLogo.js b/src/components/ClientLogo.js index 045ac2af80..c3032ceeb9 100644 --- a/src/components/ClientLogo.js +++ b/src/components/ClientLogo.js @@ -3,7 +3,7 @@ import PropTypes from 'prop-types' import { useSelector } from 'react-redux' import { css } from '@mxenabled/cssinjs' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { selectColorScheme } from 'src/redux/reducers/configSlice' import { COLOR_SCHEME } from 'src/const/Connect' diff --git a/src/components/ConnectInstitutionHeader.js b/src/components/ConnectInstitutionHeader.js index 630351252d..ed3e1a2eeb 100644 --- a/src/components/ConnectInstitutionHeader.js +++ b/src/components/ConnectInstitutionHeader.js @@ -2,7 +2,7 @@ import React from 'react' import PropTypes from 'prop-types' import { useSelector } from 'react-redux' import { InstitutionLogo } from '@mxenabled/mxui' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { selectColorScheme } from 'src/redux/reducers/configSlice' import { COLOR_SCHEME } from 'src/const/Connect' diff --git a/src/components/ConnectLogoHeader.tsx b/src/components/ConnectLogoHeader.tsx index d9de6d6d71..fc5fdb261c 100644 --- a/src/components/ConnectLogoHeader.tsx +++ b/src/components/ConnectLogoHeader.tsx @@ -2,7 +2,7 @@ import React from 'react' import { useSelector } from 'react-redux' import { InstitutionLogo } from '@mxenabled/mxui' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { selectColorScheme } from 'src/redux/reducers/configSlice' diff --git a/src/components/Container.tsx b/src/components/Container.tsx index b44d8766a7..65849a5d5a 100644 --- a/src/components/Container.tsx +++ b/src/components/Container.tsx @@ -1,6 +1,6 @@ import React from 'react' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { STEPS } from 'src/const/Connect' interface ContainerProps { diff --git a/src/components/DataCluster.js b/src/components/DataCluster.js index e25f268fe1..20717aa886 100644 --- a/src/components/DataCluster.js +++ b/src/components/DataCluster.js @@ -1,6 +1,6 @@ import React, { Fragment } from 'react' import PropTypes from 'prop-types' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Text } from '@mxenabled/mxui' export const DataCluster = (props) => { diff --git a/src/components/DetailReviewItem.js b/src/components/DetailReviewItem.js index f94f72e1d2..8142b96e06 100644 --- a/src/components/DetailReviewItem.js +++ b/src/components/DetailReviewItem.js @@ -1,7 +1,7 @@ import React from 'react' import PropTypes from 'prop-types' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Icon, Text } from '@mxenabled/mxui' import { Text as ProtectedText } from 'src/privacy/components' import { IconButton } from '@mui/material' diff --git a/src/components/FindAccountInfo.js b/src/components/FindAccountInfo.js index 6990fe2ec9..c2af926fb2 100644 --- a/src/components/FindAccountInfo.js +++ b/src/components/FindAccountInfo.js @@ -1,7 +1,7 @@ import React, { useRef } from 'react' import PropTypes from 'prop-types' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Text } from '@mxenabled/mxui' import { Button } from '@mui/material' diff --git a/src/components/InstitutionBlock.js b/src/components/InstitutionBlock.js index b5fc939984..2492497326 100644 --- a/src/components/InstitutionBlock.js +++ b/src/components/InstitutionBlock.js @@ -2,7 +2,7 @@ import React from 'react' import PropTypes from 'prop-types' import { __ } from 'src/utilities/Intl' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { InstitutionLogo } from '@mxenabled/mxui' import { formatUrl } from 'src/utilities/FormatUrl' diff --git a/src/components/InstitutionGridTile.js b/src/components/InstitutionGridTile.js index 31b8889b4d..6c2dae5977 100644 --- a/src/components/InstitutionGridTile.js +++ b/src/components/InstitutionGridTile.js @@ -5,7 +5,7 @@ import { css } from '@mxenabled/cssinjs' import { __ } from 'src/utilities/Intl' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { InstitutionLogo } from '@mxenabled/mxui' import { Button, Stack } from '@mui/material' diff --git a/src/components/InstitutionTile.js b/src/components/InstitutionTile.js index f9319affd1..d940ffbc47 100644 --- a/src/components/InstitutionTile.js +++ b/src/components/InstitutionTile.js @@ -3,7 +3,7 @@ import PropTypes from 'prop-types' import { __ } from 'src/utilities/Intl' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Button } from '@mui/material' import { Icon, InstitutionLogo, Tag } from '@mxenabled/mxui' diff --git a/src/components/InstructionList.js b/src/components/InstructionList.js index 7b0d0bad81..44ffb5b2cc 100644 --- a/src/components/InstructionList.js +++ b/src/components/InstructionList.js @@ -3,7 +3,7 @@ import PropTypes from 'prop-types' import { css } from '@mxenabled/cssinjs' import DOMPurify from 'dompurify' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Text } from '@mxenabled/mxui' import { goToUrlLink } from 'src/utilities/global' diff --git a/src/components/RenderConnectStep.js b/src/components/RenderConnectStep.js index b67e9042a6..14a81fd81e 100644 --- a/src/components/RenderConnectStep.js +++ b/src/components/RenderConnectStep.js @@ -4,7 +4,7 @@ import PropTypes from 'prop-types' import _isEmpty from 'lodash/isEmpty' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import * as connectActions from 'src/redux/actions/Connect' diff --git a/src/components/StickyComponentContainer.tsx b/src/components/StickyComponentContainer.tsx index 0f501825ee..8183f03cf4 100644 --- a/src/components/StickyComponentContainer.tsx +++ b/src/components/StickyComponentContainer.tsx @@ -1,7 +1,7 @@ /* eslint-disable @typescript-eslint/no-explicit-any */ import React from 'react' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' interface StickyComponentContainerProps { children?: React.ReactNode diff --git a/src/components/StyledAccountTypeIcon.tsx b/src/components/StyledAccountTypeIcon.tsx index fb559268b0..71c2e068c0 100644 --- a/src/components/StyledAccountTypeIcon.tsx +++ b/src/components/StyledAccountTypeIcon.tsx @@ -3,7 +3,7 @@ import React from 'react' import { Icon } from '@mxenabled/mxui' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { AccountTypes } from 'src/views/manualAccount/constants' diff --git a/src/components/ViewTitle.js b/src/components/ViewTitle.js index 52f9efa63c..4e780c9dce 100644 --- a/src/components/ViewTitle.js +++ b/src/components/ViewTitle.js @@ -3,7 +3,7 @@ import PropTypes from 'prop-types' import { Stack } from '@mui/material' import { Icon, Text } from '@mxenabled/mxui' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { InfoFilled } from '@kyper/icon/InfoFilled' import { ReadableStatuses } from 'src/const/Statuses' diff --git a/src/components/support/GeneralSupport.js b/src/components/support/GeneralSupport.js index f38f5a516f..97bcfd7558 100644 --- a/src/components/support/GeneralSupport.js +++ b/src/components/support/GeneralSupport.js @@ -2,7 +2,7 @@ import React, { useState, useEffect } from 'react' import PropTypes from 'prop-types' import _isEmpty from 'lodash/isEmpty' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Text } from '@mxenabled/mxui' import { TextField } from 'src/privacy/input' import { Button } from '@mui/material' diff --git a/src/components/support/Support.js b/src/components/support/Support.js index 93e8813af5..ffb07e86f8 100644 --- a/src/components/support/Support.js +++ b/src/components/support/Support.js @@ -1,7 +1,7 @@ import React, { useRef, useState, useImperativeHandle } from 'react' import PropTypes from 'prop-types' import { useSelector } from 'react-redux' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { SupportMenu } from 'src/components/support/SupportMenu' import { GeneralSupport } from 'src/components/support/GeneralSupport' diff --git a/src/components/support/SupportMenu.js b/src/components/support/SupportMenu.js index 69be8d223f..1951eeaec5 100644 --- a/src/components/support/SupportMenu.js +++ b/src/components/support/SupportMenu.js @@ -1,7 +1,7 @@ import React from 'react' import PropTypes from 'prop-types' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Icon, Text } from '@mxenabled/mxui' import { __ } from 'src/utilities/Intl' diff --git a/src/components/support/SupportSuccess.js b/src/components/support/SupportSuccess.js index f6316aa0bc..30dd5c6023 100644 --- a/src/components/support/SupportSuccess.js +++ b/src/components/support/SupportSuccess.js @@ -1,7 +1,7 @@ import React, { useEffect } from 'react' import PropTypes from 'prop-types' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Text } from '@mxenabled/mxui' import { Button } from '@mui/material' diff --git a/src/context/LegacyTokenProvider.test.tsx b/src/context/LegacyTokenProvider.test.tsx new file mode 100644 index 0000000000..f06f840cc1 --- /dev/null +++ b/src/context/LegacyTokenProvider.test.tsx @@ -0,0 +1,57 @@ +import React from 'react' +import { describe, it, expect } from 'vitest' +import { render, screen, waitFor } from '@testing-library/react' +import { light, dark } from '@mxenabled/design-tokens' +import { LegacyTokenProvider, THEMES, useTokens } from 'src/context/LegacyTokenProvider' + +const TokenReader = () => { + const tokens = useTokens() + + return ( +
+ {tokens.BackgroundColor.Body} + {tokens.Color.Brand300} +
+ ) +} + +describe('LegacyTokenProvider', () => { + it('returns the light tokens by default without a provider', () => { + render() + + expect(screen.getByTestId('body')).toHaveTextContent(light.BackgroundColor.Body) + }) + + it('provides the light tokens by default', () => { + render( + + + , + ) + + expect(screen.getByTestId('body')).toHaveTextContent(light.BackgroundColor.Body) + }) + + it('provides the dark tokens when the dark theme is used', () => { + render( + + + , + ) + + expect(screen.getByTestId('body')).toHaveTextContent(dark.BackgroundColor.Body) + }) + + it('applies token overrides', async () => { + const tokenOverrides = { Color: { Brand300: '#123456' }, BackgroundColor: { Body: '#abcdef' } } + + render( + + + , + ) + + await waitFor(() => expect(screen.getByTestId('brand300')).toHaveTextContent('#123456')) + expect(screen.getByTestId('body')).toHaveTextContent('#abcdef') + }) +}) diff --git a/src/context/LegacyTokenProvider.tsx b/src/context/LegacyTokenProvider.tsx new file mode 100644 index 0000000000..da9ac053e9 --- /dev/null +++ b/src/context/LegacyTokenProvider.tsx @@ -0,0 +1,63 @@ +// Local copy of @kyper/tokenprovider (v4.4.0) so we no longer depend on the Kyper package. +// Source: https://gitlab.com/mxtechnologies/mx/kyper-react/-/blob/master/packages/tokenprovider/lib/TokenProvider.js +import React, { useEffect, useState } from 'react' +import { light, dark, buildTheme } from '@mxenabled/design-tokens' +import type { TokenTypes } from '@mxenabled/design-tokens' + +export const targets = { + REACT: 'react', + REACT_NATIVE: 'react_native', + NATIVE: 'native', +} as const + +export const THEMES = { + LIGHT: 'light', + DARK: 'dark', +} as const + +type Target = (typeof targets)[keyof typeof targets] +type Theme = (typeof THEMES)[keyof typeof THEMES] + +const defaultTokenOverrides = {} + +export const TokenContext = React.createContext(light) +export const ReactNativeTokenContext = React.createContext( + buildTheme(THEMES.LIGHT, targets.REACT_NATIVE), +) + +export const useTokens = (target: Target = targets.REACT, tokenOverrides = {}): TokenTypes => { + const contextTarget = target === targets.REACT ? TokenContext : ReactNativeTokenContext + const context = React.useContext(contextTarget) + + return context ? context : buildTheme(THEMES.LIGHT, target, { ...tokenOverrides }) +} + +interface LegacyTokenProviderProps { + theme?: Theme | string + target?: typeof targets.REACT | typeof targets.REACT_NATIVE + tokenOverrides?: object + children?: React.ReactNode +} + +export const LegacyTokenProvider = ({ + theme = THEMES.LIGHT, + target = targets.REACT, + tokenOverrides = defaultTokenOverrides, + children, +}: LegacyTokenProviderProps) => { + const [tokens, setTokens] = useState(theme === THEMES.LIGHT ? light : dark) + + useEffect(() => { + const userSpecificTokens = buildTheme(theme, target, { ...tokenOverrides }) + + setTokens(userSpecificTokens) + }, [theme, target, tokenOverrides]) + + if (target === targets.REACT) { + return {children} + } + + return ( + {children} + ) +} diff --git a/src/views/connected/Connected.tsx b/src/views/connected/Connected.tsx index 5a0861881a..961d6df1b5 100644 --- a/src/views/connected/Connected.tsx +++ b/src/views/connected/Connected.tsx @@ -6,7 +6,7 @@ import { fadeOut } from 'src/utilities/Animation' import { Button } from '@mui/material' import { Text } from '@mxenabled/mxui' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { SlideDown } from 'src/components/SlideDown' import { getDelay } from 'src/utilities/getDelay' diff --git a/src/views/connecting/Connecting.js b/src/views/connecting/Connecting.js index 8263c7a973..4010bf1058 100644 --- a/src/views/connecting/Connecting.js +++ b/src/views/connecting/Connecting.js @@ -5,7 +5,7 @@ import { mergeMap, catchError, map, retry } from 'rxjs/operators' import { useSelector, useDispatch } from 'react-redux' import { Text } from '@mxenabled/mxui' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { SlideDown } from 'src/components/SlideDown' import { getDelay } from 'src/utilities/getDelay' diff --git a/src/views/connecting/progress/ProgressCheckMark.js b/src/views/connecting/progress/ProgressCheckMark.js index 3d667041eb..1f7a393c07 100644 --- a/src/views/connecting/progress/ProgressCheckMark.js +++ b/src/views/connecting/progress/ProgressCheckMark.js @@ -1,6 +1,6 @@ import React from 'react' import { Icon } from '@mxenabled/mxui' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' export const ProgressCheckMark = () => { const tokens = useTokens() diff --git a/src/views/connecting/progress/ProgressCircle.js b/src/views/connecting/progress/ProgressCircle.js index 45ecfdacd5..ebac7e8a90 100644 --- a/src/views/connecting/progress/ProgressCircle.js +++ b/src/views/connecting/progress/ProgressCircle.js @@ -1,6 +1,6 @@ import React from 'react' import PropTypes from 'prop-types' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import CircularProgress from '@mui/material/CircularProgress' import { JOB_STATUSES } from 'src/const/consts' diff --git a/src/views/connecting/progress/ProgressLine.tsx b/src/views/connecting/progress/ProgressLine.tsx index 0589e29231..483c316ea0 100644 --- a/src/views/connecting/progress/ProgressLine.tsx +++ b/src/views/connecting/progress/ProgressLine.tsx @@ -1,5 +1,5 @@ import React from 'react' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' export const ProgressLine = ({ isActive, diff --git a/src/views/connecting/progress/ProgressLogo.tsx b/src/views/connecting/progress/ProgressLogo.tsx index 16eeb5dd0e..79b938c1fe 100644 --- a/src/views/connecting/progress/ProgressLogo.tsx +++ b/src/views/connecting/progress/ProgressLogo.tsx @@ -1,5 +1,5 @@ import React, { ReactNode } from 'react' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' export const ProgressLogo = ({ children }: { children: ReactNode }) => { const tokens = useTokens() diff --git a/src/views/connecting/progress/ProgressMessage.js b/src/views/connecting/progress/ProgressMessage.js index 1619212a84..05714dfcf6 100644 --- a/src/views/connecting/progress/ProgressMessage.js +++ b/src/views/connecting/progress/ProgressMessage.js @@ -2,7 +2,7 @@ import React, { useState, useEffect } from 'react' import PropTypes from 'prop-types' import { from, of } from 'rxjs' import { delay, concatMap, repeat } from 'rxjs/operators' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Text } from '@mxenabled/mxui' import { JOB_TYPES } from 'src/const/consts' diff --git a/src/views/consent/DynamicDisclosure.tsx b/src/views/consent/DynamicDisclosure.tsx index 6201207170..501e461115 100644 --- a/src/views/consent/DynamicDisclosure.tsx +++ b/src/views/consent/DynamicDisclosure.tsx @@ -8,7 +8,7 @@ import { __, getLocale, setLocale } from 'src/utilities/Intl' import { Box, Button, IconButton, Link, Stack } from '@mui/material' import { Icon } from '@mxenabled/mxui' import { Text } from '@mxenabled/mxui' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { SlideDown } from 'src/components/SlideDown' import { getDelay } from 'src/utilities/getDelay' diff --git a/src/views/deleteMemberSuccess/DeleteMemberSuccess.js b/src/views/deleteMemberSuccess/DeleteMemberSuccess.js index 81f5418161..258512a4c7 100644 --- a/src/views/deleteMemberSuccess/DeleteMemberSuccess.js +++ b/src/views/deleteMemberSuccess/DeleteMemberSuccess.js @@ -3,7 +3,7 @@ import PropTypes from 'prop-types' import { __ } from 'src/utilities/Intl' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Button } from '@mui/material' import { SlideDown } from 'src/components/SlideDown' diff --git a/src/views/disclosure/DataAvailable.js b/src/views/disclosure/DataAvailable.js index e46c285b08..619b9c5ebd 100644 --- a/src/views/disclosure/DataAvailable.js +++ b/src/views/disclosure/DataAvailable.js @@ -1,7 +1,7 @@ import React, { Fragment } from 'react' import { useSelector } from 'react-redux' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Text } from '@mxenabled/mxui' import { PageviewInfo } from 'src/const/Analytics' diff --git a/src/views/loginError/ImpededMemberError.js b/src/views/loginError/ImpededMemberError.js index a1e1dd2d96..34a3cf4dd9 100644 --- a/src/views/loginError/ImpededMemberError.js +++ b/src/views/loginError/ImpededMemberError.js @@ -6,7 +6,7 @@ import PropTypes from 'prop-types' import { getInstitutionLoginUrl } from 'src/utilities/Institution' import { goToUrlLink } from 'src/utilities/global' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Icon, Text } from '@mxenabled/mxui' import { Link } from '@mui/material' diff --git a/src/views/loginError/PrimaryActions.js b/src/views/loginError/PrimaryActions.js index 4a21718539..23127dad3b 100644 --- a/src/views/loginError/PrimaryActions.js +++ b/src/views/loginError/PrimaryActions.js @@ -3,7 +3,7 @@ import React from 'react' import { __ } from 'src/utilities/Intl' import PropTypes from 'prop-types' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Button } from '@mui/material' import { REFRESH, UPDATE_CREDENTIALS, OK } from 'src/views/loginError/consts' diff --git a/src/views/loginError/SecondaryActions.js b/src/views/loginError/SecondaryActions.js index 285e910a93..4a73ca5457 100644 --- a/src/views/loginError/SecondaryActions.js +++ b/src/views/loginError/SecondaryActions.js @@ -8,7 +8,7 @@ import { goToUrlLink } from 'src/utilities/global' import { getInstitutionLoginUrl } from 'src/utilities/Institution' import useAnalyticsEvent from 'src/hooks/useAnalyticsEvent' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Button } from '@mui/material' import { AnalyticEvents } from 'src/const/Analytics' diff --git a/src/views/manualAccount/ManualAccountSuccess.js b/src/views/manualAccount/ManualAccountSuccess.js index ca22fff71a..7a568f5b49 100644 --- a/src/views/manualAccount/ManualAccountSuccess.js +++ b/src/views/manualAccount/ManualAccountSuccess.js @@ -2,7 +2,7 @@ import React, { useEffect, useRef, useContext } from 'react' import PropTypes from 'prop-types' import { __ } from 'src/utilities/Intl' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Button } from '@mui/material' import { Text } from '@mxenabled/mxui' diff --git a/src/views/mfa/DefaultMFA.js b/src/views/mfa/DefaultMFA.js index 7ddd4a3601..537fe9b7ca 100644 --- a/src/views/mfa/DefaultMFA.js +++ b/src/views/mfa/DefaultMFA.js @@ -2,7 +2,7 @@ import React, { useCallback, useState } from 'react' import PropTypes from 'prop-types' import { sha256 } from 'js-sha256' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { TextField } from 'src/privacy/input' import { Button, Typography } from '@mui/material' diff --git a/src/views/mfa/MFAForm.js b/src/views/mfa/MFAForm.js index 31e0a88128..7518e9a118 100644 --- a/src/views/mfa/MFAForm.js +++ b/src/views/mfa/MFAForm.js @@ -1,7 +1,7 @@ import _get from 'lodash/get' import PropTypes from 'prop-types' import React from 'react' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { sha256 } from 'js-sha256' import { ViewTitle } from 'src/components/ViewTitle' diff --git a/src/views/mfa/MFAImages.js b/src/views/mfa/MFAImages.js index 1c77ac4f96..7dffa458d4 100644 --- a/src/views/mfa/MFAImages.js +++ b/src/views/mfa/MFAImages.js @@ -10,7 +10,7 @@ import { focusElement } from 'src/utilities/Accessibility' import useAnalyticsPath from 'src/hooks/useAnalyticsPath' import useAnalyticsEvent from 'src/hooks/useAnalyticsEvent' import { PageviewInfo, AnalyticEvents } from 'src/const/Analytics' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Icon, Text } from '@mxenabled/mxui' import { Button } from '@mui/material' diff --git a/src/views/mfa/MFAOptions.js b/src/views/mfa/MFAOptions.js index 33f1ea268c..06bab2e3ae 100644 --- a/src/views/mfa/MFAOptions.js +++ b/src/views/mfa/MFAOptions.js @@ -3,7 +3,7 @@ import _isEmpty from 'lodash/isEmpty' import PropTypes from 'prop-types' import { sha256 } from 'js-sha256' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Icon, Text } from '@mxenabled/mxui' import { SelectionBox } from 'src/privacy/input' import { Button, FormLabel } from '@mui/material' diff --git a/src/views/mfa/MFAStep.js b/src/views/mfa/MFAStep.js index dd416e1abd..ad4846a89f 100644 --- a/src/views/mfa/MFAStep.js +++ b/src/views/mfa/MFAStep.js @@ -6,7 +6,7 @@ import { catchError, map } from 'rxjs/operators' import PropTypes from 'prop-types' import Alert from '@mui/material/Alert' import AlertTitle from '@mui/material/AlertTitle' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Link, Button } from '@mui/material' import { InstitutionBlock } from 'src/components/InstitutionBlock' diff --git a/src/views/microdeposits/ComeBack.js b/src/views/microdeposits/ComeBack.js index 93800870e3..378edff798 100644 --- a/src/views/microdeposits/ComeBack.js +++ b/src/views/microdeposits/ComeBack.js @@ -1,7 +1,7 @@ import React, { useContext, useRef } from 'react' import PropTypes from 'prop-types' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Text } from '@mxenabled/mxui' import { Text as ProtectedText } from 'src/privacy/components' import { Button } from '@mui/material' diff --git a/src/views/microdeposits/ConfirmDetails.js b/src/views/microdeposits/ConfirmDetails.js index ec5e2a3522..03ee9ddbd1 100644 --- a/src/views/microdeposits/ConfirmDetails.js +++ b/src/views/microdeposits/ConfirmDetails.js @@ -3,7 +3,7 @@ import PropTypes from 'prop-types' import { defer } from 'rxjs' import { useSelector } from 'react-redux' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Text } from '@mxenabled/mxui' import { Button } from '@mui/material' diff --git a/src/views/microdeposits/HowItWorks.js b/src/views/microdeposits/HowItWorks.js index fa1acee19f..ece2614aa2 100644 --- a/src/views/microdeposits/HowItWorks.js +++ b/src/views/microdeposits/HowItWorks.js @@ -1,7 +1,7 @@ import React, { useRef } from 'react' import PropTypes from 'prop-types' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Text } from '@mxenabled/mxui' import { Button } from '@mui/material' diff --git a/src/views/microdeposits/MicrodepositErrors.js b/src/views/microdeposits/MicrodepositErrors.js index 21130dd05f..50c3ce67a1 100644 --- a/src/views/microdeposits/MicrodepositErrors.js +++ b/src/views/microdeposits/MicrodepositErrors.js @@ -2,7 +2,7 @@ import React, { useContext, useRef } from 'react' import PropTypes from 'prop-types' import { css } from '@mxenabled/cssinjs' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Text } from '@mxenabled/mxui' import { Text as ProtectedText } from 'src/privacy/components' import Alert from '@mui/material/Alert' diff --git a/src/views/microdeposits/PersonalInfoForm.js b/src/views/microdeposits/PersonalInfoForm.js index 7e34801b9a..e92556e944 100644 --- a/src/views/microdeposits/PersonalInfoForm.js +++ b/src/views/microdeposits/PersonalInfoForm.js @@ -1,7 +1,7 @@ import React, { useEffect, useRef, useState } from 'react' import PropTypes from 'prop-types' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Text } from '@mxenabled/mxui' import { TextField } from 'src/privacy/input' import { Button } from '@mui/material' diff --git a/src/views/microdeposits/RoutingNumber.js b/src/views/microdeposits/RoutingNumber.js index ba55549665..f285ca574e 100644 --- a/src/views/microdeposits/RoutingNumber.js +++ b/src/views/microdeposits/RoutingNumber.js @@ -4,7 +4,7 @@ import { useSelector } from 'react-redux' import { defer } from 'rxjs' import _isEmpty from 'lodash/isEmpty' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Icon, Text } from '@mxenabled/mxui' import { TextField } from 'src/privacy/input' import { Button } from '@mui/material' diff --git a/src/views/microdeposits/Verified.js b/src/views/microdeposits/Verified.js index 8c9abc2f4e..916686615c 100644 --- a/src/views/microdeposits/Verified.js +++ b/src/views/microdeposits/Verified.js @@ -2,7 +2,7 @@ import React, { useContext, useEffect, useRef } from 'react' import PropTypes from 'prop-types' import { useSelector } from 'react-redux' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Text } from '@mxenabled/mxui' import { Button } from '@mui/material' diff --git a/src/views/microdeposits/Verifying.js b/src/views/microdeposits/Verifying.js index cf00652644..42577a4021 100644 --- a/src/views/microdeposits/Verifying.js +++ b/src/views/microdeposits/Verifying.js @@ -2,7 +2,7 @@ import React, { useEffect, useRef } from 'react' import PropTypes from 'prop-types' import { defer, interval } from 'rxjs' import { filter, mergeMap, pluck, scan, switchMap, take } from 'rxjs/operators' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Text } from '@mxenabled/mxui' import { __ } from 'src/utilities/Intl' diff --git a/src/views/oauth/OAuthDefault.js b/src/views/oauth/OAuthDefault.js index cab3be0030..91c36d5be3 100644 --- a/src/views/oauth/OAuthDefault.js +++ b/src/views/oauth/OAuthDefault.js @@ -3,7 +3,7 @@ import PropTypes from 'prop-types' import { useSelector } from 'react-redux' import { sha256 } from 'js-sha256' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Export } from '@kyper/icon/Export' import { Button } from '@mui/material' diff --git a/src/views/oauth/OAuthError.js b/src/views/oauth/OAuthError.js index 8af5b887b9..00270aab13 100644 --- a/src/views/oauth/OAuthError.js +++ b/src/views/oauth/OAuthError.js @@ -3,7 +3,7 @@ import { useSelector } from 'react-redux' import PropTypes from 'prop-types' import { Text } from '@mxenabled/mxui' import Alert from '@mui/material/Alert' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Button } from '@mui/material' import { __ } from 'src/utilities/Intl' diff --git a/src/views/oauth/OAuthStartError.js b/src/views/oauth/OAuthStartError.js index e176612859..8259cda624 100644 --- a/src/views/oauth/OAuthStartError.js +++ b/src/views/oauth/OAuthStartError.js @@ -3,7 +3,7 @@ import PropTypes from 'prop-types' import { Button } from '@mui/material' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { SlideDown } from 'src/components/SlideDown' import { InstitutionBlock } from 'src/components/InstitutionBlock' diff --git a/src/views/oauth/WaitingForOAuth.js b/src/views/oauth/WaitingForOAuth.js index 401a73ca39..2588c20f9b 100644 --- a/src/views/oauth/WaitingForOAuth.js +++ b/src/views/oauth/WaitingForOAuth.js @@ -5,7 +5,7 @@ import { of, defer } from 'rxjs' import { map, mergeMap, first, filter, catchError } from 'rxjs/operators' import { Text } from '@mxenabled/mxui' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Button } from '@mui/material' import { SlideDown } from 'src/components/SlideDown' diff --git a/src/views/search/Search.js b/src/views/search/Search.js index 64b0591c39..23e1a5f0ab 100644 --- a/src/views/search/Search.js +++ b/src/views/search/Search.js @@ -13,7 +13,7 @@ import _unionBy from 'lodash/unionBy' import _debounce from 'lodash/debounce' import _find from 'lodash/find' import { Icon, Text } from '@mxenabled/mxui' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import InputAdornment from '@mui/material/InputAdornment' import { TextField } from 'src/privacy/input' import { IconButton, Snackbar } from '@mui/material' diff --git a/src/views/search/views/PopularInstitutionsList.js b/src/views/search/views/PopularInstitutionsList.js index 1e313ca54b..06ebb903f4 100644 --- a/src/views/search/views/PopularInstitutionsList.js +++ b/src/views/search/views/PopularInstitutionsList.js @@ -3,7 +3,7 @@ import PropTypes from 'prop-types' import { useDispatch, useSelector } from 'react-redux' import _pick from 'lodash/pick' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Button } from '@mui/material' import { selectCurrentMode } from 'src/redux/reducers/configSlice' diff --git a/src/views/search/views/SearchNoResult.js b/src/views/search/views/SearchNoResult.js index c02732006f..83b82b096e 100644 --- a/src/views/search/views/SearchNoResult.js +++ b/src/views/search/views/SearchNoResult.js @@ -4,7 +4,7 @@ import PropTypes from 'prop-types' import { Button } from '@mui/material' import { Text } from '@mxenabled/mxui' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { selectCurrentMode } from 'src/redux/reducers/configSlice' import { stepToAddManualAccount, stepToMicrodeposits } from 'src/redux/actions/Connect' diff --git a/src/views/search/views/SearchedInstitutionsList.js b/src/views/search/views/SearchedInstitutionsList.js index 5497ea1ae3..211d8f48e5 100644 --- a/src/views/search/views/SearchedInstitutionsList.js +++ b/src/views/search/views/SearchedInstitutionsList.js @@ -3,7 +3,7 @@ import { useDispatch, useSelector } from 'react-redux' import PropTypes from 'prop-types' import _pick from 'lodash/pick' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import { Text } from '@mxenabled/mxui' import { Button } from '@mui/material' diff --git a/src/views/verification/VerifyError.js b/src/views/verification/VerifyError.js index 8dd57984ff..0ba50a770d 100644 --- a/src/views/verification/VerifyError.js +++ b/src/views/verification/VerifyError.js @@ -1,7 +1,7 @@ import React from 'react' import PropTypes from 'prop-types' -import { useTokens } from '@kyper/tokenprovider' +import { useTokens } from 'src/context/LegacyTokenProvider' import Alert from '@mui/material/Alert' import { Text } from '@mxenabled/mxui' import { Button } from '@mui/material' diff --git a/typings/kyper.d.ts b/typings/kyper.d.ts index 919d4c09db..5fc53d65bd 100644 --- a/typings/kyper.d.ts +++ b/typings/kyper.d.ts @@ -1,4 +1,3 @@ -declare module '@kyper/tokenprovider' declare module '@kyper/textarea' declare module '@kyper/input' declare module '@kyper/icon/Accounts'