clarion-shared-types 1.0.90 → 1.0.92

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 (56) hide show
  1. package/dist/cjs/index.js +1 -0
  2. package/dist/cjs/index.js.map +1 -1
  3. package/dist/cjs/modules/permission/enums/permission-actions.enum.js +27 -0
  4. package/dist/cjs/modules/permission/enums/permission-actions.enum.js.map +1 -1
  5. package/dist/cjs/modules/permission/enums/permissions-moudule.enum.js +1 -0
  6. package/dist/cjs/modules/permission/enums/permissions-moudule.enum.js.map +1 -1
  7. package/dist/cjs/modules/support/enums/support-enums.js +375 -0
  8. package/dist/cjs/modules/support/enums/support-enums.js.map +1 -0
  9. package/dist/cjs/modules/support/index.js +27 -0
  10. package/dist/cjs/modules/support/index.js.map +1 -0
  11. package/dist/cjs/modules/support/interfaces/customer-feedback.dto.js +3 -0
  12. package/dist/cjs/modules/support/interfaces/customer-feedback.dto.js.map +1 -0
  13. package/dist/cjs/modules/support/interfaces/support-configuration.dto.js +3 -0
  14. package/dist/cjs/modules/support/interfaces/support-configuration.dto.js.map +1 -0
  15. package/dist/cjs/modules/support/interfaces/support-reports.dto.js +3 -0
  16. package/dist/cjs/modules/support/interfaces/support-reports.dto.js.map +1 -0
  17. package/dist/cjs/modules/support/interfaces/support-sync.dto.js +3 -0
  18. package/dist/cjs/modules/support/interfaces/support-sync.dto.js.map +1 -0
  19. package/dist/cjs/modules/support/interfaces/support-ticket.dto.js +3 -0
  20. package/dist/cjs/modules/support/interfaces/support-ticket.dto.js.map +1 -0
  21. package/dist/cjs/modules/support/utils/support-display.util.js +364 -0
  22. package/dist/cjs/modules/support/utils/support-display.util.js.map +1 -0
  23. package/dist/esm/index.js +1 -0
  24. package/dist/esm/index.js.map +1 -1
  25. package/dist/esm/modules/permission/enums/permission-actions.enum.js +27 -0
  26. package/dist/esm/modules/permission/enums/permission-actions.enum.js.map +1 -1
  27. package/dist/esm/modules/permission/enums/permissions-moudule.enum.js +1 -0
  28. package/dist/esm/modules/permission/enums/permissions-moudule.enum.js.map +1 -1
  29. package/dist/esm/modules/support/enums/support-enums.js +372 -0
  30. package/dist/esm/modules/support/enums/support-enums.js.map +1 -0
  31. package/dist/esm/modules/support/index.js +11 -0
  32. package/dist/esm/modules/support/index.js.map +1 -0
  33. package/dist/esm/modules/support/interfaces/customer-feedback.dto.js +2 -0
  34. package/dist/esm/modules/support/interfaces/customer-feedback.dto.js.map +1 -0
  35. package/dist/esm/modules/support/interfaces/support-configuration.dto.js +2 -0
  36. package/dist/esm/modules/support/interfaces/support-configuration.dto.js.map +1 -0
  37. package/dist/esm/modules/support/interfaces/support-reports.dto.js +2 -0
  38. package/dist/esm/modules/support/interfaces/support-reports.dto.js.map +1 -0
  39. package/dist/esm/modules/support/interfaces/support-sync.dto.js +2 -0
  40. package/dist/esm/modules/support/interfaces/support-sync.dto.js.map +1 -0
  41. package/dist/esm/modules/support/interfaces/support-ticket.dto.js +2 -0
  42. package/dist/esm/modules/support/interfaces/support-ticket.dto.js.map +1 -0
  43. package/dist/esm/modules/support/utils/support-display.util.js +351 -0
  44. package/dist/esm/modules/support/utils/support-display.util.js.map +1 -0
  45. package/dist/types/index.d.ts +1 -0
  46. package/dist/types/modules/permission/enums/permission-actions.enum.d.ts +22 -1
  47. package/dist/types/modules/permission/enums/permissions-moudule.enum.d.ts +2 -1
  48. package/dist/types/modules/support/enums/support-enums.d.ts +341 -0
  49. package/dist/types/modules/support/index.d.ts +7 -0
  50. package/dist/types/modules/support/interfaces/customer-feedback.dto.d.ts +151 -0
  51. package/dist/types/modules/support/interfaces/support-configuration.dto.d.ts +244 -0
  52. package/dist/types/modules/support/interfaces/support-reports.dto.d.ts +180 -0
  53. package/dist/types/modules/support/interfaces/support-sync.dto.d.ts +92 -0
  54. package/dist/types/modules/support/interfaces/support-ticket.dto.d.ts +289 -0
  55. package/dist/types/modules/support/utils/support-display.util.d.ts +67 -0
  56. package/package.json +1 -1
@@ -0,0 +1,364 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SUPPORT_TEAM_MEMBER_ROLE_LABELS = exports.SUPPORT_ROUTING_MATCH_TYPE_LABELS = exports.SUPPORT_QUEUE_ASSIGNMENT_STRATEGY_LABELS = exports.SUPPORT_RELATED_ENTITY_TYPE_LABELS = exports.SUPPORT_WEBHOOK_STATUS_LABELS = exports.SUPPORT_SYNC_FAILURE_REASON_LABELS = exports.SUPPORT_SYNC_OPERATION_LABELS = exports.SUPPORT_SYNC_STATUS_LABELS = exports.SUPPORT_PROVIDER_CAPABILITY_LABELS = exports.SUPPORT_PROVIDER_LABELS = exports.CUSTOMER_FEEDBACK_SENTIMENT_LABELS = exports.CUSTOMER_FEEDBACK_CHANNEL_LABELS = exports.CUSTOMER_FEEDBACK_STATUS_LABELS = exports.CUSTOMER_FEEDBACK_TYPE_LABELS = exports.SUPPORT_SLA_CLOCK_LABELS = exports.SUPPORT_SLA_TARGET_LABELS = exports.SUPPORT_SLA_STATE_LABELS = exports.SUPPORT_MESSAGE_AUTHOR_TYPE_LABELS = exports.SUPPORT_TICKET_MESSAGE_TYPE_LABELS = exports.SUPPORT_TICKET_SOURCE_LABELS = exports.SUPPORT_TICKET_CHANNEL_LABELS = exports.SUPPORT_TICKET_PRIORITY_LABELS = exports.SUPPORT_TICKET_STATUS_LABELS = void 0;
4
+ exports.supportTicketStatusTone = supportTicketStatusTone;
5
+ exports.supportTicketPriorityTone = supportTicketPriorityTone;
6
+ exports.supportSlaStateTone = supportSlaStateTone;
7
+ exports.supportSyncStatusTone = supportSyncStatusTone;
8
+ exports.customerFeedbackStatusTone = customerFeedbackStatusTone;
9
+ exports.customerFeedbackSentimentTone = customerFeedbackSentimentTone;
10
+ exports.describeSupportSlaDeadline = describeSupportSlaDeadline;
11
+ exports.formatSupportDuration = formatSupportDuration;
12
+ exports.supportProviderSupports = supportProviderSupports;
13
+ exports.isCustomerVisibleSupportMessage = isCustomerVisibleSupportMessage;
14
+ const support_enums_1 = require("../enums/support-enums");
15
+ /**
16
+ * Human labels for the support enums.
17
+ *
18
+ * Kept in the shared package rather than in the admin app so every screen that
19
+ * shows a ticket - the list, the detail page, the queue board, the customer's
20
+ * own screen - names the same state the same way. An operator reading "Waiting
21
+ * on customer" in one place and "Pending reply" in another would reasonably
22
+ * assume they were different things.
23
+ */
24
+ exports.SUPPORT_TICKET_STATUS_LABELS = {
25
+ [support_enums_1.SupportTicketStatus.NEW]: 'New',
26
+ [support_enums_1.SupportTicketStatus.OPEN]: 'Open',
27
+ [support_enums_1.SupportTicketStatus.ASSIGNED]: 'Assigned',
28
+ [support_enums_1.SupportTicketStatus.IN_PROGRESS]: 'In progress',
29
+ [support_enums_1.SupportTicketStatus.WAITING_ON_CUSTOMER]: 'Waiting on customer',
30
+ [support_enums_1.SupportTicketStatus.WAITING_ON_INTERNAL_TEAM]: 'Waiting on our team',
31
+ [support_enums_1.SupportTicketStatus.RESOLVED]: 'Resolved',
32
+ [support_enums_1.SupportTicketStatus.CLOSED]: 'Closed',
33
+ [support_enums_1.SupportTicketStatus.REOPENED]: 'Reopened',
34
+ [support_enums_1.SupportTicketStatus.CANCELLED]: 'Cancelled',
35
+ };
36
+ exports.SUPPORT_TICKET_PRIORITY_LABELS = {
37
+ [support_enums_1.SupportTicketPriority.CRITICAL]: 'Critical',
38
+ [support_enums_1.SupportTicketPriority.URGENT]: 'Urgent',
39
+ [support_enums_1.SupportTicketPriority.HIGH]: 'High',
40
+ [support_enums_1.SupportTicketPriority.NORMAL]: 'Normal',
41
+ [support_enums_1.SupportTicketPriority.LOW]: 'Low',
42
+ };
43
+ exports.SUPPORT_TICKET_CHANNEL_LABELS = {
44
+ [support_enums_1.SupportTicketChannel.MOBILE_APP]: 'Mobile app',
45
+ [support_enums_1.SupportTicketChannel.WEB_APP]: 'Web app',
46
+ [support_enums_1.SupportTicketChannel.AGENT_PORTAL]: 'Raised by agent',
47
+ [support_enums_1.SupportTicketChannel.PROVIDER]: 'Helpdesk',
48
+ [support_enums_1.SupportTicketChannel.EMAIL]: 'Email',
49
+ [support_enums_1.SupportTicketChannel.PHONE]: 'Phone',
50
+ [support_enums_1.SupportTicketChannel.SMS]: 'SMS',
51
+ [support_enums_1.SupportTicketChannel.CHAT]: 'Chat',
52
+ [support_enums_1.SupportTicketChannel.SYSTEM]: 'System',
53
+ [support_enums_1.SupportTicketChannel.API]: 'API',
54
+ };
55
+ exports.SUPPORT_TICKET_SOURCE_LABELS = {
56
+ [support_enums_1.SupportTicketSource.CUSTOMER]: 'Customer',
57
+ [support_enums_1.SupportTicketSource.AGENT]: 'Agent',
58
+ [support_enums_1.SupportTicketSource.SYSTEM]: 'System',
59
+ [support_enums_1.SupportTicketSource.FEEDBACK_CONVERSION]: 'From feedback',
60
+ [support_enums_1.SupportTicketSource.PROVIDER_SYNC]: 'From helpdesk',
61
+ [support_enums_1.SupportTicketSource.CHAT_ESCALATION]: 'Escalated from chat',
62
+ };
63
+ exports.SUPPORT_TICKET_MESSAGE_TYPE_LABELS = {
64
+ [support_enums_1.SupportTicketMessageType.CUSTOMER_MESSAGE]: 'Customer',
65
+ [support_enums_1.SupportTicketMessageType.AGENT_REPLY]: 'Reply to customer',
66
+ [support_enums_1.SupportTicketMessageType.INTERNAL_NOTE]: 'Internal note',
67
+ [support_enums_1.SupportTicketMessageType.SYSTEM_MESSAGE]: 'System',
68
+ [support_enums_1.SupportTicketMessageType.STATUS_MESSAGE]: 'Status change',
69
+ };
70
+ exports.SUPPORT_MESSAGE_AUTHOR_TYPE_LABELS = {
71
+ [support_enums_1.SupportMessageAuthorType.CUSTOMER]: 'Customer',
72
+ [support_enums_1.SupportMessageAuthorType.AGENT]: 'Agent',
73
+ [support_enums_1.SupportMessageAuthorType.SYSTEM]: 'System',
74
+ [support_enums_1.SupportMessageAuthorType.PROVIDER_AGENT]: 'Helpdesk agent',
75
+ };
76
+ exports.SUPPORT_SLA_STATE_LABELS = {
77
+ [support_enums_1.SupportSlaState.ON_TRACK]: 'On track',
78
+ [support_enums_1.SupportSlaState.WARNING]: 'Due soon',
79
+ [support_enums_1.SupportSlaState.BREACHED]: 'Breached',
80
+ [support_enums_1.SupportSlaState.PAUSED]: 'Paused',
81
+ [support_enums_1.SupportSlaState.MET]: 'Met',
82
+ [support_enums_1.SupportSlaState.NOT_APPLICABLE]: 'No target',
83
+ };
84
+ exports.SUPPORT_SLA_TARGET_LABELS = {
85
+ [support_enums_1.SupportSlaTarget.FIRST_RESPONSE]: 'First response',
86
+ [support_enums_1.SupportSlaTarget.RESOLUTION]: 'Resolution',
87
+ };
88
+ exports.SUPPORT_SLA_CLOCK_LABELS = {
89
+ [support_enums_1.SupportSlaClock.CALENDAR]: 'Around the clock',
90
+ [support_enums_1.SupportSlaClock.BUSINESS]: 'Working hours',
91
+ };
92
+ exports.CUSTOMER_FEEDBACK_TYPE_LABELS = {
93
+ [support_enums_1.CustomerFeedbackType.BUG_REPORT]: 'Bug report',
94
+ [support_enums_1.CustomerFeedbackType.FEATURE_REQUEST]: 'Feature request',
95
+ [support_enums_1.CustomerFeedbackType.COMPLAINT]: 'Complaint',
96
+ [support_enums_1.CustomerFeedbackType.COMPLIMENT]: 'Compliment',
97
+ [support_enums_1.CustomerFeedbackType.GENERAL]: 'General',
98
+ [support_enums_1.CustomerFeedbackType.SERVICE_RATING]: 'Service rating',
99
+ [support_enums_1.CustomerFeedbackType.SUPPORT_RATING]: 'Support rating',
100
+ };
101
+ exports.CUSTOMER_FEEDBACK_STATUS_LABELS = {
102
+ [support_enums_1.CustomerFeedbackStatus.NEW]: 'New',
103
+ [support_enums_1.CustomerFeedbackStatus.UNDER_REVIEW]: 'Under review',
104
+ [support_enums_1.CustomerFeedbackStatus.ACKNOWLEDGED]: 'Acknowledged',
105
+ [support_enums_1.CustomerFeedbackStatus.RESPONDED]: 'Responded',
106
+ [support_enums_1.CustomerFeedbackStatus.CONVERTED_TO_TICKET]: 'Became a ticket',
107
+ [support_enums_1.CustomerFeedbackStatus.CLOSED]: 'Closed',
108
+ [support_enums_1.CustomerFeedbackStatus.DISMISSED]: 'Dismissed',
109
+ };
110
+ exports.CUSTOMER_FEEDBACK_CHANNEL_LABELS = {
111
+ [support_enums_1.CustomerFeedbackChannel.MOBILE_APP]: 'Mobile app',
112
+ [support_enums_1.CustomerFeedbackChannel.WEB_APP]: 'Web app',
113
+ [support_enums_1.CustomerFeedbackChannel.AGENT_PORTAL]: 'Agent portal',
114
+ [support_enums_1.CustomerFeedbackChannel.API]: 'API',
115
+ };
116
+ exports.CUSTOMER_FEEDBACK_SENTIMENT_LABELS = {
117
+ [support_enums_1.CustomerFeedbackSentiment.POSITIVE]: 'Positive',
118
+ [support_enums_1.CustomerFeedbackSentiment.NEUTRAL]: 'Neutral',
119
+ [support_enums_1.CustomerFeedbackSentiment.NEGATIVE]: 'Negative',
120
+ [support_enums_1.CustomerFeedbackSentiment.UNKNOWN]: 'Unknown',
121
+ };
122
+ exports.SUPPORT_PROVIDER_LABELS = {
123
+ [support_enums_1.SupportProviderCode.ZAMMAD]: 'Zammad',
124
+ [support_enums_1.SupportProviderCode.FRESHDESK]: 'Freshdesk',
125
+ [support_enums_1.SupportProviderCode.NONE]: 'Clarion only',
126
+ };
127
+ exports.SUPPORT_PROVIDER_CAPABILITY_LABELS = {
128
+ [support_enums_1.SupportProviderCapability.CREATE_TICKET]: 'Create tickets',
129
+ [support_enums_1.SupportProviderCapability.UPDATE_TICKET]: 'Update tickets',
130
+ [support_enums_1.SupportProviderCapability.PUBLIC_REPLY]: 'Reply to customers',
131
+ [support_enums_1.SupportProviderCapability.INTERNAL_NOTE]: 'Internal notes',
132
+ [support_enums_1.SupportProviderCapability.ASSIGN_TICKET]: 'Assign agents',
133
+ [support_enums_1.SupportProviderCapability.CHANGE_STATUS]: 'Change status',
134
+ [support_enums_1.SupportProviderCapability.CLOSE_REOPEN]: 'Close and reopen',
135
+ [support_enums_1.SupportProviderCapability.ATTACHMENTS]: 'Attachments',
136
+ [support_enums_1.SupportProviderCapability.CONTACTS]: 'Customer contacts',
137
+ [support_enums_1.SupportProviderCapability.SEARCH]: 'Search',
138
+ [support_enums_1.SupportProviderCapability.WEBHOOKS]: 'Webhooks',
139
+ [support_enums_1.SupportProviderCapability.FETCH_TICKET]: 'Re-read a ticket',
140
+ };
141
+ exports.SUPPORT_SYNC_STATUS_LABELS = {
142
+ [support_enums_1.SupportSyncStatus.PENDING]: 'Queued',
143
+ [support_enums_1.SupportSyncStatus.IN_PROGRESS]: 'Sending',
144
+ [support_enums_1.SupportSyncStatus.SUCCEEDED]: 'Synced',
145
+ [support_enums_1.SupportSyncStatus.FAILED]: 'Failed, will retry',
146
+ [support_enums_1.SupportSyncStatus.DEAD_LETTER]: 'Needs attention',
147
+ [support_enums_1.SupportSyncStatus.SKIPPED]: 'Not applicable',
148
+ [support_enums_1.SupportSyncStatus.SUPERSEDED]: 'Superseded',
149
+ };
150
+ exports.SUPPORT_SYNC_OPERATION_LABELS = {
151
+ [support_enums_1.SupportSyncOperation.UPSERT_CONTACT]: 'Sync customer',
152
+ [support_enums_1.SupportSyncOperation.CREATE_TICKET]: 'Create ticket',
153
+ [support_enums_1.SupportSyncOperation.UPDATE_TICKET]: 'Update ticket',
154
+ [support_enums_1.SupportSyncOperation.ADD_PUBLIC_REPLY]: 'Send reply',
155
+ [support_enums_1.SupportSyncOperation.ADD_INTERNAL_NOTE]: 'Add internal note',
156
+ [support_enums_1.SupportSyncOperation.ASSIGN_TICKET]: 'Assign agent',
157
+ [support_enums_1.SupportSyncOperation.CHANGE_STATUS]: 'Change status',
158
+ [support_enums_1.SupportSyncOperation.ADD_ATTACHMENT]: 'Attach file',
159
+ [support_enums_1.SupportSyncOperation.CLOSE_TICKET]: 'Close ticket',
160
+ [support_enums_1.SupportSyncOperation.REOPEN_TICKET]: 'Reopen ticket',
161
+ [support_enums_1.SupportSyncOperation.FETCH_TICKET]: 'Re-read ticket',
162
+ };
163
+ /**
164
+ * Failure reasons in words an operator can act on.
165
+ *
166
+ * Each one says what to DO, not just what happened. "Provider rejected the
167
+ * request" tells nobody anything; "the helpdesk refused the request - check the
168
+ * ticket's category mapping" is a next step.
169
+ */
170
+ exports.SUPPORT_SYNC_FAILURE_REASON_LABELS = {
171
+ [support_enums_1.SupportSyncFailureReason.AUTHENTICATION_FAILED]: 'The helpdesk refused the credential - check the configured secret',
172
+ [support_enums_1.SupportSyncFailureReason.AUTHORIZATION_FAILED]: 'The helpdesk account is not allowed to do this - check its role',
173
+ [support_enums_1.SupportSyncFailureReason.INVALID_PAYLOAD]: 'The helpdesk could not read the request - a field mapping is wrong',
174
+ [support_enums_1.SupportSyncFailureReason.NOT_FOUND]: 'The record no longer exists in the helpdesk',
175
+ [support_enums_1.SupportSyncFailureReason.PROVIDER_REJECTED]: 'The helpdesk declined the request',
176
+ [support_enums_1.SupportSyncFailureReason.RATE_LIMITED]: 'Throttled by the helpdesk - it will retry shortly',
177
+ [support_enums_1.SupportSyncFailureReason.PROVIDER_UNAVAILABLE]: 'The helpdesk could not be reached',
178
+ [support_enums_1.SupportSyncFailureReason.TIMEOUT]: 'The helpdesk did not answer in time',
179
+ [support_enums_1.SupportSyncFailureReason.CIRCUIT_OPEN]: 'Paused after repeated failures - it will resume on its own',
180
+ [support_enums_1.SupportSyncFailureReason.PROVIDER_NOT_CONFIGURED]: 'No helpdesk is configured for this deployment',
181
+ [support_enums_1.SupportSyncFailureReason.UNREADABLE_SUCCESS]: 'The helpdesk accepted it but the reply could not be read - check the helpdesk before retrying',
182
+ [support_enums_1.SupportSyncFailureReason.UNKNOWN]: 'Unrecognised failure - it will retry',
183
+ };
184
+ exports.SUPPORT_WEBHOOK_STATUS_LABELS = {
185
+ [support_enums_1.SupportWebhookStatus.RECEIVED]: 'Received',
186
+ [support_enums_1.SupportWebhookStatus.PROCESSED]: 'Applied',
187
+ [support_enums_1.SupportWebhookStatus.DUPLICATE]: 'Duplicate',
188
+ [support_enums_1.SupportWebhookStatus.IGNORED]: 'Ignored',
189
+ [support_enums_1.SupportWebhookStatus.REJECTED]: 'Rejected - bad signature',
190
+ [support_enums_1.SupportWebhookStatus.FAILED]: 'Failed',
191
+ };
192
+ exports.SUPPORT_RELATED_ENTITY_TYPE_LABELS = {
193
+ [support_enums_1.SupportRelatedEntityType.INCIDENT]: 'Incident',
194
+ [support_enums_1.SupportRelatedEntityType.BILLING_SUBSCRIPTION]: 'Subscription',
195
+ [support_enums_1.SupportRelatedEntityType.BILLING_INVOICE]: 'Invoice',
196
+ [support_enums_1.SupportRelatedEntityType.BILLING_PAYMENT]: 'Payment',
197
+ [support_enums_1.SupportRelatedEntityType.BILLING_PACKAGE]: 'Package',
198
+ [support_enums_1.SupportRelatedEntityType.CHAT_CONVERSATION]: 'Chat',
199
+ [support_enums_1.SupportRelatedEntityType.NEWSFEED_POST]: 'Newsfeed post',
200
+ [support_enums_1.SupportRelatedEntityType.NEWSFEED_COMMENT]: 'Newsfeed comment',
201
+ [support_enums_1.SupportRelatedEntityType.PARTNER_DISPATCH]: 'Partner dispatch',
202
+ [support_enums_1.SupportRelatedEntityType.RESPONSE_UNIT]: 'Response unit',
203
+ [support_enums_1.SupportRelatedEntityType.ORGANIZATION]: 'Organization',
204
+ [support_enums_1.SupportRelatedEntityType.USER]: 'User',
205
+ [support_enums_1.SupportRelatedEntityType.APP_SCREEN]: 'App screen',
206
+ [support_enums_1.SupportRelatedEntityType.SUPPORT_TICKET]: 'Support ticket',
207
+ [support_enums_1.SupportRelatedEntityType.CUSTOMER_FEEDBACK]: 'Customer feedback',
208
+ [support_enums_1.SupportRelatedEntityType.OTHER]: 'Other',
209
+ };
210
+ exports.SUPPORT_QUEUE_ASSIGNMENT_STRATEGY_LABELS = {
211
+ [support_enums_1.SupportQueueAssignmentStrategy.MANUAL]: 'Assigned by a supervisor',
212
+ [support_enums_1.SupportQueueAssignmentStrategy.ROUND_ROBIN]: 'Round robin (not yet available)',
213
+ [support_enums_1.SupportQueueAssignmentStrategy.LEAST_BUSY]: 'Least busy agent (not yet available)',
214
+ };
215
+ exports.SUPPORT_ROUTING_MATCH_TYPE_LABELS = {
216
+ [support_enums_1.SupportRoutingMatchType.ANY]: 'Every ticket',
217
+ [support_enums_1.SupportRoutingMatchType.CATEGORY]: 'Category',
218
+ [support_enums_1.SupportRoutingMatchType.PRIORITY]: 'Priority',
219
+ [support_enums_1.SupportRoutingMatchType.CHANNEL]: 'Channel',
220
+ [support_enums_1.SupportRoutingMatchType.COUNTRY]: 'Country',
221
+ [support_enums_1.SupportRoutingMatchType.CONTROL_CENTRE]: 'Control centre',
222
+ [support_enums_1.SupportRoutingMatchType.APP_ID]: 'Application',
223
+ [support_enums_1.SupportRoutingMatchType.RELATED_ENTITY_TYPE]: 'What it is about',
224
+ };
225
+ exports.SUPPORT_TEAM_MEMBER_ROLE_LABELS = {
226
+ [support_enums_1.SupportTeamMemberRole.AGENT]: 'Agent',
227
+ [support_enums_1.SupportTeamMemberRole.SUPERVISOR]: 'Supervisor',
228
+ [support_enums_1.SupportTeamMemberRole.MANAGER]: 'Manager',
229
+ };
230
+ function supportTicketStatusTone(status) {
231
+ switch (status) {
232
+ case support_enums_1.SupportTicketStatus.RESOLVED:
233
+ case support_enums_1.SupportTicketStatus.CLOSED:
234
+ return 'success';
235
+ case support_enums_1.SupportTicketStatus.WAITING_ON_CUSTOMER:
236
+ case support_enums_1.SupportTicketStatus.WAITING_ON_INTERNAL_TEAM:
237
+ return 'warn';
238
+ case support_enums_1.SupportTicketStatus.REOPENED:
239
+ return 'danger';
240
+ case support_enums_1.SupportTicketStatus.CANCELLED:
241
+ return 'neutral';
242
+ default:
243
+ return 'info';
244
+ }
245
+ }
246
+ function supportTicketPriorityTone(priority) {
247
+ switch (priority) {
248
+ case support_enums_1.SupportTicketPriority.CRITICAL:
249
+ case support_enums_1.SupportTicketPriority.URGENT:
250
+ return 'danger';
251
+ case support_enums_1.SupportTicketPriority.HIGH:
252
+ return 'warn';
253
+ case support_enums_1.SupportTicketPriority.LOW:
254
+ return 'neutral';
255
+ default:
256
+ return 'info';
257
+ }
258
+ }
259
+ function supportSlaStateTone(state) {
260
+ switch (state) {
261
+ case support_enums_1.SupportSlaState.MET:
262
+ return 'success';
263
+ case support_enums_1.SupportSlaState.WARNING:
264
+ return 'warn';
265
+ case support_enums_1.SupportSlaState.BREACHED:
266
+ return 'danger';
267
+ case support_enums_1.SupportSlaState.PAUSED:
268
+ case support_enums_1.SupportSlaState.NOT_APPLICABLE:
269
+ return 'neutral';
270
+ default:
271
+ return 'info';
272
+ }
273
+ }
274
+ function supportSyncStatusTone(status) {
275
+ switch (status) {
276
+ case support_enums_1.SupportSyncStatus.SUCCEEDED:
277
+ return 'success';
278
+ case support_enums_1.SupportSyncStatus.FAILED:
279
+ return 'warn';
280
+ case support_enums_1.SupportSyncStatus.DEAD_LETTER:
281
+ return 'danger';
282
+ case support_enums_1.SupportSyncStatus.SKIPPED:
283
+ case support_enums_1.SupportSyncStatus.SUPERSEDED:
284
+ return 'neutral';
285
+ default:
286
+ return 'info';
287
+ }
288
+ }
289
+ function customerFeedbackStatusTone(status) {
290
+ switch (status) {
291
+ case support_enums_1.CustomerFeedbackStatus.RESPONDED:
292
+ case support_enums_1.CustomerFeedbackStatus.CLOSED:
293
+ return 'success';
294
+ case support_enums_1.CustomerFeedbackStatus.NEW:
295
+ case support_enums_1.CustomerFeedbackStatus.UNDER_REVIEW:
296
+ return 'warn';
297
+ case support_enums_1.CustomerFeedbackStatus.DISMISSED:
298
+ return 'neutral';
299
+ default:
300
+ return 'info';
301
+ }
302
+ }
303
+ function customerFeedbackSentimentTone(sentiment) {
304
+ switch (sentiment) {
305
+ case support_enums_1.CustomerFeedbackSentiment.POSITIVE:
306
+ return 'success';
307
+ case support_enums_1.CustomerFeedbackSentiment.NEGATIVE:
308
+ return 'danger';
309
+ case support_enums_1.CustomerFeedbackSentiment.NEUTRAL:
310
+ return 'info';
311
+ default:
312
+ return 'neutral';
313
+ }
314
+ }
315
+ /**
316
+ * How a deadline reads on screen.
317
+ *
318
+ * Returns a phrase rather than a number so a paused clock does not render as a
319
+ * countdown that is not counting - the single most misleading thing an SLA chip
320
+ * can do.
321
+ */
322
+ function describeSupportSlaDeadline(state, remainingMinutes) {
323
+ if (state === support_enums_1.SupportSlaState.NOT_APPLICABLE)
324
+ return 'No target';
325
+ if (state === support_enums_1.SupportSlaState.MET)
326
+ return 'Met';
327
+ if (state === support_enums_1.SupportSlaState.PAUSED)
328
+ return 'Paused - waiting on the customer';
329
+ if (remainingMinutes == null)
330
+ return exports.SUPPORT_SLA_STATE_LABELS[state];
331
+ if (remainingMinutes < 0)
332
+ return `${formatSupportDuration(-remainingMinutes)} overdue`;
333
+ return `${formatSupportDuration(remainingMinutes)} left`;
334
+ }
335
+ /** Minutes as a short human duration: 45m, 3h 20m, 2d 4h. */
336
+ function formatSupportDuration(minutes) {
337
+ if (minutes == null || !Number.isFinite(minutes))
338
+ return '-';
339
+ const total = Math.max(0, Math.round(minutes));
340
+ if (total < 60)
341
+ return `${total}m`;
342
+ const hours = Math.floor(total / 60);
343
+ const remainderMinutes = total % 60;
344
+ if (hours < 24) {
345
+ return remainderMinutes === 0 ? `${hours}h` : `${hours}h ${remainderMinutes}m`;
346
+ }
347
+ const days = Math.floor(hours / 24);
348
+ const remainderHours = hours % 24;
349
+ return remainderHours === 0 ? `${days}d` : `${days}d ${remainderHours}h`;
350
+ }
351
+ /**
352
+ * Whether an adapter can do something.
353
+ *
354
+ * The admin gates every button on this rather than assuming, so an action a
355
+ * helpdesk cannot perform is never offered to an operator as if it worked.
356
+ */
357
+ function supportProviderSupports(capabilities, capability) {
358
+ return Array.isArray(capabilities) && capabilities.includes(capability);
359
+ }
360
+ /** True for the message types a customer is allowed to see. */
361
+ function isCustomerVisibleSupportMessage(type) {
362
+ return type !== support_enums_1.SupportTicketMessageType.INTERNAL_NOTE;
363
+ }
364
+ //# sourceMappingURL=support-display.util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"support-display.util.js","sourceRoot":"","sources":["../../../../../src/modules/support/utils/support-display.util.ts"],"names":[],"mappings":"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"}
package/dist/esm/index.js CHANGED
@@ -21,6 +21,7 @@ export * from './modules/tracking/index';
21
21
  export * from './modules/entitlement/index';
22
22
  export * from './modules/alert-dispatch/index';
23
23
  export * from './modules/partner/index';
24
+ export * from './modules/support/index';
24
25
  // Interfaces
25
26
  export * from './modules/common/interfaces/server-message';
26
27
  export * from './modules/common/interfaces/pagination';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kCAAkC,CAAC;AACjD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AAExC,aAAa;AACb,cAAc,4CAA4C,CAAC;AAC3D,cAAc,wCAAwC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kCAAkC,CAAC;AACjD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AAExC,aAAa;AACb,cAAc,4CAA4C,CAAC;AAC3D,cAAc,wCAAwC,CAAC"}
@@ -52,5 +52,32 @@ export var PermissionActions;
52
52
  PermissionActions["READ_RESPONSE_UNIT"] = "read:response-unit";
53
53
  PermissionActions["UPDATE_RESPONSE_UNIT"] = "update:response-unit";
54
54
  PermissionActions["DELETE_RESPONSE_UNIT"] = "delete:response-unit";
55
+ // Module: Support
56
+ //
57
+ // Mirrors grm-shared-library exactly, values included: the admin gates its
58
+ // support screens on these strings and the gateway authorizes on the same
59
+ // ones, so any drift between the two packages is a screen that shows a
60
+ // button the API then refuses.
61
+ PermissionActions["CREATE_SUPPORT_TICKET"] = "create:support-ticket";
62
+ PermissionActions["READ_SUPPORT_TICKET"] = "read:support-ticket";
63
+ PermissionActions["UPDATE_SUPPORT_TICKET"] = "update:support-ticket";
64
+ PermissionActions["ASSIGN_SUPPORT_TICKET"] = "assign:support-ticket";
65
+ PermissionActions["REPLY_SUPPORT_TICKET"] = "reply:support-ticket";
66
+ PermissionActions["NOTE_SUPPORT_TICKET"] = "note:support-ticket";
67
+ PermissionActions["CHANGE_STATUS_SUPPORT_TICKET"] = "change-status:support-ticket";
68
+ PermissionActions["CHANGE_PRIORITY_SUPPORT_TICKET"] = "change-priority:support-ticket";
69
+ PermissionActions["CLOSE_SUPPORT_TICKET"] = "close:support-ticket";
70
+ PermissionActions["REOPEN_SUPPORT_TICKET"] = "reopen:support-ticket";
71
+ PermissionActions["READ_SUPPORT_FEEDBACK"] = "read:support-feedback";
72
+ PermissionActions["REVIEW_SUPPORT_FEEDBACK"] = "review:support-feedback";
73
+ PermissionActions["RESPOND_SUPPORT_FEEDBACK"] = "respond:support-feedback";
74
+ PermissionActions["CONVERT_SUPPORT_FEEDBACK"] = "convert:support-feedback";
75
+ PermissionActions["MANAGE_SUPPORT_QUEUE"] = "manage:support-queue";
76
+ PermissionActions["MANAGE_SUPPORT_TEAM"] = "manage:support-team";
77
+ PermissionActions["MANAGE_SUPPORT_SLA"] = "manage:support-sla";
78
+ PermissionActions["MANAGE_SUPPORT_CONFIGURATION"] = "manage:support-configuration";
79
+ PermissionActions["READ_SUPPORT_REPORT"] = "read:support-report";
80
+ PermissionActions["READ_SUPPORT_SYNC"] = "read:support-sync";
81
+ PermissionActions["MANAGE_SUPPORT_SYNC"] = "manage:support-sync";
55
82
  })(PermissionActions || (PermissionActions = {}));
56
83
  //# sourceMappingURL=permission-actions.enum.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"permission-actions.enum.js","sourceRoot":"","sources":["../../../../../src/modules/permission/enums/permission-actions.enum.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,iBA2DX;AA3DD,WAAY,iBAAiB;IACzB,uBAAuB;IACvB,gEAA2C,CAAA;IAC3C,4DAAuC,CAAA;IACvC,gEAA2C,CAAA;IAC3C,gEAA2C,CAAA;IAE3C,kBAAkB;IAClB,sDAAiC,CAAA;IACjC,kDAA6B,CAAA;IAC7B,sDAAiC,CAAA;IACjC,sDAAiC,CAAA;IACjC,wEAAwE;IACxE,mEAAmE;IACnE,oEAA+C,CAAA;IAC/C,0EAAqD,CAAA;IACrD,wEAAmD,CAAA;IACnD,wEAAmD,CAAA;IACnD,wEAAmD,CAAA;IACnD,2EAA2E;IAC3E,4EAA4E;IAC5E,qEAAqE;IACrE,uDAAuD;IACvD,wEAAmD,CAAA;IACnD,4EAAuD,CAAA;IAEvD,wBAAwB;IACxB,oEAA+C,CAAA;IAC/C,gEAA2C,CAAA;IAC3C,oEAA+C,CAAA;IAC/C,oEAA+C,CAAA;IAE/C,eAAe;IACf,gDAA2B,CAAA;IAC3B,4CAAuB,CAAA;IACvB,gDAA2B,CAAA;IAC3B,gDAA2B,CAAA;IAE3B,eAAe;IACf,gDAA2B,CAAA;IAC3B,4CAAuB,CAAA;IACvB,gDAA2B,CAAA;IAC3B,gDAA2B,CAAA;IAE3B,mBAAmB;IACnB,wDAAmC,CAAA;IACnC,oDAA+B,CAAA;IAC/B,wDAAmC,CAAA;IACnC,wDAAmC,CAAA;IACnC,oFAA+D,CAAA;IAC/D,gFAA2D,CAAA;IAC3D,oFAA+D,CAAA;IAC/D,oFAA+D,CAAA;IAE/D,uBAAuB;IACvB,kEAA6C,CAAA;IAC7C,8DAAyC,CAAA;IACzC,kEAA6C,CAAA;IAC7C,kEAA6C,CAAA;AACjD,CAAC,EA3DW,iBAAiB,KAAjB,iBAAiB,QA2D5B"}
1
+ {"version":3,"file":"permission-actions.enum.js","sourceRoot":"","sources":["../../../../../src/modules/permission/enums/permission-actions.enum.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,iBAuFX;AAvFD,WAAY,iBAAiB;IACzB,uBAAuB;IACvB,gEAA2C,CAAA;IAC3C,4DAAuC,CAAA;IACvC,gEAA2C,CAAA;IAC3C,gEAA2C,CAAA;IAE3C,kBAAkB;IAClB,sDAAiC,CAAA;IACjC,kDAA6B,CAAA;IAC7B,sDAAiC,CAAA;IACjC,sDAAiC,CAAA;IACjC,wEAAwE;IACxE,mEAAmE;IACnE,oEAA+C,CAAA;IAC/C,0EAAqD,CAAA;IACrD,wEAAmD,CAAA;IACnD,wEAAmD,CAAA;IACnD,wEAAmD,CAAA;IACnD,2EAA2E;IAC3E,4EAA4E;IAC5E,qEAAqE;IACrE,uDAAuD;IACvD,wEAAmD,CAAA;IACnD,4EAAuD,CAAA;IAEvD,wBAAwB;IACxB,oEAA+C,CAAA;IAC/C,gEAA2C,CAAA;IAC3C,oEAA+C,CAAA;IAC/C,oEAA+C,CAAA;IAE/C,eAAe;IACf,gDAA2B,CAAA;IAC3B,4CAAuB,CAAA;IACvB,gDAA2B,CAAA;IAC3B,gDAA2B,CAAA;IAE3B,eAAe;IACf,gDAA2B,CAAA;IAC3B,4CAAuB,CAAA;IACvB,gDAA2B,CAAA;IAC3B,gDAA2B,CAAA;IAE3B,mBAAmB;IACnB,wDAAmC,CAAA;IACnC,oDAA+B,CAAA;IAC/B,wDAAmC,CAAA;IACnC,wDAAmC,CAAA;IACnC,oFAA+D,CAAA;IAC/D,gFAA2D,CAAA;IAC3D,oFAA+D,CAAA;IAC/D,oFAA+D,CAAA;IAE/D,uBAAuB;IACvB,kEAA6C,CAAA;IAC7C,8DAAyC,CAAA;IACzC,kEAA6C,CAAA;IAC7C,kEAA6C,CAAA;IAE7C,kBAAkB;IAClB,EAAE;IACF,2EAA2E;IAC3E,0EAA0E;IAC1E,uEAAuE;IACvE,+BAA+B;IAC/B,oEAA+C,CAAA;IAC/C,gEAA2C,CAAA;IAC3C,oEAA+C,CAAA;IAC/C,oEAA+C,CAAA;IAC/C,kEAA6C,CAAA;IAC7C,gEAA2C,CAAA;IAC3C,kFAA6D,CAAA;IAC7D,sFAAiE,CAAA;IACjE,kEAA6C,CAAA;IAC7C,oEAA+C,CAAA;IAC/C,oEAA+C,CAAA;IAC/C,wEAAmD,CAAA;IACnD,0EAAqD,CAAA;IACrD,0EAAqD,CAAA;IACrD,kEAA6C,CAAA;IAC7C,gEAA2C,CAAA;IAC3C,8DAAyC,CAAA;IACzC,kFAA6D,CAAA;IAC7D,gEAA2C,CAAA;IAC3C,4DAAuC,CAAA;IACvC,gEAA2C,CAAA;AAC/C,CAAC,EAvFW,iBAAiB,KAAjB,iBAAiB,QAuF5B"}
@@ -7,5 +7,6 @@ export var PermissionsModule;
7
7
  PermissionsModule["ROLE"] = "Role";
8
8
  PermissionsModule["INCIDENT"] = "Grievance";
9
9
  PermissionsModule["RESPONSE_UNIT"] = "Response Unit";
10
+ PermissionsModule["SUPPORT"] = "Support";
10
11
  })(PermissionsModule || (PermissionsModule = {}));
11
12
  //# sourceMappingURL=permissions-moudule.enum.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"permissions-moudule.enum.js","sourceRoot":"","sources":["../../../../../src/modules/permission/enums/permissions-moudule.enum.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,iBAQX;AARD,WAAY,iBAAiB;IACzB,kDAA6B,CAAA;IAC7B,wCAAmB,CAAA;IACnB,sDAAiC,CAAA;IACjC,kCAAa,CAAA;IACb,kCAAa,CAAA;IACb,2CAAsB,CAAA;IACtB,oDAA+B,CAAA;AACnC,CAAC,EARW,iBAAiB,KAAjB,iBAAiB,QAQ5B"}
1
+ {"version":3,"file":"permissions-moudule.enum.js","sourceRoot":"","sources":["../../../../../src/modules/permission/enums/permissions-moudule.enum.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,iBASX;AATD,WAAY,iBAAiB;IACzB,kDAA6B,CAAA;IAC7B,wCAAmB,CAAA;IACnB,sDAAiC,CAAA;IACjC,kCAAa,CAAA;IACb,kCAAa,CAAA;IACb,2CAAsB,CAAA;IACtB,oDAA+B,CAAA;IAC/B,wCAAmB,CAAA;AACvB,CAAC,EATW,iBAAiB,KAAjB,iBAAiB,QAS5B"}