Remove sending authId from Client
This commit is contained in:
1 parent
fecbac5680
commit
f97deb7946
19 files changed
+1859
-232
No files matched your search
@@ -7,8 +7,9 @@ enum Role {
|
||||
enum Status {
|
||||
ACTIVE
|
||||
INACTIVE
|
||||
APPLY
|
||||
INVITE
|
||||
APPLIED
|
||||
INVITED
|
||||
REMOVED
|
||||
}
|
||||
|
||||
enum FBType {
|
||||
@@ -53,24 +54,34 @@ type TeamStatus {
|
||||
}
|
||||
|
||||
type TeamMembers {
|
||||
id: ID! @unique
|
||||
member: Member @relation (name: "MemberOnTeam", onDelete: SET_NULL)
|
||||
team: Team @relation (name: "TeamMembers", onDelete: SET_NULL)
|
||||
role: Role @default(value: MEMBER)
|
||||
status: [MemberStatus!]!
|
||||
status: [TeamMemberStatus!]!
|
||||
email: String
|
||||
createdAt: DateTime!
|
||||
updatedAt: DateTime!
|
||||
}
|
||||
|
||||
type TeamMemberStatus {
|
||||
status: Status @Default(value: INACTIVE)
|
||||
reason: String
|
||||
createdAt: DateTime!
|
||||
}
|
||||
|
||||
type Member {
|
||||
id: ID! @unique
|
||||
alias: String
|
||||
teams: [TeamMembers!]! @relation (name: "MemberOnTeam", onDelete: SET_NULL)
|
||||
authId: String! @unique
|
||||
visible: Boolean! @default(value: true)
|
||||
status: [MemberStatus!]!
|
||||
createdAt: DateTime!
|
||||
}
|
||||
|
||||
type MemberStatus {
|
||||
status: Status @Default(value: inactive)
|
||||
status: Status @Default(value: INACTIVE)
|
||||
reason: String
|
||||
createdAt: DateTime!
|
||||
}
|
||||
|
||||
Generated
+1358
-71
File diff suppressed because it is too large.
Load diff
+2
-1
@@ -8,6 +8,7 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@azure/storage-blob": "^10.0.0-preview",
|
||||
"axios": "^0.18.0",
|
||||
"azure-storage": "^2.10.1",
|
||||
"cors": "^2.8.4",
|
||||
"debug": "^4.0.1",
|
||||
@@ -27,6 +28,6 @@
|
||||
"devDependencies": {
|
||||
"graphql-cli": "^2.16.5",
|
||||
"npm-run-all": "4.1.3",
|
||||
"prisma": "^1.16.4"
|
||||
"prisma": "^1.17.1"
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
# source: http://localhost:4466
|
||||
# timestamp: Wed Sep 26 2018 23:15:45 GMT-0700 (Pacific Daylight Time)
|
||||
# timestamp: Thu Sep 27 2018 08:38:09 GMT-0700 (Pacific Daylight Time)
|
||||
|
||||
type AggregateFBStatus {
|
||||
count: Int!
|
||||
@@ -25,6 +25,10 @@ type AggregateTeamMembers {
|
||||
count: Int!
|
||||
}
|
||||
|
||||
type AggregateTeamMemberStatus {
|
||||
count: Int!
|
||||
}
|
||||
|
||||
type AggregateTeamProfile {
|
||||
count: Int!
|
||||
}
|
||||
@@ -516,6 +520,7 @@ type Member implements Node {
|
||||
teams(where: TeamMembersWhereInput, orderBy: TeamMembersOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [TeamMembers!]
|
||||
authId: String!
|
||||
visible: Boolean!
|
||||
status(where: MemberStatusWhereInput, orderBy: MemberStatusOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [MemberStatus!]
|
||||
createdAt: DateTime!
|
||||
}
|
||||
|
||||
@@ -534,6 +539,7 @@ input MemberCreateInput {
|
||||
authId: String!
|
||||
visible: Boolean
|
||||
teams: TeamMembersCreateManyWithoutMemberInput
|
||||
status: MemberStatusCreateManyInput
|
||||
}
|
||||
|
||||
input MemberCreateOneWithoutTeamsInput {
|
||||
@@ -545,6 +551,7 @@ input MemberCreateWithoutTeamsInput {
|
||||
alias: String
|
||||
authId: String!
|
||||
visible: Boolean
|
||||
status: MemberStatusCreateManyInput
|
||||
}
|
||||
|
||||
"""An edge in a connection."""
|
||||
@@ -807,6 +814,7 @@ input MemberUpdateInput {
|
||||
authId: String
|
||||
visible: Boolean
|
||||
teams: TeamMembersUpdateManyWithoutMemberInput
|
||||
status: MemberStatusUpdateManyInput
|
||||
}
|
||||
|
||||
input MemberUpdateOneWithoutTeamsInput {
|
||||
@@ -822,6 +830,7 @@ input MemberUpdateWithoutTeamsDataInput {
|
||||
alias: String
|
||||
authId: String
|
||||
visible: Boolean
|
||||
status: MemberStatusUpdateManyInput
|
||||
}
|
||||
|
||||
input MemberUpsertWithoutTeamsInput {
|
||||
@@ -987,6 +996,9 @@ input MemberWhereInput {
|
||||
teams_every: TeamMembersWhereInput
|
||||
teams_some: TeamMembersWhereInput
|
||||
teams_none: TeamMembersWhereInput
|
||||
status_every: MemberStatusWhereInput
|
||||
status_some: MemberStatusWhereInput
|
||||
status_none: MemberStatusWhereInput
|
||||
}
|
||||
|
||||
input MemberWhereUniqueInput {
|
||||
@@ -1001,16 +1013,20 @@ type Mutation {
|
||||
createFinancialBeings(data: FinancialBeingsCreateInput!): FinancialBeings!
|
||||
createTeamProfile(data: TeamProfileCreateInput!): TeamProfile!
|
||||
createWallet(data: WalletCreateInput!): Wallet!
|
||||
createFBStatus(data: FBStatusCreateInput!): FBStatus!
|
||||
createTeamStatus(data: TeamStatusCreateInput!): TeamStatus!
|
||||
createMemberStatus(data: MemberStatusCreateInput!): MemberStatus!
|
||||
createFBStatus(data: FBStatusCreateInput!): FBStatus!
|
||||
createTeamMemberStatus(data: TeamMemberStatusCreateInput!): TeamMemberStatus!
|
||||
createTeamStatus(data: TeamStatusCreateInput!): TeamStatus!
|
||||
updateTeam(data: TeamUpdateInput!, where: TeamWhereUniqueInput!): Team
|
||||
updateTeamMembers(data: TeamMembersUpdateInput!, where: TeamMembersWhereUniqueInput!): TeamMembers
|
||||
updateMember(data: MemberUpdateInput!, where: MemberWhereUniqueInput!): Member
|
||||
updateFinancialBeings(data: FinancialBeingsUpdateInput!, where: FinancialBeingsWhereUniqueInput!): FinancialBeings
|
||||
deleteTeam(where: TeamWhereUniqueInput!): Team
|
||||
deleteTeamMembers(where: TeamMembersWhereUniqueInput!): TeamMembers
|
||||
deleteMember(where: MemberWhereUniqueInput!): Member
|
||||
deleteFinancialBeings(where: FinancialBeingsWhereUniqueInput!): FinancialBeings
|
||||
upsertTeam(where: TeamWhereUniqueInput!, create: TeamCreateInput!, update: TeamUpdateInput!): Team!
|
||||
upsertTeamMembers(where: TeamMembersWhereUniqueInput!, create: TeamMembersCreateInput!, update: TeamMembersUpdateInput!): TeamMembers!
|
||||
upsertMember(where: MemberWhereUniqueInput!, create: MemberCreateInput!, update: MemberUpdateInput!): Member!
|
||||
upsertFinancialBeings(where: FinancialBeingsWhereUniqueInput!, create: FinancialBeingsCreateInput!, update: FinancialBeingsUpdateInput!): FinancialBeings!
|
||||
updateManyTeams(data: TeamUpdateInput!, where: TeamWhereInput): BatchPayload!
|
||||
@@ -1019,18 +1035,20 @@ type Mutation {
|
||||
updateManyFinancialBeingses(data: FinancialBeingsUpdateInput!, where: FinancialBeingsWhereInput): BatchPayload!
|
||||
updateManyTeamProfiles(data: TeamProfileUpdateInput!, where: TeamProfileWhereInput): BatchPayload!
|
||||
updateManyWallets(data: WalletUpdateInput!, where: WalletWhereInput): BatchPayload!
|
||||
updateManyFBStatuses(data: FBStatusUpdateInput!, where: FBStatusWhereInput): BatchPayload!
|
||||
updateManyTeamStatuses(data: TeamStatusUpdateInput!, where: TeamStatusWhereInput): BatchPayload!
|
||||
updateManyMemberStatuses(data: MemberStatusUpdateInput!, where: MemberStatusWhereInput): BatchPayload!
|
||||
updateManyFBStatuses(data: FBStatusUpdateInput!, where: FBStatusWhereInput): BatchPayload!
|
||||
updateManyTeamMemberStatuses(data: TeamMemberStatusUpdateInput!, where: TeamMemberStatusWhereInput): BatchPayload!
|
||||
updateManyTeamStatuses(data: TeamStatusUpdateInput!, where: TeamStatusWhereInput): BatchPayload!
|
||||
deleteManyTeams(where: TeamWhereInput): BatchPayload!
|
||||
deleteManyTeamMemberses(where: TeamMembersWhereInput): BatchPayload!
|
||||
deleteManyMembers(where: MemberWhereInput): BatchPayload!
|
||||
deleteManyFinancialBeingses(where: FinancialBeingsWhereInput): BatchPayload!
|
||||
deleteManyTeamProfiles(where: TeamProfileWhereInput): BatchPayload!
|
||||
deleteManyWallets(where: WalletWhereInput): BatchPayload!
|
||||
deleteManyFBStatuses(where: FBStatusWhereInput): BatchPayload!
|
||||
deleteManyTeamStatuses(where: TeamStatusWhereInput): BatchPayload!
|
||||
deleteManyMemberStatuses(where: MemberStatusWhereInput): BatchPayload!
|
||||
deleteManyFBStatuses(where: FBStatusWhereInput): BatchPayload!
|
||||
deleteManyTeamMemberStatuses(where: TeamMemberStatusWhereInput): BatchPayload!
|
||||
deleteManyTeamStatuses(where: TeamStatusWhereInput): BatchPayload!
|
||||
}
|
||||
|
||||
enum MutationType {
|
||||
@@ -1067,10 +1085,12 @@ type Query {
|
||||
financialBeingses(where: FinancialBeingsWhereInput, orderBy: FinancialBeingsOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [FinancialBeings]!
|
||||
teamProfiles(where: TeamProfileWhereInput, orderBy: TeamProfileOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [TeamProfile]!
|
||||
wallets(where: WalletWhereInput, orderBy: WalletOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [Wallet]!
|
||||
fBStatuses(where: FBStatusWhereInput, orderBy: FBStatusOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [FBStatus]!
|
||||
teamStatuses(where: TeamStatusWhereInput, orderBy: TeamStatusOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [TeamStatus]!
|
||||
memberStatuses(where: MemberStatusWhereInput, orderBy: MemberStatusOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [MemberStatus]!
|
||||
fBStatuses(where: FBStatusWhereInput, orderBy: FBStatusOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [FBStatus]!
|
||||
teamMemberStatuses(where: TeamMemberStatusWhereInput, orderBy: TeamMemberStatusOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [TeamMemberStatus]!
|
||||
teamStatuses(where: TeamStatusWhereInput, orderBy: TeamStatusOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [TeamStatus]!
|
||||
team(where: TeamWhereUniqueInput!): Team
|
||||
teamMembers(where: TeamMembersWhereUniqueInput!): TeamMembers
|
||||
member(where: MemberWhereUniqueInput!): Member
|
||||
financialBeings(where: FinancialBeingsWhereUniqueInput!): FinancialBeings
|
||||
teamsConnection(where: TeamWhereInput, orderBy: TeamOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): TeamConnection!
|
||||
@@ -1079,9 +1099,10 @@ type Query {
|
||||
financialBeingsesConnection(where: FinancialBeingsWhereInput, orderBy: FinancialBeingsOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): FinancialBeingsConnection!
|
||||
teamProfilesConnection(where: TeamProfileWhereInput, orderBy: TeamProfileOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): TeamProfileConnection!
|
||||
walletsConnection(where: WalletWhereInput, orderBy: WalletOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): WalletConnection!
|
||||
fBStatusesConnection(where: FBStatusWhereInput, orderBy: FBStatusOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): FBStatusConnection!
|
||||
teamStatusesConnection(where: TeamStatusWhereInput, orderBy: TeamStatusOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): TeamStatusConnection!
|
||||
memberStatusesConnection(where: MemberStatusWhereInput, orderBy: MemberStatusOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): MemberStatusConnection!
|
||||
fBStatusesConnection(where: FBStatusWhereInput, orderBy: FBStatusOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): FBStatusConnection!
|
||||
teamMemberStatusesConnection(where: TeamMemberStatusWhereInput, orderBy: TeamMemberStatusOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): TeamMemberStatusConnection!
|
||||
teamStatusesConnection(where: TeamStatusWhereInput, orderBy: TeamStatusOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): TeamStatusConnection!
|
||||
|
||||
"""Fetches an object given its ID"""
|
||||
node(
|
||||
@@ -1099,8 +1120,9 @@ enum Role {
|
||||
enum Status {
|
||||
ACTIVE
|
||||
INACTIVE
|
||||
APPLY
|
||||
INVITE
|
||||
APPLIED
|
||||
INVITED
|
||||
REMOVED
|
||||
}
|
||||
|
||||
type Subscription {
|
||||
@@ -1110,9 +1132,10 @@ type Subscription {
|
||||
financialBeings(where: FinancialBeingsSubscriptionWhereInput): FinancialBeingsSubscriptionPayload
|
||||
teamProfile(where: TeamProfileSubscriptionWhereInput): TeamProfileSubscriptionPayload
|
||||
wallet(where: WalletSubscriptionWhereInput): WalletSubscriptionPayload
|
||||
fBStatus(where: FBStatusSubscriptionWhereInput): FBStatusSubscriptionPayload
|
||||
teamStatus(where: TeamStatusSubscriptionWhereInput): TeamStatusSubscriptionPayload
|
||||
memberStatus(where: MemberStatusSubscriptionWhereInput): MemberStatusSubscriptionPayload
|
||||
fBStatus(where: FBStatusSubscriptionWhereInput): FBStatusSubscriptionPayload
|
||||
teamMemberStatus(where: TeamMemberStatusSubscriptionWhereInput): TeamMemberStatusSubscriptionPayload
|
||||
teamStatus(where: TeamStatusSubscriptionWhereInput): TeamStatusSubscriptionPayload
|
||||
}
|
||||
|
||||
type Team implements Node {
|
||||
@@ -1188,11 +1211,14 @@ type TeamEdge {
|
||||
cursor: String!
|
||||
}
|
||||
|
||||
type TeamMembers {
|
||||
type TeamMembers implements Node {
|
||||
id: ID!
|
||||
member(where: MemberWhereInput): Member
|
||||
team(where: TeamWhereInput): Team
|
||||
role: Role
|
||||
status(where: MemberStatusWhereInput, orderBy: MemberStatusOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [MemberStatus!]
|
||||
status(where: TeamMemberStatusWhereInput, orderBy: TeamMemberStatusOrderByInput, skip: Int, after: String, before: String, first: Int, last: Int): [TeamMemberStatus!]
|
||||
email: String
|
||||
createdAt: DateTime!
|
||||
updatedAt: DateTime!
|
||||
}
|
||||
|
||||
@@ -1208,29 +1234,34 @@ type TeamMembersConnection {
|
||||
|
||||
input TeamMembersCreateInput {
|
||||
role: Role
|
||||
email: String
|
||||
member: MemberCreateOneWithoutTeamsInput
|
||||
team: TeamCreateOneWithoutMembersInput
|
||||
status: MemberStatusCreateManyInput
|
||||
status: TeamMemberStatusCreateManyInput
|
||||
}
|
||||
|
||||
input TeamMembersCreateManyWithoutMemberInput {
|
||||
create: [TeamMembersCreateWithoutMemberInput!]
|
||||
connect: [TeamMembersWhereUniqueInput!]
|
||||
}
|
||||
|
||||
input TeamMembersCreateManyWithoutTeamInput {
|
||||
create: [TeamMembersCreateWithoutTeamInput!]
|
||||
connect: [TeamMembersWhereUniqueInput!]
|
||||
}
|
||||
|
||||
input TeamMembersCreateWithoutMemberInput {
|
||||
role: Role
|
||||
email: String
|
||||
team: TeamCreateOneWithoutMembersInput
|
||||
status: MemberStatusCreateManyInput
|
||||
status: TeamMemberStatusCreateManyInput
|
||||
}
|
||||
|
||||
input TeamMembersCreateWithoutTeamInput {
|
||||
role: Role
|
||||
email: String
|
||||
member: MemberCreateOneWithoutTeamsInput
|
||||
status: MemberStatusCreateManyInput
|
||||
status: TeamMemberStatusCreateManyInput
|
||||
}
|
||||
|
||||
"""An edge in a connection."""
|
||||
@@ -1243,18 +1274,23 @@ type TeamMembersEdge {
|
||||
}
|
||||
|
||||
enum TeamMembersOrderByInput {
|
||||
role_ASC
|
||||
role_DESC
|
||||
updatedAt_ASC
|
||||
updatedAt_DESC
|
||||
id_ASC
|
||||
id_DESC
|
||||
role_ASC
|
||||
role_DESC
|
||||
email_ASC
|
||||
email_DESC
|
||||
createdAt_ASC
|
||||
createdAt_DESC
|
||||
updatedAt_ASC
|
||||
updatedAt_DESC
|
||||
}
|
||||
|
||||
type TeamMembersPreviousValues {
|
||||
id: ID!
|
||||
role: Role
|
||||
email: String
|
||||
createdAt: DateTime!
|
||||
updatedAt: DateTime!
|
||||
}
|
||||
|
||||
@@ -1297,19 +1333,250 @@ input TeamMembersSubscriptionWhereInput {
|
||||
node: TeamMembersWhereInput
|
||||
}
|
||||
|
||||
type TeamMemberStatus {
|
||||
status: Status
|
||||
reason: String
|
||||
createdAt: DateTime!
|
||||
}
|
||||
|
||||
"""A connection to a list of items."""
|
||||
type TeamMemberStatusConnection {
|
||||
"""Information to aid in pagination."""
|
||||
pageInfo: PageInfo!
|
||||
|
||||
"""A list of edges."""
|
||||
edges: [TeamMemberStatusEdge]!
|
||||
aggregate: AggregateTeamMemberStatus!
|
||||
}
|
||||
|
||||
input TeamMemberStatusCreateInput {
|
||||
status: Status
|
||||
reason: String
|
||||
}
|
||||
|
||||
input TeamMemberStatusCreateManyInput {
|
||||
create: [TeamMemberStatusCreateInput!]
|
||||
}
|
||||
|
||||
"""An edge in a connection."""
|
||||
type TeamMemberStatusEdge {
|
||||
"""The item at the end of the edge."""
|
||||
node: TeamMemberStatus!
|
||||
|
||||
"""A cursor for use in pagination."""
|
||||
cursor: String!
|
||||
}
|
||||
|
||||
enum TeamMemberStatusOrderByInput {
|
||||
status_ASC
|
||||
status_DESC
|
||||
reason_ASC
|
||||
reason_DESC
|
||||
createdAt_ASC
|
||||
createdAt_DESC
|
||||
id_ASC
|
||||
id_DESC
|
||||
updatedAt_ASC
|
||||
updatedAt_DESC
|
||||
}
|
||||
|
||||
type TeamMemberStatusPreviousValues {
|
||||
status: Status
|
||||
reason: String
|
||||
createdAt: DateTime!
|
||||
}
|
||||
|
||||
type TeamMemberStatusSubscriptionPayload {
|
||||
mutation: MutationType!
|
||||
node: TeamMemberStatus
|
||||
updatedFields: [String!]
|
||||
previousValues: TeamMemberStatusPreviousValues
|
||||
}
|
||||
|
||||
input TeamMemberStatusSubscriptionWhereInput {
|
||||
"""Logical AND on all given filters."""
|
||||
AND: [TeamMemberStatusSubscriptionWhereInput!]
|
||||
|
||||
"""Logical OR on all given filters."""
|
||||
OR: [TeamMemberStatusSubscriptionWhereInput!]
|
||||
|
||||
"""Logical NOT on all given filters combined by AND."""
|
||||
NOT: [TeamMemberStatusSubscriptionWhereInput!]
|
||||
|
||||
"""
|
||||
The subscription event gets dispatched when it's listed in mutation_in
|
||||
"""
|
||||
mutation_in: [MutationType!]
|
||||
|
||||
"""
|
||||
The subscription event gets only dispatched when one of the updated fields names is included in this list
|
||||
"""
|
||||
updatedFields_contains: String
|
||||
|
||||
"""
|
||||
The subscription event gets only dispatched when all of the field names included in this list have been updated
|
||||
"""
|
||||
updatedFields_contains_every: [String!]
|
||||
|
||||
"""
|
||||
The subscription event gets only dispatched when some of the field names included in this list have been updated
|
||||
"""
|
||||
updatedFields_contains_some: [String!]
|
||||
node: TeamMemberStatusWhereInput
|
||||
}
|
||||
|
||||
input TeamMemberStatusUpdateInput {
|
||||
status: Status
|
||||
reason: String
|
||||
}
|
||||
|
||||
input TeamMemberStatusUpdateManyInput {
|
||||
create: [TeamMemberStatusCreateInput!]
|
||||
}
|
||||
|
||||
input TeamMemberStatusWhereInput {
|
||||
"""Logical AND on all given filters."""
|
||||
AND: [TeamMemberStatusWhereInput!]
|
||||
|
||||
"""Logical OR on all given filters."""
|
||||
OR: [TeamMemberStatusWhereInput!]
|
||||
|
||||
"""Logical NOT on all given filters combined by AND."""
|
||||
NOT: [TeamMemberStatusWhereInput!]
|
||||
status: Status
|
||||
|
||||
"""All values that are not equal to given value."""
|
||||
status_not: Status
|
||||
|
||||
"""All values that are contained in given list."""
|
||||
status_in: [Status!]
|
||||
|
||||
"""All values that are not contained in given list."""
|
||||
status_not_in: [Status!]
|
||||
reason: String
|
||||
|
||||
"""All values that are not equal to given value."""
|
||||
reason_not: String
|
||||
|
||||
"""All values that are contained in given list."""
|
||||
reason_in: [String!]
|
||||
|
||||
"""All values that are not contained in given list."""
|
||||
reason_not_in: [String!]
|
||||
|
||||
"""All values less than the given value."""
|
||||
reason_lt: String
|
||||
|
||||
"""All values less than or equal the given value."""
|
||||
reason_lte: String
|
||||
|
||||
"""All values greater than the given value."""
|
||||
reason_gt: String
|
||||
|
||||
"""All values greater than or equal the given value."""
|
||||
reason_gte: String
|
||||
|
||||
"""All values containing the given string."""
|
||||
reason_contains: String
|
||||
|
||||
"""All values not containing the given string."""
|
||||
reason_not_contains: String
|
||||
|
||||
"""All values starting with the given string."""
|
||||
reason_starts_with: String
|
||||
|
||||
"""All values not starting with the given string."""
|
||||
reason_not_starts_with: String
|
||||
|
||||
"""All values ending with the given string."""
|
||||
reason_ends_with: String
|
||||
|
||||
"""All values not ending with the given string."""
|
||||
reason_not_ends_with: String
|
||||
createdAt: DateTime
|
||||
|
||||
"""All values that are not equal to given value."""
|
||||
createdAt_not: DateTime
|
||||
|
||||
"""All values that are contained in given list."""
|
||||
createdAt_in: [DateTime!]
|
||||
|
||||
"""All values that are not contained in given list."""
|
||||
createdAt_not_in: [DateTime!]
|
||||
|
||||
"""All values less than the given value."""
|
||||
createdAt_lt: DateTime
|
||||
|
||||
"""All values less than or equal the given value."""
|
||||
createdAt_lte: DateTime
|
||||
|
||||
"""All values greater than the given value."""
|
||||
createdAt_gt: DateTime
|
||||
|
||||
"""All values greater than or equal the given value."""
|
||||
createdAt_gte: DateTime
|
||||
}
|
||||
|
||||
input TeamMembersUpdateInput {
|
||||
role: Role
|
||||
email: String
|
||||
member: MemberUpdateOneWithoutTeamsInput
|
||||
team: TeamUpdateOneWithoutMembersInput
|
||||
status: MemberStatusUpdateManyInput
|
||||
status: TeamMemberStatusUpdateManyInput
|
||||
}
|
||||
|
||||
input TeamMembersUpdateManyWithoutMemberInput {
|
||||
create: [TeamMembersCreateWithoutMemberInput!]
|
||||
connect: [TeamMembersWhereUniqueInput!]
|
||||
disconnect: [TeamMembersWhereUniqueInput!]
|
||||
delete: [TeamMembersWhereUniqueInput!]
|
||||
update: [TeamMembersUpdateWithWhereUniqueWithoutMemberInput!]
|
||||
upsert: [TeamMembersUpsertWithWhereUniqueWithoutMemberInput!]
|
||||
}
|
||||
|
||||
input TeamMembersUpdateManyWithoutTeamInput {
|
||||
create: [TeamMembersCreateWithoutTeamInput!]
|
||||
connect: [TeamMembersWhereUniqueInput!]
|
||||
disconnect: [TeamMembersWhereUniqueInput!]
|
||||
delete: [TeamMembersWhereUniqueInput!]
|
||||
update: [TeamMembersUpdateWithWhereUniqueWithoutTeamInput!]
|
||||
upsert: [TeamMembersUpsertWithWhereUniqueWithoutTeamInput!]
|
||||
}
|
||||
|
||||
input TeamMembersUpdateWithoutMemberDataInput {
|
||||
role: Role
|
||||
email: String
|
||||
team: TeamUpdateOneWithoutMembersInput
|
||||
status: TeamMemberStatusUpdateManyInput
|
||||
}
|
||||
|
||||
input TeamMembersUpdateWithoutTeamDataInput {
|
||||
role: Role
|
||||
email: String
|
||||
member: MemberUpdateOneWithoutTeamsInput
|
||||
status: TeamMemberStatusUpdateManyInput
|
||||
}
|
||||
|
||||
input TeamMembersUpdateWithWhereUniqueWithoutMemberInput {
|
||||
where: TeamMembersWhereUniqueInput!
|
||||
data: TeamMembersUpdateWithoutMemberDataInput!
|
||||
}
|
||||
|
||||
input TeamMembersUpdateWithWhereUniqueWithoutTeamInput {
|
||||
where: TeamMembersWhereUniqueInput!
|
||||
data: TeamMembersUpdateWithoutTeamDataInput!
|
||||
}
|
||||
|
||||
input TeamMembersUpsertWithWhereUniqueWithoutMemberInput {
|
||||
where: TeamMembersWhereUniqueInput!
|
||||
update: TeamMembersUpdateWithoutMemberDataInput!
|
||||
create: TeamMembersCreateWithoutMemberInput!
|
||||
}
|
||||
|
||||
input TeamMembersUpsertWithWhereUniqueWithoutTeamInput {
|
||||
where: TeamMembersWhereUniqueInput!
|
||||
update: TeamMembersUpdateWithoutTeamDataInput!
|
||||
create: TeamMembersCreateWithoutTeamInput!
|
||||
}
|
||||
|
||||
input TeamMembersWhereInput {
|
||||
@@ -1321,6 +1588,46 @@ input TeamMembersWhereInput {
|
||||
|
||||
"""Logical NOT on all given filters combined by AND."""
|
||||
NOT: [TeamMembersWhereInput!]
|
||||
id: ID
|
||||
|
||||
"""All values that are not equal to given value."""
|
||||
id_not: ID
|
||||
|
||||
"""All values that are contained in given list."""
|
||||
id_in: [ID!]
|
||||
|
||||
"""All values that are not contained in given list."""
|
||||
id_not_in: [ID!]
|
||||
|
||||
"""All values less than the given value."""
|
||||
id_lt: ID
|
||||
|
||||
"""All values less than or equal the given value."""
|
||||
id_lte: ID
|
||||
|
||||
"""All values greater than the given value."""
|
||||
id_gt: ID
|
||||
|
||||
"""All values greater than or equal the given value."""
|
||||
id_gte: ID
|
||||
|
||||
"""All values containing the given string."""
|
||||
id_contains: ID
|
||||
|
||||
"""All values not containing the given string."""
|
||||
id_not_contains: ID
|
||||
|
||||
"""All values starting with the given string."""
|
||||
id_starts_with: ID
|
||||
|
||||
"""All values not starting with the given string."""
|
||||
id_not_starts_with: ID
|
||||
|
||||
"""All values ending with the given string."""
|
||||
id_ends_with: ID
|
||||
|
||||
"""All values not ending with the given string."""
|
||||
id_not_ends_with: ID
|
||||
role: Role
|
||||
|
||||
"""All values that are not equal to given value."""
|
||||
@@ -1331,6 +1638,68 @@ input TeamMembersWhereInput {
|
||||
|
||||
"""All values that are not contained in given list."""
|
||||
role_not_in: [Role!]
|
||||
email: String
|
||||
|
||||
"""All values that are not equal to given value."""
|
||||
email_not: String
|
||||
|
||||
"""All values that are contained in given list."""
|
||||
email_in: [String!]
|
||||
|
||||
"""All values that are not contained in given list."""
|
||||
email_not_in: [String!]
|
||||
|
||||
"""All values less than the given value."""
|
||||
email_lt: String
|
||||
|
||||
"""All values less than or equal the given value."""
|
||||
email_lte: String
|
||||
|
||||
"""All values greater than the given value."""
|
||||
email_gt: String
|
||||
|
||||
"""All values greater than or equal the given value."""
|
||||
email_gte: String
|
||||
|
||||
"""All values containing the given string."""
|
||||
email_contains: String
|
||||
|
||||
"""All values not containing the given string."""
|
||||
email_not_contains: String
|
||||
|
||||
"""All values starting with the given string."""
|
||||
email_starts_with: String
|
||||
|
||||
"""All values not starting with the given string."""
|
||||
email_not_starts_with: String
|
||||
|
||||
"""All values ending with the given string."""
|
||||
email_ends_with: String
|
||||
|
||||
"""All values not ending with the given string."""
|
||||
email_not_ends_with: String
|
||||
createdAt: DateTime
|
||||
|
||||
"""All values that are not equal to given value."""
|
||||
createdAt_not: DateTime
|
||||
|
||||
"""All values that are contained in given list."""
|
||||
createdAt_in: [DateTime!]
|
||||
|
||||
"""All values that are not contained in given list."""
|
||||
createdAt_not_in: [DateTime!]
|
||||
|
||||
"""All values less than the given value."""
|
||||
createdAt_lt: DateTime
|
||||
|
||||
"""All values less than or equal the given value."""
|
||||
createdAt_lte: DateTime
|
||||
|
||||
"""All values greater than the given value."""
|
||||
createdAt_gt: DateTime
|
||||
|
||||
"""All values greater than or equal the given value."""
|
||||
createdAt_gte: DateTime
|
||||
updatedAt: DateTime
|
||||
|
||||
"""All values that are not equal to given value."""
|
||||
@@ -1355,9 +1724,13 @@ input TeamMembersWhereInput {
|
||||
updatedAt_gte: DateTime
|
||||
member: MemberWhereInput
|
||||
team: TeamWhereInput
|
||||
status_every: MemberStatusWhereInput
|
||||
status_some: MemberStatusWhereInput
|
||||
status_none: MemberStatusWhereInput
|
||||
status_every: TeamMemberStatusWhereInput
|
||||
status_some: TeamMemberStatusWhereInput
|
||||
status_none: TeamMemberStatusWhereInput
|
||||
}
|
||||
|
||||
input TeamMembersWhereUniqueInput {
|
||||
id: ID
|
||||
}
|
||||
|
||||
enum TeamOrderByInput {
|
||||
|
||||
+15
-5
@@ -87,9 +87,18 @@ const resolvers = {
|
||||
async teamByName(parent, { name }, ctx, info) {
|
||||
return ctx.db.query.team({ where: { name: name } }, `{ name }`)
|
||||
},
|
||||
async teamsByOwner(parent, { ownerId }, ctx, info) {
|
||||
console.log('teamsByOwner: ', ctx.user)
|
||||
return ctx.db.query.teams({where: { owner: ownerId }, orderBy:'updatedAt_DESC'}, TEAMS_FRAGMENT)
|
||||
async teamWithRole(parent, { teamId, role }, ctx, info) {
|
||||
return ctx.db.query.teamsConnection({where: {AND: [{id: teamId},{members_some:{role: role}}]}, first:1}, info)
|
||||
},
|
||||
async teamsByOwner(parent, args, ctx, info) {
|
||||
const authId = ctx.request.user.sub
|
||||
return ctx.db.query.teams({where: { owner: authId }, orderBy:'updatedAt_DESC'}, TEAMS_FRAGMENT)
|
||||
},
|
||||
async teamsByRole(parent, args, ctx, info) {
|
||||
const authId = ctx.request.user.sub
|
||||
let teamAdmin = await ctx.db.query.teams({where: {members_some: {OR: [{role: 'ADMIN'}, {role: 'OWNER'}], AND: [{member: {authId: authId}}]}}, orderBy: 'updatedAt_DESC'}, TEAMS_FRAGMENT)
|
||||
console.log('teamsByRole teamAdmin: ', teamAdmin)
|
||||
return teamAdmin
|
||||
},
|
||||
async owner(parent, args, ctx, info) {
|
||||
console.log('resolver.query.owner ctx: ', ctxMember(ctx))
|
||||
@@ -124,8 +133,9 @@ const resolvers = {
|
||||
}
|
||||
return member
|
||||
},
|
||||
async createTeam(parent, { name, slug, owner }, ctx, info) {
|
||||
return ctx.db.mutation.createTeam({ data: { name: name, slug: slug, owner: owner, members: { create: { member:{ connect:{ authId: owner} }, role: 'OWNER' } }, profile:{create:{avatar:"a"} } } }, TEAMS_FRAGMENT)
|
||||
async createTeam(parent, { name, slug }, ctx, info) {
|
||||
const authId = ctx.request.user.sub
|
||||
return ctx.db.mutation.createTeam({ data: { name: name, slug: slug, owner: authId, members: { create: { member:{ connect:{ authId: authId} }, role: 'OWNER' } }, profile:{create:{avatar:"a"} } } }, TEAMS_FRAGMENT)
|
||||
.catch((err) => {
|
||||
console.log('createTeam error: ', err)
|
||||
return err
|
||||
|
||||
@@ -10,7 +10,9 @@ type Query {
|
||||
teamDetails: [Team!]! @isAuthenticated
|
||||
teamByName(name: String!): Team
|
||||
teamById(teamId: String!): Team
|
||||
teamsByOwner(ownerId: String!): [Team!]! @isAuthenticated
|
||||
teamWithRole(teamId: String!, role: String!): Team
|
||||
teamsByOwner: [Team!]! @isAuthenticated
|
||||
teamsByRole: [Team!]! @isAuthenticated
|
||||
owner: Member @isAuthenticated
|
||||
currentMember: Member @isAuthenticated
|
||||
member(authId: String!): Member @isAuthenticated
|
||||
@@ -18,10 +20,13 @@ type Query {
|
||||
|
||||
type Mutation {
|
||||
authenticate(idToken: String!): Member
|
||||
createTeam(name: String!, slug: String!, owner: String!): Team @isAuthenticated
|
||||
updateTeamProfile(slug: String!, owner: String!, description: String, motto: String, avatar: String, banner: String): Team @isAuthenticated
|
||||
createTeam(name: String!, slug: String!): Team @isAuthenticated
|
||||
updateTeamProfile(slug: String!, description: String, motto: String, avatar: String, banner: String): Team @isAuthenticated
|
||||
deleteTeam(slug: String!): Team @isAuthenticated @isOwner(type: "Team")
|
||||
getAzureSAS(teamSlug: String!):String
|
||||
sendMemberInviteSG(email: String!, teamId: String!): String
|
||||
confirmMember(token: String!): String
|
||||
removeMember(email: String!, teamId: String!): String
|
||||
}
|
||||
|
||||
fragment MemberInfo on Member {
|
||||
|
||||
+1
-1
@@ -64,7 +64,7 @@ wsClient.onReconnected(() => {
|
||||
})
|
||||
|
||||
const httpLink = new HttpLink({ uri: graphqlEndpoint })
|
||||
const httpUserLink = new HttpLink({ uri: 'http://104.43.240.255:4000/graphql' })
|
||||
const httpUserLink = new HttpLink({ uri: 'https://users-api.advancedalgos.net/graphql' })
|
||||
|
||||
const link = split(
|
||||
({ query }) => {
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
import gql from 'graphql-tag'
|
||||
|
||||
const CREATE_TEAM = gql`
|
||||
mutation CreateTeamMutation($name: String!, $slug: String!, $owner: String!) {
|
||||
createTeam(name: $name, slug: $slug, owner: $owner) {
|
||||
mutation CreateTeamMutation($name: String!, $slug: String!) {
|
||||
createTeam(name: $name, slug: $slug) {
|
||||
id
|
||||
name
|
||||
slug
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
import gql from 'graphql-tag'
|
||||
|
||||
export const GET_TEAMS_BY_OWNER = gql`
|
||||
query teamsByOwnerQuery($authId: String!) {
|
||||
teamsByOwner(ownerId: $authId) {
|
||||
query teamsByOwnerQuery {
|
||||
teamsByOwner {
|
||||
id
|
||||
name
|
||||
slug
|
||||
|
||||
@@ -4,7 +4,6 @@ import gql from 'graphql-tag'
|
||||
const UPDATE_TEAM_PROFILE = gql`
|
||||
mutation UpdateTeamProfileMutation(
|
||||
$slug: String!,
|
||||
$owner: String!,
|
||||
$description: String,
|
||||
$motto: String,
|
||||
$avatar: String,
|
||||
@@ -12,7 +11,6 @@ const UPDATE_TEAM_PROFILE = gql`
|
||||
) {
|
||||
updateTeamProfile(
|
||||
slug: $slug,
|
||||
owner: $owner,
|
||||
description: $description,
|
||||
motto: $motto
|
||||
avatar: $avatar,
|
||||
|
||||
@@ -111,7 +111,7 @@ class UploadImage extends Component {
|
||||
}
|
||||
|
||||
render () {
|
||||
const { classes, team, authId, handleAvatar, handleBanner } = this.props
|
||||
const { classes, team, handleAvatar, handleBanner } = this.props
|
||||
let avatar = null
|
||||
let banner = null
|
||||
if ((team.profile !== null && team.profile.avatar !== undefined && team.profile.avatar !== null && team.profile.avatar !== 'a') || this.state.avatarImage !== null) {
|
||||
@@ -128,7 +128,7 @@ class UploadImage extends Component {
|
||||
let handleImage
|
||||
this.state.edit === 'avatar' ? handleImage = handleAvatar : handleImage = handleBanner
|
||||
|
||||
console.log('UploadImage', team, avatar, banner, authId, this.state)
|
||||
console.log('UploadImage', team, avatar, banner, this.state)
|
||||
return (
|
||||
<div className={classes.dropzoneContainer}>
|
||||
<Mutation mutation={GET_AZURE_SAS} >
|
||||
@@ -337,7 +337,6 @@ class UploadImage extends Component {
|
||||
UploadImage.propTypes = {
|
||||
classes: PropTypes.object.isRequired,
|
||||
team: PropTypes.object,
|
||||
authId: PropTypes.string.isRequired,
|
||||
handleAvatar: PropTypes.func.isRequired,
|
||||
handleBanner: PropTypes.func.isRequired
|
||||
}
|
||||
|
||||
@@ -56,16 +56,11 @@ export class CreateTeamDialog extends Component {
|
||||
}
|
||||
|
||||
render () {
|
||||
const { classes, authId } = this.props
|
||||
const { classes } = this.props
|
||||
return (
|
||||
<Mutation
|
||||
mutation={CREATE_TEAM}
|
||||
refetchQueries={[
|
||||
{
|
||||
query: GET_TEAMS_BY_OWNER,
|
||||
variables: { authId }
|
||||
}
|
||||
]}
|
||||
refetchQueries={[{ query: GET_TEAMS_BY_OWNER }]}
|
||||
>
|
||||
{(createTeam, { loading, error, data }) => {
|
||||
let errors
|
||||
@@ -131,7 +126,7 @@ export class CreateTeamDialog extends Component {
|
||||
</Button>
|
||||
<Button
|
||||
onClick={e => {
|
||||
this.handleSubmit(e, createTeam, this.state.name, authId)
|
||||
this.handleSubmit(e, createTeam, this.state.name)
|
||||
}}
|
||||
color='primary'
|
||||
>
|
||||
@@ -169,7 +164,7 @@ export class CreateTeamDialog extends Component {
|
||||
e.preventDefault()
|
||||
console.log('createTeam submit: ', authId, name)
|
||||
const slug = this.slugify(name)
|
||||
await createTeam({ variables: { name, slug, owner: authId } })
|
||||
await createTeam({ variables: { name, slug } })
|
||||
this.setState({ name: '', open: false })
|
||||
}
|
||||
|
||||
@@ -198,8 +193,7 @@ export class CreateTeamDialog extends Component {
|
||||
}
|
||||
|
||||
CreateTeamDialog.propTypes = {
|
||||
classes: PropTypes.object.isRequired,
|
||||
authId: PropTypes.string
|
||||
classes: PropTypes.object.isRequired
|
||||
}
|
||||
|
||||
export default withStyles(styles)(CreateTeamDialog)
|
||||
@@ -1,7 +1,6 @@
|
||||
import React from 'react'
|
||||
import PropTypes from 'prop-types'
|
||||
import { Query } from 'react-apollo'
|
||||
import { withStateHandlers, lifecycle, compose } from 'recompose'
|
||||
import { Link } from 'react-router-dom'
|
||||
|
||||
import Typography from '@material-ui/core/Typography'
|
||||
@@ -13,32 +12,7 @@ import DashTeamItem from './DashTeamItem'
|
||||
import CreateTeamDialog from './CreateTeamDialog'
|
||||
import { MessageCard } from '../../common/'
|
||||
|
||||
import { isDefined, isString } from '../../../utils/js-helpers'
|
||||
import { getItem } from '../../../utils/local-storage'
|
||||
|
||||
export const DashTeam = ({ classes, user = null }) => {
|
||||
let owner
|
||||
let loader
|
||||
let authId = null
|
||||
console.log('DashTeam: ', user)
|
||||
if (user !== null && isString(user)) {
|
||||
owner = JSON.parse(user)
|
||||
if (isDefined(owner.authId)) authId = owner.authId
|
||||
} else {
|
||||
loader = <Typography variant='caption'>Loading...</Typography>
|
||||
}
|
||||
console.log('DashTeam 2: ', owner, authId)
|
||||
|
||||
if (authId === undefined || authId === null) {
|
||||
return (
|
||||
<Grid item md={6}>
|
||||
<Typography variant='display1' gutterBottom>
|
||||
Teams
|
||||
</Typography>
|
||||
<Typography variant='caption'>Loading...</Typography>
|
||||
</Grid>
|
||||
)
|
||||
}
|
||||
export const DashTeam = ({ classes }) => {
|
||||
return (
|
||||
<Grid item md={6} style={{ position: 'relative' }}>
|
||||
<Typography variant='display1' gutterBottom>
|
||||
@@ -47,7 +21,7 @@ export const DashTeam = ({ classes, user = null }) => {
|
||||
Manage Teams
|
||||
</Link>
|
||||
</Typography>
|
||||
<Query query={GET_TEAMS_BY_OWNER} variables={{ authId }}>
|
||||
<Query query={GET_TEAMS_BY_OWNER}>
|
||||
{({ loading, error, data }) => {
|
||||
console.log('GET_TEAMS_BY_OWNER: ', loading, error, data)
|
||||
let errors
|
||||
@@ -71,7 +45,6 @@ export const DashTeam = ({ classes, user = null }) => {
|
||||
))}
|
||||
{queryLoader}
|
||||
{errors}
|
||||
{loader}
|
||||
</Grid>
|
||||
)
|
||||
} else {
|
||||
@@ -79,7 +52,7 @@ export const DashTeam = ({ classes, user = null }) => {
|
||||
<Grid container spacing={40}>
|
||||
<Grid item xs={10}>
|
||||
<MessageCard message='No teams yet...'>
|
||||
<CreateTeamDialog authId={authId} />
|
||||
<CreateTeamDialog />
|
||||
</MessageCard>
|
||||
</Grid>
|
||||
</Grid>
|
||||
@@ -103,25 +76,7 @@ export const DashTeam = ({ classes, user = null }) => {
|
||||
}
|
||||
|
||||
DashTeam.propTypes = {
|
||||
user: PropTypes.any,
|
||||
classes: PropTypes.object.isRequired
|
||||
}
|
||||
|
||||
const getUserOnMount = lifecycle({
|
||||
componentDidMount () {
|
||||
getItem('user').then(user => {
|
||||
this.setState({ user })
|
||||
}) // Set user to state
|
||||
}
|
||||
})
|
||||
|
||||
const mapStateToProps = withStateHandlers(() => ({ user: null }), {
|
||||
user: ({ user }) => () => ({ user })
|
||||
})
|
||||
|
||||
const DashTeamAuthId = compose(
|
||||
mapStateToProps,
|
||||
getUserOnMount
|
||||
)(DashTeam)
|
||||
|
||||
export default DashTeamAuthId
|
||||
export default DashTeam
|
||||
@@ -35,32 +35,39 @@ const styles = theme => ({
|
||||
}
|
||||
})
|
||||
|
||||
export const DashTeamItem = ({ classes, team }) => (
|
||||
<Grid item>
|
||||
<Card className={classes.card}>
|
||||
<div className={classes.cardDetails}>
|
||||
<CardMedia
|
||||
className={classes.cardMedia}
|
||||
image='data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%22288%22%20height%3D%22225%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20288%20225%22%20preserveAspectRatio%3D%22none%22%3E%3Cdefs%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%23holder_164edaf95ee%20text%20%7B%20fill%3A%23eceeef%3Bfont-weight%3Abold%3Bfont-family%3AArial%2C%20Helvetica%2C%20Open%20Sans%2C%20sans-serif%2C%20monospace%3Bfont-size%3A14pt%20%7D%20%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22holder_164edaf95ee%22%3E%3Crect%20width%3D%22288%22%20height%3D%22225%22%20fill%3D%22%2355595c%22%3E%3C%2Frect%3E%3Cg%3E%3Ctext%20x%3D%2296.32500076293945%22%20y%3D%22118.8%22%3EThumbnail%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E' // eslint-disable-line max-len
|
||||
title='Image title'
|
||||
/>
|
||||
<CardContent className={classes.cardContent}>
|
||||
<Typography variant='headline'>{team.name}</Typography>
|
||||
<Typography variant='subheading' color='textSecondary'>
|
||||
{team.createdAt}
|
||||
</Typography>
|
||||
<Typography variant='subheading' paragraph>
|
||||
Members: {team.members.length}
|
||||
</Typography>
|
||||
</CardContent>
|
||||
<CardActions>
|
||||
<ManageTeamDetails team={team} />
|
||||
</CardActions>
|
||||
</div>
|
||||
</Card>
|
||||
</Grid>
|
||||
)
|
||||
|
||||
export const DashTeamItem = ({ classes, team }) => {
|
||||
let avatar
|
||||
if (team.profile.avatar !== undefined && team.profile.avatar !== 'a') {
|
||||
avatar = team.profile.avatar
|
||||
} else {
|
||||
avatar = 'data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%22288%22%20height%3D%22225%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20288%20225%22%20preserveAspectRatio%3D%22none%22%3E%3Cdefs%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%23holder_164edaf95ee%20text%20%7B%20fill%3A%23eceeef%3Bfont-weight%3Abold%3Bfont-family%3AArial%2C%20Helvetica%2C%20Open%20Sans%2C%20sans-serif%2C%20monospace%3Bfont-size%3A14pt%20%7D%20%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22holder_164edaf95ee%22%3E%3Crect%20width%3D%22288%22%20height%3D%22225%22%20fill%3D%22%2355595c%22%3E%3C%2Frect%3E%3Cg%3E%3Ctext%20x%3D%2296.32500076293945%22%20y%3D%22118.8%22%3EThumbnail%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E'
|
||||
}
|
||||
return (
|
||||
<Grid item>
|
||||
<Card className={classes.card}>
|
||||
<div className={classes.cardDetails}>
|
||||
<CardMedia
|
||||
className={classes.cardMedia}
|
||||
image={avatar}
|
||||
title={team.name}
|
||||
/>
|
||||
<CardContent className={classes.cardContent}>
|
||||
<Typography variant='headline'>{team.name}</Typography>
|
||||
<Typography variant='subheading' color='textSecondary'>
|
||||
{team.createdAt}
|
||||
</Typography>
|
||||
<Typography variant='subheading' paragraph>
|
||||
Members: {team.members.length}
|
||||
</Typography>
|
||||
</CardContent>
|
||||
<CardActions>
|
||||
<ManageTeamDetails team={team} />
|
||||
</CardActions>
|
||||
</div>
|
||||
</Card>
|
||||
</Grid>
|
||||
)
|
||||
}
|
||||
DashTeamItem.propTypes = {
|
||||
classes: PropTypes.object.isRequired,
|
||||
team: PropTypes.object.isRequired
|
||||
|
||||
@@ -55,14 +55,13 @@ export class ManageTeamDelete extends Component {
|
||||
|
||||
render () {
|
||||
console.log(this.props, this.props.slug)
|
||||
const { classes, authId } = this.props
|
||||
const { classes } = this.props
|
||||
return (
|
||||
<Mutation
|
||||
mutation={DELETE_TEAM}
|
||||
refetchQueries={[
|
||||
{
|
||||
query: GET_TEAMS_BY_OWNER,
|
||||
variables: { authId }
|
||||
query: GET_TEAMS_BY_OWNER
|
||||
}
|
||||
]}
|
||||
>
|
||||
@@ -123,8 +122,7 @@ export class ManageTeamDelete extends Component {
|
||||
this.handleSubmit(
|
||||
e,
|
||||
deleteTeam,
|
||||
this.props.slug,
|
||||
authId
|
||||
this.props.slug
|
||||
)
|
||||
}}
|
||||
color='primary'
|
||||
@@ -141,17 +139,16 @@ export class ManageTeamDelete extends Component {
|
||||
)
|
||||
}
|
||||
|
||||
async handleSubmit (e, deleteTeam, slug, authId) {
|
||||
async handleSubmit (e, deleteTeam, slug) {
|
||||
e.preventDefault()
|
||||
await deleteTeam({ variables: { slug, owner: authId } })
|
||||
await deleteTeam({ variables: { slug } })
|
||||
this.setState({ open: false })
|
||||
}
|
||||
}
|
||||
|
||||
ManageTeamDelete.propTypes = {
|
||||
classes: PropTypes.object.isRequired,
|
||||
slug: PropTypes.string.isRequired,
|
||||
authId: PropTypes.string.isRequired
|
||||
slug: PropTypes.string.isRequired
|
||||
}
|
||||
|
||||
export default withStyles(styles)(ManageTeamDelete)
|
||||
@@ -13,8 +13,6 @@ import DialogContentText from '@material-ui/core/DialogContentText'
|
||||
import DialogTitle from '@material-ui/core/DialogTitle'
|
||||
import Typography from '@material-ui/core/Typography'
|
||||
|
||||
import { getItem } from '../../../utils/local-storage'
|
||||
|
||||
import UPDATE_TEAM_PROFILE from '../../../graphql/teams/UpdateTeamProfileMutation'
|
||||
import GET_TEAMS_BY_OWNER from '../../../graphql/teams/GetTeamsByOwnerQuery'
|
||||
|
||||
@@ -61,14 +59,13 @@ export class ManageTeamEdit extends Component {
|
||||
|
||||
render () {
|
||||
console.log(this.props, this.props.slug)
|
||||
const { classes, team, authId } = this.props
|
||||
const { classes, team } = this.props
|
||||
return (
|
||||
<Mutation
|
||||
mutation={UPDATE_TEAM_PROFILE}
|
||||
refetchQueries={[
|
||||
{
|
||||
query: GET_TEAMS_BY_OWNER,
|
||||
variables: { authId }
|
||||
query: GET_TEAMS_BY_OWNER
|
||||
}
|
||||
]}
|
||||
>
|
||||
@@ -113,7 +110,6 @@ export class ManageTeamEdit extends Component {
|
||||
<DialogContent>
|
||||
<UploadImage
|
||||
team={team}
|
||||
authId={authId}
|
||||
handleAvatar={this.handleAvatar}
|
||||
handleBanner={this.handleBanner}
|
||||
/>
|
||||
@@ -207,13 +203,10 @@ export class ManageTeamEdit extends Component {
|
||||
async handleSubmit (e, updateTeamProfile, slug) {
|
||||
console.log('handleSubmit: ', this.state)
|
||||
e.preventDefault()
|
||||
const currentUser = await getItem('user')
|
||||
let authId = JSON.parse(currentUser)
|
||||
authId = authId.authId
|
||||
|
||||
await updateTeamProfile({
|
||||
variables: {
|
||||
slug,
|
||||
owner: authId,
|
||||
description: this.state.description,
|
||||
motto: this.state.motto,
|
||||
avatar: this.state.avatar,
|
||||
@@ -227,7 +220,6 @@ export class ManageTeamEdit extends Component {
|
||||
ManageTeamEdit.propTypes = {
|
||||
classes: PropTypes.object.isRequired,
|
||||
slug: PropTypes.string.isRequired,
|
||||
authId: PropTypes.string,
|
||||
team: PropTypes.object
|
||||
}
|
||||
|
||||
|
||||
@@ -68,7 +68,6 @@ export const ManageTeamMembersList = ({ classes, user = null }) => {
|
||||
<Query
|
||||
query={GET_TEAMS_BY_OWNER}
|
||||
fetchPolicy='network-only'
|
||||
variables={{ authId }}
|
||||
>
|
||||
{({ loading, error, data }) => {
|
||||
console.log('GET_TEAMS_BY_OWNER: ', loading, error, data)
|
||||
|
||||
@@ -39,8 +39,8 @@ export const ManageTeamsItem = ({ classes, team, authId }) => {
|
||||
</CardContent>
|
||||
<CardActions>
|
||||
<ManageTeamDetails team={team} />
|
||||
<ManageTeamEdit slug={team.slug} authId={authId} team={team} />
|
||||
<ManageTeamDelete slug={team.slug} authId={authId} />
|
||||
<ManageTeamEdit slug={team.slug} team={team} />
|
||||
<ManageTeamDelete slug={team.slug} />
|
||||
</CardActions>
|
||||
</div>
|
||||
</Card>
|
||||
|
||||
@@ -69,7 +69,6 @@ export const ManageTeamsList = ({ classes, user = null }) => {
|
||||
<Query
|
||||
query={GET_TEAMS_BY_OWNER}
|
||||
fetchPolicy='network-only'
|
||||
variables={{ authId }}
|
||||
>
|
||||
{({ loading, error, data }) => {
|
||||
console.log('GET_TEAMS_BY_OWNER: ', loading, error, data)
|
||||
|
||||
Reference in new issue
Block a user