@cas-cinema/contracts 1.0.14 → 1.0.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/gen/auth.ts CHANGED
@@ -7,6 +7,7 @@
7
7
  /* eslint-disable */
8
8
  import { GrpcMethod, GrpcStreamMethod } from "@nestjs/microservices";
9
9
  import { Observable } from "rxjs";
10
+ import { Empty } from "./google/protobuf/empty";
10
11
 
11
12
  export const protobufPackage = "auth";
12
13
 
@@ -45,6 +46,50 @@ export interface RefreshResponse {
45
46
  refreshToken: string;
46
47
  }
47
48
 
49
+ /** Ответ на инициализацию авторизации по телеграмму */
50
+ export interface TelegramInitResponse {
51
+ url: string;
52
+ }
53
+
54
+ /** Данные для авторизации в тг */
55
+ export interface TelegramVerifyRequest {
56
+ query: { [key: string]: string };
57
+ }
58
+
59
+ export interface TelegramVerifyRequest_QueryEntry {
60
+ key: string;
61
+ value: string;
62
+ }
63
+
64
+ /** Ответ на верификацию в тг */
65
+ export interface TelegramVerifyResponse {
66
+ url?: string | undefined;
67
+ accessToken?: string | undefined;
68
+ refreshToken?: string | undefined;
69
+ }
70
+
71
+ /** Передает номер телефона для авторизации пользователя */
72
+ export interface TelegramCompleteRequest {
73
+ sessionId: string;
74
+ phone: string;
75
+ }
76
+
77
+ /** Возращает id сессии */
78
+ export interface TelegramCompleteResponse {
79
+ sessionId: string;
80
+ }
81
+
82
+ /** Передает id сессии */
83
+ export interface TelegramConsumeRequest {
84
+ sessionId: string;
85
+ }
86
+
87
+ /** Возвращает пару токенов */
88
+ export interface TelegramConsumeResponse {
89
+ accessToken: string;
90
+ refreshToken: string;
91
+ }
92
+
48
93
  export const AUTH_PACKAGE_NAME = "auth";
49
94
 
50
95
  /** Сервис аутентификации пользователей */
@@ -61,6 +106,22 @@ export interface AuthServiceClient {
61
106
  /** Рефреш access-токена */
62
107
 
63
108
  refresh(request: RefreshRequest): Observable<RefreshResponse>;
109
+
110
+ /** Генерация url для авторизации в тг */
111
+
112
+ telegramInit(request: Empty): Observable<TelegramInitResponse>;
113
+
114
+ /** Логика проверки подписи и генерация токенов */
115
+
116
+ telegramVerify(request: TelegramVerifyRequest): Observable<TelegramVerifyResponse>;
117
+
118
+ /** Подтверждает передачу номера телефона в auth сервис */
119
+
120
+ telegramComplete(request: TelegramCompleteRequest): Observable<TelegramCompleteResponse>;
121
+
122
+ /** Вызывает gateway сервис и отдают ему пару токенов */
123
+
124
+ telegramConsume(request: TelegramConsumeRequest): Observable<TelegramConsumeResponse>;
64
125
  }
65
126
 
66
127
  /** Сервис аутентификации пользователей */
@@ -77,11 +138,41 @@ export interface AuthServiceController {
77
138
  /** Рефреш access-токена */
78
139
 
79
140
  refresh(request: RefreshRequest): Promise<RefreshResponse> | Observable<RefreshResponse> | RefreshResponse;
141
+
142
+ /** Генерация url для авторизации в тг */
143
+
144
+ telegramInit(request: Empty): Promise<TelegramInitResponse> | Observable<TelegramInitResponse> | TelegramInitResponse;
145
+
146
+ /** Логика проверки подписи и генерация токенов */
147
+
148
+ telegramVerify(
149
+ request: TelegramVerifyRequest,
150
+ ): Promise<TelegramVerifyResponse> | Observable<TelegramVerifyResponse> | TelegramVerifyResponse;
151
+
152
+ /** Подтверждает передачу номера телефона в auth сервис */
153
+
154
+ telegramComplete(
155
+ request: TelegramCompleteRequest,
156
+ ): Promise<TelegramCompleteResponse> | Observable<TelegramCompleteResponse> | TelegramCompleteResponse;
157
+
158
+ /** Вызывает gateway сервис и отдают ему пару токенов */
159
+
160
+ telegramConsume(
161
+ request: TelegramConsumeRequest,
162
+ ): Promise<TelegramConsumeResponse> | Observable<TelegramConsumeResponse> | TelegramConsumeResponse;
80
163
  }
81
164
 
82
165
  export function AuthServiceControllerMethods() {
83
166
  return function (constructor: Function) {
84
- const grpcMethods: string[] = ["sendOtp", "verifyOtp", "refresh"];
167
+ const grpcMethods: string[] = [
168
+ "sendOtp",
169
+ "verifyOtp",
170
+ "refresh",
171
+ "telegramInit",
172
+ "telegramVerify",
173
+ "telegramComplete",
174
+ "telegramConsume",
175
+ ];
85
176
  for (const method of grpcMethods) {
86
177
  const descriptor: any = Reflect.getOwnPropertyDescriptor(constructor.prototype, method);
87
178
  GrpcMethod("AuthService", method)(constructor.prototype[method], method, descriptor);
@@ -0,0 +1,23 @@
1
+ // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
+ // versions:
3
+ // protoc-gen-ts_proto v2.11.0
4
+ // protoc v6.33.4
5
+ // source: google/protobuf/empty.proto
6
+
7
+ /* eslint-disable */
8
+
9
+ export const protobufPackage = "google.protobuf";
10
+
11
+ /**
12
+ * A generic empty message that you can re-use to avoid defining duplicated
13
+ * empty messages in your APIs. A typical example is to use it as the request
14
+ * or the response type of an API method. For instance:
15
+ *
16
+ * service Foo {
17
+ * rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
18
+ * }
19
+ */
20
+ export interface Empty {
21
+ }
22
+
23
+ export const GOOGLE_PROTOBUF_PACKAGE_NAME = "google.protobuf";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cas-cinema/contracts",
3
- "version": "1.0.14",
3
+ "version": "1.0.16",
4
4
  "description": "Protobuf definition and generated TS types",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
package/proto/auth.proto CHANGED
@@ -2,6 +2,8 @@ syntax = "proto3";
2
2
 
3
3
  package auth;
4
4
 
5
+ import "google/protobuf/empty.proto";
6
+
5
7
  // Сервис аутентификации пользователей
6
8
  service AuthService {
7
9
  // Отправка одноразового пароля на телефон/email
@@ -10,6 +12,15 @@ service AuthService {
10
12
  rpc VerifyOtp (VerifyOtpRequest) returns (VerifyOtpResponse);
11
13
  // Рефреш access-токена
12
14
  rpc Refresh (RefreshRequest) returns (RefreshResponse);
15
+
16
+ // Генерация url для авторизации в тг
17
+ rpc TelegramInit (google.protobuf.Empty) returns (TelegramInitResponse);
18
+ // Логика проверки подписи и генерация токенов
19
+ rpc TelegramVerify (TelegramVerifyRequest) returns (TelegramVerifyResponse);
20
+ // Подтверждает передачу номера телефона в auth сервис
21
+ rpc TelegramComplete (TelegramCompleteRequest) returns (TelegramCompleteResponse);
22
+ // Вызывает gateway сервис и отдают ему пару токенов
23
+ rpc TelegramConsume (TelegramConsumeRequest) returns (TelegramConsumeResponse);
13
24
  }
14
25
 
15
26
  /// Запрос на отправку одноразового пароля
@@ -46,3 +57,44 @@ message RefreshResponse {
46
57
  string access_token = 1;
47
58
  string refresh_token = 2;
48
59
  }
60
+
61
+ // Ответ на инициализацию авторизации по телеграмму
62
+ message TelegramInitResponse {
63
+ string url = 1;
64
+ }
65
+
66
+ // Данные для авторизации в тг
67
+ message TelegramVerifyRequest {
68
+ map<string, string> query = 1;
69
+ }
70
+
71
+ // Ответ на верификацию в тг
72
+ message TelegramVerifyResponse {
73
+ oneof result {
74
+ string url = 1;
75
+ string access_token = 2;
76
+ string refresh_token = 3;
77
+ }
78
+ }
79
+
80
+ // Передает номер телефона для авторизации пользователя
81
+ message TelegramCompleteRequest {
82
+ string session_id = 1;
83
+ string phone = 2;
84
+ }
85
+
86
+ // Возращает id сессии
87
+ message TelegramCompleteResponse {
88
+ string session_id = 1;
89
+ }
90
+
91
+ // Передает id сессии
92
+ message TelegramConsumeRequest {
93
+ string session_id = 1;
94
+ }
95
+
96
+ // Возвращает пару токенов
97
+ message TelegramConsumeResponse {
98
+ string access_token = 1;
99
+ string refresh_token = 2;
100
+ }