@silexpert/core 0.4.176 → 0.4.178

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 (114) hide show
  1. package/es/api/resources/BudgetInsight.d.ts +4 -1
  2. package/es/api/resources/BudgetInsight.d.ts.map +1 -1
  3. package/es/api/resources/BudgetInsight.js +9 -1
  4. package/es/api/resources/BudgetInsight.js.map +1 -1
  5. package/es/api/resources/Mail.d.ts +9 -0
  6. package/es/api/resources/Mail.d.ts.map +1 -0
  7. package/es/api/resources/Mail.js +13 -0
  8. package/es/api/resources/Mail.js.map +1 -0
  9. package/es/api/resources/Society.d.ts +3 -1
  10. package/es/api/resources/Society.d.ts.map +1 -1
  11. package/es/api/resources/Society.js +3 -0
  12. package/es/api/resources/Society.js.map +1 -1
  13. package/es/api/resources.d.ts +2 -0
  14. package/es/api/resources.d.ts.map +1 -1
  15. package/es/api/resources.js +2 -0
  16. package/es/api/resources.js.map +1 -1
  17. package/es/types/Enum/Aspone.d.ts +2 -1
  18. package/es/types/Enum/Aspone.d.ts.map +1 -1
  19. package/es/types/Enum/Aspone.js +1 -0
  20. package/es/types/Enum/Aspone.js.map +1 -1
  21. package/es/types/Enum/BudgetInsight.d.ts +15 -0
  22. package/es/types/Enum/BudgetInsight.d.ts.map +1 -0
  23. package/es/types/Enum/BudgetInsight.js +16 -0
  24. package/es/types/Enum/BudgetInsight.js.map +1 -0
  25. package/es/types/Enum/IncomeStatement.js.map +1 -1
  26. package/es/types/Interface/api/budgetInsight/Create.d.ts +5 -0
  27. package/es/types/Interface/api/budgetInsight/Create.d.ts.map +1 -0
  28. package/es/types/Interface/api/budgetInsight/Create.js +24 -0
  29. package/es/types/Interface/api/budgetInsight/Create.js.map +1 -0
  30. package/es/types/Interface/api/budgetInsight/Query.d.ts +163 -0
  31. package/es/types/Interface/api/budgetInsight/Query.d.ts.map +1 -0
  32. package/es/types/Interface/api/budgetInsight/Query.js +25 -0
  33. package/es/types/Interface/api/budgetInsight/Query.js.map +1 -0
  34. package/es/types/Interface/api/budgetInsight/Read.d.ts +48 -0
  35. package/es/types/Interface/api/budgetInsight/Read.d.ts.map +1 -0
  36. package/es/types/Interface/api/budgetInsight/Read.js +2 -0
  37. package/es/types/Interface/api/budgetInsight/Read.js.map +1 -0
  38. package/es/types/Interface/api/mail/QueryMail.d.ts +5 -0
  39. package/es/types/Interface/api/mail/QueryMail.d.ts.map +1 -0
  40. package/es/types/Interface/api/mail/QueryMail.js +31 -0
  41. package/es/types/Interface/api/mail/QueryMail.js.map +1 -0
  42. package/es/types/Interface/api/mail/QueryPaginatedMail.d.ts +9 -0
  43. package/es/types/Interface/api/mail/QueryPaginatedMail.d.ts.map +1 -0
  44. package/es/types/Interface/api/mail/QueryPaginatedMail.js +62 -0
  45. package/es/types/Interface/api/mail/QueryPaginatedMail.js.map +1 -0
  46. package/es/types/Interface/api/mail/UpdateMail.d.ts +37 -0
  47. package/es/types/Interface/api/mail/UpdateMail.d.ts.map +1 -0
  48. package/es/types/Interface/api/mail/UpdateMail.js +208 -0
  49. package/es/types/Interface/api/mail/UpdateMail.js.map +1 -0
  50. package/es/types/Interface/api/society/QueryPaginatedSociety.d.ts +7 -0
  51. package/es/types/Interface/api/society/QueryPaginatedSociety.d.ts.map +1 -0
  52. package/es/types/Interface/api/society/QueryPaginatedSociety.js +43 -0
  53. package/es/types/Interface/api/society/QueryPaginatedSociety.js.map +1 -0
  54. package/es/types/Interface/models/IBankAccount.d.ts +1 -0
  55. package/es/types/Interface/models/IBankAccount.d.ts.map +1 -1
  56. package/es/types/Interface/models/IBankAccount.js.map +1 -1
  57. package/es/types/Interface/models/IBankConnection.d.ts +1 -0
  58. package/es/types/Interface/models/IBankConnection.d.ts.map +1 -1
  59. package/es/types/Interface/models/IBankConnection.js.map +1 -1
  60. package/es/types/Interface/models/IMail.d.ts +4 -2
  61. package/es/types/Interface/models/IMail.d.ts.map +1 -1
  62. package/es/types/Interface/models/IMail.js.map +1 -1
  63. package/es/types/index.d.ts +8 -0
  64. package/es/types/index.d.ts.map +1 -1
  65. package/es/types/index.js +8 -0
  66. package/es/types/index.js.map +1 -1
  67. package/js/api/resources/BudgetInsight.js +14 -4
  68. package/js/api/resources/BudgetInsight.js.map +1 -1
  69. package/js/api/resources/Mail.js +32 -0
  70. package/js/api/resources/Mail.js.map +1 -0
  71. package/js/api/resources/Society.js +8 -0
  72. package/js/api/resources/Society.js.map +1 -1
  73. package/js/api/resources.js +3 -0
  74. package/js/api/resources.js.map +1 -1
  75. package/js/types/Enum/Aspone.js +1 -0
  76. package/js/types/Enum/Aspone.js.map +1 -1
  77. package/js/types/Enum/BudgetInsight.js +22 -0
  78. package/js/types/Enum/BudgetInsight.js.map +1 -0
  79. package/js/types/Enum/IncomeStatement.js.map +1 -1
  80. package/js/types/Interface/api/budgetInsight/Create.js +31 -0
  81. package/js/types/Interface/api/budgetInsight/Create.js.map +1 -0
  82. package/js/types/Interface/api/budgetInsight/Query.js +33 -0
  83. package/js/types/Interface/api/budgetInsight/Query.js.map +1 -0
  84. package/js/types/Interface/api/budgetInsight/Read.js +6 -0
  85. package/js/types/Interface/api/budgetInsight/Read.js.map +1 -0
  86. package/js/types/Interface/api/mail/QueryMail.js +37 -0
  87. package/js/types/Interface/api/mail/QueryMail.js.map +1 -0
  88. package/js/types/Interface/api/mail/QueryPaginatedMail.js +58 -0
  89. package/js/types/Interface/api/mail/QueryPaginatedMail.js.map +1 -0
  90. package/js/types/Interface/api/mail/UpdateMail.js +99 -0
  91. package/js/types/Interface/api/mail/UpdateMail.js.map +1 -0
  92. package/js/types/Interface/api/society/QueryPaginatedSociety.js +48 -0
  93. package/js/types/Interface/api/society/QueryPaginatedSociety.js.map +1 -0
  94. package/js/types/index.js +96 -0
  95. package/js/types/index.js.map +1 -1
  96. package/package.json +1 -1
  97. package/ts/api/resources/BudgetInsight.ts +12 -1
  98. package/ts/api/resources/Mail.ts +25 -0
  99. package/ts/api/resources/Society.ts +9 -0
  100. package/ts/api/resources.ts +2 -0
  101. package/ts/types/Enum/Aspone.ts +1 -0
  102. package/ts/types/Enum/BudgetInsight.ts +14 -0
  103. package/ts/types/Enum/IncomeStatement.ts +1 -1
  104. package/ts/types/Interface/api/budgetInsight/Create.ts +12 -0
  105. package/ts/types/Interface/api/budgetInsight/Query.ts +180 -0
  106. package/ts/types/Interface/api/budgetInsight/Read.ts +51 -0
  107. package/ts/types/Interface/api/mail/QueryMail.ts +21 -0
  108. package/ts/types/Interface/api/mail/QueryPaginatedMail.ts +45 -0
  109. package/ts/types/Interface/api/mail/UpdateMail.ts +170 -0
  110. package/ts/types/Interface/api/society/QueryPaginatedSociety.ts +28 -0
  111. package/ts/types/Interface/models/IBankAccount.ts +1 -0
  112. package/ts/types/Interface/models/IBankConnection.ts +2 -1
  113. package/ts/types/Interface/models/IMail.ts +4 -2
  114. package/ts/types/index.ts +8 -0
@@ -0,0 +1,180 @@
1
+ import { IsEnum, IsString } from 'class-validator';
2
+ import { ApiProperty } from '../../../../utils';
3
+ import { BudgetInsightEvent } from '../../../Enum/BudgetInsight';
4
+ import { ConnectionState } from './Read';
5
+
6
+ export class QueryHooks {
7
+ @ApiProperty()
8
+ @IsString()
9
+ token: string;
10
+
11
+ @ApiProperty()
12
+ @IsEnum(BudgetInsightEvent)
13
+ event: BudgetInsightEvent;
14
+ }
15
+
16
+ type BudgetCurrency = {
17
+ id: string; // Currency code (ISO 4217).
18
+ name: string; // Display name of the currency.
19
+ symbol: string; // Display symbol of the currency.
20
+ precision: number; // number precision of the currency.
21
+ prefix: boolean;
22
+ crypto: boolean;
23
+ };
24
+
25
+ type BudgetInsightAccountTypeName =
26
+ 'article83' | // Article 83
27
+ 'capitalisation' | // Capitalization contract
28
+ 'card' | // Card
29
+ 'checking' | // Checking account
30
+ 'crowdlending' | // Crowdlending
31
+ 'deposit' | // Deposit account
32
+ 'joint' | // Joint account
33
+ 'lifeinsurance' | // Life insurance account
34
+ 'loan' | // Loan
35
+ 'madelin' | // Madelin retirement contract
36
+ 'market' | // Market account
37
+ 'pea' | // Shared savings plan (Plan d'Epargne en Actions)
38
+ 'pee' | // Company savings plan (Plan d'Epargne Entreprise)
39
+ 'per' | // Retirement savings plan (Plan d'Epargne Retraite)
40
+ 'perco' | // Group retirement savings plan (Plan d'Epargne pour la Retraite Collectif)
41
+ 'perp' | // Popular retirement savings plan (Plan d'Epargne Retraite Populaire)
42
+ 'real_estate' | // Real estate placement
43
+ 'rsp' | // Special profit-sharing reserve (Réserve Spéciale de Participation)
44
+ 'savings' | // Savings account
45
+ 'unknown'; // Unknown account type
46
+
47
+ type BudgetInsightTransactionType =
48
+ 'transfer' | // Transfer
49
+ 'order' | // Order
50
+ 'check' | // Check
51
+ 'deposit' | // Deposit
52
+ 'payback' | // Payback
53
+ 'withdrawal' | // Withdrawal
54
+ 'loan_payment' | // Loan payment
55
+ 'bank' | // Bank fees
56
+ 'card' | // Card operation
57
+ 'deferred_card' | // Deferred card operation
58
+ 'summary_card' | // Mensual debit of a deferred card
59
+ 'unknown'; // Unknown transaction type
60
+
61
+ type BudgetInsightBankAccountUsage =
62
+ 'PRIV' |// Private account.
63
+ 'ORGA' |// Professional account.
64
+ 'ASSO'; // Association account.
65
+
66
+ type BudgetInsightBankAccountOwnerShip =
67
+ 'owner' | // Account holder.
68
+ 'co-owner' | // Holder on a joint account.
69
+ 'attorney'; // Account authorized agent.
70
+
71
+ type BudgetInsightLoan = {
72
+ total_amount: number | null; // Total amount of the loan.
73
+ available_amount: number | null; // Amount of the loan not yet released and still available.
74
+ used_amount: number | null; // Amount of the load already used.
75
+ subscription_date: Date | null; // Subscription date of the loan.
76
+ maturity_date: Date | null; // Estimated end date of the loan.
77
+ next_payment_amount: number | null; // Amount of the next payment.
78
+ next_payment_date: Date | null; // Date of the next payment.
79
+ rate: number | null; // Rate of the loan.
80
+ nb_payments_left: number | null; // Number of payments still due.
81
+ nb_payments_done: number | null; // Number of payments done.
82
+ nb_payments_total: number | null; // Total number of payments.
83
+ last_payment_amount: Date | null; // Amount of the last payment.
84
+ last_payment_date: Date | null; // Date of the last payment.
85
+ account_label: string | null; // Name of the debited account.
86
+ insurance_label: string | null; // Label of the insurance.
87
+ duration: number | null; // Duration of the loan, in months.
88
+ type: string | null; // Type of the loan (mortgage, consumercredit or revolvingcredit).
89
+ };
90
+
91
+ export type BudgetInsightTransaction = {
92
+ id: number; // ID of the transaction.
93
+ id_account: number; // ID of the related account.
94
+ application_date: Date | null; // Date considered by PFM services. This date can be edited.
95
+ date: Date; // Date when the transaction is posted to the account.
96
+ datetime: Date | null; // Date and time when the transaction is posted to the account, if available, in UTC.
97
+ vdate: Date | null; // Value date of the transaction. In most cases, equivalent to date.
98
+ vdatetime: Date | null; // Value date and time of the transaction, if available, in UTC. In most cases, equivalent to datetime.
99
+ rdate: Date; // Date when the transaction order has been given.
100
+ rdatetime: Date | null; // Date and time when the transaction order has been given, if available, in UTC.
101
+ bdate: Date | null; // Date displayed by the bank for the transaction.
102
+ bdatetime: number | null; // Date and time displayed by the bank for the transaction, if available, in UTC.
103
+ value: number | null; // Value of the transaction.
104
+ gross_value: number | null; // Gross value of the transaction.
105
+ type: BudgetInsightTransactionType; // Type of transaction.
106
+ original_wording: string; // Full label of the transaction, as seen on the bank.
107
+ simplified_wording: string; // Simplified label of the transaction.
108
+ wording:string | null; // Label of the transaction, can be edited.
109
+ id_category: number | null; // ID of the related category.
110
+ date_scraped: Date; // Date and time when the transaction was seen.
111
+ coming: boolean; // If true, this transaction has not yet been posted to the account.
112
+ active: boolean; // If false, PFM services will ignore this transaction.
113
+ id_cluster: number | null; // If the transaction is part of a cluster.
114
+ comment:string | null; // User comment.
115
+ last_update: Date | null; // Last update of the transaction.
116
+ deleted: number | null; // If set, this transaction has been removed from the bank.
117
+ original_value: number | null; // Value in the original currency.
118
+ original_gross_value: number | null; // Gross value in the original currency.
119
+ original_currency: BudgetCurrency | null; // Original currency.
120
+ commission: number | null; // Commission taken on the transaction.
121
+ commission_currency: BudgetCurrency | null; // Commission currency.
122
+ country:string | null; // Original country.
123
+ card:string | null; // Card number associated with the transaction.
124
+ };
125
+
126
+ export type BudgetInsightAccountSyncedQuery = {
127
+ id: number; // ID of the bank account.
128
+ id_connection: number | null; // ID of the related connection.
129
+ id_user: number | null; // ID of the related user.
130
+ id_source: number | null; // ID of the related connection source.
131
+ id_parent: number | null; // ID of the parent account.
132
+ number: string | null; // Account number.
133
+ original_name: string; // Original name of the account, as seen on the bank.
134
+ balance: number | null; // Balance of the account.
135
+ coming: number | null; // Amount of coming operations not yet debited.
136
+ display: boolean; // Whether the bank account should be presented.
137
+ last_update: Date | null; // Last successful update of the account.
138
+ deleted: Date | null; // If set, this account is not found on the website anymore.
139
+ disabled: Date | null; // If set, this account has been disabled by user and will not be synchronized anymore.
140
+ iban: string | null; // Account IBAN.
141
+ currency: BudgetCurrency | null; // Account currency.
142
+ type: BudgetInsightAccountTypeName; // Technical code of the account type.
143
+ id_type: number; // ID of the account type.
144
+ bookmarked: number; // This account has been bookmarked by user.
145
+ name: string; // The name of the account.
146
+ error: string | null; // If the last update has failed, the error code.
147
+ usage: BudgetInsightBankAccountUsage; // Account usage. If not overridden, the value of original_usage is returned.
148
+ ownership: BudgetInsightBankAccountOwnerShip | null; // Relationship between the credentials owner and the account.
149
+ company_name: string | null; // Name of the company holding the employee savings of the account.
150
+ loan: BudgetInsightLoan | null; // For loan accounts, the loan details.
151
+ transactions: BudgetInsightTransaction[];
152
+ };
153
+
154
+ type BudgetInsightUser = {
155
+ id: number;
156
+ signin: Date;
157
+ platform: string;
158
+ };
159
+
160
+ type BudgetInsightConnection = {
161
+ id: number; // ID of the connection.
162
+ id_user: number | null; // ID of the related user.
163
+ id_connector: number; // ID of the related connector.
164
+ state: ConnectionState | null; // If the last update failed, the state code. The null value indicates a successful sync.
165
+ error: ConnectionState | null; // (Deprecated) If the last update failed, the state code. The null value indicates a successful sync.
166
+ error_message: string | null; // If the last update failed, an optional message from the connector to guide the user into recovering from the error.
167
+ fields: string[]; // of ConnectorField objects For connections in an error state, an optional list of connector fields that must be prompted to the end-user.
168
+ last_update: Date | null; // Last successful update.
169
+ created: Date | null; // Creation date of the connection.
170
+ active: boolean; // Whether this connection is active and will be automatically synced.
171
+ last_push: Date | null; // Last successful push.
172
+ expire: Date | null; // Highest value among expiration dates of connection sources.
173
+ connector_uuid: string; // UUID of the related connector.
174
+ next_try: Date | null; // Scheduled date of next synchronization.
175
+ };
176
+
177
+ export type BudgetInsightConnectionSyncedQuery = {
178
+ user: BudgetInsightUser;
179
+ connection: BudgetInsightConnection & { connector: any; sources: any; accounts: any; };
180
+ };
@@ -0,0 +1,51 @@
1
+ export type ReadAuthorizationCode = {
2
+ code: string;
3
+ expiresIn: string;
4
+ idUser: string;
5
+ };
6
+
7
+ export type ReadTemporaryCode = {
8
+ code: string;
9
+ expiresIn: string;
10
+ };
11
+
12
+ export type ConnectionState = 'SCARequired' | // An SCA process must be performed to resume the synchronization process.
13
+ 'webauthRequired' | // A web-based authentication process is required using the /webauth endpoint.
14
+ 'additionalInformationNeeded' | // Additional information is needed to resume synchronization, such as an OTP. Connections in this state have a fields property.
15
+ 'decoupled' | // User validation is required on a third-party app or device (ex: digital key).
16
+ 'validating' | // User validation is being processed on our side. This state is temporary.
17
+ 'actionNeeded' | // An action is needed on the website by the user, synchronization is blocked.
18
+ 'passwordExpired' | // The password has expired and needs to be changed by the user before the synchronization can be retried.
19
+ 'wrongpass' | // The authentication on website has failed and new credentials must be obtained from the user. Connections in this state have a fields property.
20
+ 'rateLimiting' | // The target website or API is temporarily blocking synchronizations due to rate limiting.
21
+ 'websiteUnavailable' | // The connector website or API is unavailable.
22
+ 'bug' | // An internal error has occurred during the synchronization.
23
+ 'notSupported'; // The source is not supported on the connector
24
+
25
+ export type ReadUserConnection = {
26
+ id: number;
27
+ idUser: number;
28
+ idConnector: number;
29
+ lastUpdate: Date | null;
30
+ created: Date;
31
+ active: boolean,
32
+ state: ConnectionState | null
33
+ };
34
+
35
+ export type ReadUserConnectionBudget = {
36
+ id: number;
37
+ id_user: number;
38
+ id_connector: number;
39
+ last_update: Date | null;
40
+ created: Date;
41
+ active: boolean,
42
+ last_push: null,
43
+ next_try: Date | null,
44
+ state: ConnectionState | null;
45
+ error: null; // TODO:
46
+ error_message: null; // TODO:
47
+ expire: null; // TODO:
48
+ id_provider: number;
49
+ id_bank: number;
50
+ connector_uuid: string;
51
+ };
@@ -0,0 +1,21 @@
1
+ import {
2
+ IsIn, IsOptional, IsString,
3
+ } from 'class-validator';
4
+ import { ApiPropertyOptional } from '../../../../utils/decorators';
5
+
6
+ export class QueryMail {
7
+ @ApiPropertyOptional()
8
+ @IsOptional()
9
+ @IsString({
10
+ each: true,
11
+ })
12
+ @IsIn(['society', 'mailContent', 'mailAttachment'], { each: true })
13
+ include?: string[];
14
+
15
+ @ApiPropertyOptional()
16
+ @IsOptional()
17
+ @IsString({
18
+ each: true,
19
+ })
20
+ attributes?: string[];
21
+ }
@@ -0,0 +1,45 @@
1
+ import {
2
+ IsBoolean, IsIn, IsNumber, IsOptional, IsString, IsArray,
3
+ } from 'class-validator';
4
+ import { ApiPropertyOptional } from '../../../../utils';
5
+ import { ToBoolean } from '../../../../utils/transforms/boolean.transform';
6
+
7
+ export class QueryPaginatedMail {
8
+ @ApiPropertyOptional()
9
+ @IsOptional()
10
+ @IsString()
11
+ search?: string;
12
+
13
+ @ApiPropertyOptional({ default: false })
14
+ @IsOptional()
15
+ @IsBoolean()
16
+ @ToBoolean()
17
+ withDeleted? = false;
18
+
19
+ @ApiPropertyOptional()
20
+ @IsOptional()
21
+ @IsArray()
22
+ @IsString({
23
+ each: true,
24
+ })
25
+ @IsIn(['society', 'mailContent', 'mailAttachment'], { each: true })
26
+ include?: string[];
27
+
28
+ @ApiPropertyOptional()
29
+ @IsOptional()
30
+ @IsArray()
31
+ @IsString({
32
+ each: true,
33
+ })
34
+ attributes?: string[];
35
+
36
+ @ApiPropertyOptional({ default: 25 })
37
+ @IsOptional()
38
+ @IsNumber()
39
+ limit?: number;
40
+
41
+ @ApiPropertyOptional({ default: 1 })
42
+ @IsOptional()
43
+ @IsNumber()
44
+ page?: number;
45
+ }
@@ -0,0 +1,170 @@
1
+ import {
2
+ IsBoolean, IsOptional, IsString, IsDate, IsInt, IsEnum,
3
+ } from 'class-validator';
4
+ import { ApiPropertyOptional } from '../../../../utils';
5
+ import { ToBoolean } from '../../../../utils/transforms/boolean.transform';
6
+ import { MailFlag } from '../../../Enum/MailFlag';
7
+ import { IMail } from '../../models/IMail';
8
+
9
+ export class UpdateMail {
10
+ @ApiPropertyOptional()
11
+ @IsOptional()
12
+ @IsString()
13
+ messageId?: string;
14
+
15
+ @ApiPropertyOptional()
16
+ @IsOptional()
17
+ @IsDate()
18
+ date?: Date;
19
+
20
+ @ApiPropertyOptional()
21
+ @IsOptional()
22
+ @IsString()
23
+ subject?: string;
24
+
25
+ @ApiPropertyOptional()
26
+ @IsOptional()
27
+ @IsString()
28
+ fromName?: string;
29
+
30
+ @ApiPropertyOptional()
31
+ @IsOptional()
32
+ @IsString()
33
+ fromAddress?: string;
34
+
35
+ @ApiPropertyOptional()
36
+ @IsOptional()
37
+ @IsString()
38
+ to?: string;
39
+
40
+ @ApiPropertyOptional()
41
+ @IsOptional()
42
+ @IsString()
43
+ cc?: string;
44
+
45
+ @ApiPropertyOptional()
46
+ @IsOptional()
47
+ @IsString()
48
+ bcc?: string;
49
+
50
+ @ApiPropertyOptional()
51
+ @IsOptional()
52
+ @IsString()
53
+ replyTo?: string;
54
+
55
+ @ApiPropertyOptional()
56
+ @IsOptional()
57
+ @IsString()
58
+ inReplyTo?: string;
59
+
60
+ @ApiPropertyOptional()
61
+ @IsOptional()
62
+ @IsString()
63
+ listReferences?: string;
64
+
65
+ @ApiPropertyOptional({ description: 'Début du contenu du mail, sans passer par mailContent' })
66
+ @IsOptional()
67
+ @IsString()
68
+ textMini?: string;
69
+
70
+ @ApiPropertyOptional()
71
+ @IsOptional()
72
+ @IsInt()
73
+ spamScore?: number;
74
+
75
+ @ApiPropertyOptional()
76
+ @IsOptional()
77
+ @IsBoolean()
78
+ @ToBoolean()
79
+ isSent?: boolean;
80
+
81
+ @ApiPropertyOptional()
82
+ @IsOptional()
83
+ @IsBoolean()
84
+ @ToBoolean()
85
+ isRead?: boolean;
86
+
87
+ @ApiPropertyOptional()
88
+ @IsOptional()
89
+ @IsBoolean()
90
+ @ToBoolean()
91
+ isDraft?: boolean;
92
+
93
+ @ApiPropertyOptional()
94
+ @IsOptional()
95
+ @IsBoolean()
96
+ @ToBoolean()
97
+ isImportant?: boolean;
98
+
99
+ @ApiPropertyOptional()
100
+ @IsOptional()
101
+ @IsBoolean()
102
+ @ToBoolean()
103
+ isFollowed?: boolean;
104
+
105
+ @ApiPropertyOptional()
106
+ @IsOptional()
107
+ @IsInt()
108
+ idUser?: number;
109
+
110
+ @ApiPropertyOptional()
111
+ @IsOptional()
112
+ @IsInt()
113
+ idUserWhoAnswered?: number;
114
+
115
+ @ApiPropertyOptional()
116
+ @IsOptional()
117
+ @IsInt()
118
+ idUserWhoFlagged?: number;
119
+
120
+ @ApiPropertyOptional()
121
+ @IsOptional()
122
+ @IsInt()
123
+ idRole?: number;
124
+
125
+ @ApiPropertyOptional()
126
+ @IsOptional()
127
+ @IsInt()
128
+ idExercice?: number;
129
+
130
+ @ApiPropertyOptional()
131
+ @IsOptional()
132
+ @IsInt()
133
+ idSociety?: number;
134
+
135
+ @ApiPropertyOptional()
136
+ @IsOptional()
137
+ @IsInt()
138
+ @IsEnum(MailFlag)
139
+ idFlag?: number;
140
+
141
+ @ApiPropertyOptional()
142
+ @IsOptional()
143
+ @IsInt()
144
+ idType?: number;
145
+
146
+ @ApiPropertyOptional()
147
+ @IsOptional()
148
+ @IsInt()
149
+ idMailAuto?: number;
150
+
151
+ @ApiPropertyOptional()
152
+ @IsOptional()
153
+ @IsDate()
154
+ receiptAcknowledgementAt?: Date;
155
+
156
+ @ApiPropertyOptional()
157
+ @IsOptional()
158
+ @IsDate()
159
+ processedAt?: Date;
160
+
161
+ @ApiPropertyOptional()
162
+ @IsOptional()
163
+ @IsDate()
164
+ responseAutoAt?: Date;
165
+ }
166
+
167
+ export class UpdateMailPayload {
168
+ @ApiPropertyOptional()
169
+ mail: Partial<IMail>;
170
+ }
@@ -0,0 +1,28 @@
1
+ import {
2
+ IsBoolean, IsNumber, IsOptional, IsString,
3
+ } from 'class-validator';
4
+ import { ApiPropertyOptional } from '../../../../utils';
5
+ import { ToBoolean } from '../../../../utils/transforms/boolean.transform';
6
+
7
+ export class QueryPaginatedSociety {
8
+ @ApiPropertyOptional()
9
+ @IsOptional()
10
+ @IsString()
11
+ search?: string;
12
+
13
+ @ApiPropertyOptional({ default: false })
14
+ @IsOptional()
15
+ @IsBoolean()
16
+ @ToBoolean()
17
+ withArchived? = false;
18
+
19
+ @ApiPropertyOptional({ default: 25 })
20
+ @IsOptional()
21
+ @IsNumber()
22
+ limit?: number;
23
+
24
+ @ApiPropertyOptional({ default: 1 })
25
+ @IsOptional()
26
+ @IsNumber()
27
+ page?: number;
28
+ }
@@ -27,6 +27,7 @@ export interface IBankAccount {
27
27
  amountStart: number | null;
28
28
  isGlobalFetched: boolean;
29
29
  dateStart: Date | null;
30
+ errorCode: string | null;
30
31
  idPartnerType: number | null;
31
32
  idAccount: number | null;
32
33
  idBankList: number | null;
@@ -8,9 +8,10 @@ export interface IBankConnection {
8
8
  token: string | null;
9
9
  refreshToken: string | null;
10
10
  expireAt: Date | null;
11
+ errorCode: string | null;
11
12
  idBankList: number | null;
12
13
  idSociety: number;
13
- idTypeConnection: string | null
14
+ idTypeConnection: string | null;
14
15
  idConnectionExtern: number;
15
16
  createdAt?: Date | null;
16
17
  updatedAt?: Date | null;
@@ -3,6 +3,7 @@ import { IUser } from './IUser';
3
3
  import { IExercice } from './IExercice';
4
4
  import { IRole } from './IRole';
5
5
  import { IMailContent } from './IMailContent';
6
+ import { IMailAttachment } from './IMailAttachment';
6
7
 
7
8
  // mail
8
9
  export interface IMail {
@@ -47,6 +48,7 @@ export interface IMail {
47
48
  webmailSender?: IUser;
48
49
  role?: IRole;
49
50
  exercice?: IExercice;
50
- webmailSocieties?: ISociety;
51
- mailContent?: IMailContent;
51
+ society?: ISociety;
52
+ content?: IMailContent;
53
+ attachments?: IMailAttachment[];
52
54
  }
package/ts/types/index.ts CHANGED
@@ -398,6 +398,7 @@ export * from './Enum/BalanceSheetStatus';
398
398
  export * from './Enum/FuelType';
399
399
  export * from './Enum/KilometricAllowanceScale';
400
400
  export * from './Enum/VatDeclarationType';
401
+ export * from './Enum/BudgetInsight';
401
402
  export * from './Enum/WebmailType';
402
403
  export * from './Enum/WebmailFlag';
403
404
  export * from './Enum/MailFlag';
@@ -444,8 +445,12 @@ export * from './Interface/api/file/TFile';
444
445
  export * from './Interface/api/cerfa/CreateCerfa';
445
446
  export * from './Interface/api/cerfa/ReadCerfa';
446
447
  export * from './Interface/api/customerProviderOperation/CreateCustomerProviderOperation';
448
+ export * from './Interface/api/mail/QueryMail';
449
+ export * from './Interface/api/mail/QueryPaginatedMail';
450
+ export * from './Interface/api/mail/UpdateMail';
447
451
  export * from './Interface/api/society/LegalFormSiren';
448
452
  export * from './Interface/api/society/QuerySociety';
453
+ export * from './Interface/api/society/QueryPaginatedSociety';
449
454
  export * from './Interface/api/society/GetDataSociety';
450
455
  export * from './Interface/api/society/CreateSociety';
451
456
  export * from './Interface/api/society/UpdateSociety';
@@ -601,6 +606,9 @@ export * from './Interface/api/exerciceNote/QueryExerciceNote';
601
606
  export * from './Interface/api/exerciceNote/CreateExerciceNote';
602
607
  export * from './Interface/api/sponsorship/ReadSponsorship';
603
608
  export * from './Interface/api/budgetInsight/UpdateBudgetPermanentToken';
609
+ export * from './Interface/api/budgetInsight/Read';
610
+ export * from './Interface/api/budgetInsight/Create';
611
+ export * from './Interface/api/budgetInsight/Query';
604
612
  export * from './Interface/api/partneredAccountant/ReadPartneredAccountant';
605
613
  export * from './Interface/api/partneredAccountant/QueryPartneredAccountantSocieties';
606
614
  export * from './Interface/api/partneredAccountant/ReadPartneredAccountantService';