diff --git a/.eslintrc.js b/.eslintrc.js index 1fe375c797..b07a08949b 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -49,6 +49,7 @@ module.exports = { 'unused-imports', '@tanstack/query', 'jsx-no-leaked-values', + 'import', ], rules: { // Warning on console.log @@ -69,6 +70,12 @@ module.exports = { {restrictDefaultExports: {direct: true}}, ], + 'import/extensions': [ + 'error', + 'never', + {android: 'always', ios: 'always', json: 'always'}, + ], + // Error on imports not done through index files (as of now only applied for @atb/components) 'no-restricted-imports': ['error', {patterns: noRestrictedImportsPatterns}], diff --git a/package.json b/package.json index 57e6166264..1025940d38 100644 --- a/package.json +++ b/package.json @@ -171,6 +171,7 @@ "eslint": "8.47.0", "eslint-config-prettier": "^9.0.0", "eslint-plugin-jsx-no-leaked-values": "0.1.24", + "eslint-plugin-import": "^2.31.0", "eslint-plugin-prettier": "5.0.0", "eslint-plugin-react": "^7.33.2", "eslint-plugin-react-hooks": "^4.6.0", diff --git a/src/api/client.ts b/src/api/client.ts index a2c53f24bb..a6ce88cddc 100644 --- a/src/api/client.ts +++ b/src/api/client.ts @@ -16,10 +16,7 @@ import { import axiosRetry, {isIdempotentRequestError} from 'axios-retry'; import axiosBetterStacktrace from 'axios-better-stacktrace'; import {Platform} from 'react-native'; -import { - getCurrentUserIdGlobal, - getIdTokenGlobal, -} from '@atb/auth/AuthContext.tsx'; +import {getCurrentUserIdGlobal, getIdTokenGlobal} from '@atb/auth/AuthContext'; type InternalUpstreamServerError = { errorCode: 602; diff --git a/src/auth/AuthContext.tsx b/src/auth/AuthContext.tsx index 9dab168bdb..0b905c496e 100644 --- a/src/auth/AuthContext.tsx +++ b/src/auth/AuthContext.tsx @@ -30,7 +30,7 @@ import {mapAuthenticationType} from './utils'; import {useClearQueriesOnUserChange} from './use-clear-queries-on-user-change'; import {useUpdateIntercomOnUserChange} from '@atb/auth/use-update-intercom-on-user-change'; import {useLocaleContext} from '@atb/LocaleProvider'; -import {useRefreshIdTokenWhenNecessary} from '@atb/auth/use-refresh-id-token-when-necessary.ts'; +import {useRefreshIdTokenWhenNecessary} from '@atb/auth/use-refresh-id-token-when-necessary'; import {useFeatureToggles} from '@atb/feature-toggles'; export type AuthReducerState = { diff --git a/src/auth/use-refresh-id-token-when-necessary.ts b/src/auth/use-refresh-id-token-when-necessary.ts index 86b3dbf895..5f51d46e20 100644 --- a/src/auth/use-refresh-id-token-when-necessary.ts +++ b/src/auth/use-refresh-id-token-when-necessary.ts @@ -1,11 +1,11 @@ import {Dispatch} from 'react'; import {AuthReducerAction} from './types'; import {AuthReducerState} from '@atb/auth/AuthContext'; -import {secondsToTokenExpiry} from '@atb/auth/utils.ts'; -import {useAppStateStatus} from '@atb/utils/use-app-state-status.ts'; -import {useInterval} from '@atb/utils/use-interval.ts'; -import {errorToMetadata, logToBugsnag} from '@atb/utils/bugsnag-utils.ts'; -import {ONE_SECOND_MS} from '@atb/utils/durations.ts'; +import {secondsToTokenExpiry} from '@atb/auth/utils'; +import {useAppStateStatus} from '@atb/utils/use-app-state-status'; +import {useInterval} from '@atb/utils/use-interval'; +import {errorToMetadata, logToBugsnag} from '@atb/utils/bugsnag-utils'; +import {ONE_SECOND_MS} from '@atb/utils/durations'; export const useRefreshIdTokenWhenNecessary = ( state: AuthReducerState, diff --git a/src/auth/utils.ts b/src/auth/utils.ts index c701342c3d..31ed6b2d38 100644 --- a/src/auth/utils.ts +++ b/src/auth/utils.ts @@ -1,6 +1,6 @@ import {FirebaseAuthTypes} from '@react-native-firebase/auth'; import {AuthenticationType} from './types'; -import {secondsBetween} from '@atb/utils/date.ts'; +import {secondsBetween} from '@atb/utils/date'; export const mapAuthenticationType = ( user: FirebaseAuthTypes.User | undefined, diff --git a/src/components/map/components/DeparturesDialogSheet.tsx b/src/components/map/components/DeparturesDialogSheet.tsx index b36b852b5d..c608f2e7bf 100644 --- a/src/components/map/components/DeparturesDialogSheet.tsx +++ b/src/components/map/components/DeparturesDialogSheet.tsx @@ -14,7 +14,7 @@ import {Feature, Point} from 'geojson'; import {Location, SearchLocation} from '@atb/favorites'; import {NavigateToTripSearchCallback} from '../types'; import {useAppStateStatus} from '@atb/utils/use-app-state-status'; -import {isDefined} from '@atb/utils/presence.ts'; +import {isDefined} from '@atb/utils/presence'; type DeparturesDialogSheetProps = { onClose: () => void; diff --git a/src/components/theme-icon/ThemeIcon.tsx b/src/components/theme-icon/ThemeIcon.tsx index 2d58df8c88..f499941d18 100644 --- a/src/components/theme-icon/ThemeIcon.tsx +++ b/src/components/theme-icon/ThemeIcon.tsx @@ -15,7 +15,7 @@ import { NotificationIndicatorProps, } from './NotificationIndicator'; import React from 'react'; -import {notifyBugsnag} from '@atb/utils/bugsnag-utils.ts'; +import {notifyBugsnag} from '@atb/utils/bugsnag-utils'; export type ThemeIconProps = { svg(props: SvgProps): JSX.Element; diff --git a/src/fare-contracts/FareContractInfo.tsx b/src/fare-contracts/FareContractInfo.tsx index bece223eb9..4ad64994c9 100644 --- a/src/fare-contracts/FareContractInfo.tsx +++ b/src/fare-contracts/FareContractInfo.tsx @@ -36,8 +36,8 @@ import {InspectionSymbol} from '../fare-contracts/components/InspectionSymbol'; import {UserProfileWithCount} from './types'; import {MessageInfoText} from '@atb/components/message-info-text'; import {useGetPhoneByAccountIdQuery} from '@atb/on-behalf-of/queries/use-get-phone-by-account-id-query'; -import {useFetchOnBehalfOfAccountsQuery} from '@atb/on-behalf-of/queries/use-fetch-on-behalf-of-accounts-query.ts'; -import {formatPhoneNumber} from '@atb/utils/phone-number-utils.ts'; +import {useFetchOnBehalfOfAccountsQuery} from '@atb/on-behalf-of/queries/use-fetch-on-behalf-of-accounts-query'; +import {formatPhoneNumber} from '@atb/utils/phone-number-utils'; export type FareContractInfoProps = { status: ValidityStatus; diff --git a/src/fare-contracts/details/DetailsContent.tsx b/src/fare-contracts/details/DetailsContent.tsx index bee173f96d..8e57fd8eca 100644 --- a/src/fare-contracts/details/DetailsContent.tsx +++ b/src/fare-contracts/details/DetailsContent.tsx @@ -44,8 +44,8 @@ import {ValidityHeader} from '../ValidityHeader'; import {ConsumeCarnetSectionItem} from '../components/ConsumeCarnetSectionItem'; import {ActivateNowSectionItem} from '../components/ActivateNowSectionItem'; import {useFeatureToggles} from '@atb/feature-toggles'; -import {formatPhoneNumber} from '@atb/utils/phone-number-utils.ts'; -import {UsedAccessesSectionItem} from '@atb/fare-contracts/details/UsedAccessesSectionItem.tsx'; +import {formatPhoneNumber} from '@atb/utils/phone-number-utils'; +import {UsedAccessesSectionItem} from '@atb/fare-contracts/details/UsedAccessesSectionItem'; import {FareContractFromTo} from '@atb/fare-contracts/components/FareContractFromTo'; type Props = { diff --git a/src/fare-contracts/details/UsedAccessesSectionItem.tsx b/src/fare-contracts/details/UsedAccessesSectionItem.tsx index 036a79ba27..042dcfd9dc 100644 --- a/src/fare-contracts/details/UsedAccessesSectionItem.tsx +++ b/src/fare-contracts/details/UsedAccessesSectionItem.tsx @@ -2,7 +2,7 @@ import {CarnetTravelRightUsedAccess} from '@atb/ticketing'; import {FareContractTexts, useTranslation} from '@atb/translations'; import {View} from 'react-native'; import {ThemeText} from '@atb/components/text'; -import {fullDateTime} from '@atb/utils/date.ts'; +import {fullDateTime} from '@atb/utils/date'; import React from 'react'; import {useSectionItem} from '@atb/components/sections'; diff --git a/src/mobile-token/MobileTokenContext.tsx b/src/mobile-token/MobileTokenContext.tsx index deb5aca3b1..1691f25361 100644 --- a/src/mobile-token/MobileTokenContext.tsx +++ b/src/mobile-token/MobileTokenContext.tsx @@ -39,7 +39,7 @@ import { } from './hooks/use-load-native-token-query'; import {wipeToken} from '@atb/mobile-token/helpers'; import {logToBugsnag, notifyBugsnag} from '@atb/utils/bugsnag-utils'; -import {ONE_HOUR_MS} from '@atb/utils/durations.ts'; +import {ONE_HOUR_MS} from '@atb/utils/durations'; const SIX_HOURS_MS = ONE_HOUR_MS * 6; diff --git a/src/mobile-token/hooks/use-list-remote-tokens-query.tsx b/src/mobile-token/hooks/use-list-remote-tokens-query.tsx index 271fa775c3..9b3d5c0084 100644 --- a/src/mobile-token/hooks/use-list-remote-tokens-query.tsx +++ b/src/mobile-token/hooks/use-list-remote-tokens-query.tsx @@ -11,7 +11,7 @@ import {Token} from '@atb/mobile-token/types'; import {v4 as uuid} from 'uuid'; import {useAuthState} from '@atb/auth'; -import {logToBugsnag} from '@atb/utils/bugsnag-utils.ts'; +import {logToBugsnag} from '@atb/utils/bugsnag-utils'; export const LIST_REMOTE_TOKENS_QUERY_KEY = 'listRemoteTokens'; diff --git a/src/mobile-token/mobileTokenClient.ts b/src/mobile-token/mobileTokenClient.ts index fc5cd66d37..034978910f 100644 --- a/src/mobile-token/mobileTokenClient.ts +++ b/src/mobile-token/mobileTokenClient.ts @@ -7,7 +7,7 @@ import { } from '@entur-private/abt-mobile-client-sdk'; import {localLogger, remoteLogger} from './abtClientLogger'; import {tokenService} from './tokenService'; -import {HALF_DAY_MS} from '@atb/utils/durations.ts'; +import {HALF_DAY_MS} from '@atb/utils/durations'; const CONTEXT_ID = 'main'; diff --git a/src/mobile-token/use-token-toggle-details.ts b/src/mobile-token/use-token-toggle-details.ts index be9b8982ea..564cd81448 100644 --- a/src/mobile-token/use-token-toggle-details.ts +++ b/src/mobile-token/use-token-toggle-details.ts @@ -2,7 +2,7 @@ import {useMobileTokenContextState} from '@atb/mobile-token'; import {useIsFocused} from '@react-navigation/native'; import {useQuery} from '@tanstack/react-query'; import {MOBILE_TOKEN_QUERY_KEY} from '@atb/mobile-token/utils'; -import {ONE_MINUTE_MS} from '@atb/utils/durations.ts'; +import {ONE_MINUTE_MS} from '@atb/utils/durations'; export const GET_TOKEN_TOGGLE_DETAILS_QUERY_KEY = 'getTokenToggleDetails'; diff --git a/src/mobility/components/OperatorActionButton.tsx b/src/mobility/components/OperatorActionButton.tsx index 2d0cdd3621..c675f98356 100644 --- a/src/mobility/components/OperatorActionButton.tsx +++ b/src/mobility/components/OperatorActionButton.tsx @@ -1,6 +1,6 @@ import {useAnalytics} from '@atb/analytics'; import {getTextForLanguage, useTranslation} from '@atb/translations'; -import {showAppMissingAlert} from '@atb/mobility/show-app-missing-alert.tsx'; +import {showAppMissingAlert} from '@atb/mobility/show-app-missing-alert'; import React, {useCallback} from 'react'; import {Button} from '@atb/components/button'; import {MobilityTexts} from '@atb/translations/screens/subscreens/MobilityTexts'; diff --git a/src/mobility/queries/use-active-shmo-booking-query.tsx b/src/mobility/queries/use-active-shmo-booking-query.tsx index c1a96ceae6..d1a0eebe12 100644 --- a/src/mobility/queries/use-active-shmo-booking-query.tsx +++ b/src/mobility/queries/use-active-shmo-booking-query.tsx @@ -1,6 +1,6 @@ import {useQuery} from '@tanstack/react-query'; import {getActiveShmoBooking} from '@atb/api/mobility'; -import {ONE_MINUTE_MS} from '@atb/utils/durations.ts'; +import {ONE_MINUTE_MS} from '@atb/utils/durations'; import {useAcceptLanguage} from '@atb/api/use-accept-language'; import {useFeatureToggles} from '@atb/feature-toggles'; diff --git a/src/mobility/queries/use-bike-station-query.tsx b/src/mobility/queries/use-bike-station-query.tsx index 850d008788..4310841562 100644 --- a/src/mobility/queries/use-bike-station-query.tsx +++ b/src/mobility/queries/use-bike-station-query.tsx @@ -1,6 +1,6 @@ import {useQuery} from '@tanstack/react-query'; import {getBikeStation} from '@atb/api/mobility'; -import {ONE_MINUTE_MS} from '@atb/utils/durations.ts'; +import {ONE_MINUTE_MS} from '@atb/utils/durations'; export const useBikeStationQuery = (id: string) => useQuery({ diff --git a/src/mobility/queries/use-car-station-query.tsx b/src/mobility/queries/use-car-station-query.tsx index 3d06f4db73..7b090db817 100644 --- a/src/mobility/queries/use-car-station-query.tsx +++ b/src/mobility/queries/use-car-station-query.tsx @@ -1,6 +1,6 @@ import {useQuery} from '@tanstack/react-query'; import {getCarStation} from '@atb/api/mobility'; -import {ONE_MINUTE_MS} from '@atb/utils/durations.ts'; +import {ONE_MINUTE_MS} from '@atb/utils/durations'; export const useCarStationQuery = (id: string) => useQuery({ diff --git a/src/mobility/queries/use-fare-product-benefits-query.tsx b/src/mobility/queries/use-fare-product-benefits-query.tsx index 1dbd0febaa..61f220f49f 100644 --- a/src/mobility/queries/use-fare-product-benefits-query.tsx +++ b/src/mobility/queries/use-fare-product-benefits-query.tsx @@ -2,7 +2,7 @@ import {useQuery} from '@tanstack/react-query'; import {PreassignedFareProduct} from '@atb/configuration/types'; import {getFareProductBenefits} from '@atb/mobility/api/api'; import {useAuthState} from '@atb/auth'; -import {ONE_HOUR_MS} from '@atb/utils/durations.ts'; +import {ONE_HOUR_MS} from '@atb/utils/durations'; export const useFareProductBenefitsQuery = ( productId: PreassignedFareProduct['id'] | undefined, diff --git a/src/mobility/queries/use-geofencing-zones.tsx b/src/mobility/queries/use-geofencing-zones.tsx index 7647514b46..0d3c7205b8 100644 --- a/src/mobility/queries/use-geofencing-zones.tsx +++ b/src/mobility/queries/use-geofencing-zones.tsx @@ -1,6 +1,6 @@ import {useQuery} from '@tanstack/react-query'; import {getGeofencingZones} from '@atb/api/mobility'; -import {HALF_DAY_MS} from '@atb/utils/durations.ts'; +import {HALF_DAY_MS} from '@atb/utils/durations'; export const useGeofencingZonesQuery = (systemId: string) => { return useQuery({ diff --git a/src/mobility/queries/use-shmo-booking-query.tsx b/src/mobility/queries/use-shmo-booking-query.tsx index 71e4d932da..5f67835035 100644 --- a/src/mobility/queries/use-shmo-booking-query.tsx +++ b/src/mobility/queries/use-shmo-booking-query.tsx @@ -1,6 +1,6 @@ import {useQuery} from '@tanstack/react-query'; import {getShmoBooking} from '@atb/api/mobility'; -import {ONE_HOUR_MS} from '@atb/utils/durations.ts'; +import {ONE_HOUR_MS} from '@atb/utils/durations'; import {ShmoBooking} from '@atb/api/types/mobility'; import {useAcceptLanguage} from '@atb/api/use-accept-language'; diff --git a/src/mobility/queries/use-user-benefits-query.tsx b/src/mobility/queries/use-user-benefits-query.tsx index 91bff9ffab..1f31777962 100644 --- a/src/mobility/queries/use-user-benefits-query.tsx +++ b/src/mobility/queries/use-user-benefits-query.tsx @@ -6,7 +6,7 @@ import {useAuthState} from '@atb/auth'; // reloaded while the user is navigating in the map and clicking different vehicles or stations. // However, the cache time cannot be too long, since we want benefits to be reloaded if the user buys a // ticket that is eligible for benefits. -import {ONE_MINUTE_MS} from '@atb/utils/durations.ts'; +import {ONE_MINUTE_MS} from '@atb/utils/durations'; export const useUserBenefitsQuery = (enabled: boolean) => { const {userId, authStatus} = useAuthState(); diff --git a/src/mobility/queries/use-vehicle-query.tsx b/src/mobility/queries/use-vehicle-query.tsx index cb3a1233a9..32f23b6c9d 100644 --- a/src/mobility/queries/use-vehicle-query.tsx +++ b/src/mobility/queries/use-vehicle-query.tsx @@ -1,6 +1,6 @@ import {useQuery} from '@tanstack/react-query'; import {getVehicle} from '@atb/api/mobility'; -import {ONE_MINUTE_MS} from '@atb/utils/durations.ts'; +import {ONE_MINUTE_MS} from '@atb/utils/durations'; export const useVehicleQuery = (id: string) => useQuery({ diff --git a/src/on-behalf-of/queries/use-fetch-on-behalf-of-accounts-query.ts b/src/on-behalf-of/queries/use-fetch-on-behalf-of-accounts-query.ts index 48ce29dd32..b527301bbf 100644 --- a/src/on-behalf-of/queries/use-fetch-on-behalf-of-accounts-query.ts +++ b/src/on-behalf-of/queries/use-fetch-on-behalf-of-accounts-query.ts @@ -1,8 +1,8 @@ import {useAuthState} from '@atb/auth'; import {useQuery} from '@tanstack/react-query'; -import {fetchOnBehalfOfAccounts} from '@atb/api/profile.ts'; -import {HALF_DAY_MS} from '@atb/utils/durations.ts'; -import {OnBehalfOfAccountType} from '@atb/on-behalf-of/types.ts'; +import {fetchOnBehalfOfAccounts} from '@atb/api/profile'; +import {HALF_DAY_MS} from '@atb/utils/durations'; +import {OnBehalfOfAccountType} from '@atb/on-behalf-of/types'; export const FETCH_ON_BEHALF_OF_ACCOUNTS_QUERY_KEY = 'FETCH_ON_BEHALF_OF_ACCOUNTS'; diff --git a/src/on-behalf-of/queries/use-get-phone-by-account-id-query.tsx b/src/on-behalf-of/queries/use-get-phone-by-account-id-query.tsx index 1b8d95f85c..727a09f357 100644 --- a/src/on-behalf-of/queries/use-get-phone-by-account-id-query.tsx +++ b/src/on-behalf-of/queries/use-get-phone-by-account-id-query.tsx @@ -1,6 +1,6 @@ import {getPhoneNumberFromId} from '@atb/api/profile'; import {useQuery} from '@tanstack/react-query'; -import {ONE_HOUR_MS} from '@atb/utils/durations.ts'; +import {ONE_HOUR_MS} from '@atb/utils/durations'; export const useGetPhoneByAccountIdQuery = (accountId?: string) => useQuery({ diff --git a/src/place-screen/hooks/use-stops-details-data-query.ts b/src/place-screen/hooks/use-stops-details-data-query.ts index b68b979700..1597576f49 100644 --- a/src/place-screen/hooks/use-stops-details-data-query.ts +++ b/src/place-screen/hooks/use-stops-details-data-query.ts @@ -1,6 +1,6 @@ import {getStopsDetails} from '@atb/api/departures/stops-nearest'; import {useQuery} from '@tanstack/react-query'; -import {ONE_HOUR_MS} from '@atb/utils/durations.ts'; +import {ONE_HOUR_MS} from '@atb/utils/durations'; export const useStopsDetailsDataQuery = (ids: string[]) => useQuery({ diff --git a/src/place-screen/types.ts b/src/place-screen/types.ts index 67f4573b27..e923b87991 100644 --- a/src/place-screen/types.ts +++ b/src/place-screen/types.ts @@ -1,4 +1,4 @@ -import {Quay, StopPlace} from '@atb/api/types/departures.ts'; +import {Quay, StopPlace} from '@atb/api/types/departures'; export const DateOptions = ['now', 'departure'] as const; export type DateOptionType = (typeof DateOptions)[number]; diff --git a/src/queries/use-harbors-query.ts b/src/queries/use-harbors-query.ts index 3f2a8bec5e..ce9e3943a4 100644 --- a/src/queries/use-harbors-query.ts +++ b/src/queries/use-harbors-query.ts @@ -7,7 +7,7 @@ import { TransportMode, TransportSubmode, } from '@atb/api/types/generated/journey_planner_v3_types'; -import {ONE_HOUR_MS} from '@atb/utils/durations.ts'; +import {ONE_HOUR_MS} from '@atb/utils/durations'; import {ProductTypeTransportModes} from '@atb-as/config-specs'; import {onlyUniques} from '@atb/utils/only-uniques'; diff --git a/src/recent-fare-contracts/use-recent-fare-contracts.ts b/src/recent-fare-contracts/use-recent-fare-contracts.ts index 1ed112907f..f377906317 100644 --- a/src/recent-fare-contracts/use-recent-fare-contracts.ts +++ b/src/recent-fare-contracts/use-recent-fare-contracts.ts @@ -15,9 +15,9 @@ import { } from '@atb/ticketing'; import {useEffect, useMemo, useReducer} from 'react'; import {UserProfileWithCount} from '@atb/fare-contracts'; -import {RecentFareContractType} from '@atb/recent-fare-contracts/types.ts'; -import {onlyUniquesBasedOnField} from '@atb/utils/only-uniques.ts'; -import {enumFromString} from '@atb/utils/enum-from-string.ts'; +import {RecentFareContractType} from '@atb/recent-fare-contracts/types'; +import {onlyUniquesBasedOnField} from '@atb/utils/only-uniques'; +import {enumFromString} from '@atb/utils/enum-from-string'; type State = { error: boolean; diff --git a/src/stacks-hierarchy/RootStack.tsx b/src/stacks-hierarchy/RootStack.tsx index 209ffc7533..ac8f1e4687 100644 --- a/src/stacks-hierarchy/RootStack.tsx +++ b/src/stacks-hierarchy/RootStack.tsx @@ -65,7 +65,7 @@ import {useOnboardingFlow} from '@atb/onboarding'; import {useRegisterIntercomUser} from '@atb/chat/use-register-intercom-user'; import {useRemoteConfig} from '@atb/RemoteConfigContext'; import {ForceUpdateScreen} from '@atb/force-update-screen'; -import {compareVersion} from '@atb/utils/compare-version.ts'; +import {compareVersion} from '@atb/utils/compare-version'; type ResultState = PartialState & { state?: ResultState; diff --git a/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/Root_ChooseTicketRecipientScreen.tsx b/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/Root_ChooseTicketRecipientScreen.tsx index e2807415ca..501d3d16b2 100644 --- a/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/Root_ChooseTicketRecipientScreen.tsx +++ b/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/Root_ChooseTicketRecipientScreen.tsx @@ -5,18 +5,18 @@ import {OnBehalfOfTexts, useTranslation} from '@atb/translations'; import {useCallback, useRef} from 'react'; import {KeyboardAvoidingView, RefreshControl, View} from 'react-native'; import {ScrollView} from 'react-native-gesture-handler'; -import {animateNextChange} from '@atb/utils/animation.ts'; -import {useRecipientSelectionState} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/use-recipient-selection-state.ts'; -import {SubmitButton} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/SubmitButton.tsx'; -import {SaveRecipientToggle} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/SaveRecipientToggle.tsx'; -import {ExistingRecipientsList} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/ExistingRecipientsList.tsx'; -import {PhoneAndNameInputSection} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/PhoneAndNameInputSection.tsx'; -import {TitleAndDescription} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/TitleAndDescription.tsx'; +import {animateNextChange} from '@atb/utils/animation'; +import {useRecipientSelectionState} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/use-recipient-selection-state'; +import {SubmitButton} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/SubmitButton'; +import {SaveRecipientToggle} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/SaveRecipientToggle'; +import {ExistingRecipientsList} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/ExistingRecipientsList'; +import {PhoneAndNameInputSection} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/PhoneAndNameInputSection'; +import {TitleAndDescription} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/TitleAndDescription'; import {useQueryClient} from '@tanstack/react-query'; import {Theme} from '@atb/theme/colors'; -import {SendToOtherButton} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/SendToOtherButton.tsx'; -import {FETCH_ON_BEHALF_OF_ACCOUNTS_QUERY_KEY} from '@atb/on-behalf-of/queries/use-fetch-on-behalf-of-accounts-query.ts'; -import {giveFocus} from '@atb/utils/use-focus-on-load.ts'; +import {SendToOtherButton} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/SendToOtherButton'; +import {FETCH_ON_BEHALF_OF_ACCOUNTS_QUERY_KEY} from '@atb/on-behalf-of/queries/use-fetch-on-behalf-of-accounts-query'; +import {giveFocus} from '@atb/utils/use-focus-on-load'; type Props = RootStackScreenProps<'Root_ChooseTicketRecipientScreen'>; const getThemeColor = (theme: Theme) => theme.color.background.accent[0]; diff --git a/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/ExistingRecipientsList.tsx b/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/ExistingRecipientsList.tsx index 557a86c6e6..e395a2eac6 100644 --- a/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/ExistingRecipientsList.tsx +++ b/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/ExistingRecipientsList.tsx @@ -1,19 +1,19 @@ -import {RecipientSelectionState} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/types.ts'; +import {RecipientSelectionState} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/types'; import {dictionary, useTranslation} from '@atb/translations'; import {useEffect, useLayoutEffect} from 'react'; import {ActivityIndicator, Alert} from 'react-native'; import {MessageInfoBox} from '@atb/components/message-info-box'; import {RadioGroupSection} from '@atb/components/sections'; import {StyleSheet, useTheme} from '@atb/theme'; -import {ContrastColor} from '@atb/theme/colors.ts'; -import OnBehalfOfTexts from '@atb/translations/screens/subscreens/OnBehalfOf.ts'; +import {ContrastColor} from '@atb/theme/colors'; +import OnBehalfOfTexts from '@atb/translations/screens/subscreens/OnBehalfOf'; import {Delete} from '@atb/assets/svg/mono-icons/actions'; -import {useDeleteRecipientMutation} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/use-delete-recipient-mutation.ts'; -import {animateNextChange} from '@atb/utils/animation.ts'; +import {useDeleteRecipientMutation} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/use-delete-recipient-mutation'; +import {animateNextChange} from '@atb/utils/animation'; import {screenReaderPause} from '@atb/components/text'; -import {useFetchOnBehalfOfAccountsQuery} from '@atb/on-behalf-of/queries/use-fetch-on-behalf-of-accounts-query.ts'; -import {OnBehalfOfAccountType} from '@atb/on-behalf-of/types.ts'; -import {formatPhoneNumber} from '@atb/utils/phone-number-utils.ts'; +import {useFetchOnBehalfOfAccountsQuery} from '@atb/on-behalf-of/queries/use-fetch-on-behalf-of-accounts-query'; +import {OnBehalfOfAccountType} from '@atb/on-behalf-of/types'; +import {formatPhoneNumber} from '@atb/utils/phone-number-utils'; import {spellOut} from '@atb/utils/accessibility'; export const ExistingRecipientsList = ({ diff --git a/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/PhoneAndNameInputSection.tsx b/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/PhoneAndNameInputSection.tsx index 130041998f..3dce33503e 100644 --- a/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/PhoneAndNameInputSection.tsx +++ b/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/PhoneAndNameInputSection.tsx @@ -1,4 +1,4 @@ -import {RecipientSelectionState} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/types.ts'; +import {RecipientSelectionState} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/types'; import { OnBehalfOfTexts, PhoneInputTexts, @@ -10,7 +10,7 @@ import { TextInputSectionItem, } from '@atb/components/sections'; import {ThemeText} from '@atb/components/text'; -import {ContrastColor} from '@atb/theme/colors.ts'; +import {ContrastColor} from '@atb/theme/colors'; import {StyleSheet} from '@atb/theme'; export const PhoneAndNameInputSection = ({ diff --git a/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/SaveRecipientToggle.tsx b/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/SaveRecipientToggle.tsx index 7ee4600437..d08264b935 100644 --- a/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/SaveRecipientToggle.tsx +++ b/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/SaveRecipientToggle.tsx @@ -1,12 +1,12 @@ -import {RecipientSelectionState} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/types.ts'; +import {RecipientSelectionState} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/types'; import {dictionary, OnBehalfOfTexts, useTranslation} from '@atb/translations'; import {Checkbox} from '@atb/components/checkbox'; import {screenReaderPause, ThemeText} from '@atb/components/text'; import {StyleSheet} from '@atb/theme'; -import {ContrastColor} from '@atb/theme/colors.ts'; +import {ContrastColor} from '@atb/theme/colors'; import {MessageInfoBox} from '@atb/components/message-info-box'; import {PressableOpacity} from '@atb/components/pressable-opacity'; -import {useFetchOnBehalfOfAccountsQuery} from '@atb/on-behalf-of/queries/use-fetch-on-behalf-of-accounts-query.ts'; +import {useFetchOnBehalfOfAccountsQuery} from '@atb/on-behalf-of/queries/use-fetch-on-behalf-of-accounts-query'; const MAX_RECIPIENTS = 10; diff --git a/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/SendToOtherButton.tsx b/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/SendToOtherButton.tsx index c66540ce55..f6d9b77ee0 100644 --- a/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/SendToOtherButton.tsx +++ b/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/SendToOtherButton.tsx @@ -1,8 +1,8 @@ -import {RecipientSelectionState} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/types.ts'; +import {RecipientSelectionState} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/types'; import {Button} from '@atb/components/button'; import {Add} from '@atb/assets/svg/mono-icons/actions'; import {useTranslation} from '@atb/translations'; -import OnBehalfOfTexts from '@atb/translations/screens/subscreens/OnBehalfOf.ts'; +import OnBehalfOfTexts from '@atb/translations/screens/subscreens/OnBehalfOf'; import {ContrastColor} from '@atb/theme/colors'; export const SendToOtherButton = ({ diff --git a/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/SubmitButton.tsx b/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/SubmitButton.tsx index d9e7b6d599..bb90da426f 100644 --- a/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/SubmitButton.tsx +++ b/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/components/SubmitButton.tsx @@ -1,7 +1,7 @@ import { OnBehalfOfErrorCode, RecipientSelectionState, -} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/types.ts'; +} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/types'; import {TicketRecipientType} from '@atb/ticketing'; import {StyleSheet, useTheme} from '@atb/theme'; import { @@ -10,7 +10,7 @@ import { PurchaseOverviewTexts, useTranslation, } from '@atb/translations'; -import {useGetAccountIdByPhoneMutation} from '@atb/on-behalf-of/queries/use-get-account-id-by-phone-query.tsx'; +import {useGetAccountIdByPhoneMutation} from '@atb/on-behalf-of/queries/use-get-account-id-by-phone-query'; import {useState} from 'react'; import phoneValidator from 'phone'; import {ActivityIndicator, View} from 'react-native'; @@ -18,7 +18,7 @@ import {MessageInfoBox} from '@atb/components/message-info-box'; import {Button} from '@atb/components/button'; import {ArrowRight} from '@atb/assets/svg/mono-icons/navigation'; import {ContrastColor} from '@atb/theme/colors'; -import {useFetchOnBehalfOfAccountsQuery} from '@atb/on-behalf-of/queries/use-fetch-on-behalf-of-accounts-query.ts'; +import {useFetchOnBehalfOfAccountsQuery} from '@atb/on-behalf-of/queries/use-fetch-on-behalf-of-accounts-query'; export const SubmitButton = ({ state: {settingPhone, settingName, recipient, phone, prefix, name, error}, diff --git a/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/types.ts b/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/types.ts index be9b2be7cc..d8582d0d24 100644 --- a/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/types.ts +++ b/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/types.ts @@ -1,5 +1,5 @@ import {GetAccountByPhoneErrorCode} from '@atb/on-behalf-of'; -import {OnBehalfOfAccountType} from '@atb/on-behalf-of/types.ts'; +import {OnBehalfOfAccountType} from '@atb/on-behalf-of/types'; export type OnBehalfOfErrorCode = | GetAccountByPhoneErrorCode diff --git a/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/use-delete-recipient-mutation.ts b/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/use-delete-recipient-mutation.ts index 873f037219..c242deedae 100644 --- a/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/use-delete-recipient-mutation.ts +++ b/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/use-delete-recipient-mutation.ts @@ -1,9 +1,9 @@ import {useMutation, useQueryClient} from '@tanstack/react-query'; -import {deleteOnBehalfOfAccount} from '@atb/api/profile.ts'; +import {deleteOnBehalfOfAccount} from '@atb/api/profile'; import {useAuthState} from '@atb/auth'; -import {OnBehalfOfAccountsResponse} from '@atb/api/types/profile.ts'; +import {OnBehalfOfAccountsResponse} from '@atb/api/types/profile'; import {useState} from 'react'; -import {FETCH_ON_BEHALF_OF_ACCOUNTS_QUERY_KEY} from '@atb/on-behalf-of/queries/use-fetch-on-behalf-of-accounts-query.ts'; +import {FETCH_ON_BEHALF_OF_ACCOUNTS_QUERY_KEY} from '@atb/on-behalf-of/queries/use-fetch-on-behalf-of-accounts-query'; export const useDeleteRecipientMutation = () => { const {userId} = useAuthState(); diff --git a/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/use-recipient-selection-state.ts b/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/use-recipient-selection-state.ts index 7b8670a9f2..76a4f23b4b 100644 --- a/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/use-recipient-selection-state.ts +++ b/src/stacks-hierarchy/Root_ChooseTicketRecipientScreen/use-recipient-selection-state.ts @@ -2,8 +2,8 @@ import {Dispatch, useReducer} from 'react'; import { OnBehalfOfErrorCode, RecipientSelectionState, -} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/types.ts'; -import {OnBehalfOfAccountType} from '@atb/on-behalf-of/types.ts'; +} from '@atb/stacks-hierarchy/Root_ChooseTicketRecipientScreen/types'; +import {OnBehalfOfAccountType} from '@atb/on-behalf-of/types'; type RecipientSelectionAction = | {type: 'SELECT_RECIPIENT'; recipient?: OnBehalfOfAccountType} diff --git a/src/stacks-hierarchy/Root_PurchaseConfirmationScreen/components/PreassignedFareProductSummary.tsx b/src/stacks-hierarchy/Root_PurchaseConfirmationScreen/components/PreassignedFareProductSummary.tsx index 70802ab78c..9220032a30 100644 --- a/src/stacks-hierarchy/Root_PurchaseConfirmationScreen/components/PreassignedFareProductSummary.tsx +++ b/src/stacks-hierarchy/Root_PurchaseConfirmationScreen/components/PreassignedFareProductSummary.tsx @@ -17,7 +17,7 @@ import { useTranslation, } from '@atb/translations'; import {formatToLongDateTime, secondsToDuration} from '@atb/utils/date'; -import {formatPhoneNumber} from '@atb/utils/phone-number-utils.ts'; +import {formatPhoneNumber} from '@atb/utils/phone-number-utils'; import React from 'react'; import {View} from 'react-native'; import {TicketRecipientType} from '@atb/ticketing'; diff --git a/src/stacks-hierarchy/Root_PurchaseConfirmationScreen/use-reserve-offer-mutation.ts b/src/stacks-hierarchy/Root_PurchaseConfirmationScreen/use-reserve-offer-mutation.ts index d9c065074a..4c53bc17a8 100644 --- a/src/stacks-hierarchy/Root_PurchaseConfirmationScreen/use-reserve-offer-mutation.ts +++ b/src/stacks-hierarchy/Root_PurchaseConfirmationScreen/use-reserve-offer-mutation.ts @@ -8,7 +8,7 @@ import { import {useAuthState} from '@atb/auth'; import {PaymentMethod} from '@atb/stacks-hierarchy/types'; import {useRemoteConfig} from '@atb/RemoteConfigContext'; -import {FETCH_ON_BEHALF_OF_ACCOUNTS_QUERY_KEY} from '@atb/on-behalf-of/queries/use-fetch-on-behalf-of-accounts-query.ts'; +import {FETCH_ON_BEHALF_OF_ACCOUNTS_QUERY_KEY} from '@atb/on-behalf-of/queries/use-fetch-on-behalf-of-accounts-query'; type Args = { offers: ReserveOffer[]; diff --git a/src/stacks-hierarchy/Root_TabNavigatorStack/TabNav_ProfileStack/Profile_EditProfileScreen.tsx b/src/stacks-hierarchy/Root_TabNavigatorStack/TabNav_ProfileStack/Profile_EditProfileScreen.tsx index e7f59448bf..28145caf8a 100644 --- a/src/stacks-hierarchy/Root_TabNavigatorStack/TabNav_ProfileStack/Profile_EditProfileScreen.tsx +++ b/src/stacks-hierarchy/Root_TabNavigatorStack/TabNav_ProfileStack/Profile_EditProfileScreen.tsx @@ -16,7 +16,7 @@ import {isValidEmail} from '@atb/utils/validation'; import {CustomerProfile} from '@atb/api/types/profile'; import {useProfileQuery, useProfileUpdateMutation} from '@atb/queries'; import {useRemoteConfig} from '@atb/RemoteConfigContext'; -import {formatPhoneNumber} from '@atb/utils/phone-number-utils.ts'; +import {formatPhoneNumber} from '@atb/utils/phone-number-utils'; type EditProfileScreenProps = ProfileScreenProps<'Profile_EditProfileScreen'>; diff --git a/src/stacks-hierarchy/Root_TabNavigatorStack/TabNav_ProfileStack/Profile_RootScreen.tsx b/src/stacks-hierarchy/Root_TabNavigatorStack/TabNav_ProfileStack/Profile_RootScreen.tsx index 3d7f122339..50d8d87be5 100644 --- a/src/stacks-hierarchy/Root_TabNavigatorStack/TabNav_ProfileStack/Profile_RootScreen.tsx +++ b/src/stacks-hierarchy/Root_TabNavigatorStack/TabNav_ProfileStack/Profile_RootScreen.tsx @@ -42,7 +42,7 @@ import {useStorybookContext} from '@atb/storybook/StorybookContext'; import {ContentHeading} from '@atb/components/heading'; import {FullScreenView} from '@atb/components/screen-view'; import {TransitionPresets} from '@react-navigation/stack'; -import {formatPhoneNumber} from '@atb/utils/phone-number-utils.ts'; +import {formatPhoneNumber} from '@atb/utils/phone-number-utils'; import {useFeatureToggles} from '@atb/feature-toggles'; const buildNumber = getBuildNumber(); diff --git a/src/stacks-hierarchy/Root_TabNavigatorStack/TabNav_TicketingStack/Ticketing_TicketTabNavStack/TicketTabNav_PurchaseTabScreen/TicketTabNav_PurchaseTabScreen.tsx b/src/stacks-hierarchy/Root_TabNavigatorStack/TabNav_TicketingStack/Ticketing_TicketTabNavStack/TicketTabNav_PurchaseTabScreen/TicketTabNav_PurchaseTabScreen.tsx index be24ebfeab..a328fc5d63 100644 --- a/src/stacks-hierarchy/Root_TabNavigatorStack/TabNav_TicketingStack/Ticketing_TicketTabNavStack/TicketTabNav_PurchaseTabScreen/TicketTabNav_PurchaseTabScreen.tsx +++ b/src/stacks-hierarchy/Root_TabNavigatorStack/TabNav_TicketingStack/Ticketing_TicketTabNavStack/TicketTabNav_PurchaseTabScreen/TicketTabNav_PurchaseTabScreen.tsx @@ -16,7 +16,7 @@ import {StopPlaceFragment} from '@atb/api/types/generated/fragments/stop-places' import {TariffZone} from '@atb/configuration'; import {TransitionPresets} from '@react-navigation/stack'; import {useGetFareProductsQuery} from '@atb/ticketing/use-get-fare-products-query'; -import {ErrorWithAccountMessage} from '@atb/stacks-hierarchy/Root_TabNavigatorStack/TabNav_TicketingStack/Ticketing_TicketTabNavStack/TicketTabNav_PurchaseTabScreen/Components/ErrorWithAccountMessage.tsx'; +import {ErrorWithAccountMessage} from '@atb/stacks-hierarchy/Root_TabNavigatorStack/TabNav_TicketingStack/Ticketing_TicketTabNavStack/TicketTabNav_PurchaseTabScreen/Components/ErrorWithAccountMessage'; import {useRecentFareContracts} from '@atb/recent-fare-contracts/use-recent-fare-contracts'; import type {RecentFareContractType} from '@atb/recent-fare-contracts'; diff --git a/src/ticketing/use-get-fare-products-query.tsx b/src/ticketing/use-get-fare-products-query.tsx index c9230c2cc9..0e09668c25 100644 --- a/src/ticketing/use-get-fare-products-query.tsx +++ b/src/ticketing/use-get-fare-products-query.tsx @@ -2,7 +2,7 @@ import {useFirestoreConfiguration} from '@atb/configuration'; import {getFareProducts} from '@atb/ticketing'; import {useQuery} from '@tanstack/react-query'; import {useAuthState} from '@atb/auth'; -import {ONE_HOUR_MS} from '@atb/utils/durations.ts'; +import {ONE_HOUR_MS} from '@atb/utils/durations'; export const useGetFareProductsQuery = () => { const {preassignedFareProducts} = useFirestoreConfiguration(); diff --git a/src/ticketing/use-list-recurring-payments-query.tsx b/src/ticketing/use-list-recurring-payments-query.tsx index 1a77680d31..cf083be68c 100644 --- a/src/ticketing/use-list-recurring-payments-query.tsx +++ b/src/ticketing/use-list-recurring-payments-query.tsx @@ -1,7 +1,7 @@ import {useAuthState} from '@atb/auth'; import {listRecurringPayments} from '@atb/ticketing'; import {useQuery} from '@tanstack/react-query'; -import {ONE_HOUR_MS} from '@atb/utils/durations.ts'; +import {ONE_HOUR_MS} from '@atb/utils/durations'; export const LIST_RECURRING_PAYMENTS_QUERY_KEY = 'getListRecurringPayments'; diff --git a/src/travel-aid/TravelAidScreenComponent.tsx b/src/travel-aid/TravelAidScreenComponent.tsx index e38c995da9..8262f1d8bf 100644 --- a/src/travel-aid/TravelAidScreenComponent.tsx +++ b/src/travel-aid/TravelAidScreenComponent.tsx @@ -28,7 +28,7 @@ import { getFocusedEstimatedCall, } from './get-focused-estimated-call'; import {useFocusOnLoad} from '@atb/utils/use-focus-on-load'; -import {getQuayName} from '@atb/utils/transportation-names.ts'; +import {getQuayName} from '@atb/utils/transportation-names'; import {SituationMessageBox} from '@atb/situations'; import {CancelledDepartureMessage} from '@atb/travel-details-screens/components/CancelledDepartureMessage'; import {StopSignalButton} from '@atb/travel-aid/components/StopSignalButton'; diff --git a/src/travel-details-screens/utils.ts b/src/travel-details-screens/utils.ts index 969492efb5..300a80c137 100644 --- a/src/travel-details-screens/utils.ts +++ b/src/travel-details-screens/utils.ts @@ -23,9 +23,9 @@ import {APP_ORG} from '@env'; import {BookingArrangementFragment} from '@atb/api/types/generated/fragments/booking-arrangements'; import {BookingStatus, TripPatternBookingStatus} from './types'; import {Statuses} from '@atb/theme'; -import {isDefined} from '@atb/utils/presence.ts'; +import {isDefined} from '@atb/utils/presence'; import {screenReaderPause} from '@atb/components/text'; -import {EstimatedCallWithMetadata} from '@atb/travel-details-screens/use-departure-data.ts'; +import {EstimatedCallWithMetadata} from '@atb/travel-details-screens/use-departure-data'; const DEFAULT_THRESHOLD_AIMED_EXPECTED_IN_MINUTES = 1; diff --git a/yarn.lock b/yarn.lock index 03c7f33efe..acf649551f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2972,6 +2972,11 @@ "@types/geojson" "^7946.0.7" debounce "^1.2.0" +"@rtsao/scc@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@rtsao/scc/-/scc-1.1.0.tgz#927dd2fae9bc3361403ac2c7a00c32ddce9ad7e8" + integrity sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g== + "@seznam/compose-react-refs@^1.0.6": version "1.0.6" resolved "https://registry.yarnpkg.com/@seznam/compose-react-refs/-/compose-react-refs-1.0.6.tgz#6ec4e70bdd6e32f8e70b4100f27267cf306bd8df" @@ -3657,6 +3662,11 @@ resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== +"@types/json5@^0.0.29": + version "0.0.29" + resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" + integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ== + "@types/lodash.groupby@^4.6.9": version "4.6.9" resolved "https://registry.yarnpkg.com/@types/lodash.groupby/-/lodash.groupby-4.6.9.tgz#ea1aa9da1038ca50894d1fe1a3b5dabdf865d99c" @@ -4195,12 +4205,36 @@ array-includes@^3.1.6: get-intrinsic "^1.2.1" is-string "^1.0.7" +array-includes@^3.1.8: + version "3.1.8" + resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.8.tgz#5e370cbe172fdd5dd6530c1d4aadda25281ba97d" + integrity sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.2" + es-object-atoms "^1.0.0" + get-intrinsic "^1.2.4" + is-string "^1.0.7" + array-union@^2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== -array.prototype.flat@^1.3.1: +array.prototype.findlastindex@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz#8c35a755c72908719453f87145ca011e39334d0d" + integrity sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.2" + es-errors "^1.3.0" + es-object-atoms "^1.0.0" + es-shim-unscopables "^1.0.2" + +array.prototype.flat@^1.3.1, array.prototype.flat@^1.3.2: version "1.3.2" resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz#1476217df8cff17d72ee8f3ba06738db5b387d18" integrity sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA== @@ -4210,7 +4244,7 @@ array.prototype.flat@^1.3.1: es-abstract "^1.22.1" es-shim-unscopables "^1.0.0" -array.prototype.flatmap@^1.3.1: +array.prototype.flatmap@^1.3.1, array.prototype.flatmap@^1.3.2: version "1.3.2" resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz#c9a7c6831db8e719d6ce639190146c24bbd3e527" integrity sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ== @@ -5316,6 +5350,13 @@ debug@2.6.9, debug@^2.2.0, debug@^2.6.9: dependencies: ms "2.0.0" +debug@^3.2.7: + version "3.2.7" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" + integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== + dependencies: + ms "^2.1.1" + debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4: version "4.3.6" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.6.tgz#2ab2c38fbaffebf8aa95fdfe6d88438c7a13c52b" @@ -5756,6 +5797,58 @@ es-abstract@^1.20.4, es-abstract@^1.21.3, es-abstract@^1.22.1, es-abstract@^1.22 unbox-primitive "^1.0.2" which-typed-array "^1.1.15" +es-abstract@^1.23.2: + version "1.23.5" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.23.5.tgz#f4599a4946d57ed467515ed10e4f157289cd52fb" + integrity sha512-vlmniQ0WNPwXqA0BnmwV3Ng7HxiGlh6r5U6JcTMNx8OilcAGqVJBHJcPjqOMaczU9fRuRK5Px2BdVyPRnKMMVQ== + dependencies: + array-buffer-byte-length "^1.0.1" + arraybuffer.prototype.slice "^1.0.3" + available-typed-arrays "^1.0.7" + call-bind "^1.0.7" + data-view-buffer "^1.0.1" + data-view-byte-length "^1.0.1" + data-view-byte-offset "^1.0.0" + es-define-property "^1.0.0" + es-errors "^1.3.0" + es-object-atoms "^1.0.0" + es-set-tostringtag "^2.0.3" + es-to-primitive "^1.2.1" + function.prototype.name "^1.1.6" + get-intrinsic "^1.2.4" + get-symbol-description "^1.0.2" + globalthis "^1.0.4" + gopd "^1.0.1" + has-property-descriptors "^1.0.2" + has-proto "^1.0.3" + has-symbols "^1.0.3" + hasown "^2.0.2" + internal-slot "^1.0.7" + is-array-buffer "^3.0.4" + is-callable "^1.2.7" + is-data-view "^1.0.1" + is-negative-zero "^2.0.3" + is-regex "^1.1.4" + is-shared-array-buffer "^1.0.3" + is-string "^1.0.7" + is-typed-array "^1.1.13" + is-weakref "^1.0.2" + object-inspect "^1.13.3" + object-keys "^1.1.1" + object.assign "^4.1.5" + regexp.prototype.flags "^1.5.3" + safe-array-concat "^1.1.2" + safe-regex-test "^1.0.3" + string.prototype.trim "^1.2.9" + string.prototype.trimend "^1.0.8" + string.prototype.trimstart "^1.0.8" + typed-array-buffer "^1.0.2" + typed-array-byte-length "^1.0.1" + typed-array-byte-offset "^1.0.2" + typed-array-length "^1.0.6" + unbox-primitive "^1.0.2" + which-typed-array "^1.1.15" + es-define-property@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.0.tgz#c7faefbdff8b2696cf5f46921edfb77cc4ba3845" @@ -5826,6 +5919,13 @@ es-shim-unscopables@^1.0.0: dependencies: has "^1.0.3" +es-shim-unscopables@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz#1f6942e71ecc7835ed1c8a83006d8771a63a3763" + integrity sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw== + dependencies: + hasown "^2.0.0" + es-to-primitive@^1.2.1: version "1.2.1" resolved "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz" @@ -5907,6 +6007,22 @@ eslint-config-prettier@^9.0.0: resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-9.0.0.tgz#eb25485946dd0c66cd216a46232dc05451518d1f" integrity sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw== +eslint-import-resolver-node@^0.3.9: + version "0.3.9" + resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz#d4eaac52b8a2e7c3cd1903eb00f7e053356118ac" + integrity sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g== + dependencies: + debug "^3.2.7" + is-core-module "^2.13.0" + resolve "^1.22.4" + +eslint-module-utils@^2.12.0: + version "2.12.0" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz#fe4cfb948d61f49203d7b08871982b65b9af0b0b" + integrity sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg== + dependencies: + debug "^3.2.7" + eslint-plugin-eslint-comments@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/eslint-plugin-eslint-comments/-/eslint-plugin-eslint-comments-3.2.0.tgz#9e1cd7b4413526abb313933071d7aba05ca12ffa" @@ -5923,6 +6039,31 @@ eslint-plugin-ft-flow@^2.0.1: lodash "^4.17.21" string-natural-compare "^3.0.1" +eslint-plugin-import@^2.31.0: + version "2.31.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz#310ce7e720ca1d9c0bb3f69adfd1c6bdd7d9e0e7" + integrity sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A== + dependencies: + "@rtsao/scc" "^1.1.0" + array-includes "^3.1.8" + array.prototype.findlastindex "^1.2.5" + array.prototype.flat "^1.3.2" + array.prototype.flatmap "^1.3.2" + debug "^3.2.7" + doctrine "^2.1.0" + eslint-import-resolver-node "^0.3.9" + eslint-module-utils "^2.12.0" + hasown "^2.0.2" + is-core-module "^2.15.1" + is-glob "^4.0.3" + minimatch "^3.1.2" + object.fromentries "^2.0.8" + object.groupby "^1.0.3" + object.values "^1.2.0" + semver "^6.3.1" + string.prototype.trimend "^1.0.8" + tsconfig-paths "^3.15.0" + eslint-plugin-jest@^26.5.3: version "26.9.0" resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-26.9.0.tgz#7931c31000b1c19e57dbfb71bbf71b817d1bf949" @@ -6710,6 +6851,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" @@ -7086,6 +7235,13 @@ is-core-module@^2.13.0, is-core-module@^2.9.0: dependencies: hasown "^2.0.0" +is-core-module@^2.15.1: + version "2.15.1" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.15.1.tgz#a7363a25bee942fefab0de13bf6aa372c82dcc37" + integrity sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ== + dependencies: + hasown "^2.0.2" + is-data-view@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-data-view/-/is-data-view-1.0.1.tgz#4b4d3a511b70f3dc26d42c03ca9ca515d847759f" @@ -7898,6 +8054,13 @@ json-stable-stringify@^1.0.2: jsonify "^0.0.1" object-keys "^1.1.1" +json5@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" + integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA== + dependencies: + minimist "^1.2.0" + json5@^2.2.2, json5@^2.2.3: version "2.2.3" resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" @@ -8605,7 +8768,7 @@ ms@2.1.2: resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -ms@2.1.3: +ms@2.1.3, ms@^2.1.1: version "2.1.3" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== @@ -8779,6 +8942,11 @@ object-inspect@^1.13.1, object-inspect@^1.9.0: resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.1.tgz#b96c6109324ccfef6b12216a956ca4dc2ff94bc2" integrity sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ== +object-inspect@^1.13.3: + version "1.13.3" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.3.tgz#f14c183de51130243d6d18ae149375ff50ea488a" + integrity sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA== + object-is@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.5.tgz#b9deeaa5fc7f1846a0faecdceec138e5778f53ac" @@ -8820,6 +8988,25 @@ object.fromentries@^2.0.6: define-properties "^1.2.0" es-abstract "^1.22.1" +object.fromentries@^2.0.8: + version "2.0.8" + resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.8.tgz#f7195d8a9b97bd95cbc1999ea939ecd1a2b00c65" + integrity sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.2" + es-object-atoms "^1.0.0" + +object.groupby@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/object.groupby/-/object.groupby-1.0.3.tgz#9b125c36238129f6f7b61954a1e7176148d5002e" + integrity sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-abstract "^1.23.2" + object.hasown@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/object.hasown/-/object.hasown-1.1.2.tgz#f919e21fad4eb38a57bc6345b3afd496515c3f92" @@ -8837,6 +9024,15 @@ object.values@^1.1.6: define-properties "^1.2.0" es-abstract "^1.22.1" +object.values@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.2.0.tgz#65405a9d92cee68ac2d303002e0b8470a4d9ab1b" + integrity sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" + on-finished@2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" @@ -9892,6 +10088,16 @@ regexp.prototype.flags@^1.5.0, regexp.prototype.flags@^1.5.1, regexp.prototype.f es-errors "^1.3.0" set-function-name "^2.0.1" +regexp.prototype.flags@^1.5.3: + version "1.5.3" + resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz#b3ae40b1d2499b8350ab2c3fe6ef3845d3a96f42" + integrity sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ== + dependencies: + call-bind "^1.0.7" + define-properties "^1.2.1" + es-errors "^1.3.0" + set-function-name "^2.0.2" + regexpu-core@^6.1.1: version "6.1.1" resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-6.1.1.tgz#b469b245594cb2d088ceebc6369dceb8c00becac" @@ -9963,7 +10169,7 @@ resolve.exports@^2.0.0: resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.2.tgz#f8c934b8e6a13f539e38b7098e2e36134f01e800" integrity sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg== -resolve@^1.10.0, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.20.0, resolve@^1.22.8, resolve@^1.8.1: +resolve@^1.10.0, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.20.0, resolve@^1.22.4, resolve@^1.22.8, resolve@^1.8.1: version "1.22.8" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== @@ -10167,6 +10373,16 @@ set-function-name@^2.0.0, set-function-name@^2.0.1: functions-have-names "^1.2.3" has-property-descriptors "^1.0.0" +set-function-name@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.2.tgz#16a705c5a0dc2f5e638ca96d8a8cd4e1c2b90985" + integrity sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ== + dependencies: + define-data-property "^1.1.4" + es-errors "^1.3.0" + functions-have-names "^1.2.3" + has-property-descriptors "^1.0.2" + setimmediate@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" @@ -10564,6 +10780,11 @@ strip-ansi@^6.0.0, strip-ansi@^6.0.1: dependencies: ansi-regex "^5.0.1" +strip-bom@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + integrity sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA== + strip-bom@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz" @@ -10874,6 +11095,16 @@ ts-pattern@^4.0.5: resolved "https://registry.yarnpkg.com/ts-pattern/-/ts-pattern-4.3.0.tgz#7a995b39342f1b00d1507c2d2f3b90ea16e178a6" integrity sha512-pefrkcd4lmIVR0LA49Imjf9DYLK8vtWhqBPA3Ya1ir8xCW0O2yjL9dsCVvI7pCodLC5q7smNpEtDR2yVulQxOg== +tsconfig-paths@^3.15.0: + version "3.15.0" + resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz#5299ec605e55b1abb23ec939ef15edaf483070d4" + integrity sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg== + dependencies: + "@types/json5" "^0.0.29" + json5 "^1.0.2" + minimist "^1.2.6" + strip-bom "^3.0.0" + tslib@^1.8.1: version "1.14.1" resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz"