clarion-shared-types 1.0.91 → 1.0.93

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.
@@ -144,3 +144,37 @@ export interface SupportRealtimePayloadDto {
144
144
  /** Server time the record last changed, so a client can discard a stale update. */
145
145
  updatedAt?: string;
146
146
  }
147
+ /**
148
+ * One agent's row in the team performance report.
149
+ *
150
+ * Distinct from `SupportAgentDashboardMetricsDto`, which is one agent looking
151
+ * at their own live queue. This is a supervisor looking at settled work over a
152
+ * window, so it is a leaderboard rather than a snapshot.
153
+ *
154
+ * `satisfactionAverage` is null, not zero, when nobody rated the agent's work.
155
+ * A table that sorted an unrated agent to the bottom alongside a badly rated
156
+ * one would be actively misleading, and this table is read when deciding who
157
+ * needs coaching.
158
+ */
159
+ export interface SupportAgentPerformanceRowDto {
160
+ agentUserId: number;
161
+ agentName?: string | null;
162
+ ticketsHandled: number;
163
+ ticketsResolved: number;
164
+ ticketsClosed: number;
165
+ ticketsOpen: number;
166
+ averageFirstResponseMinutes?: number | null;
167
+ averageResolutionMinutes?: number | null;
168
+ firstResponseComplianceRate: number;
169
+ resolutionComplianceRate: number;
170
+ slaBreachCount: number;
171
+ reopenedCount: number;
172
+ satisfactionAverage?: number | null;
173
+ satisfactionCount: number;
174
+ }
175
+ /** The team performance report. */
176
+ export interface SupportAgentPerformanceReportDto {
177
+ from: string;
178
+ to: string;
179
+ agents: SupportAgentPerformanceRowDto[];
180
+ }
@@ -273,3 +273,17 @@ export interface SupportTicketQueryParams {
273
273
  from?: string;
274
274
  to?: string;
275
275
  }
276
+ /**
277
+ * Rate the support received on a ticket.
278
+ *
279
+ * Sent to `POST /support/tickets/:id/rating`. Stored as SUPPORT_RATING customer
280
+ * feedback linked back to the ticket rather than as a field on the ticket, so
281
+ * the score stays inside Clarion and is never mirrored to a helpdesk with the
282
+ * conversation.
283
+ */
284
+ export interface RateSupportTicketPayload {
285
+ /** Stars, 1 to 5. */
286
+ rating: number;
287
+ /** Optional. A star on its own is a complete answer. */
288
+ comment?: string;
289
+ }
@@ -60,6 +60,12 @@ export interface TrackingBoundingBox {
60
60
  west: number;
61
61
  }
62
62
  export interface TrackingCurrentPositionQuery {
63
+ /**
64
+ * Tenant to read. REQUIRED for a Super-Admin, who has no tenant of their own
65
+ * (the service answers 403 without it); ignored for everyone else, whose scope
66
+ * always comes from their own access context and cannot be widened from here.
67
+ */
68
+ organizationId?: number;
63
69
  controlCentreId?: number;
64
70
  status?: TrackingUnitOnlineStatus;
65
71
  north?: number;
@@ -15,7 +15,12 @@ export interface TrackingPositionSocketEvent {
15
15
  longitude: number;
16
16
  accuracyMetres?: number;
17
17
  speedKph?: number;
18
- /** Degrees clockwise from north, [0,360). Omitted/undefined ⇒ do not rotate. */
18
+ /**
19
+ * Heading in degrees clockwise from north, [0,360). Resolved by the server:
20
+ * the provider's course while moving, else the direction actually travelled,
21
+ * else the last known heading. Omitted ONLY when it is genuinely unknown —
22
+ * keep whatever heading is already shown; do not reset the unit to north.
23
+ */
19
24
  courseDegrees?: number;
20
25
  moving?: boolean;
21
26
  ignitionOn?: boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "clarion-shared-types",
3
- "version": "1.0.91",
3
+ "version": "1.0.93",
4
4
  "main": "dist/cjs/index.js",
5
5
  "module": "dist/esm/index.js",
6
6
  "types": "dist/types/index.d.ts",