@aepstore-dev/contracts 1.52.0 → 1.53.0

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/users.d.ts CHANGED
@@ -202,6 +202,28 @@ export interface UpdateUserRequest {
202
202
  export interface UserResponse {
203
203
  user: User | undefined;
204
204
  }
205
+ /**
206
+ * Lightweight uniqueness probe for signup / account-settings forms. Called
207
+ * often (per keystroke/blur) — backed by a single indexed query, no writes.
208
+ * Mirrors the exact-match uniqueness check in UpdateUser so availability never
209
+ * disagrees with the real collision at submit time.
210
+ */
211
+ export interface CheckAvailabilityRequest {
212
+ /** empty = skip this field */
213
+ username: string;
214
+ /** empty = skip this field */
215
+ email: string;
216
+ /** empty = none; set to current user so editing */
217
+ excludeUserId: string;
218
+ }
219
+ export interface CheckAvailabilityResponse {
220
+ /** false = username wasn't part of the query */
221
+ usernameChecked: boolean;
222
+ usernameAvailable: boolean;
223
+ /** false = email wasn't part of the query */
224
+ emailChecked: boolean;
225
+ emailAvailable: boolean;
226
+ }
205
227
  export interface UpdateUserRoleRequest {
206
228
  adminId: string;
207
229
  userId: string;
@@ -530,6 +552,7 @@ export interface UsersServiceClient {
530
552
  getPublicProfile(request: GetPublicProfileRequest): Observable<PublicProfileResponse>;
531
553
  updateProfile(request: UpdateProfileRequest): Observable<PublicProfileResponse>;
532
554
  updateUser(request: UpdateUserRequest): Observable<UserResponse>;
555
+ checkAvailability(request: CheckAvailabilityRequest): Observable<CheckAvailabilityResponse>;
533
556
  updateUserRole(request: UpdateUserRoleRequest): Observable<UserResponse>;
534
557
  getUsers(request: GetUsersRequest): Observable<GetUsersResponse>;
535
558
  getActiveDevices(request: GetActiveDevicesRequest): Observable<GetActiveDevicesResponse>;
@@ -595,6 +618,7 @@ export interface UsersServiceController {
595
618
  getPublicProfile(request: GetPublicProfileRequest): Promise<PublicProfileResponse> | Observable<PublicProfileResponse> | PublicProfileResponse;
596
619
  updateProfile(request: UpdateProfileRequest): Promise<PublicProfileResponse> | Observable<PublicProfileResponse> | PublicProfileResponse;
597
620
  updateUser(request: UpdateUserRequest): Promise<UserResponse> | Observable<UserResponse> | UserResponse;
621
+ checkAvailability(request: CheckAvailabilityRequest): Promise<CheckAvailabilityResponse> | Observable<CheckAvailabilityResponse> | CheckAvailabilityResponse;
598
622
  updateUserRole(request: UpdateUserRoleRequest): Promise<UserResponse> | Observable<UserResponse> | UserResponse;
599
623
  getUsers(request: GetUsersRequest): Promise<GetUsersResponse> | Observable<GetUsersResponse> | GetUsersResponse;
600
624
  getActiveDevices(request: GetActiveDevicesRequest): Promise<GetActiveDevicesResponse> | Observable<GetActiveDevicesResponse> | GetActiveDevicesResponse;
package/gen/users.js CHANGED
@@ -36,6 +36,7 @@ function UsersServiceControllerMethods() {
36
36
  "getPublicProfile",
37
37
  "updateProfile",
38
38
  "updateUser",
39
+ "checkAvailability",
39
40
  "updateUserRole",
40
41
  "getUsers",
41
42
  "getActiveDevices",
package/gen/users.ts CHANGED
@@ -235,6 +235,30 @@ export interface UserResponse {
235
235
  user: User | undefined;
236
236
  }
237
237
 
238
+ /**
239
+ * Lightweight uniqueness probe for signup / account-settings forms. Called
240
+ * often (per keystroke/blur) — backed by a single indexed query, no writes.
241
+ * Mirrors the exact-match uniqueness check in UpdateUser so availability never
242
+ * disagrees with the real collision at submit time.
243
+ */
244
+ export interface CheckAvailabilityRequest {
245
+ /** empty = skip this field */
246
+ username: string;
247
+ /** empty = skip this field */
248
+ email: string;
249
+ /** empty = none; set to current user so editing */
250
+ excludeUserId: string;
251
+ }
252
+
253
+ export interface CheckAvailabilityResponse {
254
+ /** false = username wasn't part of the query */
255
+ usernameChecked: boolean;
256
+ usernameAvailable: boolean;
257
+ /** false = email wasn't part of the query */
258
+ emailChecked: boolean;
259
+ emailAvailable: boolean;
260
+ }
261
+
238
262
  export interface UpdateUserRoleRequest {
239
263
  adminId: string;
240
264
  userId: string;
@@ -618,6 +642,8 @@ export interface UsersServiceClient {
618
642
 
619
643
  updateUser(request: UpdateUserRequest): Observable<UserResponse>;
620
644
 
645
+ checkAvailability(request: CheckAvailabilityRequest): Observable<CheckAvailabilityResponse>;
646
+
621
647
  updateUserRole(request: UpdateUserRoleRequest): Observable<UserResponse>;
622
648
 
623
649
  getUsers(request: GetUsersRequest): Observable<GetUsersResponse>;
@@ -738,6 +764,10 @@ export interface UsersServiceController {
738
764
 
739
765
  updateUser(request: UpdateUserRequest): Promise<UserResponse> | Observable<UserResponse> | UserResponse;
740
766
 
767
+ checkAvailability(
768
+ request: CheckAvailabilityRequest,
769
+ ): Promise<CheckAvailabilityResponse> | Observable<CheckAvailabilityResponse> | CheckAvailabilityResponse;
770
+
741
771
  updateUserRole(request: UpdateUserRoleRequest): Promise<UserResponse> | Observable<UserResponse> | UserResponse;
742
772
 
743
773
  getUsers(request: GetUsersRequest): Promise<GetUsersResponse> | Observable<GetUsersResponse> | GetUsersResponse;
@@ -903,6 +933,7 @@ export function UsersServiceControllerMethods() {
903
933
  "getPublicProfile",
904
934
  "updateProfile",
905
935
  "updateUser",
936
+ "checkAvailability",
906
937
  "updateUserRole",
907
938
  "getUsers",
908
939
  "getActiveDevices",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aepstore-dev/contracts",
3
- "version": "1.52.0",
3
+ "version": "1.53.0",
4
4
  "description": "Protobuf definitions for aepstore microservices",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
package/proto/users.proto CHANGED
@@ -6,6 +6,7 @@ service UsersService {
6
6
  rpc GetPublicProfile(GetPublicProfileRequest) returns (PublicProfileResponse);
7
7
  rpc UpdateProfile(UpdateProfileRequest) returns (PublicProfileResponse);
8
8
  rpc UpdateUser(UpdateUserRequest) returns (UserResponse);
9
+ rpc CheckAvailability(CheckAvailabilityRequest) returns (CheckAvailabilityResponse);
9
10
  rpc UpdateUserRole(UpdateUserRoleRequest) returns (UserResponse);
10
11
  rpc GetUsers(GetUsersRequest) returns (GetUsersResponse);
11
12
  rpc GetActiveDevices(GetActiveDevicesRequest) returns (GetActiveDevicesResponse);
@@ -264,6 +265,24 @@ message UserResponse {
264
265
  User user = 1;
265
266
  }
266
267
 
268
+ // Lightweight uniqueness probe for signup / account-settings forms. Called
269
+ // often (per keystroke/blur) — backed by a single indexed query, no writes.
270
+ // Mirrors the exact-match uniqueness check in UpdateUser so availability never
271
+ // disagrees with the real collision at submit time.
272
+ message CheckAvailabilityRequest {
273
+ string username = 1; // empty = skip this field
274
+ string email = 2; // empty = skip this field
275
+ string exclude_user_id = 3; // empty = none; set to current user so editing
276
+ // your OWN account doesn't report "taken"
277
+ }
278
+
279
+ message CheckAvailabilityResponse {
280
+ bool username_checked = 1; // false = username wasn't part of the query
281
+ bool username_available = 2;
282
+ bool email_checked = 3; // false = email wasn't part of the query
283
+ bool email_available = 4;
284
+ }
285
+
267
286
  // =================================================================
268
287
  // UpdateUserRole (admin)
269
288
  // =================================================================