@webex/contact-center 3.12.0-task-refactor.12 → 3.12.0-webex-services-ready.1

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.
Files changed (38) hide show
  1. package/dist/cc.js +32 -0
  2. package/dist/cc.js.map +1 -1
  3. package/dist/index.js +7 -0
  4. package/dist/index.js.map +1 -1
  5. package/dist/metrics/behavioral-events.js +49 -0
  6. package/dist/metrics/behavioral-events.js.map +1 -1
  7. package/dist/metrics/constants.js +10 -1
  8. package/dist/metrics/constants.js.map +1 -1
  9. package/dist/services/UserPreference.js +427 -0
  10. package/dist/services/UserPreference.js.map +1 -0
  11. package/dist/services/config/constants.js +22 -1
  12. package/dist/services/config/constants.js.map +1 -1
  13. package/dist/services/config/types.js +20 -0
  14. package/dist/services/config/types.js.map +1 -1
  15. package/dist/types/cc.d.ts +31 -0
  16. package/dist/types/index.d.ts +10 -1
  17. package/dist/types/metrics/constants.d.ts +8 -0
  18. package/dist/types/services/UserPreference.d.ts +118 -0
  19. package/dist/types/services/config/constants.d.ts +21 -0
  20. package/dist/types/services/config/types.d.ts +48 -0
  21. package/dist/types.js.map +1 -1
  22. package/dist/webex.js +1 -1
  23. package/package.json +9 -9
  24. package/src/cc.ts +33 -0
  25. package/src/index.ts +9 -0
  26. package/src/metrics/behavioral-events.ts +50 -0
  27. package/src/metrics/constants.ts +10 -0
  28. package/src/services/UserPreference.ts +509 -0
  29. package/src/services/config/constants.ts +24 -0
  30. package/src/services/config/types.ts +52 -0
  31. package/src/types.ts +9 -2
  32. package/test/unit/spec/cc.ts +1 -6
  33. package/test/unit/spec/services/UserPreference.ts +401 -0
  34. package/test/unit/spec/services/core/Utils.ts +1 -1
  35. package/test/unit/spec/services/core/websocket/WebSocketManager.ts +1 -0
  36. package/test/unit/spec/services/task/TaskManager.ts +143 -2316
  37. package/umd/contact-center.min.js +2 -2
  38. package/umd/contact-center.min.js.map +1 -1
@@ -0,0 +1,427 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = exports.UserPreference = void 0;
7
+ var _types = require("../types");
8
+ var _loggerProxy = _interopRequireDefault(require("../logger-proxy"));
9
+ var _WebexRequest = _interopRequireDefault(require("./core/WebexRequest"));
10
+ var _MetricsManager = _interopRequireDefault(require("../metrics/MetricsManager"));
11
+ var _constants = require("./constants");
12
+ var _constants2 = require("./config/constants");
13
+ var _constants3 = require("../metrics/constants");
14
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
15
+ /**
16
+ * UserPreference API class for managing Webex Contact Center user preferences.
17
+ * Provides functionality to get, create, update, and delete user preferences.
18
+ *
19
+ * @class UserPreference
20
+ * @public
21
+ * @example
22
+ * ```typescript
23
+ * import Webex from 'webex';
24
+ *
25
+ * const webex = new Webex({ credentials: 'YOUR_ACCESS_TOKEN' });
26
+ * const cc = webex.cc;
27
+ *
28
+ * // Register and login first
29
+ * await cc.register();
30
+ * await cc.stationLogin({ teamId: 'team123', loginOption: 'BROWSER' });
31
+ *
32
+ * // Get UserPreference API instance from ContactCenter
33
+ * const userPreferenceAPI = cc.userPreference;
34
+ *
35
+ * // Get user preferences for the current user
36
+ * const preferences = await userPreferenceAPI.getUserPreference();
37
+ *
38
+ * // Create new user preferences
39
+ * const newPreferences = await userPreferenceAPI.createUserPreference({
40
+ * userId: 'user123',
41
+ * preferences: { e911Reminder: true }
42
+ * });
43
+ *
44
+ * // Update user preferences
45
+ * const updatedPreferences = await userPreferenceAPI.updateUserPreference('user123', {
46
+ * preferences: { e911Reminder: false }
47
+ * });
48
+ *
49
+ * // Delete user preferences
50
+ * await userPreferenceAPI.deleteUserPreference('user123');
51
+ * ```
52
+ */
53
+ class UserPreference {
54
+ /**
55
+ * Creates an instance of UserPreference
56
+ * @param {WebexSDK} webex - The Webex SDK instance
57
+ * @param {() => string} getUserId - Function to get the current user's CI user ID
58
+ * @public
59
+ */
60
+ constructor(webex, getUserId) {
61
+ this.webex = webex;
62
+ this.webexRequest = _WebexRequest.default.getInstance({
63
+ webex
64
+ });
65
+ this.getUserId = getUserId;
66
+ this.metricsManager = _MetricsManager.default.getInstance({
67
+ webex
68
+ });
69
+ }
70
+
71
+ /**
72
+ * Fetches user preferences for a specific user
73
+ * @param {GetUserPreferenceParams} [params] - Optional parameters for fetching preferences
74
+ * @param {string} [params.userId] - User ID to fetch preferences for. Defaults to current user's CI user ID.
75
+ * @param {number} [params.page=0] - Page number (0-indexed). Default: 0
76
+ * @param {number} [params.pageSize=100] - Number of items per page. Default: 100
77
+ * @returns {Promise<UserPreferenceResponse>} Promise resolving to user preferences
78
+ * @throws {Error} If the API call fails
79
+ * @public
80
+ * @example
81
+ * ```typescript
82
+ * // Get preferences for current user
83
+ * const preferences = await userPreferenceAPI.getUserPreference();
84
+ *
85
+ * // Get preferences for a specific user
86
+ * const preferences = await userPreferenceAPI.getUserPreference({ userId: 'user123' });
87
+ *
88
+ * // Get preferences with pagination
89
+ * const preferences = await userPreferenceAPI.getUserPreference({ page: 0, pageSize: 50 });
90
+ * ```
91
+ */
92
+ async getUserPreference(params) {
93
+ const {
94
+ userId,
95
+ page,
96
+ pageSize
97
+ } = params || {};
98
+ const targetUserId = userId || this.getUserId();
99
+ const orgId = this.webex.credentials.getOrgId();
100
+ _loggerProxy.default.info('Fetching user preferences', {
101
+ module: 'UserPreference',
102
+ method: 'getUserPreference',
103
+ data: {
104
+ orgId,
105
+ userId: targetUserId,
106
+ page,
107
+ pageSize
108
+ }
109
+ });
110
+ if (!targetUserId) {
111
+ _loggerProxy.default.error('getUserPreference called without a valid userId', {
112
+ module: 'UserPreference',
113
+ method: 'getUserPreference',
114
+ data: {
115
+ orgId,
116
+ userId: targetUserId,
117
+ error: 'Missing userId. Ensure user is logged in or provide a userId.'
118
+ }
119
+ });
120
+ throw new Error('UserPreference: userId is not available.');
121
+ }
122
+ try {
123
+ let resource = _constants2.endPointMap.userPreference(orgId, targetUserId);
124
+
125
+ // Build query parameters if provided
126
+ const queryParams = [];
127
+ if (page !== undefined) queryParams.push(`page=${page}`);
128
+ if (pageSize !== undefined) queryParams.push(`pageSize=${pageSize}`);
129
+ if (queryParams.length > 0) {
130
+ resource = `${resource}?${queryParams.join('&')}`;
131
+ }
132
+ _loggerProxy.default.info('Making API request to fetch user preferences', {
133
+ module: 'UserPreference',
134
+ method: 'getUserPreference',
135
+ data: {
136
+ resource,
137
+ service: _constants.WCC_API_GATEWAY
138
+ }
139
+ });
140
+ this.metricsManager.timeEvent(_constants3.METRIC_EVENT_NAMES.USER_PREFERENCE_GET_SUCCESS);
141
+ this.metricsManager.timeEvent(_constants3.METRIC_EVENT_NAMES.USER_PREFERENCE_GET_FAILED);
142
+ const response = await this.webexRequest.request({
143
+ service: _constants.WCC_API_GATEWAY,
144
+ resource,
145
+ method: _types.HTTP_METHODS.GET
146
+ });
147
+ _loggerProxy.default.info('Successfully retrieved user preferences', {
148
+ module: 'UserPreference',
149
+ method: 'getUserPreference',
150
+ data: {
151
+ statusCode: response.statusCode,
152
+ userId: targetUserId
153
+ }
154
+ });
155
+ this.metricsManager.trackEvent(_constants3.METRIC_EVENT_NAMES.USER_PREFERENCE_GET_SUCCESS, {
156
+ orgId,
157
+ userId: targetUserId,
158
+ statusCode: response.statusCode
159
+ }, ['behavioral', 'operational']);
160
+ return response.body;
161
+ } catch (error) {
162
+ const errorData = {
163
+ orgId,
164
+ userId: targetUserId,
165
+ error: error instanceof Error ? error.message : String(error)
166
+ };
167
+ _loggerProxy.default.error('Failed to fetch user preferences', {
168
+ module: 'UserPreference',
169
+ method: 'getUserPreference',
170
+ data: errorData,
171
+ error
172
+ });
173
+ this.metricsManager.trackEvent(_constants3.METRIC_EVENT_NAMES.USER_PREFERENCE_GET_FAILED, errorData, ['behavioral', 'operational']);
174
+ throw error;
175
+ }
176
+ }
177
+
178
+ /**
179
+ * Creates new user preferences
180
+ * @param {CreateUserPreferenceRequest} data - The user preference data to create
181
+ * @returns {Promise<UserPreference>} Promise resolving to created user preferences
182
+ * @throws {Error} If the API call fails
183
+ * @public
184
+ * @example
185
+ * ```typescript
186
+ * const newPreferences = await userPreferenceAPI.createUserPreference({
187
+ * userId: 'user123',
188
+ * preferences: { e911Reminder: true, notificationSettings: { email: true } }
189
+ * });
190
+ * ```
191
+ */
192
+ async createUserPreference(data) {
193
+ const orgId = this.webex.credentials.getOrgId();
194
+ _loggerProxy.default.info('Creating user preferences', {
195
+ module: 'UserPreference',
196
+ method: 'createUserPreference',
197
+ data: {
198
+ orgId,
199
+ userId: data.userId
200
+ }
201
+ });
202
+ if (!data.userId) {
203
+ _loggerProxy.default.error('createUserPreference called without a valid userId', {
204
+ module: 'UserPreference',
205
+ method: 'createUserPreference',
206
+ data: {
207
+ orgId,
208
+ error: 'Missing userId in request data.'
209
+ }
210
+ });
211
+ throw new Error('UserPreference: userId is required to create user preferences.');
212
+ }
213
+ try {
214
+ const resource = _constants2.endPointMap.userPreferenceCreate(orgId);
215
+ _loggerProxy.default.info('Making API request to create user preferences', {
216
+ module: 'UserPreference',
217
+ method: 'createUserPreference',
218
+ data: {
219
+ resource,
220
+ service: _constants.WCC_API_GATEWAY
221
+ }
222
+ });
223
+ this.metricsManager.timeEvent(_constants3.METRIC_EVENT_NAMES.USER_PREFERENCE_CREATE_SUCCESS);
224
+ this.metricsManager.timeEvent(_constants3.METRIC_EVENT_NAMES.USER_PREFERENCE_CREATE_FAILED);
225
+ const response = await this.webexRequest.request({
226
+ service: _constants.WCC_API_GATEWAY,
227
+ resource,
228
+ method: _types.HTTP_METHODS.POST,
229
+ body: data
230
+ });
231
+ _loggerProxy.default.info('Successfully created user preferences', {
232
+ module: 'UserPreference',
233
+ method: 'createUserPreference',
234
+ data: {
235
+ statusCode: response.statusCode,
236
+ userId: data.userId
237
+ }
238
+ });
239
+ this.metricsManager.trackEvent(_constants3.METRIC_EVENT_NAMES.USER_PREFERENCE_CREATE_SUCCESS, {
240
+ orgId,
241
+ userId: data.userId,
242
+ statusCode: response.statusCode
243
+ }, ['behavioral', 'operational']);
244
+ return response.body;
245
+ } catch (error) {
246
+ const errorData = {
247
+ orgId,
248
+ userId: data.userId,
249
+ error: error instanceof Error ? error.message : String(error)
250
+ };
251
+ _loggerProxy.default.error('Failed to create user preferences', {
252
+ module: 'UserPreference',
253
+ method: 'createUserPreference',
254
+ data: errorData,
255
+ error
256
+ });
257
+ this.metricsManager.trackEvent(_constants3.METRIC_EVENT_NAMES.USER_PREFERENCE_CREATE_FAILED, errorData, ['behavioral', 'operational']);
258
+ throw error;
259
+ }
260
+ }
261
+
262
+ /**
263
+ * Updates existing user preferences
264
+ * @param {string} userId - User ID to update preferences for
265
+ * @param {UpdateUserPreferenceRequest} data - The user preference data to update
266
+ * @returns {Promise<UserPreference>} Promise resolving to updated user preferences
267
+ * @throws {Error} If the API call fails
268
+ * @public
269
+ * @example
270
+ * ```typescript
271
+ * const updatedPreferences = await userPreferenceAPI.updateUserPreference('user123', {
272
+ * preferences: { e911Reminder: false }
273
+ * });
274
+ * ```
275
+ */
276
+ async updateUserPreference(userId, data) {
277
+ const orgId = this.webex.credentials.getOrgId();
278
+ _loggerProxy.default.info('Updating user preferences', {
279
+ module: 'UserPreference',
280
+ method: 'updateUserPreference',
281
+ data: {
282
+ orgId,
283
+ userId
284
+ }
285
+ });
286
+ if (!userId) {
287
+ _loggerProxy.default.error('updateUserPreference called without a valid userId', {
288
+ module: 'UserPreference',
289
+ method: 'updateUserPreference',
290
+ data: {
291
+ orgId,
292
+ error: 'Missing userId parameter.'
293
+ }
294
+ });
295
+ throw new Error('UserPreference: userId is required to update user preferences.');
296
+ }
297
+ try {
298
+ const resource = _constants2.endPointMap.userPreference(orgId, userId);
299
+ _loggerProxy.default.info('Making API request to update user preferences', {
300
+ module: 'UserPreference',
301
+ method: 'updateUserPreference',
302
+ data: {
303
+ resource,
304
+ service: _constants.WCC_API_GATEWAY
305
+ }
306
+ });
307
+ this.metricsManager.timeEvent(_constants3.METRIC_EVENT_NAMES.USER_PREFERENCE_UPDATE_SUCCESS);
308
+ this.metricsManager.timeEvent(_constants3.METRIC_EVENT_NAMES.USER_PREFERENCE_UPDATE_FAILED);
309
+ const response = await this.webexRequest.request({
310
+ service: _constants.WCC_API_GATEWAY,
311
+ resource,
312
+ method: _types.HTTP_METHODS.PUT,
313
+ body: data
314
+ });
315
+ _loggerProxy.default.info('Successfully updated user preferences', {
316
+ module: 'UserPreference',
317
+ method: 'updateUserPreference',
318
+ data: {
319
+ statusCode: response.statusCode,
320
+ userId
321
+ }
322
+ });
323
+ this.metricsManager.trackEvent(_constants3.METRIC_EVENT_NAMES.USER_PREFERENCE_UPDATE_SUCCESS, {
324
+ orgId,
325
+ userId,
326
+ statusCode: response.statusCode
327
+ }, ['behavioral', 'operational']);
328
+ return response.body;
329
+ } catch (error) {
330
+ const errorData = {
331
+ orgId,
332
+ userId,
333
+ error: error instanceof Error ? error.message : String(error)
334
+ };
335
+ _loggerProxy.default.error('Failed to update user preferences', {
336
+ module: 'UserPreference',
337
+ method: 'updateUserPreference',
338
+ data: errorData,
339
+ error
340
+ });
341
+ this.metricsManager.trackEvent(_constants3.METRIC_EVENT_NAMES.USER_PREFERENCE_UPDATE_FAILED, errorData, ['behavioral', 'operational']);
342
+ throw error;
343
+ }
344
+ }
345
+
346
+ /**
347
+ * Deletes user preferences for a specific user
348
+ * @param {string} userId - User ID to delete preferences for
349
+ * @returns {Promise<void>} Promise resolving when deletion is complete
350
+ * @throws {Error} If the API call fails
351
+ * @public
352
+ * @example
353
+ * ```typescript
354
+ * await userPreferenceAPI.deleteUserPreference('user123');
355
+ * ```
356
+ */
357
+ async deleteUserPreference(userId) {
358
+ const orgId = this.webex.credentials.getOrgId();
359
+ _loggerProxy.default.info('Deleting user preferences', {
360
+ module: 'UserPreference',
361
+ method: 'deleteUserPreference',
362
+ data: {
363
+ orgId,
364
+ userId
365
+ }
366
+ });
367
+ if (!userId) {
368
+ _loggerProxy.default.error('deleteUserPreference called without a valid userId', {
369
+ module: 'UserPreference',
370
+ method: 'deleteUserPreference',
371
+ data: {
372
+ orgId,
373
+ error: 'Missing userId parameter.'
374
+ }
375
+ });
376
+ throw new Error('UserPreference: userId is required to delete user preferences.');
377
+ }
378
+ try {
379
+ const resource = _constants2.endPointMap.userPreference(orgId, userId);
380
+ _loggerProxy.default.info('Making API request to delete user preferences', {
381
+ module: 'UserPreference',
382
+ method: 'deleteUserPreference',
383
+ data: {
384
+ resource,
385
+ service: _constants.WCC_API_GATEWAY
386
+ }
387
+ });
388
+ this.metricsManager.timeEvent(_constants3.METRIC_EVENT_NAMES.USER_PREFERENCE_DELETE_SUCCESS);
389
+ this.metricsManager.timeEvent(_constants3.METRIC_EVENT_NAMES.USER_PREFERENCE_DELETE_FAILED);
390
+ const response = await this.webexRequest.request({
391
+ service: _constants.WCC_API_GATEWAY,
392
+ resource,
393
+ method: _types.HTTP_METHODS.DELETE
394
+ });
395
+ _loggerProxy.default.info('Successfully deleted user preferences', {
396
+ module: 'UserPreference',
397
+ method: 'deleteUserPreference',
398
+ data: {
399
+ statusCode: response.statusCode,
400
+ userId
401
+ }
402
+ });
403
+ this.metricsManager.trackEvent(_constants3.METRIC_EVENT_NAMES.USER_PREFERENCE_DELETE_SUCCESS, {
404
+ orgId,
405
+ userId,
406
+ statusCode: response.statusCode
407
+ }, ['behavioral', 'operational']);
408
+ } catch (error) {
409
+ const errorData = {
410
+ orgId,
411
+ userId,
412
+ error: error instanceof Error ? error.message : String(error)
413
+ };
414
+ _loggerProxy.default.error('Failed to delete user preferences', {
415
+ module: 'UserPreference',
416
+ method: 'deleteUserPreference',
417
+ data: errorData,
418
+ error
419
+ });
420
+ this.metricsManager.trackEvent(_constants3.METRIC_EVENT_NAMES.USER_PREFERENCE_DELETE_FAILED, errorData, ['behavioral', 'operational']);
421
+ throw error;
422
+ }
423
+ }
424
+ }
425
+ exports.UserPreference = UserPreference;
426
+ var _default = exports.default = UserPreference;
427
+ //# sourceMappingURL=UserPreference.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_types","require","_loggerProxy","_interopRequireDefault","_WebexRequest","_MetricsManager","_constants","_constants2","_constants3","e","__esModule","default","UserPreference","constructor","webex","getUserId","webexRequest","WebexRequest","getInstance","metricsManager","MetricsManager","getUserPreference","params","userId","page","pageSize","targetUserId","orgId","credentials","getOrgId","LoggerProxy","info","module","method","data","error","Error","resource","endPointMap","userPreference","queryParams","undefined","push","length","join","service","WCC_API_GATEWAY","timeEvent","METRIC_EVENT_NAMES","USER_PREFERENCE_GET_SUCCESS","USER_PREFERENCE_GET_FAILED","response","request","HTTP_METHODS","GET","statusCode","trackEvent","body","errorData","message","String","createUserPreference","userPreferenceCreate","USER_PREFERENCE_CREATE_SUCCESS","USER_PREFERENCE_CREATE_FAILED","POST","updateUserPreference","USER_PREFERENCE_UPDATE_SUCCESS","USER_PREFERENCE_UPDATE_FAILED","PUT","deleteUserPreference","USER_PREFERENCE_DELETE_SUCCESS","USER_PREFERENCE_DELETE_FAILED","DELETE","exports","_default"],"sources":["UserPreference.ts"],"sourcesContent":["import {HTTP_METHODS, WebexSDK} from '../types';\nimport type {\n UserPreference as UserPreferenceResponse,\n CreateUserPreferenceRequest,\n UpdateUserPreferenceRequest,\n GetUserPreferenceParams,\n} from './config/types';\nimport LoggerProxy from '../logger-proxy';\nimport WebexRequest from './core/WebexRequest';\nimport MetricsManager from '../metrics/MetricsManager';\nimport {WCC_API_GATEWAY} from './constants';\nimport {endPointMap} from './config/constants';\nimport {METRIC_EVENT_NAMES} from '../metrics/constants';\n\n/**\n * UserPreference API class for managing Webex Contact Center user preferences.\n * Provides functionality to get, create, update, and delete user preferences.\n *\n * @class UserPreference\n * @public\n * @example\n * ```typescript\n * import Webex from 'webex';\n *\n * const webex = new Webex({ credentials: 'YOUR_ACCESS_TOKEN' });\n * const cc = webex.cc;\n *\n * // Register and login first\n * await cc.register();\n * await cc.stationLogin({ teamId: 'team123', loginOption: 'BROWSER' });\n *\n * // Get UserPreference API instance from ContactCenter\n * const userPreferenceAPI = cc.userPreference;\n *\n * // Get user preferences for the current user\n * const preferences = await userPreferenceAPI.getUserPreference();\n *\n * // Create new user preferences\n * const newPreferences = await userPreferenceAPI.createUserPreference({\n * userId: 'user123',\n * preferences: { e911Reminder: true }\n * });\n *\n * // Update user preferences\n * const updatedPreferences = await userPreferenceAPI.updateUserPreference('user123', {\n * preferences: { e911Reminder: false }\n * });\n *\n * // Delete user preferences\n * await userPreferenceAPI.deleteUserPreference('user123');\n * ```\n */\nexport class UserPreference {\n private webexRequest: WebexRequest;\n private webex: WebexSDK;\n private getUserId: () => string;\n private metricsManager: MetricsManager;\n\n /**\n * Creates an instance of UserPreference\n * @param {WebexSDK} webex - The Webex SDK instance\n * @param {() => string} getUserId - Function to get the current user's CI user ID\n * @public\n */\n constructor(webex: WebexSDK, getUserId: () => string) {\n this.webex = webex;\n this.webexRequest = WebexRequest.getInstance({webex});\n this.getUserId = getUserId;\n this.metricsManager = MetricsManager.getInstance({webex});\n }\n\n /**\n * Fetches user preferences for a specific user\n * @param {GetUserPreferenceParams} [params] - Optional parameters for fetching preferences\n * @param {string} [params.userId] - User ID to fetch preferences for. Defaults to current user's CI user ID.\n * @param {number} [params.page=0] - Page number (0-indexed). Default: 0\n * @param {number} [params.pageSize=100] - Number of items per page. Default: 100\n * @returns {Promise<UserPreferenceResponse>} Promise resolving to user preferences\n * @throws {Error} If the API call fails\n * @public\n * @example\n * ```typescript\n * // Get preferences for current user\n * const preferences = await userPreferenceAPI.getUserPreference();\n *\n * // Get preferences for a specific user\n * const preferences = await userPreferenceAPI.getUserPreference({ userId: 'user123' });\n *\n * // Get preferences with pagination\n * const preferences = await userPreferenceAPI.getUserPreference({ page: 0, pageSize: 50 });\n * ```\n */\n public async getUserPreference(\n params?: GetUserPreferenceParams\n ): Promise<UserPreferenceResponse> {\n const {userId, page, pageSize} = params || {};\n const targetUserId = userId || this.getUserId();\n const orgId = this.webex.credentials.getOrgId();\n\n LoggerProxy.info('Fetching user preferences', {\n module: 'UserPreference',\n method: 'getUserPreference',\n data: {\n orgId,\n userId: targetUserId,\n page,\n pageSize,\n },\n });\n\n if (!targetUserId) {\n LoggerProxy.error('getUserPreference called without a valid userId', {\n module: 'UserPreference',\n method: 'getUserPreference',\n data: {\n orgId,\n userId: targetUserId,\n error: 'Missing userId. Ensure user is logged in or provide a userId.',\n },\n });\n\n throw new Error('UserPreference: userId is not available.');\n }\n\n try {\n let resource = endPointMap.userPreference(orgId, targetUserId);\n\n // Build query parameters if provided\n const queryParams: string[] = [];\n if (page !== undefined) queryParams.push(`page=${page}`);\n if (pageSize !== undefined) queryParams.push(`pageSize=${pageSize}`);\n if (queryParams.length > 0) {\n resource = `${resource}?${queryParams.join('&')}`;\n }\n\n LoggerProxy.info('Making API request to fetch user preferences', {\n module: 'UserPreference',\n method: 'getUserPreference',\n data: {\n resource,\n service: WCC_API_GATEWAY,\n },\n });\n\n this.metricsManager.timeEvent(METRIC_EVENT_NAMES.USER_PREFERENCE_GET_SUCCESS);\n this.metricsManager.timeEvent(METRIC_EVENT_NAMES.USER_PREFERENCE_GET_FAILED);\n\n const response = await this.webexRequest.request({\n service: WCC_API_GATEWAY,\n resource,\n method: HTTP_METHODS.GET,\n });\n\n LoggerProxy.info('Successfully retrieved user preferences', {\n module: 'UserPreference',\n method: 'getUserPreference',\n data: {\n statusCode: response.statusCode,\n userId: targetUserId,\n },\n });\n\n this.metricsManager.trackEvent(\n METRIC_EVENT_NAMES.USER_PREFERENCE_GET_SUCCESS,\n {\n orgId,\n userId: targetUserId,\n statusCode: response.statusCode,\n },\n ['behavioral', 'operational']\n );\n\n return response.body;\n } catch (error) {\n const errorData = {\n orgId,\n userId: targetUserId,\n error: error instanceof Error ? error.message : String(error),\n };\n\n LoggerProxy.error('Failed to fetch user preferences', {\n module: 'UserPreference',\n method: 'getUserPreference',\n data: errorData,\n error,\n });\n\n this.metricsManager.trackEvent(METRIC_EVENT_NAMES.USER_PREFERENCE_GET_FAILED, errorData, [\n 'behavioral',\n 'operational',\n ]);\n\n throw error;\n }\n }\n\n /**\n * Creates new user preferences\n * @param {CreateUserPreferenceRequest} data - The user preference data to create\n * @returns {Promise<UserPreference>} Promise resolving to created user preferences\n * @throws {Error} If the API call fails\n * @public\n * @example\n * ```typescript\n * const newPreferences = await userPreferenceAPI.createUserPreference({\n * userId: 'user123',\n * preferences: { e911Reminder: true, notificationSettings: { email: true } }\n * });\n * ```\n */\n public async createUserPreference(\n data: CreateUserPreferenceRequest\n ): Promise<UserPreferenceResponse> {\n const orgId = this.webex.credentials.getOrgId();\n\n LoggerProxy.info('Creating user preferences', {\n module: 'UserPreference',\n method: 'createUserPreference',\n data: {\n orgId,\n userId: data.userId,\n },\n });\n\n if (!data.userId) {\n LoggerProxy.error('createUserPreference called without a valid userId', {\n module: 'UserPreference',\n method: 'createUserPreference',\n data: {\n orgId,\n error: 'Missing userId in request data.',\n },\n });\n\n throw new Error('UserPreference: userId is required to create user preferences.');\n }\n\n try {\n const resource = endPointMap.userPreferenceCreate(orgId);\n\n LoggerProxy.info('Making API request to create user preferences', {\n module: 'UserPreference',\n method: 'createUserPreference',\n data: {\n resource,\n service: WCC_API_GATEWAY,\n },\n });\n\n this.metricsManager.timeEvent(METRIC_EVENT_NAMES.USER_PREFERENCE_CREATE_SUCCESS);\n this.metricsManager.timeEvent(METRIC_EVENT_NAMES.USER_PREFERENCE_CREATE_FAILED);\n\n const response = await this.webexRequest.request({\n service: WCC_API_GATEWAY,\n resource,\n method: HTTP_METHODS.POST,\n body: data,\n });\n\n LoggerProxy.info('Successfully created user preferences', {\n module: 'UserPreference',\n method: 'createUserPreference',\n data: {\n statusCode: response.statusCode,\n userId: data.userId,\n },\n });\n\n this.metricsManager.trackEvent(\n METRIC_EVENT_NAMES.USER_PREFERENCE_CREATE_SUCCESS,\n {\n orgId,\n userId: data.userId,\n statusCode: response.statusCode,\n },\n ['behavioral', 'operational']\n );\n\n return response.body;\n } catch (error) {\n const errorData = {\n orgId,\n userId: data.userId,\n error: error instanceof Error ? error.message : String(error),\n };\n\n LoggerProxy.error('Failed to create user preferences', {\n module: 'UserPreference',\n method: 'createUserPreference',\n data: errorData,\n error,\n });\n\n this.metricsManager.trackEvent(METRIC_EVENT_NAMES.USER_PREFERENCE_CREATE_FAILED, errorData, [\n 'behavioral',\n 'operational',\n ]);\n\n throw error;\n }\n }\n\n /**\n * Updates existing user preferences\n * @param {string} userId - User ID to update preferences for\n * @param {UpdateUserPreferenceRequest} data - The user preference data to update\n * @returns {Promise<UserPreference>} Promise resolving to updated user preferences\n * @throws {Error} If the API call fails\n * @public\n * @example\n * ```typescript\n * const updatedPreferences = await userPreferenceAPI.updateUserPreference('user123', {\n * preferences: { e911Reminder: false }\n * });\n * ```\n */\n public async updateUserPreference(\n userId: string,\n data: UpdateUserPreferenceRequest\n ): Promise<UserPreferenceResponse> {\n const orgId = this.webex.credentials.getOrgId();\n\n LoggerProxy.info('Updating user preferences', {\n module: 'UserPreference',\n method: 'updateUserPreference',\n data: {\n orgId,\n userId,\n },\n });\n\n if (!userId) {\n LoggerProxy.error('updateUserPreference called without a valid userId', {\n module: 'UserPreference',\n method: 'updateUserPreference',\n data: {\n orgId,\n error: 'Missing userId parameter.',\n },\n });\n\n throw new Error('UserPreference: userId is required to update user preferences.');\n }\n\n try {\n const resource = endPointMap.userPreference(orgId, userId);\n\n LoggerProxy.info('Making API request to update user preferences', {\n module: 'UserPreference',\n method: 'updateUserPreference',\n data: {\n resource,\n service: WCC_API_GATEWAY,\n },\n });\n\n this.metricsManager.timeEvent(METRIC_EVENT_NAMES.USER_PREFERENCE_UPDATE_SUCCESS);\n this.metricsManager.timeEvent(METRIC_EVENT_NAMES.USER_PREFERENCE_UPDATE_FAILED);\n\n const response = await this.webexRequest.request({\n service: WCC_API_GATEWAY,\n resource,\n method: HTTP_METHODS.PUT,\n body: data,\n });\n\n LoggerProxy.info('Successfully updated user preferences', {\n module: 'UserPreference',\n method: 'updateUserPreference',\n data: {\n statusCode: response.statusCode,\n userId,\n },\n });\n\n this.metricsManager.trackEvent(\n METRIC_EVENT_NAMES.USER_PREFERENCE_UPDATE_SUCCESS,\n {\n orgId,\n userId,\n statusCode: response.statusCode,\n },\n ['behavioral', 'operational']\n );\n\n return response.body;\n } catch (error) {\n const errorData = {\n orgId,\n userId,\n error: error instanceof Error ? error.message : String(error),\n };\n\n LoggerProxy.error('Failed to update user preferences', {\n module: 'UserPreference',\n method: 'updateUserPreference',\n data: errorData,\n error,\n });\n\n this.metricsManager.trackEvent(METRIC_EVENT_NAMES.USER_PREFERENCE_UPDATE_FAILED, errorData, [\n 'behavioral',\n 'operational',\n ]);\n\n throw error;\n }\n }\n\n /**\n * Deletes user preferences for a specific user\n * @param {string} userId - User ID to delete preferences for\n * @returns {Promise<void>} Promise resolving when deletion is complete\n * @throws {Error} If the API call fails\n * @public\n * @example\n * ```typescript\n * await userPreferenceAPI.deleteUserPreference('user123');\n * ```\n */\n public async deleteUserPreference(userId: string): Promise<void> {\n const orgId = this.webex.credentials.getOrgId();\n\n LoggerProxy.info('Deleting user preferences', {\n module: 'UserPreference',\n method: 'deleteUserPreference',\n data: {\n orgId,\n userId,\n },\n });\n\n if (!userId) {\n LoggerProxy.error('deleteUserPreference called without a valid userId', {\n module: 'UserPreference',\n method: 'deleteUserPreference',\n data: {\n orgId,\n error: 'Missing userId parameter.',\n },\n });\n\n throw new Error('UserPreference: userId is required to delete user preferences.');\n }\n\n try {\n const resource = endPointMap.userPreference(orgId, userId);\n\n LoggerProxy.info('Making API request to delete user preferences', {\n module: 'UserPreference',\n method: 'deleteUserPreference',\n data: {\n resource,\n service: WCC_API_GATEWAY,\n },\n });\n\n this.metricsManager.timeEvent(METRIC_EVENT_NAMES.USER_PREFERENCE_DELETE_SUCCESS);\n this.metricsManager.timeEvent(METRIC_EVENT_NAMES.USER_PREFERENCE_DELETE_FAILED);\n\n const response = await this.webexRequest.request({\n service: WCC_API_GATEWAY,\n resource,\n method: HTTP_METHODS.DELETE,\n });\n\n LoggerProxy.info('Successfully deleted user preferences', {\n module: 'UserPreference',\n method: 'deleteUserPreference',\n data: {\n statusCode: response.statusCode,\n userId,\n },\n });\n\n this.metricsManager.trackEvent(\n METRIC_EVENT_NAMES.USER_PREFERENCE_DELETE_SUCCESS,\n {\n orgId,\n userId,\n statusCode: response.statusCode,\n },\n ['behavioral', 'operational']\n );\n } catch (error) {\n const errorData = {\n orgId,\n userId,\n error: error instanceof Error ? error.message : String(error),\n };\n\n LoggerProxy.error('Failed to delete user preferences', {\n module: 'UserPreference',\n method: 'deleteUserPreference',\n data: errorData,\n error,\n });\n\n this.metricsManager.trackEvent(METRIC_EVENT_NAMES.USER_PREFERENCE_DELETE_FAILED, errorData, [\n 'behavioral',\n 'operational',\n ]);\n\n throw error;\n }\n }\n}\n\nexport default UserPreference;\n"],"mappings":"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","ignoreList":[]}
@@ -262,6 +262,27 @@ const endPointMap = exports.endPointMap = {
262
262
  * const url = endPointMap.outdialAniEntries('org123', 'ani456', 'page=0&pageSize=10');
263
263
  * @ignore
264
264
  */
265
- outdialAniEntries: (orgId, outdialANI, queryParams) => `organization/${orgId}/v2/outdial-ani/${outdialANI}/entry${queryParams ? `?${queryParams}` : ''}`
265
+ outdialAniEntries: (orgId, outdialANI, queryParams) => `organization/${orgId}/v2/outdial-ani/${outdialANI}/entry${queryParams ? `?${queryParams}` : ''}`,
266
+ /**
267
+ * Gets the endpoint for user preference by user ID.
268
+ * @param orgId - Organization ID.
269
+ * @param userId - User ID.
270
+ * @returns The endpoint URL string.
271
+ * @public
272
+ * @example
273
+ * const url = endPointMap.userPreference('org123', 'user456');
274
+ * @ignore
275
+ */
276
+ userPreference: (orgId, userId) => `organization/${orgId}/user-preference/${userId}`,
277
+ /**
278
+ * Gets the endpoint for creating user preference.
279
+ * @param orgId - Organization ID.
280
+ * @returns The endpoint URL string.
281
+ * @public
282
+ * @example
283
+ * const url = endPointMap.userPreferenceCreate('org123');
284
+ * @ignore
285
+ */
286
+ userPreferenceCreate: orgId => `organization/${orgId}/user-preference`
266
287
  };
267
288
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["DEFAULT_PAGE","exports","DEFAULT_PAGE_SIZE","AGENT_STATE_AVAILABLE_ID","AGENT_STATE_AVAILABLE","AGENT_STATE_AVAILABLE_DESCRIPTION","DEFAULT_AUXCODE_ATTRIBUTES","METHODS","GET_AGENT_CONFIG","GET_USER_USING_CI","GET_DESKTOP_PROFILE_BY_ID","GET_MULTIMEDIA_PROFILE_BY_ID","GET_LIST_OF_TEAMS","GET_ALL_TEAMS","GET_LIST_OF_AUX_CODES","GET_ALL_AUX_CODES","GET_SITE_INFO","GET_ORG_INFO","GET_ORGANIZATION_SETTING","GET_TENANT_DATA","GET_URL_MAPPING","GET_DIAL_PLAN_DATA","GET_AI_FEATURE_FLAGS","GET_QUEUES","PARSE_AGENT_CONFIGS","GET_URL_MAPPING_UTIL","GET_MSFT_CONFIG","GET_WEBEX_CONFIG","GET_DEFAULT_AGENT_DN","GET_FILTERED_DIALPLAN_ENTRIES","GET_FILTER_AUX_CODES","GET_DEFAULT_WRAP_UP_CODE","endPointMap","userByCI","orgId","agentId","desktopProfile","desktopProfileId","multimediaProfile","multimediaProfileId","listTeams","page","pageSize","filter","length","listAuxCodes","attributes","orgInfo","orgSettings","siteInfo","siteId","tenantData","urlMapping","dialPlan","aiFeature","queueList","queryParams","entryPointList","addressBookEntries","addressBookId","outdialAniEntries","outdialANI"],"sources":["constants.ts"],"sourcesContent":["// making query params configurable for List Teams and List Aux Codes API\nexport const DEFAULT_PAGE = 0;\n\n/**\n * Default page size for paginated API requests.\n * @type {number}\n * @public\n * @example\n * const pageSize = DEFAULT_PAGE_SIZE; // 100\n * @ignore\n */\nexport const DEFAULT_PAGE_SIZE = 100;\n\n/**\n * Agent state ID for 'Available'.\n * @type {string}\n * @public\n * @ignore\n */\nexport const AGENT_STATE_AVAILABLE_ID = '0';\n\n/**\n * Agent state label for 'Available'.\n * @type {string}\n * @public\n * @ignore\n */\nexport const AGENT_STATE_AVAILABLE = 'Available';\n\n/**\n * Description for the 'Available' agent state.\n * @type {string}\n * @public\n * @ignore\n */\nexport const AGENT_STATE_AVAILABLE_DESCRIPTION = 'Agent is available to receive calls';\n\n/**\n * Default attributes for auxiliary code API requests.\n * @type {string[]}\n * @public\n * @ignore\n */\nexport const DEFAULT_AUXCODE_ATTRIBUTES = [\n 'id',\n 'isSystemCode',\n 'name',\n 'defaultCode',\n 'workTypeCode',\n 'active',\n];\n\n// Method names for config services\nexport const METHODS = {\n // AgentConfigService methods\n GET_AGENT_CONFIG: 'getAgentConfig',\n GET_USER_USING_CI: 'getUserUsingCI',\n GET_DESKTOP_PROFILE_BY_ID: 'getDesktopProfileById',\n GET_MULTIMEDIA_PROFILE_BY_ID: 'getMultimediaProfileById',\n GET_LIST_OF_TEAMS: 'getListOfTeams',\n GET_ALL_TEAMS: 'getAllTeams',\n GET_LIST_OF_AUX_CODES: 'getListOfAuxCodes',\n GET_ALL_AUX_CODES: 'getAllAuxCodes',\n GET_SITE_INFO: 'getSiteInfo',\n GET_ORG_INFO: 'getOrgInfo',\n GET_ORGANIZATION_SETTING: 'getOrganizationSetting',\n GET_TENANT_DATA: 'getTenantData',\n GET_URL_MAPPING: 'getURLMapping',\n GET_DIAL_PLAN_DATA: 'getDialPlanData',\n GET_AI_FEATURE_FLAGS: 'getAIFeatureFlags',\n GET_QUEUES: 'getQueues',\n\n // Util methods\n PARSE_AGENT_CONFIGS: 'parseAgentConfigs',\n GET_URL_MAPPING_UTIL: 'getUrlMapping',\n GET_MSFT_CONFIG: 'getMsftConfig',\n GET_WEBEX_CONFIG: 'getWebexConfig',\n GET_DEFAULT_AGENT_DN: 'getDefaultAgentDN',\n GET_FILTERED_DIALPLAN_ENTRIES: 'getFilteredDialplanEntries',\n GET_FILTER_AUX_CODES: 'getFilterAuxCodes',\n GET_DEFAULT_WRAP_UP_CODE: 'getDefaultWrapUpCode',\n};\n\n/**\n * Maps API endpoint names to functions that generate endpoint URLs for various organization resources.\n * @public\n * @example\n * const url = endPointMap.userByCI('org123', 'agent456');\n */\nexport const endPointMap = {\n /**\n * Gets the endpoint for a user by CI user ID.\n * @param orgId - Organization ID.\n * @param agentId - Agent ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.userByCI('org123', 'agent456');\n * @ignore\n */\n userByCI: (orgId: string, agentId: string) =>\n `organization/${orgId}/user/by-ci-user-id/${agentId}`,\n\n /**\n * Gets the endpoint for a desktop profile.\n * @param orgId - Organization ID.\n * @param desktopProfileId - Desktop profile ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.desktopProfile('org123', 'profile789');\n * @ignore\n */\n desktopProfile: (orgId: string, desktopProfileId: string) =>\n `organization/${orgId}/agent-profile/${desktopProfileId}`,\n\n /**\n * Gets the endpoint for a multimedia profile.\n * @param orgId - Organization ID.\n * @param multimediaProfileId - Multimedia profile ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.multimediaProfile('org123', 'multi456');\n * @ignore\n */\n multimediaProfile: (orgId: string, multimediaProfileId: string) =>\n `organization/${orgId}/multimedia-profile/${multimediaProfileId}`,\n\n /**\n * Gets the endpoint for listing teams with optional filters.\n * @param orgId - Organization ID.\n * @param page - Page number.\n * @param pageSize - Page size.\n * @param filter - Array of team IDs to filter.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.listTeams('org123', 0, 100, ['team1', 'team2']);\n * @ignore\n */\n listTeams: (orgId: string, page: number, pageSize: number, filter: string[]) =>\n `organization/${orgId}/v2/team?page=${page}&pageSize=${pageSize}${\n filter && filter.length > 0 ? `&filter=id=in=(${filter})` : ''\n }`,\n\n /**\n * Gets the endpoint for listing auxiliary codes with optional filters and attributes.\n * @param orgId - Organization ID.\n * @param page - Page number.\n * @param pageSize - Page size.\n * @param filter - Array of auxiliary code IDs to filter.\n * @param attributes - Array of attribute names to include.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.listAuxCodes('org123', 0, 100, ['aux1'], ['id', 'name']);\n * @ignore\n */\n listAuxCodes: (\n orgId: string,\n page: number,\n pageSize: number,\n filter: string[],\n attributes: string[]\n ) =>\n `organization/${orgId}/v2/auxiliary-code?page=${page}&pageSize=${pageSize}${\n filter && filter.length > 0 ? `&filter=id=in=(${filter})` : ''\n }&attributes=${attributes}&desktopProfileFilter=true`,\n\n /**\n * Gets the endpoint for organization info.\n * @param orgId - Organization ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.orgInfo('org123');\n * @ignore\n */\n orgInfo: (orgId: string) => `organization/${orgId}`,\n\n /**\n * Gets the endpoint for organization settings.\n * @param orgId - Organization ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.orgSettings('org123');\n * @ignore\n */\n orgSettings: (orgId: string) => `organization/${orgId}/v2/organization-setting?agentView=true`,\n\n /**\n * Gets the endpoint for site info.\n * @param orgId - Organization ID.\n * @param siteId - Site ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.siteInfo('org123', 'site456');\n * @ignore\n */\n siteInfo: (orgId: string, siteId: string) => `organization/${orgId}/site/${siteId}`,\n\n /**\n * Gets the endpoint for tenant configuration data.\n * @param orgId - Organization ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.tenantData('org123');\n * @ignore\n */\n tenantData: (orgId: string) => `organization/${orgId}/v2/tenant-configuration?agentView=true`,\n\n /**\n * Gets the endpoint for organization URL mapping.\n * @param orgId - Organization ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.urlMapping('org123');\n * @ignore\n */\n urlMapping: (orgId: string) => `organization/${orgId}/v2/org-url-mapping?sort=name,ASC`,\n\n /**\n * Gets the endpoint for dial plan.\n * @param orgId - Organization ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.dialPlan('org123');\n * @ignore\n */\n dialPlan: (orgId: string) => `organization/${orgId}/dial-plan?agentView=true`,\n /**\n * Gets the endpoint for listing AI feature flags.\n * @param orgId - Organization ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.aiFeatureFlags('org123');\n * @ignore\n */\n aiFeature: (orgId: string) => `organization/${orgId}/v2/ai-feature?page=0&pageSize=100`,\n\n /**\n * Gets the endpoint for the queue list with custom query parameters.\n * @param orgId - Organization ID.\n * @param queryParams - Query parameters string.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.queueList('org123', 'page=0&pageSize=10');\n * @ignore\n */\n queueList: (orgId: string, queryParams: string) =>\n `/organization/${orgId}/v2/contact-service-queue?${queryParams}`,\n /**\n * Gets the endpoint for entry points list with custom query parameters.\n * @param orgId - Organization ID.\n * @param queryParams - Query parameters string.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.entryPointList('org123', 'page=0&pageSize=10');\n * @ignore\n */\n entryPointList: (orgId: string, queryParams: string) =>\n `/organization/${orgId}/v2/entry-point?${queryParams}`,\n /**\n * Gets the endpoint for address book entries with custom query parameters.\n * @param orgId - Organization ID.\n * @param addressBookId - Address book ID.\n * @param queryParams - Query parameters string.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.addressBookEntries('org123', 'book456', 'page=0&pageSize=10');\n * @ignore\n */\n addressBookEntries: (orgId: string, addressBookId: string, queryParams: string) =>\n `/organization/${orgId}/v2/address-book/${addressBookId}/entry?${queryParams}`,\n\n /**\n * Gets the endpoint for outdial ANI entries with custom query parameters.\n * @param orgId - Organization ID.\n * @param outdialANI - Outdial ANI ID.\n * @param queryParams - Query parameters string.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.outdialAniEntries('org123', 'ani456', 'page=0&pageSize=10');\n * @ignore\n */\n outdialAniEntries: (orgId: string, outdialANI: string, queryParams: string) =>\n `organization/${orgId}/v2/outdial-ani/${outdialANI}/entry${\n queryParams ? `?${queryParams}` : ''\n }`,\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["DEFAULT_PAGE","exports","DEFAULT_PAGE_SIZE","AGENT_STATE_AVAILABLE_ID","AGENT_STATE_AVAILABLE","AGENT_STATE_AVAILABLE_DESCRIPTION","DEFAULT_AUXCODE_ATTRIBUTES","METHODS","GET_AGENT_CONFIG","GET_USER_USING_CI","GET_DESKTOP_PROFILE_BY_ID","GET_MULTIMEDIA_PROFILE_BY_ID","GET_LIST_OF_TEAMS","GET_ALL_TEAMS","GET_LIST_OF_AUX_CODES","GET_ALL_AUX_CODES","GET_SITE_INFO","GET_ORG_INFO","GET_ORGANIZATION_SETTING","GET_TENANT_DATA","GET_URL_MAPPING","GET_DIAL_PLAN_DATA","GET_AI_FEATURE_FLAGS","GET_QUEUES","PARSE_AGENT_CONFIGS","GET_URL_MAPPING_UTIL","GET_MSFT_CONFIG","GET_WEBEX_CONFIG","GET_DEFAULT_AGENT_DN","GET_FILTERED_DIALPLAN_ENTRIES","GET_FILTER_AUX_CODES","GET_DEFAULT_WRAP_UP_CODE","endPointMap","userByCI","orgId","agentId","desktopProfile","desktopProfileId","multimediaProfile","multimediaProfileId","listTeams","page","pageSize","filter","length","listAuxCodes","attributes","orgInfo","orgSettings","siteInfo","siteId","tenantData","urlMapping","dialPlan","aiFeature","queueList","queryParams","entryPointList","addressBookEntries","addressBookId","outdialAniEntries","outdialANI","userPreference","userId","userPreferenceCreate"],"sources":["constants.ts"],"sourcesContent":["// making query params configurable for List Teams and List Aux Codes API\nexport const DEFAULT_PAGE = 0;\n\n/**\n * Default page size for paginated API requests.\n * @type {number}\n * @public\n * @example\n * const pageSize = DEFAULT_PAGE_SIZE; // 100\n * @ignore\n */\nexport const DEFAULT_PAGE_SIZE = 100;\n\n/**\n * Agent state ID for 'Available'.\n * @type {string}\n * @public\n * @ignore\n */\nexport const AGENT_STATE_AVAILABLE_ID = '0';\n\n/**\n * Agent state label for 'Available'.\n * @type {string}\n * @public\n * @ignore\n */\nexport const AGENT_STATE_AVAILABLE = 'Available';\n\n/**\n * Description for the 'Available' agent state.\n * @type {string}\n * @public\n * @ignore\n */\nexport const AGENT_STATE_AVAILABLE_DESCRIPTION = 'Agent is available to receive calls';\n\n/**\n * Default attributes for auxiliary code API requests.\n * @type {string[]}\n * @public\n * @ignore\n */\nexport const DEFAULT_AUXCODE_ATTRIBUTES = [\n 'id',\n 'isSystemCode',\n 'name',\n 'defaultCode',\n 'workTypeCode',\n 'active',\n];\n\n// Method names for config services\nexport const METHODS = {\n // AgentConfigService methods\n GET_AGENT_CONFIG: 'getAgentConfig',\n GET_USER_USING_CI: 'getUserUsingCI',\n GET_DESKTOP_PROFILE_BY_ID: 'getDesktopProfileById',\n GET_MULTIMEDIA_PROFILE_BY_ID: 'getMultimediaProfileById',\n GET_LIST_OF_TEAMS: 'getListOfTeams',\n GET_ALL_TEAMS: 'getAllTeams',\n GET_LIST_OF_AUX_CODES: 'getListOfAuxCodes',\n GET_ALL_AUX_CODES: 'getAllAuxCodes',\n GET_SITE_INFO: 'getSiteInfo',\n GET_ORG_INFO: 'getOrgInfo',\n GET_ORGANIZATION_SETTING: 'getOrganizationSetting',\n GET_TENANT_DATA: 'getTenantData',\n GET_URL_MAPPING: 'getURLMapping',\n GET_DIAL_PLAN_DATA: 'getDialPlanData',\n GET_AI_FEATURE_FLAGS: 'getAIFeatureFlags',\n GET_QUEUES: 'getQueues',\n\n // Util methods\n PARSE_AGENT_CONFIGS: 'parseAgentConfigs',\n GET_URL_MAPPING_UTIL: 'getUrlMapping',\n GET_MSFT_CONFIG: 'getMsftConfig',\n GET_WEBEX_CONFIG: 'getWebexConfig',\n GET_DEFAULT_AGENT_DN: 'getDefaultAgentDN',\n GET_FILTERED_DIALPLAN_ENTRIES: 'getFilteredDialplanEntries',\n GET_FILTER_AUX_CODES: 'getFilterAuxCodes',\n GET_DEFAULT_WRAP_UP_CODE: 'getDefaultWrapUpCode',\n};\n\n/**\n * Maps API endpoint names to functions that generate endpoint URLs for various organization resources.\n * @public\n * @example\n * const url = endPointMap.userByCI('org123', 'agent456');\n */\nexport const endPointMap = {\n /**\n * Gets the endpoint for a user by CI user ID.\n * @param orgId - Organization ID.\n * @param agentId - Agent ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.userByCI('org123', 'agent456');\n * @ignore\n */\n userByCI: (orgId: string, agentId: string) =>\n `organization/${orgId}/user/by-ci-user-id/${agentId}`,\n\n /**\n * Gets the endpoint for a desktop profile.\n * @param orgId - Organization ID.\n * @param desktopProfileId - Desktop profile ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.desktopProfile('org123', 'profile789');\n * @ignore\n */\n desktopProfile: (orgId: string, desktopProfileId: string) =>\n `organization/${orgId}/agent-profile/${desktopProfileId}`,\n\n /**\n * Gets the endpoint for a multimedia profile.\n * @param orgId - Organization ID.\n * @param multimediaProfileId - Multimedia profile ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.multimediaProfile('org123', 'multi456');\n * @ignore\n */\n multimediaProfile: (orgId: string, multimediaProfileId: string) =>\n `organization/${orgId}/multimedia-profile/${multimediaProfileId}`,\n\n /**\n * Gets the endpoint for listing teams with optional filters.\n * @param orgId - Organization ID.\n * @param page - Page number.\n * @param pageSize - Page size.\n * @param filter - Array of team IDs to filter.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.listTeams('org123', 0, 100, ['team1', 'team2']);\n * @ignore\n */\n listTeams: (orgId: string, page: number, pageSize: number, filter: string[]) =>\n `organization/${orgId}/v2/team?page=${page}&pageSize=${pageSize}${\n filter && filter.length > 0 ? `&filter=id=in=(${filter})` : ''\n }`,\n\n /**\n * Gets the endpoint for listing auxiliary codes with optional filters and attributes.\n * @param orgId - Organization ID.\n * @param page - Page number.\n * @param pageSize - Page size.\n * @param filter - Array of auxiliary code IDs to filter.\n * @param attributes - Array of attribute names to include.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.listAuxCodes('org123', 0, 100, ['aux1'], ['id', 'name']);\n * @ignore\n */\n listAuxCodes: (\n orgId: string,\n page: number,\n pageSize: number,\n filter: string[],\n attributes: string[]\n ) =>\n `organization/${orgId}/v2/auxiliary-code?page=${page}&pageSize=${pageSize}${\n filter && filter.length > 0 ? `&filter=id=in=(${filter})` : ''\n }&attributes=${attributes}&desktopProfileFilter=true`,\n\n /**\n * Gets the endpoint for organization info.\n * @param orgId - Organization ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.orgInfo('org123');\n * @ignore\n */\n orgInfo: (orgId: string) => `organization/${orgId}`,\n\n /**\n * Gets the endpoint for organization settings.\n * @param orgId - Organization ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.orgSettings('org123');\n * @ignore\n */\n orgSettings: (orgId: string) => `organization/${orgId}/v2/organization-setting?agentView=true`,\n\n /**\n * Gets the endpoint for site info.\n * @param orgId - Organization ID.\n * @param siteId - Site ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.siteInfo('org123', 'site456');\n * @ignore\n */\n siteInfo: (orgId: string, siteId: string) => `organization/${orgId}/site/${siteId}`,\n\n /**\n * Gets the endpoint for tenant configuration data.\n * @param orgId - Organization ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.tenantData('org123');\n * @ignore\n */\n tenantData: (orgId: string) => `organization/${orgId}/v2/tenant-configuration?agentView=true`,\n\n /**\n * Gets the endpoint for organization URL mapping.\n * @param orgId - Organization ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.urlMapping('org123');\n * @ignore\n */\n urlMapping: (orgId: string) => `organization/${orgId}/v2/org-url-mapping?sort=name,ASC`,\n\n /**\n * Gets the endpoint for dial plan.\n * @param orgId - Organization ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.dialPlan('org123');\n * @ignore\n */\n dialPlan: (orgId: string) => `organization/${orgId}/dial-plan?agentView=true`,\n /**\n * Gets the endpoint for listing AI feature flags.\n * @param orgId - Organization ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.aiFeatureFlags('org123');\n * @ignore\n */\n aiFeature: (orgId: string) => `organization/${orgId}/v2/ai-feature?page=0&pageSize=100`,\n\n /**\n * Gets the endpoint for the queue list with custom query parameters.\n * @param orgId - Organization ID.\n * @param queryParams - Query parameters string.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.queueList('org123', 'page=0&pageSize=10');\n * @ignore\n */\n queueList: (orgId: string, queryParams: string) =>\n `/organization/${orgId}/v2/contact-service-queue?${queryParams}`,\n /**\n * Gets the endpoint for entry points list with custom query parameters.\n * @param orgId - Organization ID.\n * @param queryParams - Query parameters string.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.entryPointList('org123', 'page=0&pageSize=10');\n * @ignore\n */\n entryPointList: (orgId: string, queryParams: string) =>\n `/organization/${orgId}/v2/entry-point?${queryParams}`,\n /**\n * Gets the endpoint for address book entries with custom query parameters.\n * @param orgId - Organization ID.\n * @param addressBookId - Address book ID.\n * @param queryParams - Query parameters string.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.addressBookEntries('org123', 'book456', 'page=0&pageSize=10');\n * @ignore\n */\n addressBookEntries: (orgId: string, addressBookId: string, queryParams: string) =>\n `/organization/${orgId}/v2/address-book/${addressBookId}/entry?${queryParams}`,\n\n /**\n * Gets the endpoint for outdial ANI entries with custom query parameters.\n * @param orgId - Organization ID.\n * @param outdialANI - Outdial ANI ID.\n * @param queryParams - Query parameters string.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.outdialAniEntries('org123', 'ani456', 'page=0&pageSize=10');\n * @ignore\n */\n outdialAniEntries: (orgId: string, outdialANI: string, queryParams: string) =>\n `organization/${orgId}/v2/outdial-ani/${outdialANI}/entry${\n queryParams ? `?${queryParams}` : ''\n }`,\n\n /**\n * Gets the endpoint for user preference by user ID.\n * @param orgId - Organization ID.\n * @param userId - User ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.userPreference('org123', 'user456');\n * @ignore\n */\n userPreference: (orgId: string, userId: string) =>\n `organization/${orgId}/user-preference/${userId}`,\n\n /**\n * Gets the endpoint for creating user preference.\n * @param orgId - Organization ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.userPreferenceCreate('org123');\n * @ignore\n */\n userPreferenceCreate: (orgId: string) => `organization/${orgId}/user-preference`,\n};\n"],"mappings":"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","ignoreList":[]}
@@ -401,4 +401,24 @@ const WRAP_UP_CODE = exports.WRAP_UP_CODE = 'WRAP_UP_CODE';
401
401
  * Parameters for fetching outdial ANI entries
402
402
  * @public
403
403
  */
404
+
405
+ /**
406
+ * User preference data structure
407
+ * @public
408
+ */
409
+
410
+ /**
411
+ * Request payload for creating user preferences
412
+ * @public
413
+ */
414
+
415
+ /**
416
+ * Request payload for updating user preferences
417
+ * @public
418
+ */
419
+
420
+ /**
421
+ * Query parameters for fetching user preferences
422
+ * @public
423
+ */
404
424
  //# sourceMappingURL=types.js.map