styling added to addworkspacemodal

This commit is contained in:
Amit Fainholts
2022-01-26 14:49:21 +02:00
parent 557c77cd04
commit eeda33ac5e
3 changed files with 55 additions and 13 deletions

View File

@@ -0,0 +1,10 @@
@import '../../../variables.module.scss'
.workspace__name
width: 58%
.searchNamespace
width: 32%
.headline
color: $font-color

View File

@@ -1,27 +1,62 @@
import React, { FC, useEffect, useState } from 'react'; import React, { FC, useEffect, useState } from 'react';
import { useCommonStyles } from '../../../helpers/commonStyle';
import ConfirmationModal from '../../UI/Modals/ConfirmationModal'; import ConfirmationModal from '../../UI/Modals/ConfirmationModal';
import SelectList from '../../UI/SelectList';
import './AddWorkspaceModal.sass'
// import './AddUserModal.sass'; // import './AddUserModal.sass';
export type WorkspaceData = {
name:string;
namespaces: string[];
}
interface AddWorkspaceModal { interface AddWorkspaceModal {
isOpen : boolean, isOpen : boolean,
onCloseModal: () => void onCloseModal: () => void,
workspaceData: WorkspaceData
} }
const AddWorkspaceModal: FC<AddWorkspaceModal> = ({isOpen,onCloseModal,children}) => { const AddWorkspaceModal: FC<AddWorkspaceModal> = ({isOpen,onCloseModal, workspaceData ={}}) => {
const [isOpenModal,setIsOpen] = useState(isOpen) const [isOpenModal,setIsOpen] = useState(isOpen);
const [workspaceDataModel, setUserData] = useState(workspaceData as WorkspaceData);
const [searchValue, setSearchValue] = useState("");
const classes = useCommonStyles()
const [namespaces, SetNamespaces] = useState({})
useEffect(() => { useEffect(() => {
setIsOpen(isOpen) setIsOpen(isOpen)
},[isOpen]) },[isOpen])
const onClose = () => {} useEffect(() => {
(async () => {
try {
const namespacesList = {"default": false, "blabla": false, "test":true};
SetNamespaces(namespacesList)
} catch (e) {
console.error(e);
}
})();
},[])
const onConfirm = () => {} const onConfirm = () => {}
return (<> return (<>
<ConfirmationModal isOpen={isOpenModal} onClose={onClose} onConfirm={onConfirm} title=''> <ConfirmationModal isOpen={isOpenModal} onClose={onCloseModal} onConfirm={onConfirm} title='Add Workspace'>
{children} <h3 className='headline'>DETAILS</h3>
<div>
<input type="text" value={workspaceDataModel?.name ?? ""} className={classes.textField + " workspace__name"} placeholder={"Workspace Name"}
onChange={(e) => {}}></input>
</div>
<h3 className='headline'>TAP SETTINGS</h3>
<div className="namespacesSettingsContainer">
<div>
<input className={classes.textField + " searchNamespace"} placeholder="Search" value={searchValue}
onChange={(event) => setSearchValue(event.target.value)}/>
</div>
<SelectList valuesListInput={namespaces} tableName={"Namespaces"} multiSelect={true} searchValue={searchValue} setValues={setUserData} tabelClassName={undefined}></SelectList>
</div>
</ConfirmationModal> </ConfirmationModal>
</>); </>);
}; };

View File

@@ -2,7 +2,7 @@ import "../UserSettings/UserSettings.sass"
import {ColsType, FilterableTableAction} from "../UI/FilterableTableAction" import {ColsType, FilterableTableAction} from "../UI/FilterableTableAction"
// import Api from "../../helpers/api" // import Api from "../../helpers/api"
import { useEffect, useState } from "react"; import { useEffect, useState } from "react";
import AddWorkspaceModal from "../Modals/AddWorkspaceModal/AddWorkspaceModal"; import AddWorkspaceModal, { WorkspaceData } from "../Modals/AddWorkspaceModal/AddWorkspaceModal";
import SelectList from "../UI/SelectList"; import SelectList from "../UI/SelectList";
interface Props {} interface Props {}
@@ -12,11 +12,10 @@ interface Props {}
export const WorkspaceSettings : React.FC<Props> = ({}) => { export const WorkspaceSettings : React.FC<Props> = ({}) => {
const [workspacesRows, setWorkspaces] = useState([]); const [workspacesRows, setWorkspaces] = useState([]);
const [workspaceData,SetWorkspaceData] = useState({} as WorkspaceData);
const [isOpenModal,setIsOpen] = useState(false); const [isOpenModal,setIsOpen] = useState(false);
const cols : ColsType[] = [{field : "id",header:"Id"},{field : "name",header:"Name"}]; const cols : ColsType[] = [{field : "id",header:"Id"},{field : "name",header:"Name"}];
const namespaces = {"default": false, "blabla": false, "test":true};
useEffect(() => { useEffect(() => {
(async () => { (async () => {
@@ -50,10 +49,8 @@ export const WorkspaceSettings : React.FC<Props> = ({}) => {
<FilterableTableAction onRowEdit={onRowEdit} onRowDelete={onRowDelete} searchConfig={searchConfig} <FilterableTableAction onRowEdit={onRowEdit} onRowDelete={onRowDelete} searchConfig={searchConfig}
buttonConfig={buttonConfig} rows={workspacesRows} cols={cols}> buttonConfig={buttonConfig} rows={workspacesRows} cols={cols}>
</FilterableTableAction> </FilterableTableAction>
<AddWorkspaceModal isOpen={isOpenModal} onCloseModal={() => { setIsOpen(false); } }> <AddWorkspaceModal isOpen={isOpenModal} workspaceData={workspaceData} onCloseModal={() => { setIsOpen(false); } } >
<SelectList valuesListInput={namespaces} tableName={"Namespaces"} multiSelect={false} setValues={function (newValues: any): void {
throw new Error("Function not implemented.");
} } tabelClassName={undefined}></SelectList>
</AddWorkspaceModal> </AddWorkspaceModal>
</>); </>);