diff --git a/pages/places/[id]/index.tsx b/pages/places/[id]/index.tsx index 13685c2..cc5febf 100644 --- a/pages/places/[id]/index.tsx +++ b/pages/places/[id]/index.tsx @@ -21,6 +21,7 @@ import ViewPlaceMap from "src/components/ViewPlaceMap"; import CloudinaryImage from "src/components/ui/CloudinaryImage"; import Layout from "src/components/Layout"; import { ViewState } from "react-map-gl"; +import { useAuth } from "src/contexts"; type PlaceIdFC

= FC

& additionalType; @@ -33,6 +34,7 @@ const PlaceId: PlaceIdFC = () => { longitude: -122.3321, zoom: 13, }); + const { user } = useAuth(); const { addToast } = useToasts(); const router = useRouter(); @@ -133,21 +135,23 @@ const PlaceId: PlaceIdFC = () => { > -

- - -
+ {!!user && user.uid === place.userId ? ( +
+ + +
+ ) : null} )} diff --git a/schema.gql b/schema.gql index 2e7b34c..dae6073 100644 --- a/schema.gql +++ b/schema.gql @@ -36,6 +36,7 @@ type Place { placeName: String! placeType: String! publicId: String! + userId: String! } input PlaceInput { @@ -48,7 +49,6 @@ input PlaceInput { } type Query { - hello: String! place(id: String!): Place places(bounds: BoundInput!): [Place!] } diff --git a/src/generated/GetPlaceByIdQuery.ts b/src/generated/GetPlaceByIdQuery.ts index e20dd99..ec2bc50 100644 --- a/src/generated/GetPlaceByIdQuery.ts +++ b/src/generated/GetPlaceByIdQuery.ts @@ -17,6 +17,7 @@ export interface GetPlaceByIdQuery_place_nearby { export interface GetPlaceByIdQuery_place { __typename: "Place"; id: string; + userId: string; latitude: number; longitude: number; address: string; diff --git a/src/generated/GetPlacesQuery.ts b/src/generated/GetPlacesQuery.ts index 11bdeb2..9cc24da 100644 --- a/src/generated/GetPlacesQuery.ts +++ b/src/generated/GetPlacesQuery.ts @@ -12,6 +12,7 @@ import { BoundInput } from "./globalTypes"; export interface GetPlacesQuery_places { __typename: "Place"; id: string; + userId: string; latitude: number; longitude: number; address: string; diff --git a/src/gql/place.ts b/src/gql/place.ts index 2488a3b..ba85ac2 100644 --- a/src/gql/place.ts +++ b/src/gql/place.ts @@ -4,6 +4,7 @@ export const GET_PLACE_BY_ID_QUERY = gql` query GetPlaceByIdQuery($id: String!) { place(id: $id) { id + userId latitude longitude address @@ -25,6 +26,7 @@ export const GET_PLACES_QUERY = gql` query GetPlacesQuery($bounds: BoundInput!) { places(bounds: $bounds) { id + userId latitude longitude address diff --git a/src/schema/index.ts b/src/schema/index.ts index edcaba6..ca74518 100644 --- a/src/schema/index.ts +++ b/src/schema/index.ts @@ -1,18 +1,10 @@ -import { buildSchemaSync, Query, Resolver } from "type-graphql"; +import { buildSchemaSync } from "type-graphql"; import { authChecker } from "./authChecker"; import { ImageResolver } from "./image"; import { PlaceResolver } from "./place"; -@Resolver() -class DummyResolver { - @Query((_returns) => String) - hello() { - return "Hello world"; - } -} - export const schema = buildSchemaSync({ - resolvers: [DummyResolver, ImageResolver, PlaceResolver], + resolvers: [ImageResolver, PlaceResolver], emitSchemaFile: process.env.NODE_ENV === "development", authChecker, }); diff --git a/src/schema/place.ts b/src/schema/place.ts index 8ee082c..44d74df 100644 --- a/src/schema/place.ts +++ b/src/schema/place.ts @@ -63,6 +63,9 @@ class Place { @Field((_type) => ID) id!: number; + @Field((_type) => String) + userId!: string; + @Field((_type) => String) placeName!: string;