@compassdigital/sdk.typescript 4.95.0 → 4.97.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.
@@ -0,0 +1,74 @@
1
+ import { RequestQuery, BaseRequest } from './util';
2
+ export interface ReviewDTO {
3
+ taxonomy?: Record<string, string>;
4
+ id: string;
5
+ createdAt: string;
6
+ updatedAt: string;
7
+ score?: number;
8
+ comment?: string;
9
+ reason?: string[];
10
+ }
11
+ export interface GetReviewsResponseDTO {
12
+ reviews: ReviewDTO[];
13
+ }
14
+ export interface BadRequestErrorDTO {
15
+ message: string;
16
+ code: number;
17
+ data: Record<string, any>;
18
+ }
19
+ export interface UnauthorizedErrorDTO {
20
+ message: string;
21
+ code: number;
22
+ data: Record<string, any>;
23
+ }
24
+ export interface GetReviewResponseDTO {
25
+ taxonomy?: Record<string, string>;
26
+ id: string;
27
+ createdAt: string;
28
+ updatedAt: string;
29
+ score?: number;
30
+ comment?: string;
31
+ reason?: string[];
32
+ }
33
+ export interface NotFoundErrorDTO {
34
+ message: string;
35
+ code: number;
36
+ data: Record<string, any>;
37
+ }
38
+ export interface PostReviewRequestDTO {
39
+ taxonomy?: Record<string, string>;
40
+ score?: number;
41
+ comment?: string;
42
+ reason?: string[];
43
+ }
44
+ export interface PostReviewResponseDTO {
45
+ taxonomy?: Record<string, string>;
46
+ id: string;
47
+ createdAt: string;
48
+ updatedAt: string;
49
+ score?: number;
50
+ comment?: string;
51
+ reason?: string[];
52
+ }
53
+ export interface GetReviewsQuery {
54
+ taxonomyFilter: string;
55
+ _query?: string;
56
+ }
57
+ export type GetReviewsResponse = GetReviewsResponseDTO;
58
+ export interface GetReviewsRequest extends BaseRequest, RequestQuery<GetReviewsQuery> {
59
+ }
60
+ export type PostReviewBody = PostReviewRequestDTO;
61
+ export type PostReviewResponse = PostReviewResponseDTO;
62
+ export interface PostReviewRequest extends BaseRequest {
63
+ body: PostReviewBody;
64
+ }
65
+ export interface GetReviewPath {
66
+ id: string;
67
+ }
68
+ export interface GetReviewQuery {
69
+ _query?: string;
70
+ }
71
+ export type GetReviewResponse = GetReviewResponseDTO;
72
+ export interface GetReviewRequest extends BaseRequest, RequestQuery<GetReviewQuery>, GetReviewPath {
73
+ }
74
+ //# sourceMappingURL=review.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"review.d.ts","sourceRoot":"","sources":["../../src/interface/review.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ /* eslint-disable */
3
+ // THIS FILE IS AUTOMATICALLY GENERATED, DO NOT MODIFY
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ //# sourceMappingURL=review.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"review.js","sourceRoot":"","sources":["../../src/interface/review.ts"],"names":[],"mappings":";AAAA,oBAAoB;AACpB,sDAAsD"}
package/manifest.json CHANGED
@@ -111,6 +111,10 @@
111
111
  {
112
112
  "name": "auth",
113
113
  "swagger": "https://dev.api.compassdigital.org/auth/swagger-json"
114
+ },
115
+ {
116
+ "name": "review",
117
+ "swagger": "../../platform2/review/swagger.json"
114
118
  }
115
119
  ]
116
120
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@compassdigital/sdk.typescript",
3
- "version": "4.95.0",
3
+ "version": "4.97.0",
4
4
  "description": "Compass Digital Labs TypeScript SDK",
5
5
  "type": "commonjs",
6
6
  "main": "./lib/index.js",
package/src/index.ts CHANGED
@@ -1026,6 +1026,8 @@ import {
1026
1026
  PostAiLanguageGenerateResponse,
1027
1027
  PostAiImageGenerateBody,
1028
1028
  PostAiImageGenerateResponse,
1029
+ PostAiTranslateBody,
1030
+ PostAiTranslateResponse,
1029
1031
  } from './interface/ai';
1030
1032
 
1031
1033
  import {
@@ -1048,6 +1050,8 @@ import {
1048
1050
  GetSiteDevicesResponse,
1049
1051
  GetCentricosSitesQuery,
1050
1052
  GetCentricosSitesResponse,
1053
+ GetReviewOrderItemsQuery,
1054
+ GetReviewOrderItemsResponse,
1051
1055
  } from './interface/centricos';
1052
1056
 
1053
1057
  import {
@@ -1082,6 +1086,15 @@ import {
1082
1086
  GetAuthSsoExchangeResponse,
1083
1087
  } from './interface/auth';
1084
1088
 
1089
+ import {
1090
+ GetReviewsQuery,
1091
+ GetReviewsResponse,
1092
+ PostReviewBody,
1093
+ PostReviewResponse,
1094
+ GetReviewQuery,
1095
+ GetReviewResponse,
1096
+ } from './interface/review';
1097
+
1085
1098
  import { BaseServiceClient, RequestOptions, ResponsePromise } from './base';
1086
1099
  export * from './base';
1087
1100
 
@@ -10725,6 +10738,19 @@ export class ServiceClient extends BaseServiceClient {
10725
10738
  return this.request('ai', '/ai/image/generate', 'post', `/ai/image/generate`, body, options);
10726
10739
  }
10727
10740
 
10741
+ /**
10742
+ * POST /ai/translate - Translate strings
10743
+ *
10744
+ * @param body
10745
+ * @param options - additional request options
10746
+ */
10747
+ post_ai_translate(
10748
+ body: PostAiTranslateBody,
10749
+ options?: RequestOptions,
10750
+ ): ResponsePromise<PostAiTranslateResponse> {
10751
+ return this.request('ai', '/ai/translate', 'post', `/ai/translate`, body, options);
10752
+ }
10753
+
10728
10754
  /**
10729
10755
  * POST /centricos/ai/item/description - Generate item description
10730
10756
  *
@@ -10926,6 +10952,28 @@ export class ServiceClient extends BaseServiceClient {
10926
10952
  return this.request('centricos', '/centricos/sites', 'get', `/centricos/sites`, null, options);
10927
10953
  }
10928
10954
 
10955
+ /**
10956
+ * GET /centricos/review/{orderId}/order-items - Get reviews for items in a given order in an array format
10957
+ *
10958
+ * @param orderId
10959
+ * @param options - additional request options
10960
+ */
10961
+ get_review_order_items(
10962
+ orderId: string,
10963
+ options?: {
10964
+ query?: GetReviewOrderItemsQuery;
10965
+ } & RequestOptions,
10966
+ ): ResponsePromise<GetReviewOrderItemsResponse> {
10967
+ return this.request(
10968
+ 'centricos',
10969
+ '/centricos/review/{orderId}/order-items',
10970
+ 'get',
10971
+ `/centricos/review/${orderId}/order-items`,
10972
+ null,
10973
+ options,
10974
+ );
10975
+ }
10976
+
10929
10977
  /**
10930
10978
  * GET /tax/v1/health-check - Health Check
10931
10979
  *
@@ -11098,4 +11146,42 @@ export class ServiceClient extends BaseServiceClient {
11098
11146
  ): ResponsePromise<GetAuthSsoExchangeResponse> {
11099
11147
  return this.request('auth', '/auth/sso/exchange', 'get', `/auth/sso/exchange`, null, options);
11100
11148
  }
11149
+
11150
+ /**
11151
+ * GET /review - Get reviews by taxonomy
11152
+ *
11153
+ * @param options - additional request options
11154
+ */
11155
+ get_reviews(
11156
+ options: {
11157
+ query: GetReviewsQuery;
11158
+ } & RequestOptions,
11159
+ ): ResponsePromise<GetReviewsResponse> {
11160
+ return this.request('review', '/review', 'get', `/review`, null, options);
11161
+ }
11162
+
11163
+ /**
11164
+ * POST /review - Post a review
11165
+ *
11166
+ * @param body
11167
+ * @param options - additional request options
11168
+ */
11169
+ post_review(body: PostReviewBody, options?: RequestOptions): ResponsePromise<PostReviewResponse> {
11170
+ return this.request('review', '/review', 'post', `/review`, body, options);
11171
+ }
11172
+
11173
+ /**
11174
+ * GET /review/{id} - Get a review
11175
+ *
11176
+ * @param id
11177
+ * @param options - additional request options
11178
+ */
11179
+ get_review(
11180
+ id: string,
11181
+ options?: {
11182
+ query?: GetReviewQuery;
11183
+ } & RequestOptions,
11184
+ ): ResponsePromise<GetReviewResponse> {
11185
+ return this.request('review', '/review/{id}', 'get', `/review/${id}`, null, options);
11186
+ }
11101
11187
  }
@@ -51,6 +51,20 @@ export interface GenerateImageResponse {
51
51
  images: ImageDTO[];
52
52
  }
53
53
 
54
+ export type TranslationStrings = Record<string, any>;
55
+
56
+ export interface TranslateRequest {
57
+ sourceLanguage: string;
58
+ targetLanguage: string;
59
+ strings: TranslationStrings;
60
+ }
61
+
62
+ export interface TranslateResponse {
63
+ sourceLanguage: string;
64
+ targetLanguage: string;
65
+ translations: Record<string, string>;
66
+ }
67
+
54
68
  // POST /ai/language/generate - Generate text from a given prompt
55
69
 
56
70
  export type PostAiLanguageGenerateBody = GenerateTextRequest;
@@ -70,3 +84,13 @@ export type PostAiImageGenerateResponse = GenerateImageResponse;
70
84
  export interface PostAiImageGenerateRequest extends BaseRequest {
71
85
  body: PostAiImageGenerateBody;
72
86
  }
87
+
88
+ // POST /ai/translate - Translate strings
89
+
90
+ export type PostAiTranslateBody = TranslateRequest;
91
+
92
+ export type PostAiTranslateResponse = TranslateResponse;
93
+
94
+ export interface PostAiTranslateRequest extends BaseRequest {
95
+ body: PostAiTranslateBody;
96
+ }
@@ -45,10 +45,8 @@ export interface AnnouncementPutRequestBody {
45
45
  is_global?: boolean;
46
46
  allowed_resources?: string[];
47
47
  position: number;
48
- //@deprecated
49
48
  active?: boolean;
50
- // Status of the announcement
51
- status?: 'draft' | 'active' | 'disabled';
49
+ status?: Status;
52
50
  // Announcement Properties
53
51
  info?: {
54
52
  en?: AnnouncementInfo;
@@ -69,8 +67,7 @@ export interface AnnouncementPatchRequestBody {
69
67
  position?: number;
70
68
  //@deprecated
71
69
  active?: boolean;
72
- // Status of the announcement
73
- status?: 'draft' | 'active' | 'disabled';
70
+ status?: Status;
74
71
  // Announcement Properties
75
72
  info?: {
76
73
  en?: AnnouncementInfo;
@@ -94,8 +91,7 @@ export interface Announcement {
94
91
  allowed_resources: string[];
95
92
  //@deprecated
96
93
  active: boolean;
97
- // Status of the announcement
98
- status?: 'draft' | 'active' | 'disabled';
94
+ status?: Status;
99
95
  schedule?: Schedule;
100
96
  // Date created
101
97
  created_at: string;
@@ -141,7 +137,7 @@ export interface EditHistory {
141
137
 
142
138
  export interface Schedule {
143
139
  // If true, refer to `sites`, if false, refer to start/end times below
144
- variable: boolean;
140
+ variable?: boolean;
145
141
  start_datetime?: string;
146
142
  // Maximum 1 year from today
147
143
  end_datetime?: string;
@@ -154,7 +150,7 @@ export interface Schedule {
154
150
  }[];
155
151
  }
156
152
 
157
- export type Status = 'draft' | 'active' | 'disabled';
153
+ export type Status = 'draft' | 'published' | 'active' | 'disabled';
158
154
 
159
155
  // POST /announcement - Create Announcement
160
156
 
@@ -195,7 +191,7 @@ export interface GetAnnouncementsQuery {
195
191
  name?: string;
196
192
  // Filter by announcement position
197
193
  position?: number;
198
- // Filter by announcement enabled status
194
+ // Filter by announcement active status
199
195
  enabled?: boolean;
200
196
  // Filter by announcement purpose
201
197
  purpose?: string;
@@ -205,7 +201,7 @@ export interface GetAnnouncementsQuery {
205
201
  sort_by?: string;
206
202
  // Sort order (ASC or DESC)
207
203
  sort_order?: string;
208
- // Filter by status - 'active', 'draft', 'disabled'
204
+ // Filter by status - 'published', 'draft'
209
205
  status?: string;
210
206
  // Graphql query string
211
207
  _query?: string;
@@ -107,6 +107,11 @@ export interface GetSitesResponse {
107
107
  results: Site[];
108
108
  }
109
109
 
110
+ export interface ReviewOrderItemsResponseDTO {
111
+ // List of reviews
112
+ reviews: string[];
113
+ }
114
+
110
115
  // POST /centricos/ai/item/description - Generate item description
111
116
 
112
117
  export type PostCentricosAiItemDescriptionBody = AIItemDescriptionRequest;
@@ -299,3 +304,21 @@ export type GetCentricosSitesResponse = GetSitesResponse;
299
304
  export interface GetCentricosSitesRequest
300
305
  extends BaseRequest,
301
306
  RequestQuery<GetCentricosSitesQuery> {}
307
+
308
+ // GET /centricos/review/{orderId}/order-items - Get reviews for items in a given order in an array format
309
+
310
+ export interface GetReviewOrderItemsPath {
311
+ orderId: string;
312
+ }
313
+
314
+ export interface GetReviewOrderItemsQuery {
315
+ // Graphql query string
316
+ _query?: string;
317
+ }
318
+
319
+ export type GetReviewOrderItemsResponse = ReviewOrderItemsResponseDTO;
320
+
321
+ export interface GetReviewOrderItemsRequest
322
+ extends BaseRequest,
323
+ RequestQuery<GetReviewOrderItemsQuery>,
324
+ GetReviewOrderItemsPath {}
@@ -668,6 +668,7 @@ export interface DraftCategoryToItemRelationshipDTO {
668
668
  }
669
669
 
670
670
  export interface DraftItemDTO {
671
+ is_published?: boolean;
671
672
  parent?: Record<string, any>;
672
673
  children?: Record<string, any>[];
673
674
  modifier_groups?: DraftItemToModifierGroupRelationshipDTO[];
@@ -1452,6 +1453,7 @@ export interface LineRouteSuggestion {
1452
1453
  }
1453
1454
 
1454
1455
  export interface DraftItemEntityDTO {
1456
+ is_published?: boolean;
1455
1457
  parent?: DraftItemDTO;
1456
1458
  children?: DraftItemDTO[];
1457
1459
  modifier_groups?: DraftItemToModifierGroupRelationshipDTO[];
@@ -4916,6 +4918,7 @@ export interface PostMenuV3CategoryRelationshipsItemRecoverRequest
4916
4918
  // POST /menu/v3/draft/item
4917
4919
 
4918
4920
  export interface PostMenuV3DraftItemBody {
4921
+ is_published?: boolean;
4919
4922
  parent?: DraftItemDTO;
4920
4923
  children?: DraftItemDTO[];
4921
4924
  modifier_groups?: DraftItemToModifierGroupRelationshipDTO[];
@@ -4989,6 +4992,7 @@ export interface PatchMenuV3DraftItemPath {
4989
4992
  }
4990
4993
 
4991
4994
  export interface PatchMenuV3DraftItemBody {
4995
+ is_published?: boolean;
4992
4996
  parent?: DraftItemDTO;
4993
4997
  children?: DraftItemDTO[];
4994
4998
  modifier_groups?: DraftItemToModifierGroupRelationshipDTO[];
@@ -5103,6 +5107,7 @@ export interface GetMenuV3DraftItemsRequest
5103
5107
  // POST /menu/v3/draft/items
5104
5108
 
5105
5109
  export type PostMenuV3DraftItemsBody = {
5110
+ is_published?: boolean;
5106
5111
  parent?: DraftItemDTO;
5107
5112
  children?: DraftItemDTO[];
5108
5113
  modifier_groups?: DraftItemToModifierGroupRelationshipDTO[];
@@ -5206,6 +5211,7 @@ export interface GetMenuV3DraftItemLineRoutesRequest
5206
5211
 
5207
5212
  export interface PatchMenuV3DraftItemsBulkUpdateBody {
5208
5213
  id_list: string[];
5214
+ is_published?: boolean;
5209
5215
  parent?: DraftItemDTO;
5210
5216
  children?: DraftItemDTO[];
5211
5217
  modifier_groups?: DraftItemToModifierGroupRelationshipDTO[];
@@ -7707,6 +7713,7 @@ export interface DeleteMenuV4BrandCategoryRequest
7707
7713
  // POST /menu/v4/item
7708
7714
 
7709
7715
  export interface PostMenuV4ItemBody {
7716
+ is_published?: boolean;
7710
7717
  parent?: DraftItemDTO;
7711
7718
  children?: DraftItemDTO[];
7712
7719
  modifier_groups?: DraftItemToModifierGroupRelationshipDTO[];
@@ -7747,6 +7754,7 @@ export interface PostMenuV4ItemBody {
7747
7754
  }
7748
7755
 
7749
7756
  export interface PostMenuV4ItemResponse {
7757
+ is_published?: boolean;
7750
7758
  parent?: DraftItemDTO;
7751
7759
  children?: DraftItemDTO[];
7752
7760
  modifier_groups?: DraftItemToModifierGroupRelationshipDTO[];
@@ -7806,6 +7814,7 @@ export interface GetMenuV4ItemQuery {
7806
7814
  }
7807
7815
 
7808
7816
  export interface GetMenuV4ItemResponse {
7817
+ is_published?: boolean;
7809
7818
  parent?: DraftItemDTO;
7810
7819
  children?: DraftItemDTO[];
7811
7820
  modifier_groups?: DraftItemToModifierGroupRelationshipDTO[];
@@ -7862,6 +7871,7 @@ export interface PatchMenuV4ItemPath {
7862
7871
 
7863
7872
  export interface PatchMenuV4ItemBody {
7864
7873
  base_item_id?: string;
7874
+ is_published?: boolean;
7865
7875
  parent?: DraftItemDTO;
7866
7876
  children?: DraftItemDTO[];
7867
7877
  modifier_groups?: DraftItemToModifierGroupRelationshipDTO[];
@@ -7901,6 +7911,7 @@ export interface PatchMenuV4ItemBody {
7901
7911
  }
7902
7912
 
7903
7913
  export interface PatchMenuV4ItemResponse {
7914
+ is_published?: boolean;
7904
7915
  parent?: DraftItemDTO;
7905
7916
  children?: DraftItemDTO[];
7906
7917
  modifier_groups?: DraftItemToModifierGroupRelationshipDTO[];
@@ -0,0 +1,103 @@
1
+ /* eslint-disable */
2
+ // THIS FILE IS AUTOMATICALLY GENERATED, DO NOT MODIFY
3
+
4
+ import { RequestQuery, BaseRequest } from './util';
5
+
6
+ export interface ReviewDTO {
7
+ taxonomy?: Record<string, string>;
8
+ id: string;
9
+ createdAt: string;
10
+ updatedAt: string;
11
+ score?: number;
12
+ comment?: string;
13
+ reason?: string[];
14
+ }
15
+
16
+ export interface GetReviewsResponseDTO {
17
+ reviews: ReviewDTO[];
18
+ }
19
+
20
+ export interface BadRequestErrorDTO {
21
+ message: string;
22
+ code: number;
23
+ data: Record<string, any>;
24
+ }
25
+
26
+ export interface UnauthorizedErrorDTO {
27
+ message: string;
28
+ code: number;
29
+ data: Record<string, any>;
30
+ }
31
+
32
+ export interface GetReviewResponseDTO {
33
+ taxonomy?: Record<string, string>;
34
+ id: string;
35
+ createdAt: string;
36
+ updatedAt: string;
37
+ score?: number;
38
+ comment?: string;
39
+ reason?: string[];
40
+ }
41
+
42
+ export interface NotFoundErrorDTO {
43
+ message: string;
44
+ code: number;
45
+ data: Record<string, any>;
46
+ }
47
+
48
+ export interface PostReviewRequestDTO {
49
+ taxonomy?: Record<string, string>;
50
+ score?: number;
51
+ comment?: string;
52
+ reason?: string[];
53
+ }
54
+
55
+ export interface PostReviewResponseDTO {
56
+ taxonomy?: Record<string, string>;
57
+ id: string;
58
+ createdAt: string;
59
+ updatedAt: string;
60
+ score?: number;
61
+ comment?: string;
62
+ reason?: string[];
63
+ }
64
+
65
+ // GET /review - Get reviews by taxonomy
66
+
67
+ export interface GetReviewsQuery {
68
+ taxonomyFilter: string;
69
+ // Graphql query string
70
+ _query?: string;
71
+ }
72
+
73
+ export type GetReviewsResponse = GetReviewsResponseDTO;
74
+
75
+ export interface GetReviewsRequest extends BaseRequest, RequestQuery<GetReviewsQuery> {}
76
+
77
+ // POST /review - Post a review
78
+
79
+ export type PostReviewBody = PostReviewRequestDTO;
80
+
81
+ export type PostReviewResponse = PostReviewResponseDTO;
82
+
83
+ export interface PostReviewRequest extends BaseRequest {
84
+ body: PostReviewBody;
85
+ }
86
+
87
+ // GET /review/{id} - Get a review
88
+
89
+ export interface GetReviewPath {
90
+ id: string;
91
+ }
92
+
93
+ export interface GetReviewQuery {
94
+ // Graphql query string
95
+ _query?: string;
96
+ }
97
+
98
+ export type GetReviewResponse = GetReviewResponseDTO;
99
+
100
+ export interface GetReviewRequest
101
+ extends BaseRequest,
102
+ RequestQuery<GetReviewQuery>,
103
+ GetReviewPath {}