@droz-js/sdk 0.3.11 → 0.3.12

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.
package/README.md CHANGED
@@ -25,7 +25,8 @@ DrozSdk.withAuthorization('Basic', 'username', 'password');
25
25
 
26
26
  ## Global Error Handling
27
27
 
28
- The sdk will throw an error on every request that fails, but you can also catch the error globally by using the `on` method.
28
+ The sdk will throw an error on every request that fails, but you can also catch the error globally by using the `on`
29
+ method.
29
30
 
30
31
  ```typescript
31
32
  import { DrozSdk } from '@droz-js/sdk';
@@ -35,6 +36,13 @@ DrozSdk.on('error', (error) => {
35
36
  });
36
37
  ```
37
38
 
39
+ Every error sent is of type `SdkError` and contains the following properties:
40
+
41
+ - `message`: the original error message sent from the server;
42
+ - `statusCode`: similar to the http status codes and indicates the class of the error, 400 bad request, 403 forbidden,
43
+ 404 not found...;
44
+ - `errorCode`: a unique identifier for the error, this is useful to for i18n friendly messages;
45
+
38
46
  ## Websocket
39
47
 
40
48
  For websockets we use `graphql-ws` protocol with `AsyncIterator` to handle the subscriptions. The sdk will automatically
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@droz-js/sdk",
3
3
  "description": "Droz SDK",
4
- "version": "0.3.11",
4
+ "version": "0.3.12",
5
5
  "private": false,
6
6
  "exports": {
7
7
  ".": "./src/index.js",
@@ -112,8 +112,9 @@ export type CreateTicketInput = {
112
112
  export type CreateTicketMessageInput = {
113
113
  content: Scalars['String']['input'];
114
114
  contentType: Scalars['String']['input'];
115
+ from: TicketMessageRecipient;
115
116
  ticketId: Scalars['ID']['input'];
116
- type: TicketMessageType;
117
+ to: TicketMessageRecipient;
117
118
  };
118
119
  export type DrozChatAgent = {
119
120
  createdAt: Scalars['String']['output'];
@@ -270,22 +271,22 @@ export type TicketMessage = {
270
271
  content: Scalars['String']['output'];
271
272
  contentType: Scalars['String']['output'];
272
273
  createdAt: Scalars['DateTime']['output'];
274
+ from: TicketMessageRecipient;
273
275
  id: Scalars['ID']['output'];
274
- sentBy?: Maybe<Scalars['String']['output']>;
275
276
  ticketId: Scalars['ID']['output'];
276
- type: TicketMessageType;
277
+ to: TicketMessageRecipient;
277
278
  updatedAt: Scalars['DateTime']['output'];
278
279
  };
279
- export type TicketMessageSubscription = {
280
- action: SubscriptionAction;
281
- message: TicketMessage;
282
- };
283
- export declare enum TicketMessageType {
280
+ export declare enum TicketMessageRecipient {
284
281
  Agent = "AGENT",
285
282
  Marketplace = "MARKETPLACE",
286
283
  System = "SYSTEM",
287
284
  User = "USER"
288
285
  }
286
+ export type TicketMessageSubscription = {
287
+ action: SubscriptionAction;
288
+ message: TicketMessage;
289
+ };
289
290
  export type TicketMessagesConnection = {
290
291
  nodes: Array<TicketMessage>;
291
292
  pageInfo: PageInfo;
@@ -377,7 +378,7 @@ export type TicketFragment = (Pick<Ticket, 'channelId' | 'id' | 'state' | 'statu
377
378
  customer: CustomerFragment;
378
379
  triggerApp?: Maybe<TicketTriggerAppFragment>;
379
380
  });
380
- export type TicketMessageFragment = Pick<TicketMessage, 'id' | 'ticketId' | 'sentBy' | 'type' | 'contentType' | 'content' | 'createdAt' | 'updatedAt'>;
381
+ export type TicketMessageFragment = Pick<TicketMessage, 'id' | 'ticketId' | 'from' | 'to' | 'contentType' | 'content' | 'createdAt' | 'updatedAt'>;
381
382
  export type GetTicketQueryVariables = Exact<{
382
383
  id: Scalars['ID']['input'];
383
384
  }>;
@@ -509,7 +510,7 @@ export declare const DrozChatAgentFragmentDoc = "\n fragment drozChatAgent on
509
510
  export declare const CustomerFragmentDoc = "\n fragment customer on DrozChatCustomer {\n id\n name\n email\n phone\n createdAt\n updatedAt\n}\n ";
510
511
  export declare const TicketTriggerAppFragmentDoc = "\n fragment ticketTriggerApp on TicketTriggerApp {\n drn\n name\n appId\n appName\n}\n ";
511
512
  export declare const TicketFragmentDoc = "\n fragment ticket on Ticket {\n channelId\n id\n state\n status\n priority\n assignee {\n ...drozChatAgent\n }\n customer {\n ...customer\n }\n triggerApp {\n ...ticketTriggerApp\n }\n messagesCount\n lastMessage\n lastMessageAt\n unreadMessagesCount\n createdAt\n updatedAt\n}\n \n fragment drozChatAgent on DrozChatAgent {\n id\n name\n}\n \n\n fragment customer on DrozChatCustomer {\n id\n name\n email\n phone\n createdAt\n updatedAt\n}\n \n\n fragment ticketTriggerApp on TicketTriggerApp {\n drn\n name\n appId\n appName\n}\n ";
512
- export declare const TicketMessageFragmentDoc = "\n fragment ticketMessage on TicketMessage {\n id\n ticketId\n sentBy\n type\n contentType\n content\n createdAt\n updatedAt\n}\n ";
513
+ export declare const TicketMessageFragmentDoc = "\n fragment ticketMessage on TicketMessage {\n id\n ticketId\n from\n to\n contentType\n content\n createdAt\n updatedAt\n}\n ";
513
514
  export declare const GetDrozChatChannelDocument = "\n query getDrozChatChannel($id: ID!) {\n getDrozChatChannel(id: $id) {\n ...drozChatChannel\n }\n}\n \n fragment drozChatChannel on DrozChatChannel {\n id\n name\n createdAt\n updatedAt\n}\n ";
514
515
  export declare const ListDrozChatChannelsDocument = "\n query listDrozChatChannels {\n listDrozChatChannels {\n ...drozChatChannel\n }\n}\n \n fragment drozChatChannel on DrozChatChannel {\n id\n name\n createdAt\n updatedAt\n}\n ";
515
516
  export declare const CreateDrozChatChannelDocument = "\n mutation createDrozChatChannel($input: CreateDrozChatChannelInput!) {\n createDrozChatChannel(input: $input) {\n ...drozChatChannel\n }\n}\n \n fragment drozChatChannel on DrozChatChannel {\n id\n name\n createdAt\n updatedAt\n}\n ";
@@ -520,10 +521,10 @@ export declare const ListTicketsDocument = "\n query listTickets($state: Tick
520
521
  export declare const ListTicketsInQueueDocument = "\n query listTicketsInQueue($next: Base64) {\n listTicketsInQueue(next: $next) {\n nodes {\n ...ticket\n }\n pageInfo {\n hasNext\n next\n }\n }\n}\n \n fragment ticket on Ticket {\n channelId\n id\n state\n status\n priority\n assignee {\n ...drozChatAgent\n }\n customer {\n ...customer\n }\n triggerApp {\n ...ticketTriggerApp\n }\n messagesCount\n lastMessage\n lastMessageAt\n unreadMessagesCount\n createdAt\n updatedAt\n}\n \n fragment drozChatAgent on DrozChatAgent {\n id\n name\n}\n \n\n fragment customer on DrozChatCustomer {\n id\n name\n email\n phone\n createdAt\n updatedAt\n}\n \n\n fragment ticketTriggerApp on TicketTriggerApp {\n drn\n name\n appId\n appName\n}\n ";
521
522
  export declare const ListTicketsInProgressMineDocument = "\n query listTicketsInProgressMine($next: Base64) {\n listTicketsInProgressMine(next: $next) {\n nodes {\n ...ticket\n }\n pageInfo {\n hasNext\n next\n }\n }\n}\n \n fragment ticket on Ticket {\n channelId\n id\n state\n status\n priority\n assignee {\n ...drozChatAgent\n }\n customer {\n ...customer\n }\n triggerApp {\n ...ticketTriggerApp\n }\n messagesCount\n lastMessage\n lastMessageAt\n unreadMessagesCount\n createdAt\n updatedAt\n}\n \n fragment drozChatAgent on DrozChatAgent {\n id\n name\n}\n \n\n fragment customer on DrozChatCustomer {\n id\n name\n email\n phone\n createdAt\n updatedAt\n}\n \n\n fragment ticketTriggerApp on TicketTriggerApp {\n drn\n name\n appId\n appName\n}\n ";
522
523
  export declare const ListTicketsClosedDocument = "\n query listTicketsClosed($next: Base64) {\n listTicketsClosed(next: $next) {\n nodes {\n ...ticket\n }\n pageInfo {\n hasNext\n next\n }\n }\n}\n \n fragment ticket on Ticket {\n channelId\n id\n state\n status\n priority\n assignee {\n ...drozChatAgent\n }\n customer {\n ...customer\n }\n triggerApp {\n ...ticketTriggerApp\n }\n messagesCount\n lastMessage\n lastMessageAt\n unreadMessagesCount\n createdAt\n updatedAt\n}\n \n fragment drozChatAgent on DrozChatAgent {\n id\n name\n}\n \n\n fragment customer on DrozChatCustomer {\n id\n name\n email\n phone\n createdAt\n updatedAt\n}\n \n\n fragment ticketTriggerApp on TicketTriggerApp {\n drn\n name\n appId\n appName\n}\n ";
523
- export declare const ListTicketMessagesDocument = "\n query listTicketMessages($ticketId: ID!, $next: Base64) {\n listTicketMessages(ticketId: $ticketId, next: $next) {\n pageInfo {\n hasNext\n next\n }\n nodes {\n ...ticketMessage\n }\n }\n}\n \n fragment ticketMessage on TicketMessage {\n id\n ticketId\n sentBy\n type\n contentType\n content\n createdAt\n updatedAt\n}\n ";
524
+ export declare const ListTicketMessagesDocument = "\n query listTicketMessages($ticketId: ID!, $next: Base64) {\n listTicketMessages(ticketId: $ticketId, next: $next) {\n pageInfo {\n hasNext\n next\n }\n nodes {\n ...ticketMessage\n }\n }\n}\n \n fragment ticketMessage on TicketMessage {\n id\n ticketId\n from\n to\n contentType\n content\n createdAt\n updatedAt\n}\n ";
524
525
  export declare const CreateTicketDocument = "\n mutation createTicket($input: CreateTicketInput!) {\n createTicket(input: $input) {\n ...ticket\n }\n}\n \n fragment ticket on Ticket {\n channelId\n id\n state\n status\n priority\n assignee {\n ...drozChatAgent\n }\n customer {\n ...customer\n }\n triggerApp {\n ...ticketTriggerApp\n }\n messagesCount\n lastMessage\n lastMessageAt\n unreadMessagesCount\n createdAt\n updatedAt\n}\n \n fragment drozChatAgent on DrozChatAgent {\n id\n name\n}\n \n\n fragment customer on DrozChatCustomer {\n id\n name\n email\n phone\n createdAt\n updatedAt\n}\n \n\n fragment ticketTriggerApp on TicketTriggerApp {\n drn\n name\n appId\n appName\n}\n ";
525
526
  export declare const MarkTicketMessagesAsReadDocument = "\n mutation markTicketMessagesAsRead($input: MarkTicketMessagesAsReadInput!) {\n markTicketMessagesAsRead(input: $input)\n}\n ";
526
- export declare const CreateTicketMessageDocument = "\n mutation createTicketMessage($input: CreateTicketMessageInput!) {\n createTicketMessage(input: $input) {\n ...ticketMessage\n }\n}\n \n fragment ticketMessage on TicketMessage {\n id\n ticketId\n sentBy\n type\n contentType\n content\n createdAt\n updatedAt\n}\n ";
527
+ export declare const CreateTicketMessageDocument = "\n mutation createTicketMessage($input: CreateTicketMessageInput!) {\n createTicketMessage(input: $input) {\n ...ticketMessage\n }\n}\n \n fragment ticketMessage on TicketMessage {\n id\n ticketId\n from\n to\n contentType\n content\n createdAt\n updatedAt\n}\n ";
527
528
  export declare const AssignTicketDocument = "\n mutation assignTicket($input: AssignTicketInput!) {\n assignTicket(input: $input) {\n ...ticket\n }\n}\n \n fragment ticket on Ticket {\n channelId\n id\n state\n status\n priority\n assignee {\n ...drozChatAgent\n }\n customer {\n ...customer\n }\n triggerApp {\n ...ticketTriggerApp\n }\n messagesCount\n lastMessage\n lastMessageAt\n unreadMessagesCount\n createdAt\n updatedAt\n}\n \n fragment drozChatAgent on DrozChatAgent {\n id\n name\n}\n \n\n fragment customer on DrozChatCustomer {\n id\n name\n email\n phone\n createdAt\n updatedAt\n}\n \n\n fragment ticketTriggerApp on TicketTriggerApp {\n drn\n name\n appId\n appName\n}\n ";
528
529
  export declare const AssignTicketMyselfDocument = "\n mutation assignTicketMyself($input: AssignTicketMyselfInput!) {\n assignTicketMyself(input: $input) {\n ...ticket\n }\n}\n \n fragment ticket on Ticket {\n channelId\n id\n state\n status\n priority\n assignee {\n ...drozChatAgent\n }\n customer {\n ...customer\n }\n triggerApp {\n ...ticketTriggerApp\n }\n messagesCount\n lastMessage\n lastMessageAt\n unreadMessagesCount\n createdAt\n updatedAt\n}\n \n fragment drozChatAgent on DrozChatAgent {\n id\n name\n}\n \n\n fragment customer on DrozChatCustomer {\n id\n name\n email\n phone\n createdAt\n updatedAt\n}\n \n\n fragment ticketTriggerApp on TicketTriggerApp {\n drn\n name\n appId\n appName\n}\n ";
529
530
  export declare const UnassignTicketDocument = "\n mutation unassignTicket($input: UnassignTicketInput!) {\n unassignTicket(input: $input) {\n ...ticket\n }\n}\n \n fragment ticket on Ticket {\n channelId\n id\n state\n status\n priority\n assignee {\n ...drozChatAgent\n }\n customer {\n ...customer\n }\n triggerApp {\n ...ticketTriggerApp\n }\n messagesCount\n lastMessage\n lastMessageAt\n unreadMessagesCount\n createdAt\n updatedAt\n}\n \n fragment drozChatAgent on DrozChatAgent {\n id\n name\n}\n \n\n fragment customer on DrozChatCustomer {\n id\n name\n email\n phone\n createdAt\n updatedAt\n}\n \n\n fragment ticketTriggerApp on TicketTriggerApp {\n drn\n name\n appId\n appName\n}\n ";
@@ -531,7 +532,7 @@ export declare const CloseTicketDocument = "\n mutation closeTicket($input: C
531
532
  export declare const OnTicketInQueueDocument = "\n subscription onTicketInQueue {\n onTicketInQueue {\n ticket {\n ...ticket\n }\n action\n }\n}\n \n fragment ticket on Ticket {\n channelId\n id\n state\n status\n priority\n assignee {\n ...drozChatAgent\n }\n customer {\n ...customer\n }\n triggerApp {\n ...ticketTriggerApp\n }\n messagesCount\n lastMessage\n lastMessageAt\n unreadMessagesCount\n createdAt\n updatedAt\n}\n \n fragment drozChatAgent on DrozChatAgent {\n id\n name\n}\n \n\n fragment customer on DrozChatCustomer {\n id\n name\n email\n phone\n createdAt\n updatedAt\n}\n \n\n fragment ticketTriggerApp on TicketTriggerApp {\n drn\n name\n appId\n appName\n}\n ";
532
533
  export declare const OnTicketInProgressMineDocument = "\n subscription onTicketInProgressMine {\n onTicketInProgressMine {\n ticket {\n ...ticket\n }\n action\n }\n}\n \n fragment ticket on Ticket {\n channelId\n id\n state\n status\n priority\n assignee {\n ...drozChatAgent\n }\n customer {\n ...customer\n }\n triggerApp {\n ...ticketTriggerApp\n }\n messagesCount\n lastMessage\n lastMessageAt\n unreadMessagesCount\n createdAt\n updatedAt\n}\n \n fragment drozChatAgent on DrozChatAgent {\n id\n name\n}\n \n\n fragment customer on DrozChatCustomer {\n id\n name\n email\n phone\n createdAt\n updatedAt\n}\n \n\n fragment ticketTriggerApp on TicketTriggerApp {\n drn\n name\n appId\n appName\n}\n ";
533
534
  export declare const OnTicketClosedDocument = "\n subscription onTicketClosed {\n onTicketClosed {\n ticket {\n ...ticket\n }\n action\n }\n}\n \n fragment ticket on Ticket {\n channelId\n id\n state\n status\n priority\n assignee {\n ...drozChatAgent\n }\n customer {\n ...customer\n }\n triggerApp {\n ...ticketTriggerApp\n }\n messagesCount\n lastMessage\n lastMessageAt\n unreadMessagesCount\n createdAt\n updatedAt\n}\n \n fragment drozChatAgent on DrozChatAgent {\n id\n name\n}\n \n\n fragment customer on DrozChatCustomer {\n id\n name\n email\n phone\n createdAt\n updatedAt\n}\n \n\n fragment ticketTriggerApp on TicketTriggerApp {\n drn\n name\n appId\n appName\n}\n ";
534
- export declare const OnTicketMessageDocument = "\n subscription onTicketMessage($ticketId: ID!) {\n onTicketMessage(ticketId: $ticketId) {\n message {\n ...ticketMessage\n }\n action\n }\n}\n \n fragment ticketMessage on TicketMessage {\n id\n ticketId\n sentBy\n type\n contentType\n content\n createdAt\n updatedAt\n}\n ";
535
+ export declare const OnTicketMessageDocument = "\n subscription onTicketMessage($ticketId: ID!) {\n onTicketMessage(ticketId: $ticketId) {\n message {\n ...ticketMessage\n }\n action\n }\n}\n \n fragment ticketMessage on TicketMessage {\n id\n ticketId\n from\n to\n contentType\n content\n createdAt\n updatedAt\n}\n ";
535
536
  export type Requester<C = {}, E = unknown> = <R, V>(doc: string, vars?: V, options?: C) => Promise<R> | AsyncIterableIterator<R>;
536
537
  export declare function getSdk<C, E>(requester: Requester<C, E>): {
537
538
  getDrozChatChannel(variables: GetDrozChatChannelQueryVariables, options?: C): Promise<GetDrozChatChannelQuery>;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /* istanbul ignore file */
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.serviceName = exports.getSdk = exports.OnTicketMessageDocument = exports.OnTicketClosedDocument = exports.OnTicketInProgressMineDocument = exports.OnTicketInQueueDocument = exports.CloseTicketDocument = exports.UnassignTicketDocument = exports.AssignTicketMyselfDocument = exports.AssignTicketDocument = exports.CreateTicketMessageDocument = exports.MarkTicketMessagesAsReadDocument = exports.CreateTicketDocument = exports.ListTicketMessagesDocument = exports.ListTicketsClosedDocument = exports.ListTicketsInProgressMineDocument = exports.ListTicketsInQueueDocument = exports.ListTicketsDocument = exports.GetTicketDocument = exports.RemoveDrozChatChannelDocument = exports.UpdateDrozChatChannelDocument = exports.CreateDrozChatChannelDocument = exports.ListDrozChatChannelsDocument = exports.GetDrozChatChannelDocument = exports.TicketMessageFragmentDoc = exports.TicketFragmentDoc = exports.TicketTriggerAppFragmentDoc = exports.CustomerFragmentDoc = exports.DrozChatAgentFragmentDoc = exports.DrozChatChannelFragmentDoc = exports.Typenames = exports.TicketStatus = exports.TicketState = exports.TicketPriority = exports.TicketMessageType = exports.SubscriptionAction = exports.AppInstanceStatus = void 0;
4
+ exports.serviceName = exports.getSdk = exports.OnTicketMessageDocument = exports.OnTicketClosedDocument = exports.OnTicketInProgressMineDocument = exports.OnTicketInQueueDocument = exports.CloseTicketDocument = exports.UnassignTicketDocument = exports.AssignTicketMyselfDocument = exports.AssignTicketDocument = exports.CreateTicketMessageDocument = exports.MarkTicketMessagesAsReadDocument = exports.CreateTicketDocument = exports.ListTicketMessagesDocument = exports.ListTicketsClosedDocument = exports.ListTicketsInProgressMineDocument = exports.ListTicketsInQueueDocument = exports.ListTicketsDocument = exports.GetTicketDocument = exports.RemoveDrozChatChannelDocument = exports.UpdateDrozChatChannelDocument = exports.CreateDrozChatChannelDocument = exports.ListDrozChatChannelsDocument = exports.GetDrozChatChannelDocument = exports.TicketMessageFragmentDoc = exports.TicketFragmentDoc = exports.TicketTriggerAppFragmentDoc = exports.CustomerFragmentDoc = exports.DrozChatAgentFragmentDoc = exports.DrozChatChannelFragmentDoc = exports.Typenames = exports.TicketStatus = exports.TicketState = exports.TicketPriority = exports.TicketMessageRecipient = exports.SubscriptionAction = exports.AppInstanceStatus = void 0;
5
5
  var AppInstanceStatus;
6
6
  (function (AppInstanceStatus) {
7
7
  AppInstanceStatus["Active"] = "Active";
@@ -14,13 +14,13 @@ var SubscriptionAction;
14
14
  SubscriptionAction["Removed"] = "REMOVED";
15
15
  SubscriptionAction["Updated"] = "UPDATED";
16
16
  })(SubscriptionAction || (exports.SubscriptionAction = SubscriptionAction = {}));
17
- var TicketMessageType;
18
- (function (TicketMessageType) {
19
- TicketMessageType["Agent"] = "AGENT";
20
- TicketMessageType["Marketplace"] = "MARKETPLACE";
21
- TicketMessageType["System"] = "SYSTEM";
22
- TicketMessageType["User"] = "USER";
23
- })(TicketMessageType || (exports.TicketMessageType = TicketMessageType = {}));
17
+ var TicketMessageRecipient;
18
+ (function (TicketMessageRecipient) {
19
+ TicketMessageRecipient["Agent"] = "AGENT";
20
+ TicketMessageRecipient["Marketplace"] = "MARKETPLACE";
21
+ TicketMessageRecipient["System"] = "SYSTEM";
22
+ TicketMessageRecipient["User"] = "USER";
23
+ })(TicketMessageRecipient || (exports.TicketMessageRecipient = TicketMessageRecipient = {}));
24
24
  var TicketPriority;
25
25
  (function (TicketPriority) {
26
26
  TicketPriority["High"] = "HIGH";
@@ -114,8 +114,8 @@ exports.TicketMessageFragmentDoc = `
114
114
  fragment ticketMessage on TicketMessage {
115
115
  id
116
116
  ticketId
117
- sentBy
118
- type
117
+ from
118
+ to
119
119
  contentType
120
120
  content
121
121
  createdAt