Skip to content

Commit 7528ba3

Browse files
authored
feat: add resend invitation and remove member/invitation functionality (#2)
1 parent 02b5978 commit 7528ba3

32 files changed

+2086
-280
lines changed

connect/src/wg/cosmo/platform/v1/platform-PlatformService_connectquery.ts

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
import { createQueryService } from "@bufbuild/connect-query";
99
import { MethodIdempotency, MethodKind } from "@bufbuild/protobuf";
10-
import { CheckFederatedGraphRequest, CheckFederatedGraphResponse, CheckSubgraphSchemaRequest, CheckSubgraphSchemaResponse, CreateAPIKeyRequest, CreateAPIKeyResponse, CreateFederatedGraphRequest, CreateFederatedGraphResponse, CreateFederatedGraphTokenRequest, CreateFederatedGraphTokenResponse, CreateFederatedSubgraphRequest, CreateFederatedSubgraphResponse, DeleteAPIKeyRequest, DeleteAPIKeyResponse, DeleteFederatedGraphRequest, DeleteFederatedGraphResponse, DeleteFederatedSubgraphRequest, DeleteFederatedSubgraphResponse, FixSubgraphSchemaRequest, FixSubgraphSchemaResponse, GetAnalyticsViewRequest, GetAnalyticsViewResponse, GetAPIKeysRequest, GetAPIKeysResponse, GetCheckDetailsRequest, GetCheckDetailsResponse, GetChecksByFederatedGraphNameRequest, GetChecksByFederatedGraphNameResponse, GetDashboardAnalyticsViewRequest, GetDashboardAnalyticsViewResponse, GetFederatedGraphByNameRequest, GetFederatedGraphByNameResponse, GetFederatedGraphChangelogRequest, GetFederatedGraphChangelogResponse, GetFederatedGraphSDLByNameRequest, GetFederatedGraphSDLByNameResponse, GetFederatedGraphsRequest, GetFederatedGraphsResponse, GetFederatedSubgraphSDLByNameRequest, GetFederatedSubgraphSDLByNameResponse, GetOrganizationMembersRequest, GetOrganizationMembersResponse, GetSubgraphByNameRequest, GetSubgraphByNameResponse, GetSubgraphsRequest, GetSubgraphsResponse, GetTraceRequest, GetTraceResponse, InviteUserRequest, InviteUserResponse, PublishFederatedSubgraphRequest, PublishFederatedSubgraphResponse, UpdateFederatedGraphRequest, UpdateFederatedGraphResponse, UpdateSubgraphRequest, UpdateSubgraphResponse } from "./platform_pb.js";
10+
import { CheckFederatedGraphRequest, CheckFederatedGraphResponse, CheckSubgraphSchemaRequest, CheckSubgraphSchemaResponse, CreateAPIKeyRequest, CreateAPIKeyResponse, CreateFederatedGraphRequest, CreateFederatedGraphResponse, CreateFederatedGraphTokenRequest, CreateFederatedGraphTokenResponse, CreateFederatedSubgraphRequest, CreateFederatedSubgraphResponse, DeleteAPIKeyRequest, DeleteAPIKeyResponse, DeleteFederatedGraphRequest, DeleteFederatedGraphResponse, DeleteFederatedSubgraphRequest, DeleteFederatedSubgraphResponse, FixSubgraphSchemaRequest, FixSubgraphSchemaResponse, GetAnalyticsViewRequest, GetAnalyticsViewResponse, GetAPIKeysRequest, GetAPIKeysResponse, GetCheckDetailsRequest, GetCheckDetailsResponse, GetChecksByFederatedGraphNameRequest, GetChecksByFederatedGraphNameResponse, GetDashboardAnalyticsViewRequest, GetDashboardAnalyticsViewResponse, GetFederatedGraphByNameRequest, GetFederatedGraphByNameResponse, GetFederatedGraphChangelogRequest, GetFederatedGraphChangelogResponse, GetFederatedGraphSDLByNameRequest, GetFederatedGraphSDLByNameResponse, GetFederatedGraphsRequest, GetFederatedGraphsResponse, GetFederatedSubgraphSDLByNameRequest, GetFederatedSubgraphSDLByNameResponse, GetOrganizationMembersRequest, GetOrganizationMembersResponse, GetSubgraphByNameRequest, GetSubgraphByNameResponse, GetSubgraphsRequest, GetSubgraphsResponse, GetTraceRequest, GetTraceResponse, InviteUserRequest, InviteUserResponse, PublishFederatedSubgraphRequest, PublishFederatedSubgraphResponse, RemoveInvitationRequest, RemoveInvitationResponse, UpdateFederatedGraphRequest, UpdateFederatedGraphResponse, UpdateSubgraphRequest, UpdateSubgraphResponse } from "./platform_pb.js";
1111
import { GetConfigRequest, GetConfigResponse } from "../../node/v1/node_pb.js";
1212

1313
export const typeName = "wg.cosmo.platform.v1.PlatformService";
@@ -485,6 +485,25 @@ export const deleteAPIKey = createQueryService({
485485
},
486486
}).deleteAPIKey;
487487

488+
/**
489+
* RemoveOrganizationMember removes the user from the organization
490+
*
491+
* @generated from rpc wg.cosmo.platform.v1.PlatformService.RemoveInvitation
492+
*/
493+
export const removeInvitation = createQueryService({
494+
service: {
495+
methods: {
496+
removeInvitation: {
497+
name: "RemoveInvitation",
498+
kind: MethodKind.Unary,
499+
I: RemoveInvitationRequest,
500+
O: RemoveInvitationResponse,
501+
},
502+
},
503+
typeName: "wg.cosmo.platform.v1.PlatformService",
504+
},
505+
}).removeInvitation;
506+
488507
/**
489508
* GetLatestValidRouterConfig returns the router config for the federated graph
490509
*

connect/src/wg/cosmo/platform/v1/platform_connect.ts

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
/* eslint-disable */
66
// @ts-nocheck
77

8-
import { CheckFederatedGraphRequest, CheckFederatedGraphResponse, CheckSubgraphSchemaRequest, CheckSubgraphSchemaResponse, CreateAPIKeyRequest, CreateAPIKeyResponse, CreateFederatedGraphRequest, CreateFederatedGraphResponse, CreateFederatedGraphTokenRequest, CreateFederatedGraphTokenResponse, CreateFederatedSubgraphRequest, CreateFederatedSubgraphResponse, DeleteAPIKeyRequest, DeleteAPIKeyResponse, DeleteFederatedGraphRequest, DeleteFederatedGraphResponse, DeleteFederatedSubgraphRequest, DeleteFederatedSubgraphResponse, FixSubgraphSchemaRequest, FixSubgraphSchemaResponse, GetAnalyticsViewRequest, GetAnalyticsViewResponse, GetAPIKeysRequest, GetAPIKeysResponse, GetCheckDetailsRequest, GetCheckDetailsResponse, GetChecksByFederatedGraphNameRequest, GetChecksByFederatedGraphNameResponse, GetDashboardAnalyticsViewRequest, GetDashboardAnalyticsViewResponse, GetFederatedGraphByNameRequest, GetFederatedGraphByNameResponse, GetFederatedGraphChangelogRequest, GetFederatedGraphChangelogResponse, GetFederatedGraphSDLByNameRequest, GetFederatedGraphSDLByNameResponse, GetFederatedGraphsRequest, GetFederatedGraphsResponse, GetFederatedSubgraphSDLByNameRequest, GetFederatedSubgraphSDLByNameResponse, GetOrganizationMembersRequest, GetOrganizationMembersResponse, GetSubgraphByNameRequest, GetSubgraphByNameResponse, GetSubgraphsRequest, GetSubgraphsResponse, GetTraceRequest, GetTraceResponse, InviteUserRequest, InviteUserResponse, PublishFederatedSubgraphRequest, PublishFederatedSubgraphResponse, UpdateFederatedGraphRequest, UpdateFederatedGraphResponse, UpdateSubgraphRequest, UpdateSubgraphResponse } from "./platform_pb.js";
8+
import { CheckFederatedGraphRequest, CheckFederatedGraphResponse, CheckSubgraphSchemaRequest, CheckSubgraphSchemaResponse, CreateAPIKeyRequest, CreateAPIKeyResponse, CreateFederatedGraphRequest, CreateFederatedGraphResponse, CreateFederatedGraphTokenRequest, CreateFederatedGraphTokenResponse, CreateFederatedSubgraphRequest, CreateFederatedSubgraphResponse, DeleteAPIKeyRequest, DeleteAPIKeyResponse, DeleteFederatedGraphRequest, DeleteFederatedGraphResponse, DeleteFederatedSubgraphRequest, DeleteFederatedSubgraphResponse, FixSubgraphSchemaRequest, FixSubgraphSchemaResponse, GetAnalyticsViewRequest, GetAnalyticsViewResponse, GetAPIKeysRequest, GetAPIKeysResponse, GetCheckDetailsRequest, GetCheckDetailsResponse, GetChecksByFederatedGraphNameRequest, GetChecksByFederatedGraphNameResponse, GetDashboardAnalyticsViewRequest, GetDashboardAnalyticsViewResponse, GetFederatedGraphByNameRequest, GetFederatedGraphByNameResponse, GetFederatedGraphChangelogRequest, GetFederatedGraphChangelogResponse, GetFederatedGraphSDLByNameRequest, GetFederatedGraphSDLByNameResponse, GetFederatedGraphsRequest, GetFederatedGraphsResponse, GetFederatedSubgraphSDLByNameRequest, GetFederatedSubgraphSDLByNameResponse, GetOrganizationMembersRequest, GetOrganizationMembersResponse, GetSubgraphByNameRequest, GetSubgraphByNameResponse, GetSubgraphsRequest, GetSubgraphsResponse, GetTraceRequest, GetTraceResponse, InviteUserRequest, InviteUserResponse, PublishFederatedSubgraphRequest, PublishFederatedSubgraphResponse, RemoveInvitationRequest, RemoveInvitationResponse, UpdateFederatedGraphRequest, UpdateFederatedGraphResponse, UpdateSubgraphRequest, UpdateSubgraphResponse } from "./platform_pb.js";
99
import { MethodIdempotency, MethodKind } from "@bufbuild/protobuf";
1010
import { GetConfigRequest, GetConfigResponse } from "../../node/v1/node_pb.js";
1111

@@ -288,6 +288,17 @@ export const PlatformService = {
288288
O: DeleteAPIKeyResponse,
289289
kind: MethodKind.Unary,
290290
},
291+
/**
292+
* RemoveOrganizationMember removes the user from the organization
293+
*
294+
* @generated from rpc wg.cosmo.platform.v1.PlatformService.RemoveInvitation
295+
*/
296+
removeInvitation: {
297+
name: "RemoveInvitation",
298+
I: RemoveInvitationRequest,
299+
O: RemoveInvitationResponse,
300+
kind: MethodKind.Unary,
301+
},
291302
/**
292303
* GetLatestValidRouterConfig returns the router config for the federated graph
293304
*

connect/src/wg/cosmo/platform/v1/platform_pb.ts

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3866,6 +3866,80 @@ export class DeleteAPIKeyResponse extends Message<DeleteAPIKeyResponse> {
38663866
}
38673867
}
38683868

3869+
/**
3870+
* @generated from message wg.cosmo.platform.v1.RemoveInvitationRequest
3871+
*/
3872+
export class RemoveInvitationRequest extends Message<RemoveInvitationRequest> {
3873+
/**
3874+
* @generated from field: string email = 1;
3875+
*/
3876+
email = "";
3877+
3878+
constructor(data?: PartialMessage<RemoveInvitationRequest>) {
3879+
super();
3880+
proto3.util.initPartial(data, this);
3881+
}
3882+
3883+
static readonly runtime: typeof proto3 = proto3;
3884+
static readonly typeName = "wg.cosmo.platform.v1.RemoveInvitationRequest";
3885+
static readonly fields: FieldList = proto3.util.newFieldList(() => [
3886+
{ no: 1, name: "email", kind: "scalar", T: 9 /* ScalarType.STRING */ },
3887+
]);
3888+
3889+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RemoveInvitationRequest {
3890+
return new RemoveInvitationRequest().fromBinary(bytes, options);
3891+
}
3892+
3893+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RemoveInvitationRequest {
3894+
return new RemoveInvitationRequest().fromJson(jsonValue, options);
3895+
}
3896+
3897+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RemoveInvitationRequest {
3898+
return new RemoveInvitationRequest().fromJsonString(jsonString, options);
3899+
}
3900+
3901+
static equals(a: RemoveInvitationRequest | PlainMessage<RemoveInvitationRequest> | undefined, b: RemoveInvitationRequest | PlainMessage<RemoveInvitationRequest> | undefined): boolean {
3902+
return proto3.util.equals(RemoveInvitationRequest, a, b);
3903+
}
3904+
}
3905+
3906+
/**
3907+
* @generated from message wg.cosmo.platform.v1.RemoveInvitationResponse
3908+
*/
3909+
export class RemoveInvitationResponse extends Message<RemoveInvitationResponse> {
3910+
/**
3911+
* @generated from field: wg.cosmo.platform.v1.Response response = 1;
3912+
*/
3913+
response?: Response;
3914+
3915+
constructor(data?: PartialMessage<RemoveInvitationResponse>) {
3916+
super();
3917+
proto3.util.initPartial(data, this);
3918+
}
3919+
3920+
static readonly runtime: typeof proto3 = proto3;
3921+
static readonly typeName = "wg.cosmo.platform.v1.RemoveInvitationResponse";
3922+
static readonly fields: FieldList = proto3.util.newFieldList(() => [
3923+
{ no: 1, name: "response", kind: "message", T: Response },
3924+
]);
3925+
3926+
static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RemoveInvitationResponse {
3927+
return new RemoveInvitationResponse().fromBinary(bytes, options);
3928+
}
3929+
3930+
static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RemoveInvitationResponse {
3931+
return new RemoveInvitationResponse().fromJson(jsonValue, options);
3932+
}
3933+
3934+
static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RemoveInvitationResponse {
3935+
return new RemoveInvitationResponse().fromJsonString(jsonString, options);
3936+
}
3937+
3938+
static equals(a: RemoveInvitationResponse | PlainMessage<RemoveInvitationResponse> | undefined, b: RemoveInvitationResponse | PlainMessage<RemoveInvitationResponse> | undefined): boolean {
3939+
return proto3.util.equals(RemoveInvitationResponse, a, b);
3940+
}
3941+
}
3942+
38693943
/**
38703944
* @generated from message wg.cosmo.platform.v1.SpanAttributes
38713945
*/
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
CREATE TABLE IF NOT EXISTS "organization_member_roles" (
2+
"id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
3+
"organization_member_id" uuid NOT NULL,
4+
"role" "member_role" NOT NULL
5+
);
6+
7+
BEGIN TRANSACTION;
8+
INSERT INTO "organization_member_roles" ("id", "organization_member_id", "role")
9+
SELECT "id", "organization_member_id", "role"
10+
FROM "member_roles";
11+
12+
COMMIT;
13+
14+
--> statement-breakpoint
15+
DROP TABLE "member_roles";--> statement-breakpoint
16+
DO $$ BEGIN
17+
ALTER TABLE "organization_member_roles" ADD CONSTRAINT "organization_member_roles_organization_member_id_organization_members_id_fk" FOREIGN KEY ("organization_member_id") REFERENCES "organization_members"("id") ON DELETE cascade ON UPDATE no action;
18+
EXCEPTION
19+
WHEN duplicate_object THEN null;
20+
END $$;

0 commit comments

Comments
 (0)