Skip to content

Commit

Permalink
Rename view and model variables in store to follow convention. (#749)
Browse files Browse the repository at this point in the history
  • Loading branch information
pablo-mayrgundter committed Jun 23, 2023
1 parent ecedac3 commit 563f844
Show file tree
Hide file tree
Showing 20 changed files with 42 additions and 47 deletions.
2 changes: 1 addition & 1 deletion src/Components/CameraControl.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ import {floatStrTrim} from '../utils/strings'
* @return {object} React component
*/
export default function CameraControl() {
const viewer = useStore((state) => state.viewerStore)
const viewer = useStore((state) => state.viewer)
const cameraControls = viewer.IFC.context.ifcCamera.cameraControls
const setCameraControls = useStore((state) => state.setCameraControls)
const location = useLocation()
Expand Down
2 changes: 1 addition & 1 deletion src/Components/CameraControl.test.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ describe('CameraControl', () => {
const {result} = renderHook(() => useStore((state) => state))
const viewer = __getIfcViewerAPIExtendedMockSingleton()
await act(() => {
result.current.setViewerStore(viewer)
result.current.setViewer(viewer)
})
render(<ShareMock><CameraControl/></ShareMock>)
expect(screen.getByText('Camera')).toBeInTheDocument()
Expand Down
4 changes: 2 additions & 2 deletions src/Components/CutPlaneMenu.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@ const PLANE_PREFIX = 'p'
*/
export default function CutPlaneMenu() {
const [anchorEl, setAnchorEl] = useState(null)
const model = useStore((state) => state.modelStore)
const viewer = useStore((state) => state.viewerStore)
const model = useStore((state) => state.model)
const viewer = useStore((state) => state.viewer)
const cutPlanes = useStore((state) => state.cutPlanes)
const addCutPlaneDirection = useStore((state) => state.addCutPlaneDirection)
const removeCutPlaneDirection = useStore((state) => state.removeCutPlaneDirection)
Expand Down
10 changes: 5 additions & 5 deletions src/Components/CutPlaneMenu.test.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ describe('CutPlaneMenu', () => {
const {result} = renderHook(() => useStore((state) => state))
const viewer = __getIfcViewerAPIExtendedMockSingleton()
await act(() => {
result.current.setViewerStore(viewer)
result.current.setViewer(viewer)
})
fireEvent.click(sectionButton)
const xDirection = getByText('X - Section')
Expand All @@ -57,7 +57,7 @@ describe('CutPlaneMenu', () => {
const {result} = renderHook(() => useStore((state) => state))
const viewer = __getIfcViewerAPIExtendedMockSingleton()
await act(() => {
result.current.setViewerStore(viewer)
result.current.setViewer(viewer)
})
const callCreatePlanes = viewer.clipper.createFromNormalAndCoplanarPoint.mock.calls
expect(callCreatePlanes.length).toBe(1)
Expand All @@ -73,7 +73,7 @@ describe('CutPlaneMenu', () => {
// mock contains one plane
const viewer = __getIfcViewerAPIExtendedMockSingleton()
await act(() => {
result.current.setViewerStore(viewer)
result.current.setViewer(viewer)
})
const shareButton = getByTitle('Share')
fireEvent.click(shareButton)
Expand All @@ -85,8 +85,8 @@ describe('CutPlaneMenu', () => {
const {result} = renderHook(() => useStore((state) => state))
const viewer = __getIfcViewerAPIExtendedMockSingleton()
await act(() => {
result.current.setViewerStore(viewer)
result.current.setModelStore(model)
result.current.setViewer(viewer)
result.current.setModel(model)
})
render(
<ShareMock
Expand Down
4 changes: 2 additions & 2 deletions src/Components/ExtractLevelsMenu.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -23,12 +23,12 @@ import PlanViewIcon from '../assets/icons/PlanView.svg'
export default function ExtractLevelsMenu({listOfOptions, icon, title}) {
const [anchorEl, setAnchorEl] = useState(null)
const [allLevelsState, setAllLevelsState] = useState([])
const model = useStore((state) => state.modelStore)
const viewer = useStore((state) => state.viewer)
const model = useStore((state) => state.model)
const location = useLocation()
const levelInstance = useStore((state) => state.levelInstance)
const setLevelInstance = useStore((state) => state.setLevelInstance)
const setCutPlaneDirections = useStore((state) => state.setCutPlaneDirections)
const viewer = useStore((state) => state.viewerStore)
const theme = useTheme()
const open = Boolean(anchorEl)

Expand Down
2 changes: 1 addition & 1 deletion src/Components/HideToggleButton.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ export default function HideToggleButton({elementId}) {
const updateHiddenStatus = useStore((state) => state.updateHiddenStatus)
const isIsolated = useStore((state) => state.isolatedElements[elementId])
const isTempIsolationModeOn = useStore((state) => state.isTempIsolationModeOn)
const viewer = useStore((state) => state.viewerStore)
const viewer = useStore((state) => state.viewer)

const toggleHide = () => {
const toBeHidden = viewer.isolator.flattenChildren(elementId)
Expand Down
2 changes: 1 addition & 1 deletion src/Components/ItemProperties/ItemProperties.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ export default function ItemProperties() {
const [propTable, setPropTable] = useState(null)
const [psetsList, setPsetsList] = useState(null)
const [expandAll, setExpandAll] = useState(false)
const model = useStore((state) => state.modelStore)
const model = useStore((state) => state.model)
const element = useStore((state) => state.selectedElement)
const theme = useTheme()

Expand Down
2 changes: 1 addition & 1 deletion src/Components/ItemProperties/ItemProperties.test.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ test('ItemProperties for single element', async () => {
const {result} = renderHook(() => useStore((state) => state))
await act(() => {
result.current.setSelectedElement({expressID: 10})
result.current.setModelStore(new MockModel)
result.current.setModel(new MockModel)
})

const {getByText} = render(
Expand Down
2 changes: 1 addition & 1 deletion src/Components/NavTree.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,7 @@ export default function NavTree({
return <TreeItem ContentComponent={CustomContent} {...props}/>
}

const viewer = useStore((state) => state.viewerStore)
const viewer = useStore((state) => state.viewer)

const hasHideIcon = viewer.isolator.canBeHidden(element.expressID)

Expand Down
4 changes: 2 additions & 2 deletions src/Components/NavTree.test.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ describe('NavTree', () => {
const {result} = renderHook(() => useStore((state) => state))
const viewer = new IfcViewerAPIExtended()
await act(() => {
result.current.setViewerStore(viewer)
result.current.setViewer(viewer)
})
const {getByText} = render(
<ShareMock>
Expand All @@ -49,7 +49,7 @@ describe('NavTree', () => {
const {result} = renderHook(() => useStore((state) => state))
const viewer = new IfcViewerAPIExtended()
await act(() => {
result.current.setViewerStore(viewer)
result.current.setViewer(viewer)
result.current.updateHiddenStatus(1, false)
})
viewer.isolator.canBeHidden.mockReturnValue(true)
Expand Down
4 changes: 2 additions & 2 deletions src/Components/ShareControl.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -60,8 +60,8 @@ function ShareDialog({isDialogDisplayed, setIsDialogDisplayed}) {
const [isCameraInUrl, setIsCameraInUrl] = useState(true)
const [isPlaneInUrl, setIsPlaneInUrl] = useState(false)
const cameraControls = useStore((state) => state.cameraControls)
const viewer = useStore((state) => state.viewerStore)
const model = useStore((state) => state.modelStore)
const viewer = useStore((state) => state.viewer)
const model = useStore((state) => state.model)
const urlTextFieldRef = createRef()
const isPlanesOn = viewer.clipper.planes.length > 0
const rowStyle = {
Expand Down
2 changes: 1 addition & 1 deletion src/Components/ShareControl.test.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ describe('ShareControl', () => {
})

it('updates the title when the dialog is open', async () => {
const {result} = renderHook(() => useStore((state) => state.setViewerStore))
const {result} = renderHook(() => useStore((state) => state.setViewer))
result.current({
clipper: {
planes: [],
Expand Down
2 changes: 1 addition & 1 deletion src/Components/TypesNavTree.test.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ describe('TypesNavTree', () => {
const {result} = renderHook(() => useStore((state) => state))
const viewer = new IfcViewerAPIExtended()
await act(() => {
result.current.setViewerStore(viewer)
result.current.setViewer(viewer)
})
const {getByText} = render(
<ShareMock>
Expand Down
5 changes: 2 additions & 3 deletions src/Containers/CadView.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -76,19 +76,19 @@ export default function CadView({
const [model, setModel] = useState(null)
const viewer = useStore((state) => state.viewer)
const setViewer = useStore((state) => state.setViewer)
// setModelStore instead of setModel since there's already a state var with this name
const setModelStore = useStore((state) => state.setModel)
const isNavPanelOpen = useStore((state) => state.isNavPanelOpen)
const isDrawerOpen = useStore((state) => state.isDrawerOpen)
const setCutPlaneDirections = useStore((state) => state.setCutPlaneDirections)
const setIsNavPanelOpen = useStore((state) => state.setIsNavPanelOpen)
const setLevelInstance = useStore((state) => state.setLevelInstance)
const setModelStore = useStore((state) => state.setModelStore)
const setSelectedElement = useStore((state) => state.setSelectedElement)
const setSelectedElements = useStore((state) => state.setSelectedElements)
const setElementTypesMap = useStore((state) => state.setElementTypesMap)
const elementTypesMap = useStore((state) => state.elementTypesMap)
const selectedElements = useStore((state) => state.selectedElements)
const preselectedElementIds = useStore((state) => state.preselectedElementIds)
const setViewerStore = useStore((state) => state.setViewerStore)
const snackMessage = useStore((state) => state.snackMessage)
const accessToken = useStore((state) => state.accessToken)
const sidebarWidth = useStore((state) => state.sidebarWidth)
Expand Down Expand Up @@ -197,7 +197,6 @@ export default function CadView({
pathPrefix,
assertDefined(themeArg.palette.scene.background))
setViewer(initializedViewer)
setViewerStore(initializedViewer)
}
initViewerCb(undefined, theme)
theme.addThemeChangeListener(initViewerCb)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ class ModelLoadedEventDispatcher extends ApiEventDispatcher {
*/
initDispatch() {
useStore.subscribe((state, previousState) => {
if (state.modelStore !== previousState.modelStore) {
if (state.model !== previousState.model) {
const eventData = {}
this.apiConnection.send(this.name, eventData)
}
Expand Down
2 changes: 1 addition & 1 deletion src/WidgetApi/event-handlers/HideElementsEventHandler.js
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ class HideElementsEventHandler extends ApiEventHandler {
}
}

useStore.getState().viewerStore.isolator.hideElementsById(expressIds.map((id) => Number(id)))
useStore.getState().viewer.isolator.hideElementsById(expressIds.map((id) => Number(id)))

return this.apiConnection.successfulResponse({})
}
Expand Down
2 changes: 1 addition & 1 deletion src/WidgetApi/event-handlers/SelectElementsEventHandler.js
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ class SelectElementsEventHandler extends ApiEventHandler {
}
}
const toBeSelected = expressIds.map((id) => parseInt(id))
.filter((id) => useStore.getState().viewerStore.isolator.canBePickedInScene(id))
.filter((id) => useStore.getState().viewer.isolator.canBePickedInScene(id))
useStore.setState({selectedElements: toBeSelected})

return this.apiConnection.successfulResponse({})
Expand Down
4 changes: 2 additions & 2 deletions src/WidgetApi/event-handlers/UnhideElementsEventHandler.js
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ class UnhideElementsEventHandler extends ApiEventHandler {
}

if (data.globalIds === '*') {
useStore.getState().viewerStore.isolator.unHideAllElements()
useStore.getState().viewer.isolator.unHideAllElements()
} else {
const expressIds = []
if (data.globalIds.length) {
Expand All @@ -48,7 +48,7 @@ class UnhideElementsEventHandler extends ApiEventHandler {
}
}

useStore.getState().viewerStore.isolator.unHideElementsById(expressIds.map((id) => Number(id)))
useStore.getState().viewer.isolator.unHideElementsById(expressIds.map((id) => Number(id)))
}

return this.apiConnection.successfulResponse({})
Expand Down
8 changes: 4 additions & 4 deletions src/store/IFCSlice.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,18 +7,18 @@
*/
export default function createIFCSlice(set, get) {
return {
viewerStore: {},
viewer: {},
model: null,
modelPath: null,
modelStore: null,
selectedElement: null,
selectedElements: [],
elementTypesMap: [],
preselectedElementIds: null,
cameraControls: null,
loadedFileInfo: null,
setViewerStore: (viewer) => set(() => ({viewerStore: viewer})),
setViewer: (viewer) => set(() => ({viewer: viewer})),
setModel: (model) => set(() => ({model: model})),
setModelPath: (modelPath) => set(() => ({modelPath: modelPath})),
setModelStore: (model) => set(() => ({modelStore: model})),
setSelectedElement: (element) => set(() => ({selectedElement: element})),
setSelectedElements: (elements) => set(() => ({selectedElements: elements})),
setElementTypesMap: (map) => set(() => ({elementTypesMap: map})),
Expand Down
24 changes: 10 additions & 14 deletions src/store/useStore.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,8 @@ describe('UI slice', () => {
})
expect(result.current.snackMessage).toEqual(['loading'])
})
})

describe('UI slice', () => {

it('Set Drawer State', () => {
const {result} = renderHook(() => useStore((state) => state))
act(() => {
Expand All @@ -22,6 +21,7 @@ describe('UI slice', () => {
})
})


describe('IFC slice', () => {
it('select an IFC element', () => {
const {result} = renderHook(() => useStore((state) => state))
Expand All @@ -39,28 +39,24 @@ describe('IFC slice', () => {
},
})
})
})

describe('IFC slice', () => {

it('set IFC model', () => {
const {result} = renderHook(() => useStore((state) => state))
const model = {castShadow: false}
act(() => {
result.current.setModelStore({castShadow: false})
result.current.setModel(model)
})
expect(result.current.modelStore).toEqual(
{castShadow: false},
)
expect(result.current.model).toEqual(model)
})
})

describe('IFC slice', () => {

it('set IFC viewer', () => {
const {result} = renderHook(() => useStore((state) => state))
const viewer = {GLTF: {GLTFModels: {}}}
act(() => {
result.current.setViewerStore({GLTF: {GLTFModels: {}}})
result.current.setViewer(viewer)
})
expect(result.current.viewerStore).toEqual(
{GLTF: {GLTFModels: {}}},
)
expect(result.current.viewer).toEqual(viewer)
})
})

0 comments on commit 563f844

Please sign in to comment.