Skip to content

Commit

Permalink
attempt removing redux
Browse files Browse the repository at this point in the history
  • Loading branch information
edolix committed Apr 3, 2023
1 parent d5b4983 commit 6c7ba4c
Show file tree
Hide file tree
Showing 38 changed files with 132 additions and 1,607 deletions.
4 changes: 2 additions & 2 deletions packages/core/src/BaseSession.ts
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@ import {
socketMessageAction,
sessionDisconnectedAction,
sessionReconnectingAction,
sessionAuthStatusAction,
} from './redux/actions'
import { sessionActions } from './redux/features/session/sessionSlice'
import { SwAuthorizationState } from '.'
import { SessionChannel, SessionChannelAction } from './redux/interfaces'

Expand Down Expand Up @@ -584,7 +584,7 @@ export class BaseSession {
this.logger.debug('Close Connection:', status)
this._status = status
this.dispatch(
sessionActions.authStatus(
sessionAuthStatusAction(
status === 'disconnected' ? 'unauthorized' : 'unknown'
)
)
Expand Down
2 changes: 0 additions & 2 deletions packages/core/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -68,8 +68,6 @@ export {
isSATAuth,
}

export * from './redux/features/component/componentSlice'
export * from './redux/features/session/sessionSlice'
export * as componentSelectors from './redux/features/component/componentSelectors'
export * from './RPCMessages'
export * from './utils/interfaces'
Expand Down
21 changes: 20 additions & 1 deletion packages/core/src/redux/actions.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,13 @@ import type {
SessionActions,
CompoundEvents,
} from '../utils/interfaces'
import { EventEmitter } from '..'
import {
Authorization,
EventEmitter,
RPCConnectResult,
SessionAuthStatus,
} from '..'
import { UpdateComponent } from './interfaces'

export const initAction = createAction('swSdk/init')
export const destroyAction = createAction('swSdk/destroy')
Expand Down Expand Up @@ -44,6 +50,15 @@ export const sessionExpiringAction = createAction<void, SessionEvents>(
export const sessionForceCloseAction = createAction<void, SessionActions>(
'session.forceClose'
)
export const sessionAuthStateAction = createAction<Authorization, string>(
'session/auth_state'
)
export const sessionAuthStatusAction = createAction<SessionAuthStatus, string>(
'session/auth_status'
)
export const sessionAuthorizedAction = createAction<RPCConnectResult, string>(
'session/authorized'
)
const formatCustomSagaAction = (id: string, action: Action) => {
return `${action.type}/${id}`
}
Expand All @@ -68,4 +83,8 @@ export const compoundEventAttachAction = createAction<
CompoundEvents
>('compound_event:attach')

export const componentUpsertAction = createAction<UpdateComponent, string>(
'components/upsert'
)

export { createAction }
49 changes: 0 additions & 49 deletions packages/core/src/redux/connect.test.ts

This file was deleted.

53 changes: 0 additions & 53 deletions packages/core/src/redux/features/component/componentSaga.test.ts

This file was deleted.

23 changes: 0 additions & 23 deletions packages/core/src/redux/features/component/componentSaga.ts

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,38 +1,44 @@
import { configureJestStore } from '../../../testUtils'
import { getComponentsToCleanup } from './componentSelectors'
import { getComponent, getComponentsById } from './componentSelectors'
import { SDKStore } from '../..'

describe('componentSelectors', () => {
const preloadedState = {
components: {
byId: {
'268b4cf8-a3c5-4003-8666-3b7a4f0a5af9': {
id: '268b4cf8-a3c5-4003-8666-3b7a4f0a5af9',
foo: 'bar',
},
'faa63915-3a64-4c39-acbb-06dac0758f8a': {
id: 'faa63915-3a64-4c39-acbb-06dac0758f8a',
responses: {},
},
},
},
}
let store: SDKStore

beforeEach(() => {
store = configureJestStore({
preloadedState: {
components: {
byId: {
'268b4cf8-a3c5-4003-8666-3b7a4f0a5af9': {
id: '268b4cf8-a3c5-4003-8666-3b7a4f0a5af9',
},
'faa63915-3a64-4c39-acbb-06dac0758f8a': {
id: 'faa63915-3a64-4c39-acbb-06dac0758f8a',
responses: {},
},
'zfaa63915-3a64-4c39-acbb-06dac0758f8a': {
id: 'zfaa63915-3a64-4c39-acbb-06dac0758f8a',
errors: {},
},
},
},
},
preloadedState,
})
})

describe('getComponent', () => {
it('should return a component', () => {
const id = '268b4cf8-a3c5-4003-8666-3b7a4f0a5af9'
expect(getComponent(store.getState(), id)).toStrictEqual(
preloadedState.components.byId[id]
)
})
})

describe('getComponentsToCleanup', () => {
it('should return the list of components to cleanup', () => {
expect(getComponentsToCleanup(store.getState())).toEqual([
'faa63915-3a64-4c39-acbb-06dac0758f8a',
'zfaa63915-3a64-4c39-acbb-06dac0758f8a',
])
describe('getComponentsById', () => {
it('should return a component', () => {
expect(getComponentsById(store.getState())).toStrictEqual(
preloadedState.components.byId
)
})
})
})
15 changes: 1 addition & 14 deletions packages/core/src/redux/features/component/componentSelectors.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ReduxComponent, SDKState } from '../../interfaces'
import { SDKState } from '../../interfaces'

export const getComponent = ({ components }: SDKState, id: string) => {
return components.byId?.[id]
Expand All @@ -7,16 +7,3 @@ export const getComponent = ({ components }: SDKState, id: string) => {
export const getComponentsById = ({ components }: SDKState) => {
return components.byId
}

export const getComponentsToCleanup = (state: SDKState) => {
const components = getComponentsById(state)

let toCleanup: Array<ReduxComponent['id']> = []
Object.keys(components).forEach((id) => {
if (components[id].responses || components[id].errors) {
toCleanup.push(id)
}
})

return toCleanup
}
100 changes: 0 additions & 100 deletions packages/core/src/redux/features/component/componentSlice.test.ts

This file was deleted.

Loading

0 comments on commit 6c7ba4c

Please sign in to comment.