@mamindom/contracts 1.0.80 → 1.0.81

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.
@@ -362,6 +362,22 @@ export interface ExportBundlesResponse {
362
362
  format: string;
363
363
  count: number;
364
364
  }
365
+ export interface GenerateBundleCollageRequest {
366
+ bundleId: string;
367
+ /** Optional: override cell pixel size (default 400) */
368
+ cellSize?: number | undefined;
369
+ }
370
+ export interface GenerateBundleCollageResponse {
371
+ /** Public CDN/S3 URL of the collage JPEG */
372
+ url: string;
373
+ /** S3 object key */
374
+ key: string;
375
+ /** Final image width in pixels */
376
+ width: number;
377
+ /** Final image height in pixels */
378
+ height: number;
379
+ bundleId: string;
380
+ }
365
381
  export declare const CATALOG_V1_PACKAGE_NAME = "catalog.v1";
366
382
  export interface BundleServiceClient {
367
383
  getBundles(request: GetBundlesRequest): Observable<GetBundlesResponse>;
@@ -383,6 +399,7 @@ export interface BundleServiceClient {
383
399
  cloneBundle(request: CloneBundleRequest): Observable<BundleDetailResponse>;
384
400
  exportBundles(request: ExportBundlesRequest): Observable<ExportBundlesResponse>;
385
401
  addCrossSellLink(request: AddCrossSellLinkRequest): Observable<SuccessResponse>;
402
+ generateBundleCollage(request: GenerateBundleCollageRequest): Observable<GenerateBundleCollageResponse>;
386
403
  }
387
404
  export interface BundleServiceController {
388
405
  getBundles(request: GetBundlesRequest): Promise<GetBundlesResponse> | Observable<GetBundlesResponse> | GetBundlesResponse;
@@ -404,6 +421,7 @@ export interface BundleServiceController {
404
421
  cloneBundle(request: CloneBundleRequest): Promise<BundleDetailResponse> | Observable<BundleDetailResponse> | BundleDetailResponse;
405
422
  exportBundles(request: ExportBundlesRequest): Promise<ExportBundlesResponse> | Observable<ExportBundlesResponse> | ExportBundlesResponse;
406
423
  addCrossSellLink(request: AddCrossSellLinkRequest): Promise<SuccessResponse> | Observable<SuccessResponse> | SuccessResponse;
424
+ generateBundleCollage(request: GenerateBundleCollageRequest): Promise<GenerateBundleCollageResponse> | Observable<GenerateBundleCollageResponse> | GenerateBundleCollageResponse;
407
425
  }
408
426
  export declare function BundleServiceControllerMethods(): (constructor: Function) => void;
409
427
  export declare const BUNDLE_SERVICE_NAME = "BundleService";
@@ -71,6 +71,7 @@ function BundleServiceControllerMethods() {
71
71
  "cloneBundle",
72
72
  "exportBundles",
73
73
  "addCrossSellLink",
74
+ "generateBundleCollage",
74
75
  ];
75
76
  for (const method of grpcMethods) {
76
77
  const descriptor = Reflect.getOwnPropertyDescriptor(constructor.prototype, method);
@@ -31,6 +31,8 @@ service BundleService {
31
31
  rpc ExportBundles (ExportBundlesRequest) returns (ExportBundlesResponse);
32
32
 
33
33
  rpc AddCrossSellLink (AddCrossSellLinkRequest) returns (SuccessResponse);
34
+
35
+ rpc GenerateBundleCollage (GenerateBundleCollageRequest) returns (GenerateBundleCollageResponse);
34
36
  }
35
37
 
36
38
 
@@ -347,3 +349,17 @@ message ExportBundlesResponse {
347
349
  string format = 2;
348
350
  int32 count = 3;
349
351
  }
352
+
353
+ message GenerateBundleCollageRequest {
354
+ string bundle_id = 1;
355
+ // Optional: override cell pixel size (default 400)
356
+ optional int32 cell_size = 2;
357
+ }
358
+
359
+ message GenerateBundleCollageResponse {
360
+ string url = 1; // Public CDN/S3 URL of the collage JPEG
361
+ string key = 2; // S3 object key
362
+ int32 width = 3; // Final image width in pixels
363
+ int32 height = 4; // Final image height in pixels
364
+ string bundle_id = 5;
365
+ }
package/gen/bundle.ts CHANGED
@@ -389,6 +389,24 @@ export interface ExportBundlesResponse {
389
389
  count: number;
390
390
  }
391
391
 
392
+ export interface GenerateBundleCollageRequest {
393
+ bundleId: string;
394
+ /** Optional: override cell pixel size (default 400) */
395
+ cellSize?: number | undefined;
396
+ }
397
+
398
+ export interface GenerateBundleCollageResponse {
399
+ /** Public CDN/S3 URL of the collage JPEG */
400
+ url: string;
401
+ /** S3 object key */
402
+ key: string;
403
+ /** Final image width in pixels */
404
+ width: number;
405
+ /** Final image height in pixels */
406
+ height: number;
407
+ bundleId: string;
408
+ }
409
+
392
410
  export const CATALOG_V1_PACKAGE_NAME = "catalog.v1";
393
411
 
394
412
  export interface BundleServiceClient {
@@ -429,6 +447,8 @@ export interface BundleServiceClient {
429
447
  exportBundles(request: ExportBundlesRequest): Observable<ExportBundlesResponse>;
430
448
 
431
449
  addCrossSellLink(request: AddCrossSellLinkRequest): Observable<SuccessResponse>;
450
+
451
+ generateBundleCollage(request: GenerateBundleCollageRequest): Observable<GenerateBundleCollageResponse>;
432
452
  }
433
453
 
434
454
  export interface BundleServiceController {
@@ -505,6 +525,10 @@ export interface BundleServiceController {
505
525
  addCrossSellLink(
506
526
  request: AddCrossSellLinkRequest,
507
527
  ): Promise<SuccessResponse> | Observable<SuccessResponse> | SuccessResponse;
528
+
529
+ generateBundleCollage(
530
+ request: GenerateBundleCollageRequest,
531
+ ): Promise<GenerateBundleCollageResponse> | Observable<GenerateBundleCollageResponse> | GenerateBundleCollageResponse;
508
532
  }
509
533
 
510
534
  export function BundleServiceControllerMethods() {
@@ -529,6 +553,7 @@ export function BundleServiceControllerMethods() {
529
553
  "cloneBundle",
530
554
  "exportBundles",
531
555
  "addCrossSellLink",
556
+ "generateBundleCollage",
532
557
  ];
533
558
  for (const method of grpcMethods) {
534
559
  const descriptor: any = Reflect.getOwnPropertyDescriptor(constructor.prototype, method);
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mamindom/contracts",
3
3
  "description": "proto",
4
- "version": "1.0.80",
4
+ "version": "1.0.81",
5
5
  "main": "./dist/src/index.js",
6
6
  "types": "./dist/src/index.d.ts",
7
7
  "exports": {
@@ -31,6 +31,8 @@ service BundleService {
31
31
  rpc ExportBundles (ExportBundlesRequest) returns (ExportBundlesResponse);
32
32
 
33
33
  rpc AddCrossSellLink (AddCrossSellLinkRequest) returns (SuccessResponse);
34
+
35
+ rpc GenerateBundleCollage (GenerateBundleCollageRequest) returns (GenerateBundleCollageResponse);
34
36
  }
35
37
 
36
38
 
@@ -347,3 +349,17 @@ message ExportBundlesResponse {
347
349
  string format = 2;
348
350
  int32 count = 3;
349
351
  }
352
+
353
+ message GenerateBundleCollageRequest {
354
+ string bundle_id = 1;
355
+ // Optional: override cell pixel size (default 400)
356
+ optional int32 cell_size = 2;
357
+ }
358
+
359
+ message GenerateBundleCollageResponse {
360
+ string url = 1; // Public CDN/S3 URL of the collage JPEG
361
+ string key = 2; // S3 object key
362
+ int32 width = 3; // Final image width in pixels
363
+ int32 height = 4; // Final image height in pixels
364
+ string bundle_id = 5;
365
+ }