@silexpert/core 2.0.55 → 2.0.56-zendesk-up

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 (57) hide show
  1. package/dist/api/resources/Account.d.ts +1 -0
  2. package/dist/api/resources/Account.d.ts.map +1 -1
  3. package/dist/api/resources/Account.js +3 -0
  4. package/dist/api/resources/Account.js.map +1 -1
  5. package/dist/api/resources/zendesk/Ticket.d.ts +11 -0
  6. package/dist/api/resources/zendesk/Ticket.d.ts.map +1 -0
  7. package/dist/api/resources/zendesk/Ticket.js +22 -0
  8. package/dist/api/resources/zendesk/Ticket.js.map +1 -0
  9. package/dist/api/resources.d.ts +2 -0
  10. package/dist/api/resources.d.ts.map +1 -1
  11. package/dist/api/resources.js +2 -0
  12. package/dist/api/resources.js.map +1 -1
  13. package/dist/types/Enum/AIPrompt.d.ts.map +1 -1
  14. package/dist/types/Enum/AIPrompt.js +7 -2
  15. package/dist/types/Enum/AIPrompt.js.map +1 -1
  16. package/dist/types/Enum/BalanceSheet.d.ts +1 -1
  17. package/dist/types/Enum/BalanceSheet.js +1 -1
  18. package/dist/types/Enum/BalanceSheet.js.map +1 -1
  19. package/dist/types/Enum/Zendesk.d.ts +40 -0
  20. package/dist/types/Enum/Zendesk.d.ts.map +1 -0
  21. package/dist/types/Enum/Zendesk.js +40 -0
  22. package/dist/types/Enum/Zendesk.js.map +1 -0
  23. package/dist/types/Interface/api/account/Update.d.ts +3 -0
  24. package/dist/types/Interface/api/account/Update.d.ts.map +1 -1
  25. package/dist/types/Interface/api/account/Update.js +10 -1
  26. package/dist/types/Interface/api/account/Update.js.map +1 -1
  27. package/dist/types/Interface/api/docoon/Query.d.ts.map +1 -1
  28. package/dist/types/Interface/api/docoon/Query.js +2 -1
  29. package/dist/types/Interface/api/docoon/Query.js.map +1 -1
  30. package/dist/types/Interface/api/docoon/Read.d.ts +11 -10
  31. package/dist/types/Interface/api/docoon/Read.d.ts.map +1 -1
  32. package/dist/types/Interface/api/docoon/Read.js.map +1 -1
  33. package/dist/types/Interface/api/zendesk/QueryTicket.d.ts +35 -0
  34. package/dist/types/Interface/api/zendesk/QueryTicket.d.ts.map +1 -0
  35. package/dist/types/Interface/api/zendesk/QueryTicket.js +215 -0
  36. package/dist/types/Interface/api/zendesk/QueryTicket.js.map +1 -0
  37. package/dist/types/Interface/api/zendesk/ReadTicket.d.ts +76 -0
  38. package/dist/types/Interface/api/zendesk/ReadTicket.d.ts.map +1 -0
  39. package/dist/types/Interface/api/zendesk/ReadTicket.js +2 -0
  40. package/dist/types/Interface/api/zendesk/ReadTicket.js.map +1 -0
  41. package/dist/types/index.d.ts +3 -0
  42. package/dist/types/index.d.ts.map +1 -1
  43. package/dist/types/index.js +3 -0
  44. package/dist/types/index.js.map +1 -1
  45. package/package.json +1 -1
  46. package/ts/api/resources/Account.ts +4 -0
  47. package/ts/api/resources/zendesk/Ticket.ts +36 -0
  48. package/ts/api/resources.ts +2 -0
  49. package/ts/types/Enum/AIPrompt.ts +7 -3
  50. package/ts/types/Enum/BalanceSheet.ts +1 -1
  51. package/ts/types/Enum/Zendesk.ts +56 -0
  52. package/ts/types/Interface/api/account/Update.ts +8 -1
  53. package/ts/types/Interface/api/docoon/Query.ts +2 -1
  54. package/ts/types/Interface/api/docoon/Read.ts +11 -10
  55. package/ts/types/Interface/api/zendesk/QueryTicket.ts +171 -0
  56. package/ts/types/Interface/api/zendesk/ReadTicket.ts +85 -0
  57. package/ts/types/index.ts +3 -0
@@ -60,4 +60,8 @@ export class Account extends Resource {
60
60
  update(id: number, params: UpdateAccount): Promise<IAccount> {
61
61
  return this.axios.$put(`/accounts/${id}`, params);
62
62
  }
63
+
64
+ patchName(id: number, name: string): Promise<IAccount> {
65
+ return this.axios.$patch(`/accounts/${id}`, { name });
66
+ }
63
67
  }
@@ -0,0 +1,36 @@
1
+ import {
2
+ CreateZendeskTicket,
3
+ UpdateZendeskTicket,
4
+ ListZendeskTickets,
5
+ TicketZendeskResponse,
6
+ SearchZendeskResponse,
7
+ TicketFormEnriched,
8
+ TicketZendesk,
9
+ } from '../../../index.js';
10
+ import { Resource } from '../../Resource.js';
11
+
12
+ export class ZendeskTicket extends Resource {
13
+ getPaginate(query: ListZendeskTickets): Promise<TicketZendeskResponse | SearchZendeskResponse> {
14
+ return this.axios.$get('connectors/zendesk/tickets', { params: query });
15
+ }
16
+
17
+ getForms(): Promise<TicketFormEnriched[]> {
18
+ return this.axios.$get('connectors/zendesk/tickets/forms');
19
+ }
20
+
21
+ get(id: number): Promise<TicketZendesk> {
22
+ return this.axios.$get(`connectors/zendesk/tickets/${id}`);
23
+ }
24
+
25
+ create(data: CreateZendeskTicket): Promise<TicketZendesk> {
26
+ return this.axios.$post('connectors/zendesk/tickets', data);
27
+ }
28
+
29
+ update(id: number, data: UpdateZendeskTicket): Promise<TicketZendesk> {
30
+ return this.axios.$put(`connectors/zendesk/tickets/${id}`, data);
31
+ }
32
+
33
+ delete(id: number): Promise<void> {
34
+ return this.axios.$delete(`connectors/zendesk/tickets/${id}`);
35
+ }
36
+ }
@@ -191,6 +191,7 @@ import { Acd } from './resources/Acd.js';
191
191
  import { UsersHistory } from './resources/UsersHistory.js';
192
192
  import { Zendesk } from './resources/zendesk/Zendesk.js';
193
193
  import { Formalism } from './resources/Formalism.js';
194
+ import { ZendeskTicket } from './resources/zendesk/Ticket.js';
194
195
  import { Vialink } from './resources/Vialink.js';
195
196
  import { KycMandate } from './resources/KycMandate.js';
196
197
 
@@ -388,6 +389,7 @@ export const resources = {
388
389
  acd: Acd,
389
390
  zendesk: Zendesk,
390
391
  formalism: Formalism,
392
+ zendeskTicket: ZendeskTicket,
391
393
  vialink: Vialink,
392
394
  kycMandate: KycMandate,
393
395
  };
@@ -34,13 +34,17 @@ export const AIPrompt: Record<AIPromptKey, AIPromptInfo> = {
34
34
  `,
35
35
  },
36
36
  [AIPromptKey.BANK_STATEMENT_WITH_SCHEMA]: {
37
- userPrompt:
38
- 'Voici des lignes issues d’un relevé de compte bancaire (cela peut être un relevé français). Pouvez-vous extraire toutes les transactions présentes dans ce document ?',
39
- systemPrompt: `
37
+ userPrompt: `
38
+ Voici des lignes issues d’un relevé de compte bancaire (cela peut être un relevé français). Pouvez-vous extraire toutes les transactions présentes dans ce document ?
39
+ (Attention certain relevé bancaire affiche uniquement le montant en positif ou négatif, il est important de ne pas se fier au signe du montant sur le relevé mais uniquement au champ "credit" ou "debit" pour déterminer le montant crédité ou débité et ne pas prendre en compte le solde du compte qui peut être affiché à côté du montant de la transaction et qui peut prêter à confusion)
40
+ `,
41
+ systemPrompt: (bankAccountName) => `
40
42
  Analysez ce relevé de compte bancaire et extrayez toutes les transactions sous forme d'un objet JSON structuré.
43
+ Le nom du compte bancaire est : ${bankAccountName}
41
44
  Le relevé peut contenir des informations telles que la date de la transaction, le libellé (il faut conserver exactement le même texte que dans le relevé, sans modification, traduction ou altération), le montant débité et le montant crédité (ou alors un montant en positif pour le crédit et un montant en négatif pour le débit).
42
45
  Garder exactement le même ordre de transaction que dans le relevé.
43
46
  Assurez-vous que le JSON soit strictement conforme au format attendu, sans aucun commentaire ou texte supplémentaire.
47
+ (Attention certain relevé bancaire affiche uniquement le montant en positif ou négatif, il est important de ne pas se fier au signe du montant sur le relevé mais uniquement au champ "credit" ou "debit" pour déterminer le montant crédité ou débité et ne pas prendre en compte le solde du compte qui peut être affiché à côté du montant de la transaction et qui peut prêter à confusion)
44
48
  `,
45
49
  },
46
50
  [AIPromptKey.BANK_STATEMENT_INFOS]: {
@@ -246,7 +246,7 @@ export const BalanceSheetDetails = [
246
246
  value: BalanceSheetState.ACCEPTED_BY_SIE_IN_STATE,
247
247
  color: 'green darken-3',
248
248
  colorText: 'green--text',
249
- forRoles: [['front_office'], ['expert']],
249
+ forRoles: [['front_office'], ['expert'], ['controle_interne']],
250
250
  },
251
251
  {
252
252
  text: "Refus d'établir",
@@ -0,0 +1,56 @@
1
+ export type ZendeskTicketStatus = 'new' | 'open' | 'pending' | 'hold' | 'solved' | 'closed';
2
+ export type ZendeskTicketPriority = 'urgent' | 'high' | 'normal' | 'low';
3
+ export type ZendeskTicketType = 'problem' | 'incident' | 'question' | 'task';
4
+ export type ZendeskTicketChannel =
5
+ | 'api'
6
+ | 'chat'
7
+ | 'email'
8
+ | 'facebook'
9
+ | 'mobile'
10
+ | 'native_messaging'
11
+ | 'sample_ticket'
12
+ | 'sms'
13
+ | 'twitter'
14
+ | 'voice'
15
+ | 'web'
16
+ | 'web_service'
17
+ | 'whatsapp';
18
+
19
+ export enum ZendeskTicketStatusEnum {
20
+ NEW = 'new',
21
+ OPEN = 'open',
22
+ PENDING = 'pending',
23
+ HOLD = 'hold',
24
+ SOLVED = 'solved',
25
+ CLOSED = 'closed',
26
+ }
27
+
28
+ export enum ZendeskTicketPriorityEnum {
29
+ URGENT = 'urgent',
30
+ HIGH = 'high',
31
+ NORMAL = 'normal',
32
+ LOW = 'low',
33
+ }
34
+
35
+ export enum ZendeskTicketTypeEnum {
36
+ PROBLEM = 'problem',
37
+ INCIDENT = 'incident',
38
+ QUESTION = 'question',
39
+ TASK = 'task',
40
+ }
41
+
42
+ export enum ZendeskTicketChannelEnum {
43
+ API = 'api',
44
+ CHAT = 'chat',
45
+ EMAIL = 'email',
46
+ FACEBOOK = 'facebook',
47
+ MOBILE = 'mobile',
48
+ NATIVE_MESSAGING = 'native_messaging',
49
+ SAMPLE_TICKET = 'sample_ticket',
50
+ SMS = 'sms',
51
+ TWITTER = 'twitter',
52
+ VOICE = 'voice',
53
+ WEB = 'web',
54
+ WEB_SERVICE = 'web_service',
55
+ WHATSAPP = 'whatsapp',
56
+ }
@@ -1,4 +1,4 @@
1
- import { IsArray, IsDateString, IsNumber, IsOptional, IsString } from 'class-validator';
1
+ import { IsArray, IsDateString, IsNumber, IsOptional, IsString, MinLength } from 'class-validator';
2
2
  import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger';
3
3
  import { IAccount } from '../../../index.js';
4
4
 
@@ -61,3 +61,10 @@ export class UpdateAccount {
61
61
  @IsDateString()
62
62
  centuryEndDate?: string;
63
63
  }
64
+
65
+ export class PatchAccountName {
66
+ @ApiProperty()
67
+ @IsString()
68
+ @MinLength(2)
69
+ name: string;
70
+ }
@@ -1,6 +1,7 @@
1
1
  import { IsString, IsOptional, IsInt } from 'class-validator';
2
- import { ApiPropertyOptional } from '@nestjs/swagger';
2
+ import { ApiPropertyOptional, ApiProperty } from '@nestjs/swagger';
3
3
  export class QueryDirectoryLine {
4
+ @ApiProperty()
4
5
  @IsString()
5
6
  siretOrSiren: string;
6
7
 
@@ -72,23 +72,24 @@ export type QuerySearchFieldsDirectoryLine =
72
72
 
73
73
  export type ReadDirectoryLineResult = {
74
74
  addressingIdentifier: string;
75
+ platformType: string;
76
+ directoryLineStatus: string;
75
77
  siren: string;
76
- siret?: string;
77
- dateFrom: string;
78
- dateTo: string;
79
- effectiveEndDate?: string;
80
- createdBy: string;
81
- history: {
82
- hidden: boolean;
78
+ legalUnit: {
79
+ siren: string;
80
+ businessName: string;
81
+ entityType: string;
82
+ administrativeStatus: string;
83
+ isSalesProspectingForbidden: boolean;
83
84
  };
84
- plateform: {
85
- platformRegistrationNumber: string;
85
+ facility: {
86
+ isSalesProspectingForbidden: boolean;
86
87
  };
87
88
  };
88
89
 
89
90
  export interface ReadDirectoryLine {
90
91
  search: QuerySearchDirectoryLine;
91
- total_number_results: number;
92
+ totalNumberOfResults: number;
92
93
  results: ReadDirectoryLineResult[];
93
94
  identite_etablissement?: string;
94
95
  }
@@ -0,0 +1,171 @@
1
+ import {
2
+ IsString,
3
+ IsNotEmpty,
4
+ IsOptional,
5
+ IsEnum,
6
+ IsArray,
7
+ IsNumber,
8
+ MinLength,
9
+ IsInt,
10
+ Min,
11
+ Max,
12
+ } from 'class-validator';
13
+ import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger';
14
+ import {
15
+ ZendeskTicketChannel,
16
+ ZendeskTicketChannelEnum,
17
+ ZendeskTicketPriority,
18
+ ZendeskTicketPriorityEnum,
19
+ ZendeskTicketStatus,
20
+ ZendeskTicketStatusEnum,
21
+ ZendeskTicketType,
22
+ ZendeskTicketTypeEnum,
23
+ } from '../../../../types/Enum/Zendesk.js';
24
+
25
+ export class CreateZendeskTicket {
26
+ @ApiProperty()
27
+ @IsString()
28
+ @IsNotEmpty()
29
+ @MinLength(3)
30
+ subject: string;
31
+
32
+ @ApiProperty()
33
+ @IsString()
34
+ @IsNotEmpty()
35
+ body: string;
36
+
37
+ @ApiPropertyOptional()
38
+ @IsOptional()
39
+ @IsArray()
40
+ @IsString({ each: true })
41
+ attachments?: string[];
42
+
43
+ @ApiPropertyOptional()
44
+ @IsOptional()
45
+ @IsEnum(ZendeskTicketStatusEnum)
46
+ status?: ZendeskTicketStatus;
47
+
48
+ @ApiPropertyOptional()
49
+ @IsOptional()
50
+ @IsEnum(ZendeskTicketPriorityEnum)
51
+ priority?: ZendeskTicketPriority;
52
+
53
+ @ApiPropertyOptional()
54
+ @IsOptional()
55
+ @IsEnum(ZendeskTicketTypeEnum)
56
+ type?: ZendeskTicketType;
57
+
58
+ @ApiPropertyOptional()
59
+ @IsOptional()
60
+ @IsArray()
61
+ @IsString({ each: true })
62
+ tags?: string[];
63
+
64
+ @ApiPropertyOptional()
65
+ @IsOptional()
66
+ @IsNumber()
67
+ requesterId?: number;
68
+
69
+ @ApiPropertyOptional()
70
+ @IsOptional()
71
+ @IsNumber()
72
+ assigneeId?: number;
73
+
74
+ @ApiPropertyOptional()
75
+ @IsOptional()
76
+ @IsNumber()
77
+ groupId?: number;
78
+ }
79
+
80
+ export class UpdateZendeskTicket {
81
+ @ApiPropertyOptional()
82
+ @IsOptional()
83
+ @IsString()
84
+ @MinLength(3)
85
+ subject?: string;
86
+
87
+ @ApiPropertyOptional()
88
+ @IsOptional()
89
+ @IsString()
90
+ comment?: string;
91
+
92
+ @ApiPropertyOptional()
93
+ @IsOptional()
94
+ @IsEnum(ZendeskTicketStatusEnum)
95
+ status?: ZendeskTicketStatus;
96
+
97
+ @ApiPropertyOptional()
98
+ @IsOptional()
99
+ @IsEnum(ZendeskTicketPriorityEnum)
100
+ priority?: ZendeskTicketPriority;
101
+
102
+ @ApiPropertyOptional()
103
+ @IsOptional()
104
+ @IsEnum(ZendeskTicketTypeEnum)
105
+ type?: ZendeskTicketType;
106
+
107
+ @ApiPropertyOptional()
108
+ @IsOptional()
109
+ @IsArray()
110
+ @IsString({ each: true })
111
+ tags?: string[];
112
+
113
+ @ApiPropertyOptional()
114
+ @IsOptional()
115
+ @IsNumber()
116
+ assigneeId?: number;
117
+
118
+ @ApiPropertyOptional()
119
+ @IsOptional()
120
+ @IsNumber()
121
+ groupId?: number;
122
+ }
123
+
124
+ export class ListZendeskTickets {
125
+ @ApiProperty()
126
+ @IsEnum(ZendeskTicketChannelEnum)
127
+ channel: ZendeskTicketChannel;
128
+
129
+ @ApiPropertyOptional()
130
+ @IsOptional()
131
+ @IsEnum(ZendeskTicketStatusEnum)
132
+ status?: ZendeskTicketStatus;
133
+
134
+ @ApiPropertyOptional()
135
+ @IsOptional()
136
+ @IsInt()
137
+ @Min(1)
138
+ page?: number = 1;
139
+
140
+ @ApiPropertyOptional()
141
+ @IsOptional()
142
+ @IsInt()
143
+ @Min(1)
144
+ @Max(100)
145
+ limit?: number = 25;
146
+
147
+ @ApiPropertyOptional()
148
+ @IsOptional()
149
+ @IsString()
150
+ search?: string;
151
+
152
+ @ApiPropertyOptional()
153
+ @IsOptional()
154
+ @IsString()
155
+ startDate?: string;
156
+
157
+ @ApiPropertyOptional()
158
+ @IsOptional()
159
+ @IsString()
160
+ endDate?: string;
161
+
162
+ @ApiPropertyOptional()
163
+ @IsOptional()
164
+ @IsString()
165
+ sortBy?: string;
166
+
167
+ @ApiPropertyOptional()
168
+ @IsOptional()
169
+ @IsEnum(['asc', 'desc'])
170
+ sortOrder?: 'asc' | 'desc';
171
+ }
@@ -0,0 +1,85 @@
1
+ import {
2
+ ZendeskTicketChannel,
3
+ ZendeskTicketPriority,
4
+ ZendeskTicketStatus,
5
+ ZendeskTicketType,
6
+ } from '#types/Enum/Zendesk.js';
7
+
8
+ export interface TicketZendesk {
9
+ id: number;
10
+ url: string;
11
+ subject: string;
12
+ description: string;
13
+ status: ZendeskTicketStatus;
14
+ priority: ZendeskTicketPriority | null;
15
+ type: ZendeskTicketType | null;
16
+ tags: string[];
17
+ via: { channel: ZendeskTicketChannel };
18
+ requesterId: number;
19
+ assigneeId: number | null;
20
+ groupId: number | null;
21
+ organizationId: number | null;
22
+ createdAt: string;
23
+ updatedAt: string;
24
+ }
25
+
26
+ export interface SearchZendeskResponse {
27
+ results: TicketZendesk[];
28
+ count: number;
29
+ nextPage: string | null;
30
+ previousPage: string | null;
31
+ }
32
+
33
+ export interface TicketZendeskResponse {
34
+ results: TicketZendesk[];
35
+ count: number;
36
+ nextPage: string | null;
37
+ previousPage: string | null;
38
+ }
39
+
40
+ export interface CustomFieldZendeskOption {
41
+ id: number;
42
+ name: string;
43
+ rawName: string;
44
+ value: string;
45
+ default: boolean;
46
+ }
47
+
48
+ export interface TicketFieldZendesk {
49
+ id: number;
50
+ url: string;
51
+ type: string;
52
+ title: string;
53
+ rawTitle: string;
54
+ description: string;
55
+ position: number;
56
+ active: boolean;
57
+ required: boolean;
58
+ requiredInPortal: boolean;
59
+ visibleInPortal: boolean;
60
+ editableInPortal: boolean;
61
+ tag: string | null;
62
+ customFieldOptions: CustomFieldZendeskOption[];
63
+ }
64
+
65
+ export interface TicketFormZendesk {
66
+ id: number;
67
+ url: string;
68
+ name: string;
69
+ rawName: string;
70
+ displayName: string;
71
+ rawDisplayName: string;
72
+ endUserVisible: boolean;
73
+ position: number;
74
+ active: boolean;
75
+ default: boolean;
76
+ inAllBrands: boolean;
77
+ restrictedBrandIds: number[];
78
+ ticketFieldIds: number[];
79
+ createdAt: string;
80
+ updatedAt: string;
81
+ }
82
+
83
+ export interface TicketFormEnriched extends Omit<TicketFormZendesk, 'ticketFieldIds'> {
84
+ fields: TicketFieldZendesk[];
85
+ }
package/ts/types/index.ts CHANGED
@@ -497,6 +497,7 @@ export * from './Enum/EquipmentAvailability.js';
497
497
  export * from './Enum/SpecialDayType.js';
498
498
  export * from './Enum/Degree.js';
499
499
  export * from './Enum/Brevo.js';
500
+ export * from './Enum/Zendesk.js';
500
501
  export * from './Enum/ZoneCode.js';
501
502
  export * from './Enum/TimeSlot.js';
502
503
  export * from './Enum/StateSynchro.js';
@@ -825,6 +826,8 @@ export * from './Interface/api/loan/ReadLoan.js';
825
826
  export * from './Interface/api/stock/StocksType.js';
826
827
  export * from './Interface/api/lettering/QueryRegroupLettering.js';
827
828
  export * from './Interface/api/loan/UpdateLoan.js';
829
+ export * from './Interface/api/zendesk/QueryTicket.js';
830
+ export * from './Interface/api/zendesk/ReadTicket.js';
828
831
  export * from './Interface/api/zticket/CreateZTicket.js';
829
832
  export * from './Interface/api/zticket/QueryZTicket.js';
830
833
  export * from './Interface/api/balanceSheetModule/CreateBalanceSheetModule.js';