enabeld attestations

This commit is contained in:
Anton Tranelis 2024-07-31 17:01:18 +02:00
parent 48fb08360a
commit 3b24541490
4 changed files with 18 additions and 15 deletions

22
package-lock.json generated
View File

@ -17,7 +17,7 @@
"react-dom": "^18.2.0", "react-dom": "^18.2.0",
"react-rnd": "^10.4.1", "react-rnd": "^10.4.1",
"react-router-dom": "^6.23.0", "react-router-dom": "^6.23.0",
"utopia-ui": "^3.0.0-alpha.216" "utopia-ui": "^3.0.0-alpha.253"
}, },
"devDependencies": { "devDependencies": {
"@types/react": "^18.2.79", "@types/react": "^18.2.79",
@ -1969,20 +1969,20 @@
} }
}, },
"node_modules/@tanstack/query-core": { "node_modules/@tanstack/query-core": {
"version": "5.51.9", "version": "5.51.16",
"resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.51.9.tgz", "resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.51.16.tgz",
"integrity": "sha512-HsAwaY5J19MD18ykZDS3aVVh+bAt0i7m6uQlFC2b77DLV9djo+xEN7MWQAQQTR8IM+7r/zbozTQ7P0xr0bHuew==", "integrity": "sha512-zfV+WAtBGm1dUIbL0w/x8qTqVLKU1/Bo1p19J9LF02MmIc4FxzMImMXhFzYJQl5Hx8Wit6RiQ4tB/DvN8y9zaQ==",
"funding": { "funding": {
"type": "github", "type": "github",
"url": "https://github.com/sponsors/tannerlinsley" "url": "https://github.com/sponsors/tannerlinsley"
} }
}, },
"node_modules/@tanstack/react-query": { "node_modules/@tanstack/react-query": {
"version": "5.51.11", "version": "5.51.16",
"resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-5.51.11.tgz", "resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-5.51.16.tgz",
"integrity": "sha512-4Kq2x0XpDlpvSnaLG+8pHNH60zEc3mBvb3B2tOMDjcPCi/o+Du3p/9qpPLwJOTliVxxPJAP27fuIhLrsRdCr7A==", "integrity": "sha512-NZnpJ30zkwaA2ZPhxJLs/qoMbd0yNAj6yyb3JTADJx9HjSdtvnNzOY1bDa3bU1B9CZTBBb7W9E1PpWlNXdgESg==",
"dependencies": { "dependencies": {
"@tanstack/query-core": "5.51.9" "@tanstack/query-core": "5.51.16"
}, },
"funding": { "funding": {
"type": "github", "type": "github",
@ -7250,9 +7250,9 @@
"license": "MIT" "license": "MIT"
}, },
"node_modules/utopia-ui": { "node_modules/utopia-ui": {
"version": "3.0.0-alpha.216", "version": "3.0.0-alpha.253",
"resolved": "https://registry.npmjs.org/utopia-ui/-/utopia-ui-3.0.0-alpha.216.tgz", "resolved": "https://registry.npmjs.org/utopia-ui/-/utopia-ui-3.0.0-alpha.253.tgz",
"integrity": "sha512-C7ItBnKfSKfVfYXXXeQ09TAJXpGCxPwxAiTjBvRKRP/klDefvFnL7sIjV9Cg17ccwv/fkz8RPknsdpfeZ93PDw==", "integrity": "sha512-wzaoFtdgJAoR8RvM45BIc33v3NM2tsuse75tLoJX1r693AhlNBinucJYE4Aqyl2jHDESB8k88mcQ+O7nTBI5YQ==",
"dependencies": { "dependencies": {
"@heroicons/react": "^2.0.17", "@heroicons/react": "^2.0.17",
"@tanstack/react-query": "^5.17.8", "@tanstack/react-query": "^5.17.8",

View File

@ -19,7 +19,7 @@
"react-dom": "^18.2.0", "react-dom": "^18.2.0",
"react-rnd": "^10.4.1", "react-rnd": "^10.4.1",
"react-router-dom": "^6.23.0", "react-router-dom": "^6.23.0",
"utopia-ui": "^3.0.0-alpha.216" "utopia-ui": "^3.0.0-alpha.253"
}, },
"devDependencies": { "devDependencies": {
"@types/react": "^18.2.79", "@types/react": "^18.2.79",

View File

@ -22,6 +22,8 @@ function App() {
const [tagsApi, setTagsApi] = useState<itemsApi<Tag>>(); const [tagsApi, setTagsApi] = useState<itemsApi<Tag>>();
const [mapApiInstance, setMapApiInstance] = useState<mapApi>(); const [mapApiInstance, setMapApiInstance] = useState<mapApi>();
const [layersApiInstance, setLayersApiInstance] = useState<layersApi>(); const [layersApiInstance, setLayersApiInstance] = useState<layersApi>();
const [attestationApi, setAttestationApi] = useState<itemsApi<any>>();
const [map, setMap] = useState<any>(); const [map, setMap] = useState<any>();
const [layers, setLayers] = useState<any>(); const [layers, setLayers] = useState<any>();
const [layerPageRoutes, setLayerPageRoutes] = useState<any>(); const [layerPageRoutes, setLayerPageRoutes] = useState<any>();
@ -31,6 +33,7 @@ function App() {
useEffect(() => { useEffect(() => {
setPermissionsApiInstance(new permissionsApi()); setPermissionsApiInstance(new permissionsApi());
setMapApiInstance(new mapApi(window.location.origin)); setMapApiInstance(new mapApi(window.location.origin));
setAttestationApi(new itemsApi<any>("attestations"));
}, []) }, [])
useEffect(() => { useEffect(() => {
@ -102,13 +105,13 @@ function App() {
<Route path='signup' element={<SignupPage />} /> <Route path='signup' element={<SignupPage />} />
<Route path='reset-password' element={<RequestPasswordPage reset_url={map.url + "/set-new-password/"} />} /> <Route path='reset-password' element={<RequestPasswordPage reset_url={map.url + "/set-new-password/"} />} />
<Route path='set-new-password' element={<SetNewPasswordPage />} /> <Route path='set-new-password' element={<SetNewPasswordPage />} />
<Route path="item/*" element={<ProfileView userType={map.user_type.name} />} /> <Route path="item/*" element={<ProfileView attestationApi={attestationApi} userType={map.user_type.name} />} />
<Route path="edit-item/*" element={<ProfileForm userType={map.user_type.name}/>} /> <Route path="edit-item/*" element={<ProfileForm userType={map.user_type.name}/>} />
<Route path="user-settings" element={<UserSettings />} /> <Route path="user-settings" element={<UserSettings />} />
<Route path="moon-calendar" element={<MoonCalendar />} /> <Route path="moon-calendar" element={<MoonCalendar />} />
<Route path="landingpage" element={<Landingpage />} /> <Route path="landingpage" element={<Landingpage />} />
<Route path="select-user" element={<SelectUser userType={map.user_type.name} />} /> <Route path="select-user" element={<SelectUser userType={map.user_type.name} />} />
<Route path="attestation-form" element={<AttestationForm />} /> <Route path="attestation-form" element={<AttestationForm api={attestationApi}/>} />
{ {
layers.map((l: any) => layers.map((l: any) =>
<Route key={l.id} path={l.name} element={<OverlayItemsIndexPage plusButton={l.index_plus_button} layerName={l.name} url={'/item/'} parameterField={'id'} />} /> <Route key={l.id} path={l.name} element={<OverlayItemsIndexPage plusButton={l.index_plus_button} layerName={l.name} url={'/item/'} parameterField={'id'} />} />

View File

@ -30,7 +30,7 @@ export class itemsApi<T> implements ItemsApi<T>{
async getItems() { async getItems() {
try { try {
return await directusClient.request(readItems(this.collectionName as never, { fields: ['*', "relations.*", "user_created.*", {offers: ['*'], needs: ['*']}] , filter: this.filter, limit: -1 })); return await directusClient.request(readItems(this.collectionName as never, { fields: ['*', 'to.*', "relations.*", "user_created.*", {offers: ['*'], needs: ['*']}] , filter: this.filter, limit: -1 }));
} catch (error: any) { } catch (error: any) {
console.log(error); console.log(error);
if (error.errors[0]?.message) if (error.errors[0]?.message)