Skip to content

Commit

Permalink
Merge pull request #33 from oslabs-beta/jake/fixed_dummy_data_btn
Browse files Browse the repository at this point in the history
Jake/fixed dummy data btn
  • Loading branch information
Treyfrog128 authored Apr 28, 2022
2 parents 915265c + c6182ae commit 36b0b34
Show file tree
Hide file tree
Showing 5 changed files with 27 additions and 10 deletions.
3 changes: 2 additions & 1 deletion frontend/components/App.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,8 @@ const App = () => {
setSidebarHidden,
sidebarIsHidden,
setFilePath,
newFilePath
newFilePath,
setERView
}}
/>
<Main $fullwidth={sidebarIsHidden}>
Expand Down
3 changes: 2 additions & 1 deletion frontend/components/sidebar/Sidebar.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,7 @@ const Sidebar = ({
sidebarIsHidden,
setFilePath,
newFilePath,
setERView
}: AppState) => {

const toggleOpen = () => setSidebarHidden(!sidebarIsHidden);
Expand All @@ -88,7 +89,7 @@ const Sidebar = ({
setSelectedView={setSelectedView}
toggleOpen={toggleOpen}
/>
<ViewSelector {...{ selectedView, setSelectedView }} />
<ViewSelector {...{ selectedView, setSelectedView, setERView }} />
<DbList
selectedDb={selectedDb}
setSelectedDb={setSelectedDb}
Expand Down
9 changes: 6 additions & 3 deletions frontend/components/sidebar/ViewSelector.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,12 @@ const ViewButton = styled(Button)`
}
`;

type ViewSelectorProps = Pick<AppState, 'selectedView' | 'setSelectedView'>;
type ViewSelectorProps = Pick<AppState, 'selectedView' | 'setSelectedView' | 'setERView' >;

/**
* Selector for view on sidebar. Updates App state with selected view
*/
const ViewSelector = ({ selectedView, setSelectedView }: ViewSelectorProps) => (
const ViewSelector = ({ selectedView, setSelectedView, setERView }: ViewSelectorProps) => (
<ViewBtnGroup variant="contained" fullWidth>
<ViewButton
onClick={() => setSelectedView('queryView')}
Expand All @@ -37,7 +37,10 @@ const ViewSelector = ({ selectedView, setSelectedView }: ViewSelectorProps) => (
Queries
</ViewButton>
<ViewButton
onClick={() => setSelectedView('dbView')}
onClick={() => {
setSelectedView('dbView')
if (setERView) setERView(true)
}}
$isSelected={
selectedView === 'dbView' || selectedView === 'quickStartView'
}
Expand Down
21 changes: 16 additions & 5 deletions frontend/components/views/DbView/TablesTabBar.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,8 @@ const TablesTabs = ({
tables,
selectTable,
selectedTable,
selectedDb
selectedDb,
setERView,
}: TablesTabBarProps) => {
const handleChange = (event: React.ChangeEvent<{}>, newValue: number) => {
selectTable(tables[newValue]);
Expand Down Expand Up @@ -98,8 +99,18 @@ const TablesTabs = ({
);


const handleView = () => {
setActive(!active);
const handleView = (e ,newActive) => {
// force at least one selected view
if (newActive !== null) {
// set the new view to the currect view
setActive(newActive);

// disable the dummy data button when in ER View
if (setERView) {
if (active) setERView(newActive);
else setERView(newActive);
};
}
};

const StyledToggleButtonGroup = styled(ToggleButtonGroup)`
Expand All @@ -115,10 +126,10 @@ const TablesTabs = ({
onChange={handleView}
aria-label="active-view"
>
<ToggleButton value="true" aria-label="er">
<ToggleButton value={true} aria-label="er">
ER diagram
</ToggleButton>
<ToggleButton value="false" aria-label="table">
<ToggleButton value={false} aria-label="table">
Table
</ToggleButton>
</StyledToggleButtonGroup>
Expand Down
1 change: 1 addition & 0 deletions frontend/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ export interface AppState {
sidebarIsHidden: boolean;
setFilePath: (filePath: string) => void;
newFilePath: string;
setERView?: (boolean) => void;
}

export interface FilePath {
Expand Down

0 comments on commit 36b0b34

Please sign in to comment.