Skip to content

Commit

Permalink
fix(type): removing any in dispatch and RootState interface
Browse files Browse the repository at this point in the history
  • Loading branch information
bdebon committed May 24, 2022
1 parent bc84e7e commit c175fe7
Show file tree
Hide file tree
Showing 25 changed files with 47 additions and 55 deletions.
4 changes: 2 additions & 2 deletions apps/console/src/app/app.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,8 @@ function RedirectOverview() {

useEffect(() => {
async function fetchProjects() {
const projects = organizationId && (await getProjects(organizationId))
if (projects.payload.length > 0) {
const projects: any = organizationId && (await getProjects(organizationId))
if (projects?.payload.length > 0) {
window.location.href = OVERVIEW_URL(organizationId, projects.payload[0].id)
}
}
Expand Down
2 changes: 1 addition & 1 deletion apps/console/src/main.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ posthog.init(environment.posthog, {
api_host: environment.posthog_apihost,
})

const onRedirectCallback = (appState: AppState) => {
const onRedirectCallback = (appState: AppState | undefined) => {
// use the router's history module to replace the url
history.replace(appState?.returnTo || window.location.pathname)
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
import { useCallback } from 'react'
import { useDispatch } from 'react-redux'
import { fetchApplication } from '../slices/applications.slice'
import { AppDispatch } from '@console/store/data'

export function useApplication() {
const dispatch = useDispatch()
const dispatch = useDispatch<AppDispatch>()

const getApplication = useCallback(
async (applicationId: string) => dispatch(fetchApplication({ applicationId })),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,10 @@ import {
removeOneApplication,
selectAllApplications,
} from '../slices/applications.slice'
import { AppDispatch } from '@console/store/data'

export function useApplications() {
const dispatch = useDispatch<any>()
const dispatch = useDispatch<AppDispatch>()
const applications = useSelector(selectAllApplications)

const removeApplication = useCallback(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@ import {
Status,
} from 'qovery-typescript-axios'
import { addOneToManyRelation, getEntitiesByIds, removeOneToManyRelation } from '@console/shared/utils'
import { ApplicationEntity, ApplicationsState, LoadingStatus, RootState } from '@console/shared/interfaces'
import { ApplicationEntity, ApplicationsState, LoadingStatus } from '@console/shared/interfaces'
import { RootState } from '@console/store/data'

export const APPLICATIONS_FEATURE_KEY = 'applications'

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,10 @@ import {
PayloadAction,
Update,
} from '@reduxjs/toolkit'
import { EnvironmentEntity, EnvironmentsState, RootState } from '@console/shared/interfaces'
import { EnvironmentEntity, EnvironmentsState } from '@console/shared/interfaces'
import { Environment, EnvironmentsApi, Status } from 'qovery-typescript-axios'
import { addOneToManyRelation, getEntitiesByIds } from '@console/shared/utils'
import { RootState } from '@console/store/data'

export const ENVIRONMENTS_FEATURE_KEY = 'environments'

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,11 @@ import {
selectAllOrganization,
selectOrganizationLoadingStatus,
} from '../slices/organization.slice'
import { AppDispatch } from '@console/store/data'

export function useOrganization() {
const { getAccessTokenSilently } = useAuth()
const dispatch = useDispatch<any>()
const dispatch = useDispatch<AppDispatch>()
const organization = useSelector(selectAllOrganization)
const loadingStatus = useSelector(selectOrganizationLoadingStatus)

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import { createAsyncThunk, createEntityAdapter, createSelector, createSlice, PayloadAction } from '@reduxjs/toolkit'
import { Organization, OrganizationMainCallsApi, OrganizationRequest } from 'qovery-typescript-axios'
import { OrganizationState, RootState } from '@console/shared/interfaces'
import { OrganizationState } from '@console/shared/interfaces'
import { RootState } from '@console/store/data'

export const ORGANIZATION_KEY = 'organization'

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,10 @@ import {
fetchEnvironmentsStatus,
selectAllEnvironments,
} from 'libs/domains/environment/src/lib/slices/environments.slice'
import { AppDispatch } from '@console/store/data'

export function useEnvironments() {
const dispatch = useDispatch<any>()
const dispatch = useDispatch<AppDispatch>()
const environments = useSelector(selectAllEnvironments)

const getEnvironments = useCallback(
Expand Down
3 changes: 2 additions & 1 deletion libs/domains/projects/src/lib/provider/projects-provider.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,10 @@ import { useCallback } from 'react'
import { useDispatch, useSelector } from 'react-redux'
import { ProjectRequest } from 'qovery-typescript-axios'
import { fetchProjects, postProject, selectAllProjects } from '../slices/projects.slice'
import { AppDispatch } from '@console/store/data'

export function useProjects() {
const dispatch = useDispatch<any>()
const dispatch = useDispatch<AppDispatch>()
const projects = useSelector(selectAllProjects)

const getProjects = useCallback(
Expand Down
3 changes: 2 additions & 1 deletion libs/domains/projects/src/lib/slices/projects.slice.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
import { createAsyncThunk, createEntityAdapter, createSelector, createSlice, PayloadAction } from '@reduxjs/toolkit'
import { Project, ProjectRequest, ProjectsApi } from 'qovery-typescript-axios'
import { ProjectsState, RootState } from '@console/shared/interfaces'
import { ProjectsState } from '@console/shared/interfaces'
import { addOneToManyRelation, getEntitiesByIds } from '@console/shared/utils'
import { RootState } from '@console/store/data'

export const PROJECTS_FEATURE_KEY = 'projects'

Expand Down
7 changes: 4 additions & 3 deletions libs/domains/user/src/lib/provider/user-provider.tsx
Original file line number Diff line number Diff line change
@@ -1,17 +1,18 @@
import posthog from 'posthog-js'
import { useCallback } from 'react'
import { useDispatch, useSelector } from 'react-redux'
import { selectUser } from '../slices/user.slice'
import {
fetchUserSignUp,
selectUserSignUp,
postUserSignUp,
selectUserLoadingStatus,
selectUserSignUp,
} from '../slices/user-sign-up.slice'
import { SignUpRequest } from 'qovery-typescript-axios'
import { AppDispatch } from '@console/store/data'
import { selectUser } from '../slices'

export function useUser() {
const dispatch = useDispatch<any>()
const dispatch = useDispatch<AppDispatch>()
const user = useSelector(selectUser)
const userSignUp = useSelector(selectUserSignUp)
const loadingStatus = useSelector(selectUserLoadingStatus)
Expand Down
2 changes: 1 addition & 1 deletion libs/domains/user/src/lib/slices/user.slice.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { createSelector, createSlice } from '@reduxjs/toolkit'
import { UserInterface } from '../interfaces'
import { RootState } from '@console/shared/interfaces'
import { RootState } from '@console/store/data'

export const USER_KEY = 'user'

Expand Down
5 changes: 3 additions & 2 deletions libs/pages/application/feature/src/lib/application-page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,11 @@ import {
import { Route, Routes, useParams } from 'react-router'
import { useDispatch, useSelector } from 'react-redux'
import { selectEnvironmentById } from '@console/domains/environment'
import { ApplicationEntity, LoadingStatus, RootState } from '@console/shared/interfaces'
import { ApplicationEntity, LoadingStatus } from '@console/shared/interfaces'
import { Environment } from 'qovery-typescript-axios'
import { useEffect } from 'react'
import { ROUTER_APPLICATION } from './router/router'
import { AppDispatch, RootState } from '@console/store/data'

export function ApplicationPage() {
useDocumentTitle('Application - Qovery')
Expand All @@ -27,7 +28,7 @@ export function ApplicationPage() {

const loadingStatus = useSelector<RootState, LoadingStatus>((state) => applicationsLoadingStatus(state))

const dispatch = useDispatch()
const dispatch = useDispatch<AppDispatch>()

useEffect(() => {
if (applicationId && loadingStatus === 'loaded') {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,8 @@ import {
getApplicationsState,
getCountNewCommitsToDeploy,
} from '@console/domains/application'
import { ApplicationEntity, LoadingStatus, RootState } from '@console/shared/interfaces'
import { ApplicationEntity, LoadingStatus } from '@console/shared/interfaces'
import { RootState } from '@console/store/data'

export function General() {
const { applicationId = '' } = useParams()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ import { Route, Routes, useParams } from 'react-router'
import { selectApplicationsEntitiesByEnvId } from '@console/domains/application'
import { useSelector } from 'react-redux'
import { selectEnvironmentById } from '@console/domains/environment'
import { RootState } from '@console/shared/interfaces'
import { Application, Environment } from 'qovery-typescript-axios'
import { ROUTER_APPLICATIONS } from './router/router'
import { RootState } from '@console/store/data'

export function ApplicationsPage() {
useDocumentTitle('Applications - Qovery')
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,13 @@
import {
applicationFactoryMock,
applications,
applicationsLoadingStatus,
selectApplicationsEntitiesByEnvId,
} from '@console/domains/application'
import { GeneralPage } from '@console/pages/applications/ui'
import { RootState } from '@console/shared/interfaces'
import { Application } from 'qovery-typescript-axios'
import { useSelector } from 'react-redux'
import { useParams } from 'react-router'
import { RootState } from '@console/store/data'

export function General() {
const { environmentId = '' } = useParams()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,17 +6,16 @@ import {
environmentsLoadingStatus,
selectEnvironmentsEntitiesByProjectId,
} from '@console/domains/environment'
import { RootState } from '@console/shared/interfaces'
import { Environment } from 'qovery-typescript-axios'
import { useState } from 'react'
import { RootState } from '@console/store/data'

export function General() {
const { projectId = '' } = useParams()
const loadingEnvironments = environmentFactoryMock(3).map((env) => {
delete env.status
return env
})
const loadingStatus = useSelector<RootState>((state) => environmentsLoadingStatus(state))
const loadingStatus = useSelector(environmentsLoadingStatus)
const environments = useSelector<RootState, Environment[]>((state) =>
selectEnvironmentsEntitiesByProjectId(state, projectId)
)
Expand Down
7 changes: 4 additions & 3 deletions libs/pages/login/feature/src/lib/login.tsx
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
import { useEffect } from 'react'
import { useNavigate } from 'react-router'
import { LayoutLogin, Login } from '@console/pages/login/ui'
import { ONBOARDING_URL, useAuth, useDocumentTitle, AuthEnum, OVERVIEW_URL } from '@console/shared/utils'
import { AuthEnum, OVERVIEW_URL, useAuth, useDocumentTitle } from '@console/shared/utils'
import { useOrganization } from '@console/domains/organization'
import { useProjects } from '@console/domains/projects'

// import posthog from 'posthog-js'

export function LoginPage() {
Expand All @@ -23,12 +24,12 @@ export function LoginPage() {
const isOnboarding = process.env?.['NX_ONBOARDING'] === 'true'

async function fetchData() {
const organization = await getOrganization()
const organization: any = await getOrganization()
await createAuthCookies()

if (organization.payload.length > 0) {
const organizationId = organization.payload[0].id
const projects = await getProjects(organizationId)
const projects: any = await getProjects(organizationId)
if (projects.payload.length > 0) navigate(OVERVIEW_URL(organizationId, projects.payload[0].id))
}
// if (isOnboarding && organization.payload.length === 0) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ export function OnboardingMore() {

updateUserSignUp({ ...userSignUp, ...data })

const user = await getUserSignUp()
const user: any = await getUserSignUp()

if (user.payload.dx_auth) {
navigate(`${ONBOARDING_URL}${ONBOARDING_PROJECT_URL}`)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { useState, useEffect, useContext } from 'react'
import { useContext, useEffect, useState } from 'react'
import { useNavigate } from 'react-router'
import { useIntercom } from 'react-use-intercom'
import { StepPricing } from '@console/pages/onboarding/ui'
Expand All @@ -17,7 +17,7 @@ import {
} from '@console/shared/utils'
import { useProjects } from '@console/domains/projects'
import { ContextOnboarding } from '../container/container'
import { PlanEnum } from 'qovery-typescript-axios'
import { Organization, PlanEnum } from 'qovery-typescript-axios'

function listPrice(base: number, isBusinessPlan?: boolean) {
const results: OrganizationPrice[] = []
Expand Down Expand Up @@ -132,10 +132,10 @@ export function OnboardingPricing() {
const onSubmit = async () => {
setLoading(true)

const organization = await createOrganization({
const organization: Organization = (await createOrganization({
name: organization_name,
plan: selectPlan,
})
})) as Organization

if (organization) {
const project = await createProject(organization.id, {
Expand Down
1 change: 0 additions & 1 deletion libs/shared/interfaces/src/index.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
export * from './lib/common/value.interface'
export * from './lib/states/user-sign-up.interface'
export * from './lib/states/root.interface'
export * from './lib/states/environments.interface'
export * from './lib/states/projects.interface'
export * from './lib/states/organizations.interface'
Expand Down
19 changes: 0 additions & 19 deletions libs/shared/interfaces/src/lib/states/root.interface.ts

This file was deleted.

2 changes: 1 addition & 1 deletion libs/shared/layout/src/lib/layout.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ import { LayoutPage } from '@console/shared/ui'
import { useAuth } from '@console/shared/utils'
import { useSelector } from 'react-redux'
import { selectEnvironmentsEntitiesByProjectId } from '@console/domains/environment'
import { RootState } from '@console/shared/interfaces'
import { Application, Environment, Project } from 'qovery-typescript-axios'
import { RootState } from '@console/store/data'

export interface LayoutProps {
children: React.ReactElement
Expand Down
3 changes: 2 additions & 1 deletion libs/store/data/src/lib/root.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ import { initialProjectsState, projects } from '@console/domains/projects'
import { initialUserSignUpState, initialUserState, user, userSignUp } from '@console/domains/user'
import { applications, initialApplicationsState } from '@console/domains/application'
import { environments, initialEnvironmentsState } from '@console/domains/environment'
import { RootState } from '@console/shared/interfaces'

export const uiReducer = combineReducers({
user: user,
Expand All @@ -23,6 +22,8 @@ export const store = configureStore({
reducer: rootReducer,
})

// Infer the `RootState` and `AppDispatch` types from the store itself
export type RootState = ReturnType<typeof store.getState>
export type AppDispatch = typeof store.dispatch

export const initialRootState = (): RootState => ({
Expand Down

0 comments on commit c175fe7

Please sign in to comment.