@consilioweb/payload-support 0.5.2 → 0.6.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.
Files changed (85) hide show
  1. package/dist/components/TicketConversation/components/AISummaryPanel.js +76 -0
  2. package/dist/components/TicketConversation/components/ActionPanels.js +118 -0
  3. package/dist/components/TicketConversation/components/ActivityLog.js +23 -0
  4. package/dist/components/TicketConversation/components/ClientBar.js +42 -0
  5. package/dist/components/TicketConversation/components/ClientHistory.js +137 -0
  6. package/dist/components/TicketConversation/components/CodeBlock.js +152 -0
  7. package/dist/components/TicketConversation/components/CodeBlockInserter.js +155 -0
  8. package/dist/components/TicketConversation/components/QuickActions.js +65 -0
  9. package/dist/components/TicketConversation/components/TicketHeader.js +92 -0
  10. package/dist/components/TicketConversation/components/TimeTrackingPanel.js +133 -0
  11. package/dist/components/TicketConversation/config.js +41 -0
  12. package/dist/components/TicketConversation/constants.js +96 -0
  13. package/dist/components/TicketConversation/context.js +11 -0
  14. package/dist/components/TicketConversation/hooks/useAI.js +176 -0
  15. package/dist/components/TicketConversation/hooks/useMessageActions.js +135 -0
  16. package/dist/components/TicketConversation/hooks/useReply.js +187 -0
  17. package/dist/components/TicketConversation/hooks/useTicketActions.js +230 -0
  18. package/dist/components/TicketConversation/hooks/useTimeTracking.js +122 -0
  19. package/dist/components/TicketConversation/hooks/useTranslation.js +70 -0
  20. package/dist/components/TicketConversation/index.js +1123 -0
  21. package/dist/components/TicketConversation/locales/en.json +878 -0
  22. package/dist/components/TicketConversation/locales/fr.json +878 -0
  23. package/dist/components/TicketConversation/types.js +2 -0
  24. package/dist/components/TicketConversation/utils.js +25 -0
  25. package/dist/index.cjs +2 -2
  26. package/dist/index.js +2 -2
  27. package/dist/styles/BillingView.module.scss +311 -0
  28. package/dist/styles/ChatView.module.scss +438 -0
  29. package/dist/styles/CommandPalette.module.scss +160 -0
  30. package/dist/styles/CrmView.module.scss +554 -0
  31. package/dist/styles/EmailTracking.module.scss +238 -0
  32. package/dist/styles/ImportConversation.module.scss +267 -0
  33. package/dist/styles/Layout.module.scss +55 -0
  34. package/dist/styles/Logs.module.scss +164 -0
  35. package/dist/styles/NewTicket.module.scss +143 -0
  36. package/dist/styles/PendingEmails.module.scss +629 -0
  37. package/dist/styles/SupportDashboard.module.scss +649 -0
  38. package/dist/styles/TicketDetail.module.scss +1050 -0
  39. package/dist/styles/TicketInbox.module.scss +296 -0
  40. package/dist/styles/TicketingSettings.module.scss +358 -0
  41. package/dist/styles/TimeDashboard.module.scss +287 -0
  42. package/dist/styles/_tokens.scss +78 -0
  43. package/dist/styles/theme.css +633 -0
  44. package/dist/views/BillingView/client.js +204 -0
  45. package/dist/views/BillingView/index.js +29 -0
  46. package/dist/views/ChatView/client.js +252 -0
  47. package/dist/views/ChatView/index.js +29 -0
  48. package/dist/views/CrmView/client.js +232 -0
  49. package/dist/views/CrmView/index.js +29 -0
  50. package/dist/views/EmailTrackingView/client.js +154 -0
  51. package/dist/views/EmailTrackingView/index.js +29 -0
  52. package/dist/views/ImportConversationView/client.js +204 -0
  53. package/dist/views/ImportConversationView/index.js +29 -0
  54. package/dist/views/LogsView/client.js +148 -0
  55. package/dist/views/LogsView/index.js +27 -0
  56. package/dist/views/NewTicketView/client.js +224 -0
  57. package/dist/views/NewTicketView/index.js +27 -0
  58. package/dist/views/PendingEmailsView/client.js +172 -0
  59. package/dist/views/PendingEmailsView/index.js +29 -0
  60. package/dist/views/SupportDashboardView/client.js +296 -0
  61. package/dist/views/SupportDashboardView/index.js +29 -0
  62. package/dist/views/TicketDetailView/client.js +844 -0
  63. package/dist/views/TicketDetailView/index.js +29 -0
  64. package/dist/views/TicketInboxView/client.js +294 -0
  65. package/dist/views/TicketInboxView/index.js +27 -0
  66. package/dist/{views.css → views/TicketingSettingsView/TicketingSettings.module.scss} +138 -66
  67. package/dist/views/TicketingSettingsView/client.js +728 -0
  68. package/dist/views/TicketingSettingsView/index.js +29 -0
  69. package/dist/views/TimeDashboardView/client.js +164 -0
  70. package/dist/views/TimeDashboardView/index.js +29 -0
  71. package/dist/views/shared/AdminViewHeader.js +67 -0
  72. package/dist/views/shared/ErrorBoundary.js +50 -0
  73. package/dist/views/shared/Skeleton.js +72 -0
  74. package/dist/views/shared/adminTokens.js +32 -0
  75. package/dist/views/shared/config.js +41 -0
  76. package/dist/views/shared/index.js +6 -0
  77. package/package.json +8 -12
  78. package/src/collections/Tickets.ts +1 -1
  79. package/src/components/TicketConversation/index.tsx +21 -2
  80. package/src/plugin.ts +3 -2
  81. package/dist/views.cjs +0 -6172
  82. package/dist/views.d.cts +0 -30
  83. package/dist/views.d.ts +0 -30
  84. package/dist/views.js +0 -6153
  85. package/src/views.ts +0 -16
@@ -1,23 +1,27 @@
1
- /* src/views/TicketingSettingsView/TicketingSettings.module.scss */
2
- .TicketingSettings_module_page {
1
+ .page {
3
2
  max-width: 900px;
4
3
  margin: 0 auto;
5
4
  padding: 0 1.5rem 3rem;
6
5
  }
7
- .TicketingSettings_module_intro {
6
+
7
+ .intro {
8
8
  font-size: 0.875rem;
9
9
  color: var(--theme-elevation-600);
10
10
  margin-bottom: 1.5rem;
11
11
  line-height: 1.5;
12
12
  }
13
- .TicketingSettings_module_sectionWrapper {
13
+
14
+ // ── Sections ──────────────────────────────────
15
+
16
+ .sectionWrapper {
14
17
  border: 1px solid var(--theme-elevation-150);
15
18
  border-radius: 10px;
16
19
  margin-bottom: 1rem;
17
20
  overflow: hidden;
18
21
  background: var(--theme-elevation-0);
19
22
  }
20
- .TicketingSettings_module_sectionHeader {
23
+
24
+ .sectionHeader {
21
25
  display: flex;
22
26
  align-items: center;
23
27
  gap: 0.75rem;
@@ -25,11 +29,13 @@
25
29
  cursor: pointer;
26
30
  user-select: none;
27
31
  transition: background 150ms;
32
+
33
+ &:hover {
34
+ background: var(--theme-elevation-50);
35
+ }
28
36
  }
29
- .TicketingSettings_module_sectionHeader:hover {
30
- background: var(--theme-elevation-50);
31
- }
32
- .TicketingSettings_module_sectionIcon {
37
+
38
+ .sectionIcon {
33
39
  width: 32px;
34
40
  height: 32px;
35
41
  border-radius: 8px;
@@ -39,41 +45,53 @@
39
45
  color: #fff;
40
46
  flex-shrink: 0;
41
47
  }
42
- .TicketingSettings_module_sectionTitle {
48
+
49
+ .sectionTitle {
43
50
  font-weight: 600;
44
51
  font-size: 0.9375rem;
45
52
  color: var(--theme-text);
46
53
  flex: 1;
47
54
  }
48
- .TicketingSettings_module_sectionChevron {
55
+
56
+ .sectionChevron {
49
57
  font-size: 0.625rem;
50
58
  color: var(--theme-elevation-400);
51
59
  transition: transform 200ms;
60
+
61
+ &.open {
62
+ transform: rotate(180deg);
63
+ }
52
64
  }
53
- .TicketingSettings_module_sectionChevron.TicketingSettings_module_open {
54
- transform: rotate(180deg);
55
- }
56
- .TicketingSettings_module_sectionBody {
65
+
66
+ .sectionBody {
57
67
  padding: 1rem 1.25rem 1.25rem;
58
68
  border-top: 1px solid var(--theme-elevation-100);
59
69
  }
60
- .TicketingSettings_module_sectionDescription {
70
+
71
+ .sectionDescription {
61
72
  font-size: 0.8125rem;
62
73
  color: var(--theme-elevation-500);
63
74
  margin: 0 0 1rem;
64
75
  line-height: 1.5;
65
76
  }
66
- .TicketingSettings_module_badge {
77
+
78
+ // ── Badges ────────────────────────────────────
79
+
80
+ .badge {
67
81
  font-size: 0.6875rem;
68
82
  font-weight: 600;
69
83
  padding: 0.125rem 0.5rem;
70
84
  border-radius: 9999px;
71
85
  white-space: nowrap;
72
86
  }
73
- .TicketingSettings_module_categoryGroup {
87
+
88
+ // ── Feature cards ─────────────────────────────
89
+
90
+ .categoryGroup {
74
91
  margin-bottom: 1.25rem;
75
92
  }
76
- .TicketingSettings_module_categoryHeading {
93
+
94
+ .categoryHeading {
77
95
  font-size: 0.75rem;
78
96
  font-weight: 700;
79
97
  text-transform: uppercase;
@@ -83,18 +101,21 @@
83
101
  align-items: center;
84
102
  gap: 0.5rem;
85
103
  }
86
- .TicketingSettings_module_categoryDot {
104
+
105
+ .categoryDot {
87
106
  width: 8px;
88
107
  height: 8px;
89
108
  border-radius: 50%;
90
109
  display: inline-block;
91
110
  }
92
- .TicketingSettings_module_featureList {
111
+
112
+ .featureList {
93
113
  display: flex;
94
114
  flex-direction: column;
95
115
  gap: 0.375rem;
96
116
  }
97
- .TicketingSettings_module_featureCard {
117
+
118
+ .featureCard {
98
119
  display: flex;
99
120
  align-items: center;
100
121
  gap: 0.75rem;
@@ -103,47 +124,58 @@
103
124
  border: 1px solid var(--theme-elevation-150);
104
125
  cursor: pointer;
105
126
  transition: all 150ms;
106
- }
107
- .TicketingSettings_module_featureCard:hover {
108
- background: var(--theme-elevation-50);
109
- }
110
- .TicketingSettings_module_featureCard.TicketingSettings_module_enabled {
111
- border-color: var(--theme-elevation-200);
112
- background: var(--theme-elevation-50);
113
- }
114
- .TicketingSettings_module_featureLabel {
127
+
128
+ &:hover {
129
+ background: var(--theme-elevation-50);
130
+ }
131
+
132
+ &.enabled {
133
+ border-color: var(--theme-elevation-200);
134
+ background: var(--theme-elevation-50);
135
+ }
136
+ }
137
+
138
+ .featureLabel {
115
139
  font-weight: 600;
116
140
  font-size: 0.8125rem;
117
141
  color: var(--theme-text);
118
142
  }
119
- .TicketingSettings_module_featureDesc {
143
+
144
+ .featureDesc {
120
145
  font-size: 0.75rem;
121
146
  color: var(--theme-elevation-500);
122
147
  margin-top: 0.125rem;
123
148
  }
124
- .TicketingSettings_module_fieldRow {
149
+
150
+ // ── Fields ────────────────────────────────────
151
+
152
+ .fieldRow {
125
153
  display: flex;
126
154
  align-items: flex-start;
127
155
  gap: 1rem;
128
156
  padding: 0.625rem 0;
129
157
  }
130
- .TicketingSettings_module_fieldLabel {
158
+
159
+ .fieldLabel {
131
160
  flex: 0 0 200px;
132
161
  font-size: 0.8125rem;
133
162
  font-weight: 600;
134
163
  color: var(--theme-text);
135
164
  padding-top: 0.5rem;
136
165
  }
137
- .TicketingSettings_module_fieldDescription {
166
+
167
+ .fieldDescription {
138
168
  font-size: 0.75rem;
139
169
  color: var(--theme-elevation-500);
140
170
  font-weight: 400;
141
171
  margin-top: 0.125rem;
142
172
  }
143
- .TicketingSettings_module_fieldContent {
173
+
174
+ .fieldContent {
144
175
  flex: 1;
145
176
  }
146
- .TicketingSettings_module_input {
177
+
178
+ .input {
147
179
  width: 100%;
148
180
  padding: 0.5rem 0.75rem;
149
181
  border: 1px solid var(--theme-elevation-200);
@@ -153,55 +185,76 @@
153
185
  color: var(--theme-text);
154
186
  outline: none;
155
187
  transition: border-color 150ms;
156
- }
157
- .TicketingSettings_module_input:focus {
158
- border-color: var(--theme-success-500);
159
- }
160
- .TicketingSettings_module_inputReadonly {
188
+
189
+ &:focus {
190
+ border-color: var(--theme-success-500);
191
+ }
192
+ }
193
+
194
+ .inputReadonly {
195
+ composes: input;
161
196
  background: var(--theme-elevation-50);
162
197
  color: var(--theme-elevation-500);
163
198
  cursor: not-allowed;
164
199
  }
165
- .TicketingSettings_module_select {
200
+
201
+ .select {
202
+ composes: input;
166
203
  appearance: auto;
167
204
  }
168
- .TicketingSettings_module_numberInput {
205
+
206
+ .numberInput {
207
+ composes: input;
169
208
  max-width: 120px;
170
209
  }
171
- .TicketingSettings_module_separator {
210
+
211
+ .separator {
172
212
  border-top: 1px solid var(--theme-elevation-100);
173
213
  margin: 1rem 0;
174
214
  }
175
- .TicketingSettings_module_toggleRow {
215
+
216
+ // ── Toggle rows ───────────────────────────────
217
+
218
+ .toggleRow {
176
219
  display: flex;
177
220
  align-items: flex-start;
178
221
  gap: 0.75rem;
179
222
  padding: 0.5rem 0;
180
223
  }
181
- .TicketingSettings_module_inlineLabel {
224
+
225
+ .inlineLabel {
182
226
  font-size: 0.8125rem;
183
227
  font-weight: 600;
184
228
  color: var(--theme-text);
185
229
  }
186
- .TicketingSettings_module_inlineDesc {
230
+
231
+ .inlineDesc {
187
232
  font-size: 0.75rem;
188
233
  color: var(--theme-elevation-500);
189
234
  margin-top: 0.125rem;
190
235
  }
191
- .TicketingSettings_module_slaInline {
236
+
237
+ // ── SLA ───────────────────────────────────────
238
+
239
+ .slaInline {
192
240
  display: flex;
193
241
  align-items: center;
194
242
  gap: 0.5rem;
195
243
  }
196
- .TicketingSettings_module_slaHint {
244
+
245
+ .slaHint {
197
246
  font-size: 0.75rem;
198
247
  color: var(--theme-elevation-500);
199
248
  }
200
- .TicketingSettings_module_apiKeyRow {
249
+
250
+ // ── API Key ───────────────────────────────────
251
+
252
+ .apiKeyRow {
201
253
  display: flex;
202
254
  gap: 0.5rem;
203
255
  }
204
- .TicketingSettings_module_apiKeyToggle {
256
+
257
+ .apiKeyToggle {
205
258
  padding: 0.5rem 0.75rem;
206
259
  border: 1px solid var(--theme-elevation-200);
207
260
  border-radius: 6px;
@@ -211,29 +264,38 @@
211
264
  cursor: pointer;
212
265
  white-space: nowrap;
213
266
  }
214
- .TicketingSettings_module_aiSubFeaturesLabel {
267
+
268
+ // ── AI sub features ───────────────────────────
269
+
270
+ .aiSubFeaturesLabel {
215
271
  font-size: 0.8125rem;
216
272
  font-weight: 600;
217
273
  color: var(--theme-text);
218
274
  margin: 0 0 0.5rem;
219
275
  }
220
- .TicketingSettings_module_aiToggleRow {
276
+
277
+ .aiToggleRow {
221
278
  display: flex;
222
279
  align-items: center;
223
280
  gap: 0.75rem;
224
281
  padding: 0.375rem 0;
225
282
  }
226
- .TicketingSettings_module_aiToggleLabel {
283
+
284
+ .aiToggleLabel {
227
285
  font-size: 0.8125rem;
228
286
  font-weight: 500;
229
287
  color: var(--theme-text);
230
288
  }
231
- .TicketingSettings_module_aiToggleDesc {
289
+
290
+ .aiToggleDesc {
232
291
  display: block;
233
292
  font-size: 0.6875rem;
234
293
  color: var(--theme-elevation-500);
235
294
  }
236
- .TicketingSettings_module_signatureTextarea {
295
+
296
+ // ── Signature ─────────────────────────────────
297
+
298
+ .signatureTextarea {
237
299
  width: 100%;
238
300
  padding: 0.75rem;
239
301
  border: 1px solid var(--theme-elevation-200);
@@ -244,31 +306,41 @@
244
306
  color: var(--theme-text);
245
307
  resize: vertical;
246
308
  outline: none;
247
- }
248
- .TicketingSettings_module_signatureTextarea:focus {
249
- border-color: var(--theme-success-500);
250
- }
251
- .TicketingSettings_module_purgeGroup {
309
+
310
+ &:focus {
311
+ border-color: var(--theme-success-500);
312
+ }
313
+ }
314
+
315
+ // ── Purge ─────────────────────────────────────
316
+
317
+ .purgeGroup {
252
318
  display: flex;
253
319
  flex-direction: column;
254
320
  gap: 0.75rem;
255
321
  }
256
- .TicketingSettings_module_purgeCategory {
322
+
323
+ .purgeCategory {
257
324
  display: flex;
258
325
  align-items: center;
259
326
  gap: 1rem;
260
327
  }
261
- .TicketingSettings_module_purgeCategoryLabel {
328
+
329
+ .purgeCategoryLabel {
262
330
  font-size: 0.8125rem;
263
331
  font-weight: 600;
264
332
  color: var(--theme-text);
265
333
  min-width: 100px;
266
334
  }
267
- .TicketingSettings_module_purgeButtons {
335
+
336
+ .purgeButtons {
268
337
  display: flex;
269
338
  gap: 0.375rem;
270
339
  }
271
- .TicketingSettings_module_bottomBar {
340
+
341
+ // ── Bottom bar ────────────────────────────────
342
+
343
+ .bottomBar {
272
344
  display: flex;
273
345
  justify-content: flex-end;
274
346
  gap: 0.5rem;