@silexpert/core 1.3.107 → 1.3.108-1

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 (112) hide show
  1. package/dist/cjs/api/resources/BankStatement.d.ts +1 -3
  2. package/dist/cjs/api/resources/BankStatement.d.ts.map +1 -1
  3. package/dist/cjs/api/resources/BankStatement.js +0 -6
  4. package/dist/cjs/api/resources/BankStatement.js.map +1 -1
  5. package/dist/cjs/api/resources/Sellsy.d.ts +16 -0
  6. package/dist/cjs/api/resources/Sellsy.d.ts.map +1 -0
  7. package/dist/cjs/api/resources/Sellsy.js +20 -0
  8. package/dist/cjs/api/resources/Sellsy.js.map +1 -0
  9. package/dist/cjs/api/resources.d.ts +2 -0
  10. package/dist/cjs/api/resources.d.ts.map +1 -1
  11. package/dist/cjs/api/resources.js +2 -0
  12. package/dist/cjs/api/resources.js.map +1 -1
  13. package/dist/cjs/types/Enum/AIPrompt.d.ts +2 -2
  14. package/dist/cjs/types/Enum/AIPrompt.d.ts.map +1 -1
  15. package/dist/cjs/types/Enum/AIPrompt.js +16 -12
  16. package/dist/cjs/types/Enum/AIPrompt.js.map +1 -1
  17. package/dist/cjs/types/Enum/TimeSlot.d.ts.map +1 -1
  18. package/dist/cjs/types/Enum/TimeSlot.js +2 -1
  19. package/dist/cjs/types/Enum/TimeSlot.js.map +1 -1
  20. package/dist/cjs/types/Form/FormConnector.d.ts +1 -0
  21. package/dist/cjs/types/Form/FormConnector.d.ts.map +1 -1
  22. package/dist/cjs/types/Form/FormConnector.js +83 -0
  23. package/dist/cjs/types/Form/FormConnector.js.map +1 -1
  24. package/dist/cjs/types/Interface/api/connector/OAuthTokenRequest.d.ts +12 -0
  25. package/dist/cjs/types/Interface/api/connector/OAuthTokenRequest.d.ts.map +1 -0
  26. package/dist/cjs/types/Interface/api/connector/OAuthTokenRequest.js +3 -0
  27. package/dist/cjs/types/Interface/api/connector/OAuthTokenRequest.js.map +1 -0
  28. package/dist/cjs/types/Interface/api/gedFile/createFileAndGed.d.ts +1 -0
  29. package/dist/cjs/types/Interface/api/gedFile/createFileAndGed.d.ts.map +1 -1
  30. package/dist/cjs/types/Interface/api/gedFile/createFileAndGed.js +10 -0
  31. package/dist/cjs/types/Interface/api/gedFile/createFileAndGed.js.map +1 -1
  32. package/dist/cjs/types/Interface/api/ocr/OcrTypeTransactions.d.ts +8 -0
  33. package/dist/cjs/types/Interface/api/ocr/OcrTypeTransactions.d.ts.map +1 -1
  34. package/dist/cjs/types/Interface/api/ocr/OcrTypeTransactions.js.map +1 -1
  35. package/dist/cjs/types/Interface/api/sellsy/SellsyConnectionStatus.d.ts +11 -0
  36. package/dist/cjs/types/Interface/api/sellsy/SellsyConnectionStatus.d.ts.map +1 -0
  37. package/dist/cjs/types/Interface/api/sellsy/SellsyConnectionStatus.js +3 -0
  38. package/dist/cjs/types/Interface/api/sellsy/SellsyConnectionStatus.js.map +1 -0
  39. package/dist/cjs/types/Interface/api/sellsy/SellsyOauthCallback.d.ts +10 -0
  40. package/dist/cjs/types/Interface/api/sellsy/SellsyOauthCallback.d.ts.map +1 -0
  41. package/dist/cjs/types/Interface/api/sellsy/SellsyOauthCallback.js +36 -0
  42. package/dist/cjs/types/Interface/api/sellsy/SellsyOauthCallback.js.map +1 -0
  43. package/dist/cjs/types/Interface/models/IConnector.d.ts +1 -0
  44. package/dist/cjs/types/Interface/models/IConnector.d.ts.map +1 -1
  45. package/dist/cjs/types/Interface/models/IConnector.js.map +1 -1
  46. package/dist/cjs/types/index.d.ts +2 -0
  47. package/dist/cjs/types/index.d.ts.map +1 -1
  48. package/dist/cjs/types/index.js +2 -0
  49. package/dist/cjs/types/index.js.map +1 -1
  50. package/dist/mjs/api/resources/BankStatement.d.ts +1 -3
  51. package/dist/mjs/api/resources/BankStatement.d.ts.map +1 -1
  52. package/dist/mjs/api/resources/BankStatement.js +0 -6
  53. package/dist/mjs/api/resources/BankStatement.js.map +1 -1
  54. package/dist/mjs/api/resources/Sellsy.d.ts +16 -0
  55. package/dist/mjs/api/resources/Sellsy.d.ts.map +1 -0
  56. package/dist/mjs/api/resources/Sellsy.js +16 -0
  57. package/dist/mjs/api/resources/Sellsy.js.map +1 -0
  58. package/dist/mjs/api/resources.d.ts +2 -0
  59. package/dist/mjs/api/resources.d.ts.map +1 -1
  60. package/dist/mjs/api/resources.js +2 -0
  61. package/dist/mjs/api/resources.js.map +1 -1
  62. package/dist/mjs/types/Enum/AIPrompt.d.ts +2 -2
  63. package/dist/mjs/types/Enum/AIPrompt.d.ts.map +1 -1
  64. package/dist/mjs/types/Enum/AIPrompt.js +16 -12
  65. package/dist/mjs/types/Enum/AIPrompt.js.map +1 -1
  66. package/dist/mjs/types/Enum/TimeSlot.d.ts.map +1 -1
  67. package/dist/mjs/types/Enum/TimeSlot.js +1 -0
  68. package/dist/mjs/types/Enum/TimeSlot.js.map +1 -1
  69. package/dist/mjs/types/Form/FormConnector.d.ts +1 -0
  70. package/dist/mjs/types/Form/FormConnector.d.ts.map +1 -1
  71. package/dist/mjs/types/Form/FormConnector.js +84 -11
  72. package/dist/mjs/types/Form/FormConnector.js.map +1 -1
  73. package/dist/mjs/types/Interface/api/connector/OAuthTokenRequest.d.ts +12 -0
  74. package/dist/mjs/types/Interface/api/connector/OAuthTokenRequest.d.ts.map +1 -0
  75. package/dist/mjs/types/Interface/api/connector/OAuthTokenRequest.js +2 -0
  76. package/dist/mjs/types/Interface/api/connector/OAuthTokenRequest.js.map +1 -0
  77. package/dist/mjs/types/Interface/api/gedFile/createFileAndGed.d.ts +1 -0
  78. package/dist/mjs/types/Interface/api/gedFile/createFileAndGed.d.ts.map +1 -1
  79. package/dist/mjs/types/Interface/api/gedFile/createFileAndGed.js +12 -1
  80. package/dist/mjs/types/Interface/api/gedFile/createFileAndGed.js.map +1 -1
  81. package/dist/mjs/types/Interface/api/ocr/OcrTypeTransactions.d.ts +8 -0
  82. package/dist/mjs/types/Interface/api/ocr/OcrTypeTransactions.d.ts.map +1 -1
  83. package/dist/mjs/types/Interface/api/ocr/OcrTypeTransactions.js.map +1 -1
  84. package/dist/mjs/types/Interface/api/sellsy/SellsyConnectionStatus.d.ts +11 -0
  85. package/dist/mjs/types/Interface/api/sellsy/SellsyConnectionStatus.d.ts.map +1 -0
  86. package/dist/mjs/types/Interface/api/sellsy/SellsyConnectionStatus.js +2 -0
  87. package/dist/mjs/types/Interface/api/sellsy/SellsyConnectionStatus.js.map +1 -0
  88. package/dist/mjs/types/Interface/api/sellsy/SellsyOauthCallback.d.ts +10 -0
  89. package/dist/mjs/types/Interface/api/sellsy/SellsyOauthCallback.d.ts.map +1 -0
  90. package/dist/mjs/types/Interface/api/sellsy/SellsyOauthCallback.js +35 -0
  91. package/dist/mjs/types/Interface/api/sellsy/SellsyOauthCallback.js.map +1 -0
  92. package/dist/mjs/types/Interface/models/IConnector.d.ts +1 -0
  93. package/dist/mjs/types/Interface/models/IConnector.d.ts.map +1 -1
  94. package/dist/mjs/types/Interface/models/IConnector.js.map +1 -1
  95. package/dist/mjs/types/index.d.ts +2 -0
  96. package/dist/mjs/types/index.d.ts.map +1 -1
  97. package/dist/mjs/types/index.js +2 -0
  98. package/dist/mjs/types/index.js.map +1 -1
  99. package/package.json +1 -1
  100. package/ts/api/resources/BankStatement.ts +0 -12
  101. package/ts/api/resources/Sellsy.ts +21 -0
  102. package/ts/api/resources.ts +2 -0
  103. package/ts/types/Enum/AIPrompt.ts +18 -13
  104. package/ts/types/Enum/TimeSlot.ts +1 -0
  105. package/ts/types/Form/FormConnector.ts +39 -11
  106. package/ts/types/Interface/api/connector/OAuthTokenRequest.ts +12 -0
  107. package/ts/types/Interface/api/gedFile/createFileAndGed.ts +10 -1
  108. package/ts/types/Interface/api/ocr/OcrTypeTransactions.ts +6 -0
  109. package/ts/types/Interface/api/sellsy/SellsyConnectionStatus.ts +10 -0
  110. package/ts/types/Interface/api/sellsy/SellsyOauthCallback.ts +24 -0
  111. package/ts/types/Interface/models/IConnector.ts +1 -0
  112. package/ts/types/index.ts +2 -0
@@ -0,0 +1,21 @@
1
+ import { Resource } from '../Resource';
2
+ import { SellsyConnectionStatus } from '../../types/Interface/api/sellsy/SellsyConnectionStatus';
3
+ import { SellsyOauthCallback } from '../../types/Interface/api/sellsy/SellsyOauthCallback';
4
+
5
+ export class Sellsy extends Resource {
6
+ oauthCallback(payload: SellsyOauthCallback): Promise<{ success: boolean; message: string }> {
7
+ return this.axios.$post('/connectors/sellsy/callback', payload);
8
+ }
9
+
10
+ disconnect(idSociety: number): Promise<{ success: boolean; message: string }> {
11
+ return this.axios.$delete(`/connectors/sellsy/disconnect/${idSociety}`);
12
+ }
13
+
14
+ getConnectionStatus(societyId: number): Promise<SellsyConnectionStatus> {
15
+ return this.axios.$get('/connectors/sellsy/status', { params: { societyId } });
16
+ }
17
+
18
+ createInvoices(payload: any): Promise<any> {
19
+ return this.axios.$post('/connectors/sellsy/invoices', payload);
20
+ }
21
+ }
@@ -179,6 +179,7 @@ import { StatisticLegal } from './resources/statistic/Legal';
179
179
  import { AnalyticsUtm } from './resources/AnalyticsUtm';
180
180
  import { Caarl } from './resources/Caarl';
181
181
  import { Gdpr } from './resources/Gdpr';
182
+ import { Sellsy } from './resources/Sellsy';
182
183
  import { BankDedup } from './resources/BankDedup';
183
184
  import { StripePurchase } from './resources/StripePurchase';
184
185
 
@@ -221,6 +222,7 @@ export const resources = {
221
222
  taxDeadline: TaxDeadline,
222
223
  exerciceNote: ExerciceNote,
223
224
  connector: Connector,
225
+ sellsy: Sellsy,
224
226
  tax: Tax,
225
227
  quotesAccount: QuotesAccount,
226
228
  registration: Registration,
@@ -2,13 +2,13 @@ export enum AIPromptKey {
2
2
  BANK_STATEMENT = 'bank_statement',
3
3
  BANK_STATEMENT_PERIOD = 'bank_statement_period',
4
4
  BANK_STATEMENT_FILE_NAME = 'bank_statement_file_name',
5
- BANK_STATEMENT_SOLDE_INFOS = 'bank_statement_solde_infos',
5
+ BANK_STATEMENT_INFOS = 'bank_statement_infos',
6
6
  ASK_COLLABORATOR = 'ask_collaborator',
7
7
  }
8
8
 
9
9
  interface AIPromptInfo {
10
10
  userPrompt: string;
11
- systemPrompt: string;
11
+ systemPrompt: string | ((...arg: any[]) => string);
12
12
  }
13
13
 
14
14
  export const AIPrompt: Record<AIPromptKey, AIPromptInfo> = {
@@ -32,26 +32,31 @@ export const AIPrompt: Record<AIPromptKey, AIPromptInfo> = {
32
32
  Assurez-vous que le JSON soit strictement conforme à ce format, sans aucun commentaire ou texte supplémentaire.
33
33
  `,
34
34
  },
35
- [AIPromptKey.BANK_STATEMENT_SOLDE_INFOS]: {
35
+ [AIPromptKey.BANK_STATEMENT_INFOS]: {
36
36
  userPrompt:
37
- 'Voici des lignes issues d’un relevé de compte bancaire (cela peut être un relevé français). Pouvez-vous extraire les données concernant le solde précédent compte bancaire ?',
38
- systemPrompt: `
39
- Analysez ce relevé de compte bancaire et extrayez toutes les infos concernant le montant des solde précédents du compte bancaire sous forme d'un objet JSON structuré.
40
- Le relevé peut contenir des informations telles que la date du solde précédent et le montant du solde qui doit être un nombre.
37
+ 'Voici des lignes issues d’un relevé de compte bancaire (cela peut être un relevé français). Pouvez-vous extraire les données concernant le solde précédent, la date de début et la date de fin du compte bancaire?',
38
+ systemPrompt: (bankAccountName) =>
39
+ `
40
+ Analysez ce relevé de compte bancaire et extrayez toutes les infos concernant le montant des solde précédents du compte bancaire, les dates de début et de fin du relevé sous forme d'un objet JSON structuré.
41
+ Le relevé peut contenir des informations telles que la date du solde précédent et le montant du solde qui doit être un nombre. La date de début et de fin doivent être retourné en string.
42
+
41
43
  Garder exactement le même ordre des différentes dates que dans le relevé.
42
44
  Si plusieurs solde sont trouvés, les retourner tous.
45
+ De plus, il faut également retourné un nom de fichier formatté.
43
46
  Le format attendu est le suivant :
44
- [
47
+ soldes: [
45
48
  {
46
49
  "dateValue": string (format : YYYY-MM-DD correspondant à la date du ou des soldes précédents),
47
50
  "amount": number,
48
51
  },
49
52
  ...
50
- ]
51
- Assurez-vous que le JSON soit strictement conforme à ce format, sans aucun commentaire ou texte supplémentaire.
52
- Si Aucune date n'est trouvée, retourner un tableau vide.
53
-
54
- `,
53
+ ],
54
+ period: {
55
+ "startDate": string (format : YYYY-MM-DD correspondant a la date de début du relevé),
56
+ "endDate": string (format : YYYY-MM-DD correspondant a la date de fin du relevé),
57
+ },
58
+ formattedFileName: string (nom du fichier au format 'releve_bancaire_${bankAccountName}_du_DD-MM-YYYY_au_DD-MM-YYYY.pdf)
59
+ Assurez-vous que le JSON soit strictement conforme à ce format, sans aucun commentaire ou texte supplémentaire. Si Aucune date n'est trouvée, retourner un tableau vide,`,
55
60
  },
56
61
  [AIPromptKey.BANK_STATEMENT_PERIOD]: {
57
62
  userPrompt: '',
@@ -353,6 +353,7 @@ export const TimeSlotDetail: TimeSlotDetailType[] = [
353
353
  id: TimeSlot.SUPPORTING_CREATION_OF_SOCIETY_PROSPECT,
354
354
  name: 'Accompagnement pour la création de mon entreprise',
355
355
  internalName: 'Rdv création Prospect',
356
+ category: TimeSlotCategoryDetail.find((c) => c.id === TimeSlotCategory.SALES)?.name,
356
357
  duration: 30,
357
358
  idRole: [Role.COMMERCIAL],
358
359
  forWholeService: true,
@@ -1,36 +1,64 @@
1
+ import { IsString, IsOptional, IsNumber, IsDate, IsEnum } from 'class-validator';
1
2
  import { ConnectorType } from '../Enum/ConnectorType';
3
+ import { ApiProperty, ApiPropertyOptional } from '../../utils';
2
4
 
3
5
  export class FormConnector {
4
- // @ApiProperty()
6
+ @ApiPropertyOptional()
7
+ @IsOptional()
8
+ @IsNumber()
5
9
  id?: number;
6
10
 
7
- // @ApiProperty()
11
+ @ApiPropertyOptional()
12
+ @IsOptional()
13
+ @IsString()
8
14
  username?: string;
9
15
 
10
- // @ApiProperty()
16
+ @ApiPropertyOptional()
17
+ @IsOptional()
18
+ @IsString()
11
19
  pass?: string;
12
20
 
13
- // @ApiProperty()
21
+ @ApiPropertyOptional()
22
+ @IsOptional()
23
+ @IsString()
14
24
  url?: string;
15
25
 
16
- // @ApiProperty()
26
+ @ApiPropertyOptional()
27
+ @IsOptional()
28
+ @IsString()
17
29
  token?: string;
18
30
 
19
- // @ApiProperty()
31
+ @ApiPropertyOptional()
32
+ @IsOptional()
33
+ @IsString()
20
34
  token2?: string;
21
35
 
22
- // @ApiProperty()
36
+ @ApiPropertyOptional()
37
+ @IsOptional()
38
+ @IsString()
23
39
  token3?: string;
24
40
 
25
- // @ApiProperty()
41
+ @ApiPropertyOptional()
42
+ @IsOptional()
43
+ @IsString()
26
44
  token4?: string;
27
45
 
28
- // @ApiProperty()
46
+ @ApiPropertyOptional()
47
+ @IsOptional()
48
+ @IsDate()
29
49
  date?: Date;
30
50
 
31
- // @ApiProperty()
51
+ @ApiProperty()
52
+ @IsEnum(ConnectorType)
32
53
  idTypeConnector: ConnectorType;
33
54
 
34
- // @ApiProperty()
55
+ @ApiPropertyOptional()
56
+ @IsOptional()
57
+ @IsNumber()
35
58
  idSociety?: number;
59
+
60
+ @ApiPropertyOptional()
61
+ @IsOptional()
62
+ @IsNumber()
63
+ expiresIn?: number;
36
64
  }
@@ -0,0 +1,12 @@
1
+ export interface OAuthTokenRequest {
2
+ clientId: string;
3
+ redirectUri: string;
4
+ codeVerifier: string;
5
+ code: string;
6
+ }
7
+
8
+ export interface SellsyTokenResponse {
9
+ access_token: string;
10
+ refresh_token: string;
11
+ expires_in: number;
12
+ }
@@ -1,6 +1,7 @@
1
- import { IsDate, IsNumber, IsOptional, IsString } from 'class-validator';
1
+ import { IsBoolean, IsDate, IsNumber, IsOptional, IsString } from 'class-validator';
2
2
  import { ApiPropertyOptional, ApiProperty } from '../../../../utils';
3
3
  import { TFile } from '../file/TFile';
4
+ import { ToBoolean } from '../../../../utils/transforms/boolean.transform';
4
5
 
5
6
  export class CreateFileAndGed {
6
7
  @ApiProperty()
@@ -62,5 +63,13 @@ export class CreateFileAndGed {
62
63
 
63
64
  @ApiPropertyOptional()
64
65
  @IsOptional()
66
+ @IsBoolean()
67
+ @ToBoolean()
65
68
  needToBeReviewed?: boolean | null;
69
+
70
+ @ApiPropertyOptional()
71
+ @IsOptional()
72
+ @IsBoolean()
73
+ @ToBoolean()
74
+ formatFileName?: boolean | null;
66
75
  }
@@ -17,6 +17,12 @@ export type MistralBankAccountSoldeDetails = {
17
17
  amount: number;
18
18
  };
19
19
 
20
+ export type MistralBankAccountDetails = {
21
+ period: { startDate: string; endDate: string };
22
+ formattedFileName: string;
23
+ solde: MistralBankAccountSoldeDetails[];
24
+ };
25
+
20
26
  export type OcrResponseParsed = {
21
27
  Type: OcrType;
22
28
  MessageId: string;
@@ -0,0 +1,10 @@
1
+ export interface SellsyConnectionStatus {
2
+ connected: boolean;
3
+ refreshed?: boolean;
4
+ needReauth?: boolean;
5
+ lastSync?: Date | string;
6
+ expiresAt?: Date;
7
+ expiresIn?: number;
8
+ message?: string;
9
+ error?: string;
10
+ }
@@ -0,0 +1,24 @@
1
+ import { IsInt, IsNotEmpty, IsString } from 'class-validator';
2
+ import { ApiProperty } from '../../../../utils';
3
+
4
+ export class SellsyOauthCallback {
5
+ @ApiProperty()
6
+ @IsString()
7
+ @IsNotEmpty()
8
+ code: string;
9
+
10
+ @ApiProperty()
11
+ @IsString()
12
+ @IsNotEmpty()
13
+ codeVerifier: string;
14
+
15
+ @ApiProperty()
16
+ @IsInt()
17
+ @IsNotEmpty()
18
+ idSociety: number;
19
+ }
20
+
21
+ export interface SellsyOauthCallbackResponse {
22
+ message: string;
23
+ success: true;
24
+ }
@@ -20,4 +20,5 @@ export interface IConnector {
20
20
  // Associations
21
21
  typeConnector: IConnectorType;
22
22
  society: ISociety;
23
+ expiresIn: number | null;
23
24
  }
package/ts/types/index.ts CHANGED
@@ -993,6 +993,7 @@ export * from './Interface/api/commercialOffer/Query';
993
993
  export * from './Interface/api/documentSection/Update';
994
994
  export * from './Interface/api/connector/CreateConnector';
995
995
  export * from './Interface/api/connector/QueryConnector';
996
+ export * from './Interface/api/connector/OAuthTokenRequest';
996
997
  export * from './Interface/api/connection/Query';
997
998
  export * from './Interface/api/connection/QueryConnectionState';
998
999
  export * from './Interface/api/connection/ReadConnectionState';
@@ -1109,6 +1110,7 @@ export * from './Interface/api/companyMarketingInformation/CompanyMarketingInfor
1109
1110
  export * from './Interface/api/companyMarketingInformation/CreateCompanyMarketingInformation';
1110
1111
  export * from './Interface/api/companyMarketingInformation/UpdateCompanyMarketingInformation';
1111
1112
  export * from './Interface/api/sellsy/CreateInvoicesSellsy';
1113
+ export * from './Interface/api/sellsy/SellsyConnectionStatus';
1112
1114
  export * from './Interface/api/PaymentRecovery/Create';
1113
1115
  export * from './Interface/api/yousign/index';
1114
1116
  export * from './Interface/api/aspone/AsponeApi';