@whitewall/blip-sdk 0.0.6 → 0.0.8

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/dist/client.d.ts CHANGED
@@ -2,8 +2,10 @@ import { AccountNamespace } from './namespaces/account.js';
2
2
  import { BuilderNamespace } from './namespaces/builder.js';
3
3
  import { DeskNamespace } from './namespaces/desk.js';
4
4
  import { MediaNamespace } from './namespaces/media.js';
5
+ import { SchedulerNamespace } from './namespaces/scheduler.js';
5
6
  import { WhatsAppNamespace } from './namespaces/whatsapp.js';
6
7
  import { Sender } from './sender/sender.js';
8
+ import { Identity } from './types/node.js';
7
9
  export declare class BlipClient {
8
10
  readonly sender: Sender;
9
11
  constructor(sender: Sender);
@@ -12,4 +14,6 @@ export declare class BlipClient {
12
14
  readonly desk: DeskNamespace;
13
15
  readonly media: MediaNamespace;
14
16
  readonly whatsapp: WhatsAppNamespace;
17
+ readonly scheduler: SchedulerNamespace;
18
+ static http(botIdentityOrIdentifier: string | Identity, accessKey: string, tenantId: string): BlipClient;
15
19
  }
package/dist/client.js CHANGED
@@ -2,15 +2,28 @@ import { AccountNamespace } from './namespaces/account.js';
2
2
  import { BuilderNamespace } from './namespaces/builder.js';
3
3
  import { DeskNamespace } from './namespaces/desk.js';
4
4
  import { MediaNamespace } from './namespaces/media.js';
5
+ import { SchedulerNamespace } from './namespaces/scheduler.js';
5
6
  import { WhatsAppNamespace } from './namespaces/whatsapp.js';
7
+ import { HttpSender } from './sender/httpsender.js';
6
8
  export class BlipClient {
9
+ sender;
7
10
  constructor(sender) {
8
11
  this.sender = sender;
9
- this.account = new AccountNamespace(this.sender);
10
- this.builder = new BuilderNamespace(this.sender);
11
- this.desk = new DeskNamespace(this.sender);
12
- this.media = new MediaNamespace(this.sender);
13
- this.whatsapp = new WhatsAppNamespace(this.sender);
12
+ this.account = new AccountNamespace(sender);
13
+ this.builder = new BuilderNamespace(sender);
14
+ this.desk = new DeskNamespace(sender);
15
+ this.media = new MediaNamespace(sender);
16
+ this.whatsapp = new WhatsAppNamespace(sender);
17
+ this.scheduler = new SchedulerNamespace(sender);
18
+ }
19
+ account;
20
+ builder;
21
+ desk;
22
+ media;
23
+ whatsapp;
24
+ scheduler;
25
+ static http(botIdentityOrIdentifier, accessKey, tenantId) {
26
+ return new BlipClient(HttpSender.login(botIdentityOrIdentifier, accessKey, tenantId));
14
27
  }
15
28
  }
16
29
  //# sourceMappingURL=client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAG5D,MAAM,OAAO,UAAU;IACnB,YAA4B,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;QAE1B,YAAO,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC3C,YAAO,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC3C,SAAI,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACrC,UAAK,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACvC,aAAQ,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IANhB,CAAC;CAOjD"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAInD,MAAM,OAAO,UAAU;IACS;IAA5B,YAA4B,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;QACtC,IAAI,CAAC,OAAO,GAAG,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAA;QAC3C,IAAI,CAAC,OAAO,GAAG,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAA;QAC3C,IAAI,CAAC,IAAI,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,CAAA;QACrC,IAAI,CAAC,KAAK,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,CAAA;QACvC,IAAI,CAAC,QAAQ,GAAG,IAAI,iBAAiB,CAAC,MAAM,CAAC,CAAA;QAC7C,IAAI,CAAC,SAAS,GAAG,IAAI,kBAAkB,CAAC,MAAM,CAAC,CAAA;IACnD,CAAC;IAEe,OAAO,CAAmB;IAC1B,OAAO,CAAmB;IAC1B,IAAI,CAAgB;IACpB,KAAK,CAAiB;IACtB,QAAQ,CAAoB;IAC5B,SAAS,CAAqB;IAEvC,MAAM,CAAC,IAAI,CAAC,uBAA0C,EAAE,SAAiB,EAAE,QAAgB;QAC9F,OAAO,IAAI,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,uBAAuB,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAA;IACzF,CAAC;CACJ"}
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  export * from './client.js';
2
2
  export * from './utils/uri.js';
3
+ export * from './utils/odata.js';
3
4
  export * from './types/index.js';
4
5
  export * from './sender/sender.js';
5
6
  export * from './sender/bliperror.js';
6
7
  export * from './sender/httpsender.js';
7
- export { ODataFilterBuilder as filter } from 'odata-filter-builder';
package/dist/index.js CHANGED
@@ -1,8 +1,8 @@
1
1
  export * from './client.js';
2
2
  export * from './utils/uri.js';
3
+ export * from './utils/odata.js';
3
4
  export * from './types/index.js';
4
5
  export * from './sender/sender.js';
5
6
  export * from './sender/bliperror.js';
6
7
  export * from './sender/httpsender.js';
7
- export { ODataFilterBuilder as filter } from 'odata-filter-builder';
8
8
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,kBAAkB,CAAA;AAChC,cAAc,oBAAoB,CAAA;AAClC,cAAc,uBAAuB,CAAA;AACrC,cAAc,wBAAwB,CAAA;AACtC,OAAO,EAAE,kBAAkB,IAAI,MAAM,EAAE,MAAM,sBAAsB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA;AAChC,cAAc,oBAAoB,CAAA;AAClC,cAAc,uBAAuB,CAAA;AACrC,cAAc,wBAAwB,CAAA"}
@@ -1,6 +1,7 @@
1
1
  import { Sender } from '../sender/sender.js';
2
2
  import { ConsumeOptions, Namespace } from './namespace.js';
3
3
  import { Contact, ThreadItem, Identity } from '../types/index.js';
4
+ import { ODataFilter } from '../utils/odata.js';
4
5
  export declare class AccountNamespace extends Namespace {
5
6
  constructor(sender: Sender);
6
7
  getAccount(opts?: ConsumeOptions): Promise<{
@@ -11,10 +12,15 @@ export declare class AccountNamespace extends Namespace {
11
12
  extras?: Record<string, string | null>;
12
13
  creationDate: string;
13
14
  }>;
15
+ getContexts(contact: Identity, opts?: ConsumeOptions): Promise<string[]>;
16
+ getContextsWithValues(contact: Identity, opts?: ConsumeOptions): Promise<{
17
+ name: string;
18
+ value: string;
19
+ }[]>;
14
20
  getContext(contact: Identity, key: string, opts?: ConsumeOptions): Promise<string | undefined>;
15
21
  setContext(contact: Identity, key: string, value: string, ttlSeconds?: number, opts?: ConsumeOptions): Promise<void>;
16
22
  deleteContext(contact: Identity, key: string, opts?: ConsumeOptions): Promise<void>;
17
- getContacts(opts?: ConsumeOptions): Promise<Contact[]>;
23
+ getContacts(filter?: ODataFilter<Contact>, opts?: ConsumeOptions): Promise<Contact[]>;
18
24
  getContact(contact: Identity, opts?: ConsumeOptions): Promise<Contact>;
19
25
  setContact(contact: Contact, opts?: ConsumeOptions): Promise<void>;
20
26
  mergeContact(contact: Partial<Contact> & Pick<Contact, 'identity'>, opts?: ConsumeOptions): Promise<void>;
@@ -27,13 +33,14 @@ export declare class AccountNamespace extends Namespace {
27
33
  name: string;
28
34
  value: string;
29
35
  }[]>;
36
+ getConfigurations(opts?: ConsumeOptions): Promise<Record<string, string>>;
37
+ setConfigurations(caller: Identity, configuration: Record<string, string>, opts?: ConsumeOptions): Promise<void>;
30
38
  getThread(contact: Identity, query?: {
31
39
  messageId?: string;
32
40
  storageDate?: string;
33
- direction?: 'asc' | 'desc';
34
41
  refreshExpiredMedia?: boolean;
35
42
  getFromOriginator?: boolean;
36
- }, opts?: ConsumeOptions): Promise<ThreadItem[]>;
43
+ }, opts?: Omit<ConsumeOptions, 'skip'>): Promise<ThreadItem[]>;
37
44
  getMergedThreads(contact: Identity, query?: {
38
45
  messageId?: string;
39
46
  storageDate?: string;
@@ -11,6 +11,24 @@ export class AccountNamespace extends Namespace {
11
11
  uri: uri `/account`,
12
12
  }, opts);
13
13
  }
14
+ async getContexts(contact, opts) {
15
+ return this.sendCommand({
16
+ method: 'get',
17
+ uri: uri `/contexts/${contact}`,
18
+ }, {
19
+ collection: true,
20
+ ...opts,
21
+ });
22
+ }
23
+ async getContextsWithValues(contact, opts) {
24
+ return this.sendCommand({
25
+ method: 'get',
26
+ uri: uri `/contexts/${contact}?withContextValues=true`,
27
+ }, {
28
+ collection: true,
29
+ ...opts,
30
+ });
31
+ }
14
32
  async getContext(contact, key, opts) {
15
33
  try {
16
34
  return await this.sendCommand({
@@ -41,10 +59,10 @@ export class AccountNamespace extends Namespace {
41
59
  uri: uri `/contexts/${contact}/${key}`,
42
60
  }, opts);
43
61
  }
44
- async getContacts(opts) {
62
+ async getContacts(filter, opts) {
45
63
  return this.sendCommand({
46
64
  method: 'get',
47
- uri: uri `/contacts`,
65
+ uri: uri `/contacts?${{ $filter: filter?.toString() }}`,
48
66
  }, {
49
67
  collection: true,
50
68
  ...opts,
@@ -126,14 +144,42 @@ export class AccountNamespace extends Namespace {
126
144
  ...opts,
127
145
  });
128
146
  }
129
- async getThread(contact, query, opts) {
147
+ async getConfigurations(opts) {
130
148
  return this.sendCommand({
131
149
  method: 'get',
132
- uri: uri `/threads/${contact}?${query}`,
133
- }, {
134
- collection: true,
135
- ...opts,
136
- });
150
+ uri: uri `/configuration`,
151
+ }, opts);
152
+ }
153
+ async setConfigurations(caller, configuration, opts) {
154
+ return this.sendCommand({
155
+ method: 'set',
156
+ type: 'application/json',
157
+ uri: uri `/configuration?${{ caller }}`,
158
+ resource: configuration,
159
+ }, opts);
160
+ }
161
+ async getThread(contact, query, opts) {
162
+ let thread = [];
163
+ let lastMessage = query?.messageId;
164
+ let hasMore = true;
165
+ do {
166
+ const threadItems = await this.sendCommand({
167
+ method: 'get',
168
+ uri: uri `/threads/${contact}?${{
169
+ ...query,
170
+ messageId: lastMessage,
171
+ direction: 'desc',
172
+ }}`,
173
+ }, {
174
+ collection: true,
175
+ ...opts,
176
+ fetchall: false,
177
+ });
178
+ thread = [...thread, ...threadItems];
179
+ hasMore = threadItems.length > 0;
180
+ lastMessage = threadItems[threadItems.length - 1]?.id;
181
+ } while (hasMore && opts?.fetchall && (!opts?.max || thread.length < opts.max));
182
+ return thread;
137
183
  }
138
184
  async getMergedThreads(contact, query, opts) {
139
185
  return this.sendCommand({
@@ -1 +1 @@
1
- {"version":3,"file":"account.js","sourceRoot":"","sources":["../../src/namespaces/account.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"account.js","sourceRoot":"","sources":["../../src/namespaces/account.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { Sender } from '../sender/sender.js';
2
2
  import { ConsumeOptions, Namespace } from './namespace.js';
3
- import { ODataFilterBuilder } from 'odata-filter-builder';
4
- import { Ticket, TicketStatus } from '../types/index.js';
3
+ import { ODataFilter } from '../utils/odata.js';
4
+ import { Identity, Ticket, TicketStatus } from '../types/index.js';
5
5
  export declare class DeskNamespace extends Namespace {
6
6
  constructor(sender: Sender);
7
7
  getTicket(ticket: string, opts?: ConsumeOptions): Promise<Ticket>;
@@ -21,10 +21,16 @@ export declare class DeskNamespace extends Namespace {
21
21
  team: string;
22
22
  queueTime: string;
23
23
  }[]>;
24
- getTickets(filter?: ODataFilterBuilder, opts?: ConsumeOptions): Promise<Ticket[]>;
24
+ getTickets(filter?: ODataFilter<Ticket>, opts?: ConsumeOptions): Promise<Ticket[]>;
25
25
  changeTicketStatus(ticket: string, status: TicketStatus, settings?: {
26
26
  agentIdentity?: string;
27
27
  tags?: string[];
28
28
  }, opts?: ConsumeOptions): Promise<void>;
29
29
  isOnAttendanceTime(queueIdOrName?: string, timezone?: number): Promise<boolean>;
30
+ getAttendants(opts?: ConsumeOptions): Promise<{
31
+ identity: Identity;
32
+ teams: string[];
33
+ status: 'Offline' | 'Pause' | 'Online' | 'Invisible';
34
+ lastServiceDate: string;
35
+ }[]>;
30
36
  }
@@ -29,7 +29,7 @@ export class DeskNamespace extends Namespace {
29
29
  async getTickets(filter, opts) {
30
30
  return this.sendCommand({
31
31
  method: 'get',
32
- uri: uri `/tickets?${{ $filter: filter === null || filter === void 0 ? void 0 : filter.toString() }}`,
32
+ uri: uri `/tickets?${{ $filter: filter?.toString() }}`,
33
33
  }, {
34
34
  collection: true,
35
35
  ...opts,
@@ -100,5 +100,14 @@ export class DeskNamespace extends Namespace {
100
100
  }
101
101
  return false;
102
102
  }
103
+ async getAttendants(opts) {
104
+ return this.sendCommand({
105
+ method: 'get',
106
+ uri: uri `/attendants`,
107
+ }, {
108
+ collection: true,
109
+ ...opts,
110
+ });
111
+ }
103
112
  }
104
113
  //# sourceMappingURL=desk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"desk.js","sourceRoot":"","sources":["../../src/namespaces/desk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"desk.js","sourceRoot":"","sources":["../../src/namespaces/desk.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAElD,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAA;AACrC,OAAO,EAAkB,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAI1D,MAAM,OAAO,aAAc,SAAQ,SAAS;IACxC,YAAY,MAAc;QACtB,KAAK,CAAC,MAAM,EAAE,4BAA4B,CAAC,CAAA;IAC/C,CAAC;IAEM,KAAK,CAAC,SAAS,CAAC,MAAc,EAAE,IAAqB;QACxD,OAAO,IAAI,CAAC,WAAW,CACnB;YACI,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,GAAG,CAAA,YAAY,MAAM,EAAE;SAC/B,EACD,IAAI,CACP,CAAA;IACL,CAAC;IAEM,KAAK,CAAC,iBAAiB,CAAC,IAAqB;QAUhD,OAAO,IAAI,CAAC,WAAW,CACnB;YACI,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,GAAG,CAAA,8BAA8B,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE;SACzD,EACD,IAAI,CACP,CAAA;IACL,CAAC;IAEM,KAAK,CAAC,wBAAwB,CAAC,IAAqB;QAQvD,OAAO,IAAI,CAAC,WAAW,CACnB;YACI,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,GAAG,CAAA,+BAA+B,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE;SAC1D,EACD;YACI,UAAU,EAAE,IAAI;YAChB,GAAG,IAAI;SACV,CACJ,CAAA;IACL,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,MAA4B,EAAE,IAAqB;QACvE,OAAO,IAAI,CAAC,WAAW,CACnB;YACI,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,GAAG,CAAA,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE;SACxD,EACD;YACI,UAAU,EAAE,IAAI;YAChB,GAAG,IAAI;SACV,CACJ,CAAA;IACL,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAC3B,MAAc,EACd,MAAoB,EACpB,QAGC,EACD,IAAqB;QAErB,IAAI,CAAC;YACD,OAAO,MAAM,IAAI,CAAC,WAAW,CACzB;gBACI,MAAM,EAAE,KAAK;gBACb,GAAG,EAAE,GAAG,CAAA,wBAAwB;gBAChC,IAAI,EAAE,kCAAkC;gBACxC,QAAQ,EAAE;oBACN,EAAE,EAAE,MAAM;oBACV,MAAM;oBACN,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC;iBACtB;aACJ,EACD,IAAI,CACP,CAAA;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,IAAI,GAAG,YAAY,SAAS,IAAI,GAAG,CAAC,IAAI,KAAK,EAAE,EAAE,CAAC;gBAC9C,OAAM;YACV,CAAC;YAED,MAAM,GAAG,CAAA;QACb,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAAC,gBAAwB,SAAS,EAAE,QAAQ,GAAG,CAAC,CAAC;QAC5E,MAAM,eAAe,GAAqB,MAAM,IAAI,CAAC,WAAW,CAC5D;YACI,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,GAAG,CAAA,kBAAkB;SAC7B,EACD,EAAE,UAAU,EAAE,IAAI,EAAE,CACvB,CAAA;QAED,MAAM,sBAAsB,GAAG,eAAe;aAEzC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;QAExD,KAAK,MAAM,cAAc,IAAI,sBAAsB,EAAE,CAAC;YAClD,MAAM,sBAAsB,GAA2B,MAAM,IAAI,CAAC,WAAW,CAAC;gBAC1E,MAAM,EAAE,KAAK;gBACb,GAAG,EAAE,GAAG,CAAA,8BAA8B,cAAc,CAAC,EAAE,EAAE;aAC5D,CAAC,CAAA;YAEF,IACI,sBAAsB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,aAAa,IAAI,KAAK,CAAC,WAAW,KAAK,aAAa,CAAC;gBACjH,CAAC,sBAAsB,CAAC,cAAc,CAAC,MAAM,EAC/C,CAAC;gBAEC,SAAQ;YACZ,CAAC;YAED,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAA;YAE5D,MAAM,eAAe,GAAG,sBAAsB,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;gBACnF,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;gBAC7C,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBAEzC,OAAO,GAAG,CAAC,OAAO,EAAE,IAAI,SAAS,CAAC,OAAO,EAAE,IAAI,GAAG,CAAC,OAAO,EAAE,IAAI,OAAO,CAAC,OAAO,EAAE,CAAA;YACrF,CAAC,CAAC,CAAA;YACF,IAAI,eAAe,EAAE,CAAC;gBAClB,OAAO,KAAK,CAAA;YAChB,CAAC;YAED,MAAM,YAAY,GAAG,GAAG,CAAC,MAAM,EAAE,CAAA;YACjC,MAAM,UAAU,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAA;YACjG,MAAM,aAAa,GAAG,sBAAsB,CAAC,2BAA2B,CAAC,IAAI,CACzE,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS,KAAK,UAAU,CAAC,YAAY,CAAC,CAChE,CAAA;YACD,IAAI,CAAC,aAAa,EAAE,CAAC;gBACjB,OAAO,KAAK,CAAA;YAChB,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAA;YAC/B,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAA;YAE7B,MAAM,CAAC,UAAU,EAAE,YAAY,CAAC,GAAG,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YACrE,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAA;YACtC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAA;YAE1C,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAC/D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;YAClC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAA;YAEtC,IAAI,GAAG,CAAC,OAAO,EAAE,IAAI,SAAS,CAAC,OAAO,EAAE,IAAI,GAAG,CAAC,OAAO,EAAE,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;gBAC7E,OAAO,IAAI,CAAA;YACf,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAA;IAChB,CAAC;IAEM,KAAK,CAAC,aAAa,CAAC,IAAqB;QAQ5C,OAAO,IAAI,CAAC,WAAW,CACnB;YACI,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,GAAG,CAAA,aAAa;SACxB,EACD;YACI,UAAU,EAAE,IAAI;YAChB,GAAG,IAAI;SACV,CACJ,CAAA;IACL,CAAC;CACJ"}
@@ -5,12 +5,13 @@ export type ConsumeOptions = {
5
5
  take?: number;
6
6
  skip?: number;
7
7
  fetchall?: boolean;
8
+ max?: number;
8
9
  };
9
10
  export declare class Namespace {
10
11
  private readonly sender;
11
12
  private readonly owner;
12
13
  constructor(sender: Sender, owner: Identity);
13
- sendCommand<TMethod extends CommandMethods, TResponse extends TMethod extends 'get' ? unknown : void = void, TCollection = TResponse extends unknown[] ? true : false>(command: Omit<Command<TMethod>, 'uri' | 'id' | 'to'> & {
14
+ sendCommand<TMethod extends CommandMethods, TResponse = void, TCollection = TResponse extends unknown[] ? true : false>(command: Omit<Command<TMethod>, 'uri' | 'id' | 'to'> & {
14
15
  uri: {
15
16
  path: string;
16
17
  query: Map<string, string>;
@@ -1,6 +1,8 @@
1
1
  import { randomId } from '../utils/random.js';
2
2
  import { mapToQuery } from '../utils/uri.js';
3
3
  export class Namespace {
4
+ sender;
5
+ owner;
4
6
  constructor(sender, owner) {
5
7
  this.sender = sender;
6
8
  this.owner = owner;
@@ -8,11 +10,11 @@ export class Namespace {
8
10
  async sendCommand(command, opts) {
9
11
  let uri = command.uri.path;
10
12
  let query = command.uri.query;
11
- const take = (opts === null || opts === void 0 ? void 0 : opts.take) || 100;
12
- if (opts === null || opts === void 0 ? void 0 : opts.collection) {
13
+ const take = opts?.take || 100;
14
+ if (opts?.collection) {
13
15
  query.set('$take', take.toString());
14
16
  }
15
- if (opts === null || opts === void 0 ? void 0 : opts.ownerIdentity) {
17
+ if (opts?.ownerIdentity) {
16
18
  uri = `lime://${opts.ownerIdentity}/${uri}`;
17
19
  }
18
20
  if (uri.endsWith('?')) {
@@ -20,7 +22,7 @@ export class Namespace {
20
22
  }
21
23
  let buildUri = () => (query.size > 0 ? uri + '?' + mapToQuery(query) : uri);
22
24
  const fetchItems = async (acc = [], skip = 0) => {
23
- if (opts === null || opts === void 0 ? void 0 : opts.collection) {
25
+ if (opts?.collection) {
24
26
  query.set('$skip', skip.toString());
25
27
  const commandToSend = {
26
28
  id: randomId(),
@@ -30,7 +32,7 @@ export class Namespace {
30
32
  };
31
33
  const response = (await this.sender.sendCommand(commandToSend));
32
34
  acc = acc.concat(response.items);
33
- if (!opts.fetchall || response.items.length < take) {
35
+ if (!opts.fetchall || response.items.length < take || (opts.max && acc.length >= opts.max)) {
34
36
  return acc;
35
37
  }
36
38
  else {
@@ -48,8 +50,8 @@ export class Namespace {
48
50
  return [response];
49
51
  }
50
52
  };
51
- const items = await fetchItems([], (opts === null || opts === void 0 ? void 0 : opts.skip) || 0);
52
- return (opts === null || opts === void 0 ? void 0 : opts.collection) ? items : items[0];
53
+ const items = await fetchItems([], opts?.skip || 0);
54
+ return opts?.collection ? items : items[0];
53
55
  }
54
56
  }
55
57
  //# sourceMappingURL=namespace.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"namespace.js","sourceRoot":"","sources":["../../src/namespaces/namespace.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"namespace.js","sourceRoot":"","sources":["../../src/namespaces/namespace.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import { Sender } from '../sender/sender.js';
2
+ import { ConsumeOptions, Namespace } from './namespace.js';
3
+ import { UnknownMessage } from '../types/index.js';
4
+ export declare class SchedulerNamespace extends Namespace {
5
+ constructor(sender: Sender);
6
+ scheduleMessage(schedule: {
7
+ name?: string;
8
+ message: UnknownMessage;
9
+ when: string;
10
+ }, opts?: ConsumeOptions): Promise<void>;
11
+ getSchedule(id: string, opts?: ConsumeOptions): Promise<{
12
+ when: string;
13
+ message: UnknownMessage;
14
+ status: 'scheduled' | 'executed' | 'canceled';
15
+ }>;
16
+ getSchedules(opts?: ConsumeOptions): Promise<{
17
+ id: string;
18
+ when: string;
19
+ message: UnknownMessage;
20
+ status: 'scheduled' | 'executed' | 'canceled';
21
+ }[]>;
22
+ cancelSchedule(id: string, opts?: ConsumeOptions): Promise<void>;
23
+ }
@@ -0,0 +1,37 @@
1
+ import { uri } from '../utils/uri.js';
2
+ import { Namespace } from './namespace.js';
3
+ export class SchedulerNamespace extends Namespace {
4
+ constructor(sender) {
5
+ super(sender, 'postmaster@scheduler.msging.net');
6
+ }
7
+ async scheduleMessage(schedule, opts) {
8
+ return this.sendCommand({
9
+ method: 'set',
10
+ uri: uri `/schedules`,
11
+ type: 'application/vnd.iris.schedule+json',
12
+ resource: schedule,
13
+ }, opts);
14
+ }
15
+ async getSchedule(id, opts) {
16
+ return this.sendCommand({
17
+ method: 'get',
18
+ uri: uri `/schedules/${id}`,
19
+ }, opts);
20
+ }
21
+ async getSchedules(opts) {
22
+ return this.sendCommand({
23
+ method: 'get',
24
+ uri: uri `/schedules`,
25
+ }, {
26
+ collection: true,
27
+ ...opts,
28
+ });
29
+ }
30
+ async cancelSchedule(id, opts) {
31
+ return this.sendCommand({
32
+ method: 'delete',
33
+ uri: uri `/schedules/${id}`,
34
+ }, opts);
35
+ }
36
+ }
37
+ //# sourceMappingURL=scheduler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../../src/namespaces/scheduler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAA;AACrC,OAAO,EAAkB,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAG1D,MAAM,OAAO,kBAAmB,SAAQ,SAAS;IAC7C,YAAY,MAAc;QACtB,KAAK,CAAC,MAAM,EAAE,iCAAiC,CAAC,CAAA;IACpD,CAAC;IAEM,KAAK,CAAC,eAAe,CACxB,QAIC,EACD,IAAqB;QAErB,OAAO,IAAI,CAAC,WAAW,CACnB;YACI,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,GAAG,CAAA,YAAY;YACpB,IAAI,EAAE,oCAAoC;YAC1C,QAAQ,EAAE,QAAQ;SACrB,EACD,IAAI,CACP,CAAA;IACL,CAAC;IAEM,KAAK,CAAC,WAAW,CACpB,EAAU,EACV,IAAqB;QAMrB,OAAO,IAAI,CAAC,WAAW,CACnB;YACI,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,GAAG,CAAA,cAAc,EAAE,EAAE;SAC7B,EACD,IAAI,CACP,CAAA;IACL,CAAC;IAEM,KAAK,CAAC,YAAY,CAAC,IAAqB;QAQ3C,OAAO,IAAI,CAAC,WAAW,CACnB;YACI,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,GAAG,CAAA,YAAY;SACvB,EACD;YACI,UAAU,EAAE,IAAI;YAChB,GAAG,IAAI;SACV,CACJ,CAAA;IACL,CAAC;IAEM,KAAK,CAAC,cAAc,CAAC,EAAU,EAAE,IAAqB;QACzD,OAAO,IAAI,CAAC,WAAW,CACnB;YACI,MAAM,EAAE,QAAQ;YAChB,GAAG,EAAE,GAAG,CAAA,cAAc,EAAE,EAAE;SAC7B,EACD,IAAI,CACP,CAAA;IACL,CAAC;CACJ"}
@@ -1,10 +1,38 @@
1
1
  import { Sender } from '../sender/sender.js';
2
2
  import { ConsumeOptions, Namespace } from './namespace.js';
3
3
  import { Identity } from '../types/index.js';
4
+ export type WhatsappFlow = {
5
+ id: string;
6
+ name: string;
7
+ status: 'DRAFT' | 'PUBLISHED' | 'DEPRECATED';
8
+ categories: string[];
9
+ validation_errors: string[];
10
+ };
4
11
  export declare class WhatsAppNamespace extends Namespace {
5
12
  constructor(sender: Sender);
6
13
  phoneToIdentity(phoneNumber: string): Promise<Identity>;
7
14
  getMessageTemplates(opts?: ConsumeOptions): Promise<{
8
15
  name: string;
16
+ status: string;
17
+ components: {
18
+ text?: string;
19
+ foramt: string;
20
+ type: string;
21
+ }[];
9
22
  }[]>;
23
+ createFlow(name: string, category: string, opts?: ConsumeOptions): Promise<{
24
+ id: string;
25
+ }>;
26
+ updateFlowName(id: string, name: string, opts?: ConsumeOptions): Promise<void>;
27
+ updateFlowJson(id: string, json: string, opts?: ConsumeOptions): Promise<void>;
28
+ updateFlowsPublicKey(publicKey: string, opts?: ConsumeOptions): Promise<void>;
29
+ getFlows(opts?: ConsumeOptions): Promise<WhatsappFlow[]>;
30
+ getFlow(id: string, opts?: ConsumeOptions): Promise<WhatsappFlow>;
31
+ publishFlow(id: string, opts?: ConsumeOptions): Promise<void>;
32
+ deprecateFlow(id: string, opts?: ConsumeOptions): Promise<void>;
33
+ getFlowAssets(id: string, opts?: ConsumeOptions): Promise<{
34
+ name: string;
35
+ download_url: string;
36
+ }[]>;
37
+ deleteFlow(id: string, opts?: ConsumeOptions): Promise<void>;
10
38
  }
@@ -28,5 +28,82 @@ export class WhatsAppNamespace extends Namespace {
28
28
  ...opts,
29
29
  });
30
30
  }
31
+ async createFlow(name, category, opts) {
32
+ return this.sendCommand({
33
+ method: 'set',
34
+ uri: uri `/whatsapp-flows`,
35
+ type: 'application/json',
36
+ resource: {
37
+ name,
38
+ categories: [category],
39
+ },
40
+ }, opts);
41
+ }
42
+ async updateFlowName(id, name, opts) {
43
+ return this.sendCommand({
44
+ method: 'set',
45
+ uri: uri `/whatsapp-flows/${id}`,
46
+ type: 'application/json',
47
+ resource: {
48
+ name,
49
+ },
50
+ }, opts);
51
+ }
52
+ async updateFlowJson(id, json, opts) {
53
+ return this.sendCommand({
54
+ method: 'set',
55
+ uri: uri `/whatsapp-flows/flow-json/${id}`,
56
+ type: 'application/json',
57
+ resource: JSON.parse(json),
58
+ }, opts);
59
+ }
60
+ async updateFlowsPublicKey(publicKey, opts) {
61
+ return this.sendCommand({
62
+ method: 'set',
63
+ uri: uri `/whatsapp-flows/public-key/upload`,
64
+ type: 'application/json',
65
+ resource: {
66
+ business_public_key: publicKey,
67
+ },
68
+ }, opts);
69
+ }
70
+ async getFlows(opts) {
71
+ const { data } = await this.sendCommand({
72
+ method: 'get',
73
+ uri: uri `/whatsapp-flows`,
74
+ }, opts);
75
+ return data;
76
+ }
77
+ async getFlow(id, opts) {
78
+ return this.sendCommand({
79
+ method: 'get',
80
+ uri: uri `/whatsapp-flows/${id}`,
81
+ }, opts);
82
+ }
83
+ async publishFlow(id, opts) {
84
+ return this.sendCommand({
85
+ method: 'get',
86
+ uri: uri `/whatsapp-flows/publish/${id}`,
87
+ }, opts);
88
+ }
89
+ async deprecateFlow(id, opts) {
90
+ return this.sendCommand({
91
+ method: 'get',
92
+ uri: uri `/whatsapp-flows/deprecate/${id}`,
93
+ }, opts);
94
+ }
95
+ async getFlowAssets(id, opts) {
96
+ const { data } = await this.sendCommand({
97
+ method: 'get',
98
+ uri: uri `/whatsapp-flows/assets/${id}`,
99
+ }, opts);
100
+ return data;
101
+ }
102
+ async deleteFlow(id, opts) {
103
+ return this.sendCommand({
104
+ method: 'delete',
105
+ uri: uri `/whatsapp-flows/${id}`,
106
+ }, opts);
107
+ }
31
108
  }
32
109
  //# sourceMappingURL=whatsapp.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"whatsapp.js","sourceRoot":"","sources":["../../src/namespaces/whatsapp.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAA;AACrC,OAAO,EAAkB,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAG1D,MAAM,OAAO,iBAAkB,SAAQ,SAAS;IAC5C,YAAY,MAAc;QACtB,KAAK,CAAC,MAAM,EAAE,6BAA6B,CAAC,CAAA;IAChD,CAAC;IAEM,KAAK,CAAC,eAAe,CAAC,WAAmB;QAC5C,MAAM,gBAAgB,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC,CAAC,CAAC,WAAW,CAAA;QAEjF,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAMjC;gBACI,MAAM,EAAE,KAAK;gBACb,GAAG,EAAE,GAAG,CAAA,aAAa,gBAAgB,EAAE;aAC1C,EACD;gBACI,aAAa,EAAE,kBAA8B;aAChD,CACJ,CAAA;YAED,OAAO,MAAM,CAAC,kBAAkB,CAAA;QACpC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,GAAG,WAAW,mBAAmB,CAAA;QAC5C,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,mBAAmB,CAAC,IAAqB;QAKlD,OAAO,IAAI,CAAC,WAAW,CACnB;YACI,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,GAAG,CAAA,oBAAoB;SAC/B,EACD;YACI,UAAU,EAAE,IAAI;YAChB,GAAG,IAAI;SACV,CACJ,CAAA;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"whatsapp.js","sourceRoot":"","sources":["../../src/namespaces/whatsapp.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
1
  export class BlipError extends Error {
2
+ uri;
3
+ code;
2
4
  constructor(uri, code, description) {
3
5
  super(`Blip command for ${uri} failed: ${description}`);
4
6
  this.uri = uri;
@@ -1 +1 @@
1
- {"version":3,"file":"bliperror.js","sourceRoot":"","sources":["../../src/sender/bliperror.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,SAAU,SAAQ,KAAK;IAChC,YAA4B,GAAW,EAAkB,IAAY,EAAE,WAAmB;QACtF,KAAK,CAAC,oBAAoB,GAAG,YAAY,WAAW,EAAE,CAAC,CAAA;QAD/B,QAAG,GAAH,GAAG,CAAQ;QAAkB,SAAI,GAAJ,IAAI,CAAQ;IAErE,CAAC;CACJ"}
1
+ {"version":3,"file":"bliperror.js","sourceRoot":"","sources":["../../src/sender/bliperror.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,SAAU,SAAQ,KAAK;IACJ;IAA6B;IAAzD,YAA4B,GAAW,EAAkB,IAAY,EAAE,WAAmB;QACtF,KAAK,CAAC,oBAAoB,GAAG,YAAY,WAAW,EAAE,CAAC,CAAA;QAD/B,QAAG,GAAH,GAAG,CAAQ;QAAkB,SAAI,GAAJ,IAAI,CAAQ;IAErE,CAAC;CACJ"}
@@ -1,6 +1,8 @@
1
1
  import { BlipError } from './bliperror.js';
2
2
  import { Node } from '../types/index.js';
3
3
  export class HttpSender {
4
+ token;
5
+ tenantId;
4
6
  constructor(token, tenantId) {
5
7
  this.token = token;
6
8
  this.tenantId = tenantId;
@@ -1 +1 @@
1
- {"version":3,"file":"httpsender.js","sourceRoot":"","sources":["../../src/sender/httpsender.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C,OAAO,EAA6E,IAAI,EAAE,MAAM,mBAAmB,CAAA;AAEnH,MAAM,OAAO,UAAU;IACnB,YACqB,KAAa,EACb,QAAgB;QADhB,UAAK,GAAL,KAAK,CAAQ;QACb,aAAQ,GAAR,QAAQ,CAAQ;IAClC,CAAC;IAEG,KAAK,CAAC,WAAW,CAA4B,OAAsB;QACtE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,2BAA2B,EAAE;YAC9E,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACL,cAAc,EAAE,kBAAkB;gBAClC,eAAe,EAAE,OAAO,IAAI,CAAC,KAAK,EAAE;aACvC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;SAChC,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAA;QACrE,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,OAAgC;QACrD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,2BAA2B,EAAE;YAC9E,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACL,cAAc,EAAE,kBAAkB;gBAClC,eAAe,EAAE,OAAO,IAAI,CAAC,KAAK,EAAE;aACvC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;SAChC,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAA;QACrE,CAAC;QAED,MAAM,MAAM,GAAoE,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;QACrG,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,IAAI,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QACnF,CAAC;aAAM,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACrC,OAAO,MAAM,CAAC,QAAQ,CAAA;QAC1B,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,KAAK,CAAC,8BAA8B,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;QACnE,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,uBAA0C,EAAE,SAAiB,EAAE,QAAgB;QAC/F,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,uBAAuB,GAAG,aAAa,CAAA;QAC7H,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,GAAG,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAA;QACvD,OAAO,IAAI,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;IAC1C,CAAC;CACJ"}
1
+ {"version":3,"file":"httpsender.js","sourceRoot":"","sources":["../../src/sender/httpsender.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C,OAAO,EAA6E,IAAI,EAAE,MAAM,mBAAmB,CAAA;AAEnH,MAAM,OAAO,UAAU;IAEE;IACA;IAFrB,YACqB,KAAa,EACb,QAAgB;QADhB,UAAK,GAAL,KAAK,CAAQ;QACb,aAAQ,GAAR,QAAQ,CAAQ;IAClC,CAAC;IAEG,KAAK,CAAC,WAAW,CAA4B,OAAsB;QACtE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,2BAA2B,EAAE;YAC9E,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACL,cAAc,EAAE,kBAAkB;gBAClC,eAAe,EAAE,OAAO,IAAI,CAAC,KAAK,EAAE;aACvC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;SAChC,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAA;QACrE,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,OAAgC;QACrD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,WAAW,IAAI,CAAC,QAAQ,2BAA2B,EAAE;YAC9E,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACL,cAAc,EAAE,kBAAkB;gBAClC,eAAe,EAAE,OAAO,IAAI,CAAC,KAAK,EAAE;aACvC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;SAChC,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAA;QACrE,CAAC;QAED,MAAM,MAAM,GAAoE,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;QACrG,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,IAAI,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QACnF,CAAC;aAAM,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACrC,OAAO,MAAM,CAAC,QAAQ,CAAA;QAC1B,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,KAAK,CAAC,8BAA8B,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;QACnE,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,uBAA0C,EAAE,SAAiB,EAAE,QAAgB;QAC/F,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,uBAAuB,GAAG,aAAa,CAAA;QAC7H,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,GAAG,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAA;QACvD,OAAO,IAAI,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;IAC1C,CAAC;CACJ"}
@@ -10,6 +10,7 @@ export type Contact = {
10
10
  source: string;
11
11
  taxDocument?: string;
12
12
  extras?: Record<string, string | null>;
13
+ lastMessageDate?: string;
13
14
  };
14
15
  export type ThreadItem = {
15
16
  id: string;
@@ -1,4 +1,7 @@
1
1
  export class Node extends String {
2
+ name;
3
+ domain;
4
+ instance;
2
5
  constructor(name, domain, instance) {
3
6
  super(`${name}@${domain}/${instance}`);
4
7
  this.name = name;
@@ -1 +1 @@
1
- {"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/types/node.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,IAAK,SAAQ,MAAM;IAC5B,YACoB,IAAY,EACZ,MAAc,EACd,QAA4B;QAE5C,KAAK,CAAC,GAAG,IAAI,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAC,CAAA;QAJtB,SAAI,GAAJ,IAAI,CAAQ;QACZ,WAAM,GAAN,MAAM,CAAQ;QACd,aAAQ,GAAR,QAAQ,CAAoB;IAGhD,CAAC;IAEM,UAAU;QACb,OAAO,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,EAAc,CAAA;IACpD,CAAC;IAEM,MAAM,CAAC,OAAO,CAAC,IAA+B;QACjD,OAAO,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;IACtD,CAAC;IAEM,MAAM,CAAC,IAAI,CAAC,IAAc;QAC7B,IAAI,IAAI,YAAY,IAAI,EAAE,CAAC;YACvB,OAAO,IAAI,CAAA;QACf,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACrB,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YACzC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAC/C,OAAO,IAAI,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;QAC/D,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAA;IAClD,CAAC;CACJ"}
1
+ {"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/types/node.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,IAAK,SAAQ,MAAM;IAER;IACA;IACA;IAHpB,YACoB,IAAY,EACZ,MAAc,EACd,QAA4B;QAE5C,KAAK,CAAC,GAAG,IAAI,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAC,CAAA;QAJtB,SAAI,GAAJ,IAAI,CAAQ;QACZ,WAAM,GAAN,MAAM,CAAQ;QACd,aAAQ,GAAR,QAAQ,CAAoB;IAGhD,CAAC;IAEM,UAAU;QACb,OAAO,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,EAAc,CAAA;IACpD,CAAC;IAEM,MAAM,CAAC,OAAO,CAAC,IAA+B;QACjD,OAAO,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;IACtD,CAAC;IAEM,MAAM,CAAC,IAAI,CAAC,IAAc;QAC7B,IAAI,IAAI,YAAY,IAAI,EAAE,CAAC;YACvB,OAAO,IAAI,CAAA;QACf,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACrB,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YACzC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAC/C,OAAO,IAAI,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;QAC/D,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAA;IAClD,CAAC;CACJ"}
@@ -0,0 +1,18 @@
1
+ export declare class ODataFilter<T> {
2
+ private filterParts;
3
+ private getFormattedValue;
4
+ private addCondition;
5
+ eq<K extends keyof T>(field: K, value: T[K]): ODataFilter<T>;
6
+ ne<K extends keyof T>(field: K, value: T[K]): ODataFilter<T>;
7
+ gt<K extends keyof T>(field: K, value: T[K]): ODataFilter<T>;
8
+ ge<K extends keyof T>(field: K, value: T[K]): ODataFilter<T>;
9
+ lt<K extends keyof T>(field: K, value: T[K]): ODataFilter<T>;
10
+ le<K extends keyof T>(field: K, value: T[K]): ODataFilter<T>;
11
+ in<K extends keyof T>(field: K, values: Array<T[K]>): ODataFilter<T>;
12
+ startsWith<K extends keyof T>(field: K, value: string): ODataFilter<T>;
13
+ endsWith<K extends keyof T>(field: K, value: string): ODataFilter<T>;
14
+ and(filterBuilder: (filter: ODataFilter<T>) => ODataFilter<T>): ODataFilter<T>;
15
+ or(filterBuilder: (filter: ODataFilter<T>) => ODataFilter<T>): ODataFilter<T>;
16
+ toString(): string;
17
+ }
18
+ export declare const filter: <T>() => ODataFilter<T>;
@@ -0,0 +1,80 @@
1
+ export class ODataFilter {
2
+ filterParts = [];
3
+ getFormattedValue(value) {
4
+ if (typeof value === 'string') {
5
+ return `'${value.replace(/'/g, "''")}'`;
6
+ }
7
+ else if (value instanceof Date) {
8
+ return `datetimeoffset'${value.toISOString()}'`;
9
+ }
10
+ else if (typeof value === 'undefined' || value === null) {
11
+ return 'null';
12
+ }
13
+ else {
14
+ return value.toString();
15
+ }
16
+ }
17
+ addCondition(condition) {
18
+ this.filterParts.push(condition);
19
+ }
20
+ eq(field, value) {
21
+ this.addCondition(`${String(field)} eq ${this.getFormattedValue(value)}`);
22
+ return this;
23
+ }
24
+ ne(field, value) {
25
+ this.addCondition(`${String(field)} ne ${this.getFormattedValue(value)}`);
26
+ return this;
27
+ }
28
+ gt(field, value) {
29
+ this.addCondition(`${String(field)} gt ${this.getFormattedValue(value)}`);
30
+ return this;
31
+ }
32
+ ge(field, value) {
33
+ this.addCondition(`${String(field)} ge ${this.getFormattedValue(value)}`);
34
+ return this;
35
+ }
36
+ lt(field, value) {
37
+ this.addCondition(`${String(field)} lt ${this.getFormattedValue(value)}`);
38
+ return this;
39
+ }
40
+ le(field, value) {
41
+ this.addCondition(`${String(field)} le ${this.getFormattedValue(value)}`);
42
+ return this;
43
+ }
44
+ in(field, values) {
45
+ const formattedValues = values.map((v) => this.getFormattedValue(v)).join(',');
46
+ this.addCondition(`${String(field)} in (${formattedValues})`);
47
+ return this;
48
+ }
49
+ startsWith(field, value) {
50
+ this.addCondition(`startswith(${String(field)}, ${this.getFormattedValue(value)})`);
51
+ return this;
52
+ }
53
+ endsWith(field, value) {
54
+ this.addCondition(`endswith(${String(field)}, ${this.getFormattedValue(value)})`);
55
+ return this;
56
+ }
57
+ and(filterBuilder) {
58
+ const newFilter = filterBuilder(new ODataFilter());
59
+ if (newFilter.filterParts.length > 0) {
60
+ const newFilterPart = newFilter.filterParts.length > 1 ? `(${newFilter.toString()})` : newFilter.toString();
61
+ this.addCondition(`${this.toString()} and (${newFilterPart})`);
62
+ this.filterParts = [this.filterParts.pop()];
63
+ }
64
+ return this;
65
+ }
66
+ or(filterBuilder) {
67
+ const newFilter = filterBuilder(new ODataFilter());
68
+ if (newFilter.filterParts.length > 0) {
69
+ const newFilterPart = newFilter.filterParts.length > 1 ? `(${newFilter.toString()})` : newFilter.toString();
70
+ this.addCondition(`${this.toString()} or ${newFilterPart}`);
71
+ this.filterParts = [this.filterParts.pop()];
72
+ }
73
+ return this;
74
+ }
75
+ toString() {
76
+ return this.filterParts.join(' and ');
77
+ }
78
+ }
79
+ export const filter = () => new ODataFilter();
80
+ //# sourceMappingURL=odata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"odata.js","sourceRoot":"","sources":["../../src/utils/odata.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@whitewall/blip-sdk",
3
- "version": "0.0.6",
3
+ "version": "0.0.8",
4
4
  "description": "Blip API wrapper",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -17,7 +17,5 @@
17
17
  "prettier": "^3.2.5",
18
18
  "typescript": "^5.4.5"
19
19
  },
20
- "dependencies": {
21
- "odata-filter-builder": "^1.0.0"
22
- }
20
+ "dependencies": {}
23
21
  }