Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3,058 changes: 2,042 additions & 1,016 deletions package-lock.json

Large diffs are not rendered by default.

5 changes: 0 additions & 5 deletions packages/tdb-dashboard/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -43,11 +43,6 @@
"@apollo/client": "^3.7.1",
"@auth0/auth0-spa-js": "^1.19.3",
"@graphiql/toolkit": "^0.8.0",
"@material-ui/core": "^4.12.4",
"@material-ui/icons": "^4.11.3",
"@material-ui/lab": "^4.0.0-alpha.61",
"@material-ui/pickers": "^3.3.10",
"@mui/material": "^5.11.1",
"@stripe/react-stripe-js": "^1.16.4",
"@stripe/stripe-js": "^1.46.0",
"@terminusdb/terminusdb-client": "^10.0.25",
Expand Down
41 changes: 39 additions & 2 deletions packages/tdb-dashboard/src/App.css
Original file line number Diff line number Diff line change
Expand Up @@ -1146,7 +1146,7 @@ button.graphiql-tab-add>svg
color: #343a40!important;
}

.MuiButton-contained {
/*.MuiButton-contained {
background-color: #a9a7a5;
}
.MuiButton-containedPrimary {
Expand All @@ -1173,7 +1173,7 @@ button.graphiql-tab-add>svg
}
.MuiInputBase-input{
min-height: 20px !important;
}
}*/

/*.qb-lite .group--drag-handler, .qb-lite .group--actions {
transition: opacity 0.2s;
Expand Down Expand Up @@ -1281,4 +1281,41 @@ button.graphiql-tab-add>svg

.alert_expand_icons {
margin-top: -20px;
}

.group {
background: transparent !important;
border: 1px solid #dee2e6;
}

.rule {
background: transparent !important;
border: 1px solid #dee2e6;
padding: 10px;
}

.rule--field > .dropdown > .form-select {
min-width: 200px;
line-height: 1.5 !important;
min-height: 40px !important;
/* background: transparent !important; */
color: black;
}

.rule--operator > .dropdown > .form-select {
min-width: 100px;
line-height: 1.5 !important;
min-height: 40px !important;
/* background: transparent !important; */
color: black;
}

.widget--widget > .form-control{
min-width: 250px;
line-height: 1.5 !important;
min-height: 40px !important;
}

.accordion{
--bs-accordion-bg: #303030 !important;
}
14 changes: 9 additions & 5 deletions packages/tdb-dashboard/src/App.js
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ import {PageNotFound} from "./pages/PageNotFound"
import {DocumentsPageList} from "./pages/DocumentsListPage"
import {PLANS} from "./routing/constants";
import { DocumentControlMain } from "./pages/DocumentControlMain"
import TestApp from "./TestApp"

export function App (props){
let navigate = useNavigate();
Expand Down Expand Up @@ -86,15 +87,15 @@ function getRoutes(clientUser, isAdmin, woqlClient){
<Route path=":dataProduct" >
<Route index element={<DataProductsHome/>} />
<Route path={PATH.DOCUMENT_EXPLORER} element={<DocumentExplorer/>} />
<Route path={PATH.PRODUCT_EXPLORER} element={<ProductsExplorer/>} />
<Route path={PATH.PRODUCT_MODELS} element={<ModelProductPage/>} />

</Route>
</Route>
<Route path="*" element={<div><PageNotFound/></div >} />
</React.Fragment>
}
return <React.Fragment>
<Route path="/verify" element={<VerifyEmail/>}/>
{/*<Route path="/verify" element={<VerifyEmail/>}/>*/}
<Route path="/verify" element={<TestApp/>} />
<Route path = {PATH.INVITE_PAGE} element = {<PrivateRoute component={InvitePage}/>} />
<Route path={PATH.PLANS} element={<PrivateRoute component={PlansPage}/>}/>
<Route index element={<PrivateRoute component={Home}/>} />
Expand Down Expand Up @@ -125,12 +126,15 @@ function getRoutes(clientUser, isAdmin, woqlClient){
</Route>
</Route>
</Route>

<Route path={PATH.PRODUCT_EXPLORER} element={<PrivateRoute component={ProductsExplorer}/>} />
<Route path={PATH.PRODUCT_MODELS} element={<PrivateRoute component={ModelProductPage}/>} />
<Route path={PATH.PRODUCT_MODELS} element={<PrivateRoute component={ModelProductPage}/>} />

</Route>
</Route>

<Route path="*" element={<PageNotFound/>} />
</React.Fragment>
}

// <Route path={PATH.PRODUCT_EXPLORER} element={<PrivateRoute component={ProductsExplorer}/>} />
//<Route path={PATH.PRODUCT_MODELS} element={<PrivateRoute component={ModelProductPage}/>} />
92 changes: 92 additions & 0 deletions packages/tdb-dashboard/src/App_broken.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
import React from "react"
import {Routes,Route,useNavigate, BrowserRouter} from "react-router-dom"
import {Loading} from "./components/Loading"
import {SERVER_LOADING_MESSAGE} from "./components/constants"
import {PlansPage} from "./pages/PlansPage"
import PrivateRoute from "./routing/PrivateRoute"
import {WOQLClientObj} from './init-woql-client'
import {ServerError} from './components/ServerError'
import {InvitePage} from './pages/InvitePage'
import {localSettings} from "../localSettings"
import * as PATH from "./routing/constants"

import {Home} from "./pages/Home"
import {PageNotFound} from "./pages/PageNotFound"
import {PLANS} from "./routing/constants";
import TestApp from "./TestApp"

import {OrganizationHome } from "./pages/OrganizationHome"
import {Profile} from "./pages/Profile"
import { DocumentControlMain } from "./pages/DocumentControlMain"
import {DataProductsHome} from "./pages/DataProductsHome"
import { ProductsExplorer } from "./pages/ProductsExplorer"
import { ModelProductPage } from "./pages/ModelProductPage"

export function App (props){
let navigate = useNavigate();
const {connectionError,loadingServer,clientUser,accessControlDashboard,woqlClient} = WOQLClientObj()
if(!clientUser) return ""
// we have this loading only in terminusX, it is auth0 information/login loading
const {loading} = clientUser

if (clientUser.firstLogin === true && window.location.pathname.indexOf("/invite/") === -1) {
clientUser.firstLogin = false
//only if the user is not invited in a team
window.location.replace(`/${PLANS}`)

}

// this happen after confirm you password linking in the email url
if (window.location.search.includes("supportSignUp=true")) {
window.location.replace('/')
}

if(connectionError) {
return <ServerError message={connectionError}/>
}

if(loading || loadingServer) {
return <main role="main" className="loading-parent content mr-3 ml-5">
<Loading message={SERVER_LOADING_MESSAGE}/>
</main>
}
//the accessControlDashboard in terminusX is created only after the login
// so he can be undefined at the start
const isAdmin = accessControlDashboard ? accessControlDashboard.isAdmin() : false

const basename = process.env.BASE_URL ? {basename:process.env.BASE_URL} : {}

return <div className="container-fluid container-background h-100">
<Routes>
{getRoutes(clientUser,isAdmin, woqlClient)}
</Routes>
</div>
}

function getRoutes(clientUser, isAdmin, woqlClient){
//const client = createApolloClient()

if(localSettings.connection_type==="LOCAL"){
return <React.Fragment>
<Route index element={<Home/>} />
</React.Fragment>
}
return <React.Fragment>
{/*<Route path="/verify" element={<VerifyEmail/>}/>*/}
<Route path="/verify" element={<TestApp/>} />
<Route path = {PATH.INVITE_PAGE} element = {<PrivateRoute component={InvitePage}/>} />
<Route path={PATH.PLANS} element={<PrivateRoute component={PlansPage}/>}/>
<Route path="*" element={<PageNotFound/>} />
<Route index element={<PrivateRoute component={Home}/>} />
<Route path=":organization" >
<Route index element={<PrivateRoute component={OrganizationHome}></PrivateRoute>}/>
<Route path = {PATH.PROFILE} element = {<PrivateRoute component={Profile}/>} />

<Route path=":dataProduct" element={<DocumentControlMain/>} >
<Route index element={<PrivateRoute component={DataProductsHome}/>} />
<Route path={PATH.PRODUCT_MODELS} element={<PrivateRoute component={ModelProductPage}/>} />

</Route>
</Route>
</React.Fragment>
}
14 changes: 5 additions & 9 deletions packages/tdb-dashboard/src/App_test.js
Original file line number Diff line number Diff line change
@@ -1,18 +1,14 @@
import React from "react"
import {Routes,Route,useNavigate, BrowserRouter} from "react-router-dom"
import {VerifyEmail} from "./pages/VerifyEmail"
import PrivateRoute from "./routing/PrivateRoute"

//import {VerifyEmail} from "./pages/VerifyEmail"
//import PrivateRoute from "./routing/PrivateRoute"
import TestApp from "./TestApp"
export function App_test (props){
let navigate = useNavigate();
// let navigate = useNavigate();

if (window.location.search.includes("error=unauthorized")) {
navigate(`/verify`)
}

return <Routes>
<Route path="/verify" element={<VerifyEmail/>}/>
<Route index element={<PrivateRoute component={<div>HELLO</div>}/>} />
<Route path="/verify" element={<TestApp/>}/>
</Routes>

}
Expand Down
141 changes: 141 additions & 0 deletions packages/tdb-dashboard/src/TestApp.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,141 @@
import React , {useEffect,useState} from 'react';
import TerminusClient from '@terminusdb/terminusdb-client'
import { AdvancedSearch } from '@terminusdb/terminusdb-react-table';
import {
Dropdown,
DropdownMenu,
DropdownToggle,
DropdownItem,
} from "reactstrap";
//import {WOQLResult} from "@terminusdb/terminusdb-client";

const TestApp = (props) =>{
const claimCaseAdvancedSearch = {
"death_certificate_for_claim":{
"label":"death_certificate_for_claim",
"type":"!group",
"subfields":{
"country_of_death":{
"typevalue":"Country"
},
"date_of_birth":{
"label":"date_of_birth",
"type":"datetime",
"valueSources":[
"value"
],
"typevalue":"DateTime"
},
"date_of_death":{
"label":"date_of_death",
"type":"datetime",
"valueSources":[
"value"
],
"typevalue":"DateTime"
},
"name":{
"label":"name",
"type":"text",
"valueSources":[
"value"
],
"typevalue":"String"
}
}
},
"incur":{
"label":"incur",
"valueSources":[
"value"
],
"operators":[
"select_equals",
"select_not_equals"
],
"defaultOperator":"select_equals",
"type":"select",
"fieldSettings":{
"listValues":[
"SumAssured",
"Premium"
]
},
"typevalue":"Refund"
},
"policy_of_claim":{
"label":"policy_of_claim",
"type":"!group",
"subfields":{
"beneficiary":{
"typevalue":"Beneficiary"
},
"country_of_issue":{
"typevalue":"Country"
},
"life_assured_date_of_birth":{
"label":"life_assured_date_of_birth",
"type":"datetime",
"valueSources":[
"value"
],
"typevalue":"DateTime"
},
"life_assured_name":{
"label":"life_assured_name",
"type":"text",
"valueSources":[
"value"
],
"typevalue":"String"
},
"premium_paid_to_date":{
"label":"premium_paid_to_date",
"type":"number",
"valueSources":[
"value"
],
"typevalue":"Float"
},
"sum_assured":{
"label":"sum_assured",
"type":"number",
"valueSources":[
"value"
],
"typevalue":"Float"
}
}
}
}

const claimCaseAdvancedFilter = (filter) =>{

}


const [dropdownOpen, setDropdownOpen] = useState(false);

const toggle = () => setDropdownOpen((prevState) => !prevState);

return <div style={{marginLeft:"500px"}} >
<div className="d-flex p-5">
COMPLETE APP NO ModelProductPage
<Dropdown isOpen={dropdownOpen} toggle={toggle} >
<DropdownToggle caret>Dropdown</DropdownToggle>
<DropdownMenu container="body">
<DropdownItem header>Header</DropdownItem>
<DropdownItem>Some Action</DropdownItem>
<DropdownItem text>Dropdown Item Text</DropdownItem>
<DropdownItem disabled>Action (disabled)</DropdownItem>
<DropdownItem divider />
<DropdownItem>Foo Action</DropdownItem>
<DropdownItem>Bar Action</DropdownItem>
<DropdownItem>Quo Action</DropdownItem>
</DropdownMenu>
</Dropdown>
</div>
<AdvancedSearch fields={claimCaseAdvancedSearch} setFilter={claimCaseAdvancedFilter}/>
</div>
}
export default TestApp;
Loading