@nomalism-com/types 0.36.32 → 0.37.2

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 (267) hide show
  1. package/dist/index.cjs +38 -49
  2. package/dist/index.js +38 -49
  3. package/dist/modules/document/billOfLading/interfaces.d.ts +0 -4
  4. package/dist/modules/print/npc/interfaces.d.ts +1 -0
  5. package/dist/modules/print/schedulePrintJob/interfaces.d.ts +1 -0
  6. package/dist/modules/stock/vatTax/interface.d.ts +2 -0
  7. package/dist/modules/supply/documentHeader/interfaces.d.ts +28 -2
  8. package/dist/modules/supply/documentSet/interface.d.ts +2 -6
  9. package/dist/modules/supply/documentType/interfaces.d.ts +2 -0
  10. package/dist/modules/user/country/route.schema.d.ts +0 -7
  11. package/dist/modules/user/paymentMethods/interfaces.d.ts +18 -0
  12. package/dist/modules/view/errorLog/interfaces.d.ts +12 -3
  13. package/dist/shared/entities/print.d.ts +1 -0
  14. package/dist/shared/entities/stock.d.ts +6 -7
  15. package/dist/shared/interface.d.ts +2 -10
  16. package/package.json +16 -20
  17. package/.editorconfig +0 -9
  18. package/.prettierrc +0 -7
  19. package/eslint.config.mjs +0 -39
  20. package/package-lock.json +0 -4327
  21. package/src/index.ts +0 -3
  22. package/src/main.ts +0 -693
  23. package/src/modules/document/billOfLading/interfaces.ts +0 -31
  24. package/src/modules/document/billOfLading/route.schema.ts +0 -32
  25. package/src/modules/document/inventario/interface.ts +0 -19
  26. package/src/modules/document/inventario/route.schema.ts +0 -16
  27. package/src/modules/document/materialEntrance/interfaces.ts +0 -207
  28. package/src/modules/document/materialEntrance/route.schema.ts +0 -53
  29. package/src/modules/document/order/interfaces.ts +0 -172
  30. package/src/modules/document/order/route.schema.ts +0 -61
  31. package/src/modules/document/productionOrder/interfaces.ts +0 -12
  32. package/src/modules/document/productionOrder/route.schema.ts +0 -13
  33. package/src/modules/document/proforma/interfaces.ts +0 -15
  34. package/src/modules/document/proforma/route.schema.ts +0 -14
  35. package/src/modules/document/propostaFornecedor/interfaces.ts +0 -17
  36. package/src/modules/document/propostaFornecedor/route.schema.ts +0 -21
  37. package/src/modules/document/propostaSheets/interface.ts +0 -113
  38. package/src/modules/document/propostaSheets/route.schema.ts +0 -45
  39. package/src/modules/document/providerCreditNoteFromReturn/interfaces.ts +0 -48
  40. package/src/modules/document/providerCreditNoteFromReturn/route.schema.ts +0 -41
  41. package/src/modules/document/providerFinancialCreditNote/interfaces.ts +0 -36
  42. package/src/modules/document/providerFinancialCreditNote/route.schema.ts +0 -40
  43. package/src/modules/document/providerServiceInvoice/interfaces.ts +0 -20
  44. package/src/modules/document/providerServiceInvoice/route.schema.ts +0 -26
  45. package/src/modules/document/purchase/interfaces.ts +0 -112
  46. package/src/modules/document/purchase/route.schema.ts +0 -51
  47. package/src/modules/document/quebra/interfaces.ts +0 -46
  48. package/src/modules/document/quebra/route.schema.ts +0 -25
  49. package/src/modules/document/returnToProvider/interface.ts +0 -59
  50. package/src/modules/document/returnToProvider/route.schema.ts +0 -27
  51. package/src/modules/document/transformado/interfaces.ts +0 -31
  52. package/src/modules/document/transformado/route.schema.ts +0 -26
  53. package/src/modules/document/upfrontReturn/interfaces.ts +0 -17
  54. package/src/modules/document/upfrontReturn/route.schema.ts +0 -11
  55. package/src/modules/documentManagement/multimedia/interfaces.ts +0 -22
  56. package/src/modules/documentManagement/multimedia/route.schema.ts +0 -9
  57. package/src/modules/integration/emailLog/interfaces.ts +0 -111
  58. package/src/modules/integration/emailLog/route.schema.ts +0 -18
  59. package/src/modules/integration/emailTemplate/interfaces.ts +0 -55
  60. package/src/modules/integration/emailTemplate/route.schema.ts +0 -95
  61. package/src/modules/integration/emailTemplateAttachment/interfaces.ts +0 -22
  62. package/src/modules/integration/emailTemplateAttachment/route.schema.ts +0 -12
  63. package/src/modules/integration/emailVerification/interfaces.ts +0 -30
  64. package/src/modules/integration/emailVerification/route.schema.ts +0 -34
  65. package/src/modules/integration/googleFilePermission/interfaces.ts +0 -32
  66. package/src/modules/integration/googleFilePermission/route.schema.ts +0 -15
  67. package/src/modules/integration/googleSheets/interfaces.ts +0 -98
  68. package/src/modules/integration/googleSheets/route.schema.ts +0 -52
  69. package/src/modules/integration/observation/interfaces.ts +0 -61
  70. package/src/modules/integration/observation/route.schema.ts +0 -40
  71. package/src/modules/integration/observationType/interfaces.ts +0 -37
  72. package/src/modules/integration/observationType/route.schema.ts +0 -17
  73. package/src/modules/integration/projectInfo/interfaces.ts +0 -26
  74. package/src/modules/integration/projectInfo/route.schema.ts +0 -18
  75. package/src/modules/integration/settings/interfaces.ts +0 -31
  76. package/src/modules/integration/settings/route.schema.ts +0 -24
  77. package/src/modules/print/npc/interfaces.ts +0 -33
  78. package/src/modules/print/npc/route.schema.ts +0 -21
  79. package/src/modules/print/printer/interfaces.ts +0 -47
  80. package/src/modules/print/printer/route.schema.ts +0 -60
  81. package/src/modules/print/schedulePrintJob/interfaces.ts +0 -47
  82. package/src/modules/print/schedulePrintJob/route.schema.ts +0 -39
  83. package/src/modules/stock/chat/interfaces.ts +0 -82
  84. package/src/modules/stock/chat/route.schema.ts +0 -28
  85. package/src/modules/stock/chatRapidMessage/interface.ts +0 -31
  86. package/src/modules/stock/chatRapidMessage/route.schema.ts +0 -18
  87. package/src/modules/stock/dashboard/interface.ts +0 -25
  88. package/src/modules/stock/dashboard/route.schema.ts +0 -11
  89. package/src/modules/stock/file/interface.ts +0 -37
  90. package/src/modules/stock/file/route.schema.ts +0 -37
  91. package/src/modules/stock/location/interface.ts +0 -77
  92. package/src/modules/stock/location/route.schema.ts +0 -57
  93. package/src/modules/stock/prison/interface.ts +0 -70
  94. package/src/modules/stock/prison/route.schema.ts +0 -50
  95. package/src/modules/stock/productGoogleSheets/interface.ts +0 -339
  96. package/src/modules/stock/productGoogleSheets/route.schema.ts +0 -146
  97. package/src/modules/stock/productImage/interface.ts +0 -69
  98. package/src/modules/stock/productImage/route.schema.ts +0 -52
  99. package/src/modules/stock/promotion/interface.ts +0 -61
  100. package/src/modules/stock/promotion/route.schema.ts +0 -39
  101. package/src/modules/stock/promotionAssoc/interface.ts +0 -62
  102. package/src/modules/stock/promotionAssoc/route.schema.ts +0 -35
  103. package/src/modules/stock/queryList/interfaces.ts +0 -56
  104. package/src/modules/stock/queryList/route.schema.ts +0 -37
  105. package/src/modules/stock/queryParameter/interfaces.ts +0 -72
  106. package/src/modules/stock/queryParameter/route.schema.ts +0 -36
  107. package/src/modules/stock/recurrentTasks/interface.ts +0 -12
  108. package/src/modules/stock/returnReason/interfaces.ts +0 -23
  109. package/src/modules/stock/returnReason/route.schema.ts +0 -14
  110. package/src/modules/stock/savedEmPicking/interfaces.ts +0 -37
  111. package/src/modules/stock/savedEmPicking/route.schema.ts +0 -113
  112. package/src/modules/stock/savedProviderProposal/interfaces.ts +0 -32
  113. package/src/modules/stock/savedProviderProposal/route.schema.ts +0 -16
  114. package/src/modules/stock/sideMenu/interface.ts +0 -48
  115. package/src/modules/stock/sideMenu/route.schema.ts +0 -20
  116. package/src/modules/stock/stockMovement/interface.ts +0 -78
  117. package/src/modules/stock/stockMovement/route.schema.ts +0 -34
  118. package/src/modules/stock/tag/interface.ts +0 -36
  119. package/src/modules/stock/tag/route.schema.ts +0 -30
  120. package/src/modules/stock/task/interface.ts +0 -126
  121. package/src/modules/stock/task/route.schema.ts +0 -48
  122. package/src/modules/stock/taskMessage/interface.ts +0 -18
  123. package/src/modules/stock/taskMessage/route.schema.ts +0 -19
  124. package/src/modules/stock/taskRead/interface.ts +0 -17
  125. package/src/modules/stock/taskRead/route.schema.ts +0 -18
  126. package/src/modules/stock/typeOfLocation/interface.ts +0 -51
  127. package/src/modules/stock/typeOfLocation/route.schema.ts +0 -29
  128. package/src/modules/stock/unitOfMeasure/interface.ts +0 -64
  129. package/src/modules/stock/unitOfMeasure/route.schema.ts +0 -41
  130. package/src/modules/stock/vatTax/interface.ts +0 -53
  131. package/src/modules/stock/vatTax/route.schema.ts +0 -31
  132. package/src/modules/stock/vatTaxZone/interface.ts +0 -61
  133. package/src/modules/stock/vatTaxZone/route.schema.ts +0 -40
  134. package/src/modules/stock/vatValidation/interfaces.ts +0 -10
  135. package/src/modules/stock/vatValidation/route.schema.ts +0 -8
  136. package/src/modules/stock/workflow/interfaces.ts +0 -64
  137. package/src/modules/stock/workflow/route.schema.ts +0 -28
  138. package/src/modules/supply/batch/interface.ts +0 -0
  139. package/src/modules/supply/clientCurrentAccount/interfaces.ts +0 -152
  140. package/src/modules/supply/clientCurrentAccount/route.schema.ts +0 -66
  141. package/src/modules/supply/counter/interfaces.ts +0 -34
  142. package/src/modules/supply/counter/route.schema.ts +0 -26
  143. package/src/modules/supply/documentHeader/interfaces.ts +0 -443
  144. package/src/modules/supply/documentHeader/route.schema.ts +0 -347
  145. package/src/modules/supply/documentHeaderHistory/interfaces.ts +0 -15
  146. package/src/modules/supply/documentLine/interfaces.ts +0 -210
  147. package/src/modules/supply/documentLine/route.schema.ts +0 -108
  148. package/src/modules/supply/documentLineAssoc/interfaces.ts +0 -52
  149. package/src/modules/supply/documentLineAssoc/route.schema.ts +0 -16
  150. package/src/modules/supply/documentLineMT/interface.ts +0 -27
  151. package/src/modules/supply/documentLineMT/route.schema.ts +0 -18
  152. package/src/modules/supply/documentLineNote/interfaces.ts +0 -53
  153. package/src/modules/supply/documentLineNote/route.schema.ts +0 -19
  154. package/src/modules/supply/documentLineRM/interface.ts +0 -34
  155. package/src/modules/supply/documentLineRM/route.schema.ts +0 -25
  156. package/src/modules/supply/documentSet/interface.ts +0 -35
  157. package/src/modules/supply/documentSet/route.schema.ts +0 -24
  158. package/src/modules/supply/documentType/interfaces.ts +0 -212
  159. package/src/modules/supply/documentType/route.schema.ts +0 -73
  160. package/src/modules/supply/externalDocumentHeader/interface.ts +0 -120
  161. package/src/modules/supply/externalDocumentHeader/route.schema.ts +0 -79
  162. package/src/modules/supply/externalDocumentType/interface.ts +0 -14
  163. package/src/modules/supply/orderManagement/interface.ts +0 -49
  164. package/src/modules/supply/orderManagement/route.schema.ts +0 -0
  165. package/src/modules/supply/payment/interface.ts +0 -229
  166. package/src/modules/supply/payment/route.schema.ts +0 -122
  167. package/src/modules/supply/preSale/interface.ts +0 -92
  168. package/src/modules/supply/preSale/route.schema.ts +0 -75
  169. package/src/modules/supply/preSaleProduct/interface.ts +0 -16
  170. package/src/modules/supply/preSaleProduct/route.schema.ts +0 -7
  171. package/src/modules/supply/providerCurrentAccount/interfaces.ts +0 -19
  172. package/src/modules/supply/providerCurrentAccount/route.schema.ts +0 -14
  173. package/src/modules/supply/schedule/interface.ts +0 -47
  174. package/src/modules/supply/schedule/route.schema.ts +0 -14
  175. package/src/modules/supply/startDocumentHeaderLastUpdate/interface.ts +0 -15
  176. package/src/modules/tickets/channel/interfaces.ts +0 -35
  177. package/src/modules/tickets/channel/route.schema.ts +0 -24
  178. package/src/modules/tickets/clt/interfaces.ts +0 -26
  179. package/src/modules/tickets/clt/route.schema.ts +0 -24
  180. package/src/modules/tickets/language/interfaces.ts +0 -25
  181. package/src/modules/tickets/language/route.schema.ts +0 -28
  182. package/src/modules/tickets/tickets/interfaces.ts +0 -80
  183. package/src/modules/tickets/tickets/route.schema.ts +0 -19
  184. package/src/modules/user/bankData/interface.ts +0 -64
  185. package/src/modules/user/bankData/route.schema.ts +0 -40
  186. package/src/modules/user/chatSubscribers/interfaces.ts +0 -34
  187. package/src/modules/user/chatSubscribers/route.schema.ts +0 -12
  188. package/src/modules/user/clientType/interface.ts +0 -47
  189. package/src/modules/user/clientType/route.schema.ts +0 -31
  190. package/src/modules/user/clients/interface.ts +0 -138
  191. package/src/modules/user/clients/route.schema.ts +0 -87
  192. package/src/modules/user/commissioner/interface.ts +0 -110
  193. package/src/modules/user/commissioner/route.schema.ts +0 -65
  194. package/src/modules/user/country/interface.ts +0 -54
  195. package/src/modules/user/country/route.schema.ts +0 -97
  196. package/src/modules/user/deliveryMethods/interfaces.ts +0 -28
  197. package/src/modules/user/deliveryMethods/route.schema.ts +0 -15
  198. package/src/modules/user/favorites/interfaces.ts +0 -28
  199. package/src/modules/user/favorites/route.schema.ts +0 -19
  200. package/src/modules/user/groupPermissions/interface.ts +0 -32
  201. package/src/modules/user/groupPermissions/route.schema.ts +0 -11
  202. package/src/modules/user/language/interface.ts +0 -47
  203. package/src/modules/user/language/route.schema.ts +0 -28
  204. package/src/modules/user/maturityDates/interfaces.ts +0 -31
  205. package/src/modules/user/maturityDates/route.schema.ts +0 -18
  206. package/src/modules/user/password/interfaces.ts +0 -21
  207. package/src/modules/user/password/route.schema.ts +0 -22
  208. package/src/modules/user/paymentMethods/interfaces.ts +0 -37
  209. package/src/modules/user/paymentMethods/route.schema.ts +0 -23
  210. package/src/modules/user/permissions/interface.ts +0 -34
  211. package/src/modules/user/permissions/route.schema.ts +0 -11
  212. package/src/modules/user/persona/interface.ts +0 -157
  213. package/src/modules/user/persona/route.schema.ts +0 -101
  214. package/src/modules/user/providerType/interface.ts +0 -47
  215. package/src/modules/user/providerType/route.schema.ts +0 -28
  216. package/src/modules/user/providers/interface.ts +0 -130
  217. package/src/modules/user/providers/route.schema.ts +0 -85
  218. package/src/modules/user/purchaseConditions/interface.ts +0 -58
  219. package/src/modules/user/purchaseConditions/route.schema.ts +0 -33
  220. package/src/modules/user/reasonForExemption/interface.ts +0 -53
  221. package/src/modules/user/reasonForExemption/route.schema.ts +0 -34
  222. package/src/modules/user/refreshToken/interface.ts +0 -19
  223. package/src/modules/user/refreshToken/route.schema.ts +0 -10
  224. package/src/modules/user/segmentsArea/interface.ts +0 -49
  225. package/src/modules/user/segmentsArea/route.schema.ts +0 -30
  226. package/src/modules/user/sessions/interface.ts +0 -24
  227. package/src/modules/user/sessions/route.schema.ts +0 -10
  228. package/src/modules/user/shippings/interface.ts +0 -57
  229. package/src/modules/user/shippings/route.schema.ts +0 -35
  230. package/src/modules/user/storeOperator/interface.ts +0 -42
  231. package/src/modules/user/storeOperator/route.schema.ts +0 -45
  232. package/src/modules/user/swift/interface.ts +0 -55
  233. package/src/modules/user/swift/route.schema.ts +0 -36
  234. package/src/modules/user/tenant/interface.ts +0 -59
  235. package/src/modules/user/tenant/route.schema.ts +0 -46
  236. package/src/modules/user/theme/interfaces.ts +0 -21
  237. package/src/modules/user/theme/route.schema.ts +0 -19
  238. package/src/modules/user/userPermissions/interface.ts +0 -28
  239. package/src/modules/user/userPermissions/route.schema.ts +0 -12
  240. package/src/modules/user/userPositions/interface.ts +0 -47
  241. package/src/modules/user/userPositions/route.schema.ts +0 -29
  242. package/src/modules/user/userTokens/interface.ts +0 -41
  243. package/src/modules/user/userTokens/route.schema.ts +0 -17
  244. package/src/modules/user/users/interface.ts +0 -177
  245. package/src/modules/user/users/route.schema.ts +0 -58
  246. package/src/modules/user/vehicles/interfaces.ts +0 -31
  247. package/src/modules/user/vehicles/route.schema.ts +0 -17
  248. package/src/modules/user/zipCode/interfaces.ts +0 -27
  249. package/src/modules/user/zipCode/route.schema.ts +0 -26
  250. package/src/modules/view/adminPanel/interfaces.ts +0 -180
  251. package/src/modules/view/errorLog/interfaces.ts +0 -17
  252. package/src/modules/view/errorLog/route.schema.ts +0 -25
  253. package/src/shared/entities/documentManagement.ts +0 -16
  254. package/src/shared/entities/integration.ts +0 -136
  255. package/src/shared/entities/print.ts +0 -48
  256. package/src/shared/entities/stock.ts +0 -1336
  257. package/src/shared/entities/tickets.ts +0 -82
  258. package/src/shared/entities/user.ts +0 -538
  259. package/src/shared/errors/documentManagementErrors.ts +0 -13
  260. package/src/shared/errors/integrationErrors.ts +0 -44
  261. package/src/shared/errors/stockErrors.ts +0 -267
  262. package/src/shared/errors/userErrors.ts +0 -108
  263. package/src/shared/errors/viewErrors.ts +0 -6
  264. package/src/shared/interface.ts +0 -553
  265. package/src/shared/messages.ts +0 -141
  266. package/tsconfig.json +0 -20
  267. package/tsup.config.ts +0 -10
@@ -1,27 +0,0 @@
1
- import joi from 'joi';
2
- import { messages } from '../../../shared/messages';
3
- import * as IShared from '../../../shared/interface';
4
- import {
5
- ICheckLinesToReturnRequest,
6
- ICheckLinesToReturnLinesRequest,
7
- checkLinesToReturnOptions,
8
- } from './interface';
9
-
10
- // check lines to return
11
- const checkLinesToReturnLinesKeys: IShared.IRouteRequest<ICheckLinesToReturnLinesRequest> = {
12
- document_line_assoc_id: joi.string().uuid().required(),
13
- document_line_id: joi.string().uuid().required(),
14
- };
15
-
16
- const checkLinesToReturnBodyKeys: IShared.IRouteRequest<ICheckLinesToReturnRequest> = {
17
- option: joi
18
- .string()
19
- .valid(...checkLinesToReturnOptions)
20
- .required(),
21
- lines: joi.array().items(joi.object().keys(checkLinesToReturnLinesKeys).required()).required(),
22
- };
23
-
24
- export const checkLinesToReturnBody = joi
25
- .object()
26
- .keys(checkLinesToReturnBodyKeys)
27
- .messages(messages);
@@ -1,31 +0,0 @@
1
- import * as IShared from '../../../shared/interface';
2
-
3
- export const Route = 'transformado';
4
- export const UpperName = 'Transformado';
5
- export const LowerName = UpperName[0].toLowerCase() + UpperName.substring(1);
6
-
7
- export interface IProducts {
8
- id: string;
9
- quantity: number;
10
- }
11
-
12
- export interface ITransformar {
13
- product_id: string;
14
- quantity: number;
15
- price_sale: number;
16
- price_cost: number;
17
- out_products: IProducts[];
18
- }
19
-
20
- export interface IDestransformar {
21
- product_id: string;
22
- quantity: number;
23
- in_products: IProducts[];
24
- }
25
-
26
- export interface IRepository {
27
- transformar(data: ITransformar): Promise<string>;
28
- destransformar(data: IDestransformar): Promise<string>;
29
- }
30
-
31
- export type IController = IShared.IEntityWithUserToken<IRepository>;
@@ -1,26 +0,0 @@
1
- import joi from 'joi';
2
-
3
- import * as IShared from '../../../shared/interface';
4
- import { messages } from '../../../shared/messages';
5
- import { IProducts, ITransformar, IDestransformar } from './interfaces';
6
-
7
- const productsKeys: IShared.IRouteRequestWithStamps<IProducts> = {
8
- id: joi.string().uuid().required().invalid(joi.ref('/product_id')),
9
- quantity: joi.number().positive().required(),
10
- };
11
-
12
- const transformarKeys: IShared.IRouteRequestWithStamps<ITransformar> = {
13
- product_id: joi.string().uuid().required(),
14
- quantity: joi.number().positive().required(),
15
- price_cost: joi.number().positive().allow(0).required(),
16
- price_sale: joi.number().positive().allow(0).required(),
17
- out_products: joi.array().items(joi.object().keys(productsKeys)).min(1),
18
- };
19
- export const transformarBody = joi.object().keys(transformarKeys).messages(messages);
20
-
21
- const destransformarKeys: IShared.IRouteRequestWithStamps<IDestransformar> = {
22
- product_id: joi.string().uuid().required(),
23
- quantity: joi.number().positive().required(),
24
- in_products: joi.array().items(joi.object().keys(productsKeys)).min(1),
25
- };
26
- export const destransformarBody = joi.object().keys(destransformarKeys).messages(messages);
@@ -1,17 +0,0 @@
1
- import * as IShared from '../../../shared/interface';
2
-
3
- export const Route = 'upfrontReturn';
4
- export const UpperName = 'UpfrontReturn';
5
- export const LowerName = UpperName[0].toLowerCase() + UpperName.substring(1);
6
-
7
- export interface ICreateRequest {
8
- current_account: boolean;
9
- }
10
-
11
- export interface IRepository {
12
- create(id: IShared.IFindByIdRequest, body: ICreateRequest): Promise<void>;
13
- }
14
-
15
- export type IController = IShared.IEntityWithUserToken<IRepository>;
16
-
17
- export type IApi = IRepository;
@@ -1,11 +0,0 @@
1
- import joi from 'joi';
2
-
3
- import * as IShared from '../../../shared/interface';
4
- import { messages } from '../../../shared/messages';
5
- import { ICreateRequest } from './interfaces';
6
-
7
- const createBodyKeys: IShared.IRouteRequestWithStamps<ICreateRequest> = {
8
- current_account: joi.boolean().required(),
9
- };
10
-
11
- export const createBody = joi.object().keys(createBodyKeys).messages(messages);
@@ -1,22 +0,0 @@
1
- import { Multimedia } from '../../../shared/entities/documentManagement';
2
-
3
- export type Entity = Multimedia;
4
- export const Route = 'multimedia';
5
- export const UpperName = 'Multimedia';
6
- export const LowerName = UpperName[0].toLowerCase() + UpperName.substring(1);
7
-
8
- export interface IFindByIdRequest {
9
- download?: boolean;
10
- }
11
-
12
- export interface IRepository {
13
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
14
- create(multipartFormData: any, headers?: any): Promise<Entity>;
15
- findById(multimedia_id: string): Promise<Entity | null>;
16
- }
17
-
18
- export interface IController extends Omit<IRepository, 'findById'> {
19
- findById(multimedia_id: string, params: IFindByIdRequest): Promise<void>;
20
- }
21
-
22
- export type IApi = Omit<IRepository, 'findById'>;
@@ -1,9 +0,0 @@
1
- import joi from 'joi';
2
- import { IFindByIdRequest } from './interfaces';
3
- import * as IShared from '../../../shared/interface';
4
- import { messages } from '../../../shared/messages';
5
-
6
- const findByIdQueryKeys: IShared.IRouteRequest<IFindByIdRequest> = {
7
- download: joi.boolean().optional(),
8
- };
9
- export const findByIdQuery = joi.object().keys(findByIdQueryKeys).messages(messages);
@@ -1,111 +0,0 @@
1
- import * as IShared from '../../../shared/interface';
2
- import { EmailLog } from '../../../shared/entities/integration';
3
-
4
- export type Entity = EmailLog;
5
- export const Route = 'email_log';
6
- export const UpperName = 'EmailLog';
7
- export const LowerName = UpperName[0].toLowerCase() + UpperName.substring(1);
8
-
9
- export interface IFindRequest {
10
- date_start: Date;
11
- date_end: Date;
12
- }
13
-
14
- export interface IFindResponse {
15
- id: string;
16
- template: string;
17
- created_at: Date;
18
- to: string;
19
- subject: string;
20
- sent: boolean;
21
- retried: boolean;
22
- error: string | null;
23
- }
24
-
25
- export interface IEmailAddress {
26
- name: string;
27
- address: string;
28
- }
29
-
30
- export interface IEmailAttachment {
31
- path: string;
32
- filename: string;
33
- }
34
-
35
- export const SendGridCallbackEventEnum: {
36
- open: 'open';
37
- delivered: 'delivered';
38
- click: 'click';
39
- processed: 'processed';
40
- dropped: 'dropped';
41
- deferred: 'deferred';
42
- bounce: 'bounce';
43
- } = {
44
- open: 'open',
45
- delivered: 'delivered',
46
- click: 'click',
47
- processed: 'processed',
48
- dropped: 'dropped',
49
- deferred: 'deferred',
50
- bounce: 'bounce',
51
- };
52
-
53
- export type ISendGridCallbackEvent =
54
- (typeof SendGridCallbackEventEnum)[keyof typeof SendGridCallbackEventEnum];
55
-
56
- export const sendGridCallbackEvents = Object.keys(SendGridCallbackEventEnum);
57
-
58
- export interface ISendGridCallbacks {
59
- email: string;
60
- event: ISendGridCallbackEvent;
61
- event_time: Date;
62
- ip: string | null;
63
- useragent: string | null;
64
- // event dependent
65
- reason: string | null;
66
- type: string | null;
67
- status: string | null;
68
- bounce_classification: string | null;
69
- response: string | null;
70
- url: string | null;
71
- attempt: number | null;
72
- }
73
-
74
- export interface IFindByIdResponse {
75
- id: string;
76
- owner_id: string | null;
77
- chat_id: string | null;
78
- template: string;
79
- created_at: Date;
80
-
81
- sent: boolean;
82
- retried: boolean;
83
- accepted: string[];
84
- rejected: string[];
85
-
86
- from: IEmailAddress;
87
- to: IEmailAddress[];
88
- cc: IEmailAddress[];
89
- bcc: IEmailAddress[];
90
- subject: string;
91
- html: string;
92
- attachments: IEmailAttachment[];
93
-
94
- error: string | null;
95
-
96
- callbacks: ISendGridCallbacks[];
97
- }
98
-
99
- export interface ICheckSent {
100
- document_header_ids: string[];
101
- }
102
- export interface ICheckSentResponse {
103
- [document_header_id: string]: string | null;
104
- }
105
- export interface IRepository {
106
- find(params: IFindRequest): Promise<IFindResponse[]>;
107
- findById(selector: IShared.IFindByIdRequest): Promise<IFindByIdResponse>;
108
- checkSent(data: ICheckSent): Promise<ICheckSentResponse>;
109
- }
110
-
111
- export type IApi = IRepository;
@@ -1,18 +0,0 @@
1
- import joi from 'joi';
2
- import { messages } from '../../../shared/messages';
3
- import { IFindRequest, ICheckSent } from './interfaces';
4
-
5
- export const findQuery = joi
6
- .object<IFindRequest>()
7
- .keys({
8
- date_start: joi.date().required(),
9
- date_end: joi.date().required(),
10
- })
11
- .messages(messages);
12
-
13
- export const checkSentBody = joi
14
- .object<ICheckSent>()
15
- .keys({
16
- document_header_ids: joi.array().items(joi.string().uuid().required()).required(),
17
- })
18
- .messages(messages);
@@ -1,55 +0,0 @@
1
- import * as IShared from '../../../shared/interface';
2
- import { EmailTemplate, EmailTemplateAttachment } from '../../../shared/entities/integration';
3
- import { IEmailAddress, IEmailAttachment } from '../emailLog/interfaces';
4
-
5
- export type Entity = EmailTemplate;
6
- export const Route = 'email_template';
7
- export const UpperName = 'EmailTemplate';
8
- export const LowerName = UpperName[0].toLowerCase() + UpperName.substring(1);
9
-
10
- export interface IEntityExtended extends Entity {
11
- attachments: EmailTemplateAttachment[];
12
- }
13
-
14
- export interface ICreateAttachments {
15
- multimedia_id: string;
16
- name: string;
17
- }
18
-
19
- export interface ICreateRequest {
20
- name: string;
21
- to: string;
22
- subject: string;
23
- body: string;
24
- attachments: ICreateAttachments[];
25
- }
26
-
27
- export interface IUpdateRequest {
28
- name?: string;
29
- to?: string;
30
- subject?: string;
31
- body?: string;
32
- }
33
-
34
- export interface ISendRequest {
35
- owner_id: string | null;
36
- from: IEmailAddress;
37
- to: IEmailAddress[];
38
- cc: IEmailAddress[];
39
- bcc: IEmailAddress[];
40
- subject: string;
41
- html: string;
42
- attachments: IEmailAttachment[];
43
- }
44
-
45
- export interface IRepository {
46
- find(): Promise<IEntityExtended[]>;
47
- create(data: ICreateRequest): Promise<string>;
48
- update(selector: IShared.IFindByIdRequest, data: IUpdateRequest): Promise<void>;
49
- deleteOne(selector: IShared.IFindByIdRequest): Promise<void>;
50
- send(data: ISendRequest): Promise<void>;
51
- }
52
-
53
- export type IController = IShared.IEntityWithUserToken<IRepository>;
54
-
55
- export type IApi = IRepository;
@@ -1,95 +0,0 @@
1
- import joi from 'joi';
2
- import { messages } from '../../../shared/messages';
3
- import { ICreateRequest, IUpdateRequest, ISendRequest, ICreateAttachments } from './interfaces';
4
- import * as IShared from '../../../shared/interface';
5
- import { IEmailAddress, IEmailAttachment } from '../emailLog/interfaces';
6
-
7
- const createBodyKeys: IShared.IRouteRequest<ICreateRequest> = {
8
- name: joi.string().required(),
9
- to: joi.string().required(),
10
- subject: joi.string().required(),
11
- body: joi.string().required(),
12
- attachments: joi
13
- .array()
14
- .items(
15
- joi.object<ICreateAttachments>().keys({
16
- multimedia_id: joi.string().uuid().required(),
17
- name: joi.string().required(),
18
- }),
19
- )
20
- .required(),
21
- };
22
-
23
- export const createBody = joi.object().keys(createBodyKeys).messages(messages);
24
-
25
- const updateBodyKeys: IShared.IRouteRequest<IUpdateRequest> = {
26
- name: joi.string().optional(),
27
- to: joi.string().optional(),
28
- subject: joi.string().optional(),
29
- body: joi.string().optional(),
30
- };
31
-
32
- export const updateBody = joi.object().keys(updateBodyKeys).messages(messages);
33
-
34
- const sendBodyKeys: IShared.IRouteRequest<ISendRequest> = {
35
- owner_id: joi.string().uuid().allow(null).required(),
36
- from: joi
37
- .object<IEmailAddress>()
38
- .keys({
39
- name: joi.string().allow('', null).default('').required(),
40
- address: joi
41
- .string()
42
- .email({ tlds: { allow: false } })
43
- .required(),
44
- })
45
- .required(),
46
- to: joi
47
- .array()
48
- .items(
49
- joi.object<IEmailAddress>().keys({
50
- name: joi.string().allow('', null).default('').required(),
51
- address: joi
52
- .string()
53
- .email({ tlds: { allow: false } })
54
- .required(),
55
- }),
56
- )
57
- .required(),
58
- cc: joi
59
- .array()
60
- .items(
61
- joi.object<IEmailAddress>().keys({
62
- name: joi.string().allow('', null).default('').required(),
63
- address: joi
64
- .string()
65
- .email({ tlds: { allow: false } })
66
- .required(),
67
- }),
68
- )
69
- .required(),
70
- bcc: joi
71
- .array()
72
- .items(
73
- joi.object<IEmailAddress>().keys({
74
- name: joi.string().allow('', null).default('').required(),
75
- address: joi
76
- .string()
77
- .email({ tlds: { allow: false } })
78
- .required(),
79
- }),
80
- )
81
- .required(),
82
- subject: joi.string().required(),
83
- html: joi.string().required(),
84
- attachments: joi
85
- .array()
86
- .items(
87
- joi.object<IEmailAttachment>().keys({
88
- filename: joi.string().required(),
89
- path: joi.string().required(),
90
- }),
91
- )
92
- .required(),
93
- };
94
-
95
- export const sendBody = joi.object().keys(sendBodyKeys).messages(messages);
@@ -1,22 +0,0 @@
1
- import * as IShared from '../../../shared/interface';
2
- import { EmailTemplateAttachment } from '../../../shared/entities/integration';
3
-
4
- export type Entity = EmailTemplateAttachment;
5
- export const Route = 'email_template_attachment';
6
- export const UpperName = 'EmailTemplateAttachment';
7
- export const LowerName = UpperName[0].toLowerCase() + UpperName.substring(1);
8
-
9
- export interface ICreateRequest {
10
- email_template_id: string;
11
- multimedia_id: string;
12
- name: string;
13
- }
14
-
15
- export interface IRepository {
16
- create(data: ICreateRequest): Promise<string>;
17
- deleteOne(selector: IShared.IFindByIdRequest): Promise<void>;
18
- }
19
-
20
- export type IController = IShared.IEntityWithUserToken<IRepository>;
21
-
22
- export type IApi = IRepository;
@@ -1,12 +0,0 @@
1
- import joi from 'joi';
2
- import { messages } from '../../../shared/messages';
3
- import { ICreateRequest } from './interfaces';
4
- import * as IShared from '../../../shared/interface';
5
-
6
- const createBodyKeys: IShared.IRouteRequest<ICreateRequest> = {
7
- email_template_id: joi.string().uuid().required(),
8
- multimedia_id: joi.string().uuid().required(),
9
- name: joi.string().required(),
10
- };
11
-
12
- export const createBody = joi.object().keys(createBodyKeys).messages(messages);
@@ -1,30 +0,0 @@
1
- import { EmailVerification } from '../../../shared/entities/integration';
2
- import * as IShared from '../../../shared/interface';
3
-
4
- export type Entity = EmailVerification;
5
- export const Route = 'email_verification';
6
- export const UpperName = 'EmailVerification';
7
- export const LowerName = UpperName[0].toLowerCase() + UpperName.substring(1);
8
-
9
- export interface IIsVerifiedRequest {
10
- email: string;
11
- }
12
-
13
- export interface ISendVerificationRequest {
14
- email: string;
15
- }
16
-
17
- export interface IMarkAsVerifiedRequest {
18
- email: string;
19
- token: string;
20
- }
21
-
22
- export interface IRepository {
23
- isVerified(selector: IIsVerifiedRequest): Promise<boolean>;
24
- sendVerificationEmail(data: ISendVerificationRequest): Promise<void>;
25
- markAsVerified(data: IMarkAsVerifiedRequest): Promise<void>;
26
- }
27
-
28
- export type IController = IShared.IEntityWithUserToken<IRepository>;
29
-
30
- export type IApi = IRepository;
@@ -1,34 +0,0 @@
1
- import joi from 'joi';
2
- import { messages } from '../../../shared/messages';
3
- import { IIsVerifiedRequest, ISendVerificationRequest, IMarkAsVerifiedRequest } from './interfaces';
4
-
5
- export const isVerifiedQuery = joi
6
- .object<IIsVerifiedRequest>()
7
- .keys({
8
- email: joi
9
- .string()
10
- .email({ tlds: { allow: false } })
11
- .required(),
12
- })
13
- .messages(messages);
14
-
15
- export const sendVerificationBody = joi
16
- .object<ISendVerificationRequest>()
17
- .keys({
18
- email: joi
19
- .string()
20
- .email({ tlds: { allow: false } })
21
- .required(),
22
- })
23
- .messages(messages);
24
-
25
- export const markAsVerifiedBody = joi
26
- .object<IMarkAsVerifiedRequest>()
27
- .keys({
28
- email: joi
29
- .string()
30
- .email({ tlds: { allow: false } })
31
- .required(),
32
- token: joi.string().uuid().required(),
33
- })
34
- .messages(messages);
@@ -1,32 +0,0 @@
1
- import * as IShared from '../../../shared/interface';
2
- import { GoogleFilePermission } from '../../../shared/entities/integration';
3
-
4
- export type Entity = GoogleFilePermission;
5
- export const Route = 'google_file_permission';
6
- export const UpperName = 'GoogleFilePermission';
7
- export const LowerName = UpperName[0].toLowerCase() + UpperName.substring(1);
8
-
9
- export type IFindRequest = Record<string, unknown>;
10
-
11
- export interface ICreateRequest {
12
- file_id: string;
13
- email: string;
14
- }
15
-
16
- export interface ICreateRequestRepository extends ICreateRequest {
17
- permission_id: string;
18
- }
19
-
20
- export interface IController {
21
- create(data: ICreateRequest): Promise<Entity>;
22
- findById(shared: IShared.IFindByIdRequest): Promise<Entity | null>;
23
- find(): Promise<Entity[]>;
24
- deleteOne(selector: IShared.IFindByIdRequest): Promise<Entity | null>;
25
- }
26
-
27
- export interface IRepository {
28
- create(data: ICreateRequestRepository): Promise<Entity>;
29
- findById(shared: IShared.IFindByIdRequest): Promise<Entity | null>;
30
- find(): Promise<Entity[]>;
31
- deleteOne(selector: IShared.IFindByIdRequest): Promise<Entity | null>;
32
- }
@@ -1,15 +0,0 @@
1
- import joi from 'joi';
2
- import { messages } from '../../../shared/messages';
3
- import { ICreateRequest } from './interfaces';
4
-
5
- import * as IShared from '../../../shared/interface';
6
-
7
- export const createBodyKeys: IShared.IRouteRequest<ICreateRequest> = {
8
- email: joi
9
- .string()
10
- .email({ tlds: { allow: false } })
11
- .required(),
12
- file_id: joi.string().required(),
13
- };
14
-
15
- export const createBody = joi.object().keys(createBodyKeys).messages(messages);
@@ -1,98 +0,0 @@
1
- import { DocumentHeader } from '../../../shared/entities/stock';
2
- import { Persona } from '../../../shared/entities/user';
3
- import * as IShared from '../../../shared/interface';
4
-
5
- export const Route = 'google';
6
- export const UpperName = 'Google';
7
- export const LowerName = UpperName[0].toLowerCase() + UpperName.substring(1);
8
-
9
- export interface IGetUserData
10
- extends Pick<
11
- DocumentHeader,
12
- | 'document_number'
13
- | 'owner_number'
14
- | 'billing_persona_nif'
15
- | 'billing_persona_name'
16
- | 'billing_persona_email'
17
- | 'billing_persona_telephone'
18
- | 'billing_persona_address_street'
19
- | 'billing_persona_address_locality'
20
- | 'billing_persona_address_postal_code'
21
- | 'billing_persona_address_country_name'
22
- | 'delivery_persona_name'
23
- | 'delivery_persona_email'
24
- | 'delivery_persona_telephone'
25
- | 'delivery_persona_address_street'
26
- | 'delivery_persona_address_locality'
27
- | 'delivery_persona_address_postal_code'
28
- | 'delivery_persona_address_country_name'
29
- > {
30
- emission_date: string;
31
- store_operator_id: string | null;
32
- store_operator_name: string | null;
33
- store_operator_number: number | null;
34
- reason_for_exemption_name: string | null;
35
- contact_persona_name: Persona['name'];
36
- contact_persona_email: Persona['email'];
37
- contact_persona_telephone: Persona['telephone'];
38
- }
39
-
40
- export interface IUpdateRequest {
41
- document_name: string;
42
- client_data?: IGetUserData;
43
- }
44
- export interface ICloneRequest {
45
- document_name: string;
46
- }
47
-
48
- export interface ICloneResponse {
49
- spreadsheetId: string;
50
- }
51
-
52
- export type IGetProductGroup =
53
- | 'cortinado'
54
- | 'tapete'
55
- | 'estore'
56
- | 'estofo'
57
- | 'almofada'
58
- | 'outros'
59
- | 'calhas&varões'
60
- | 'papel'
61
- | 'varoes'
62
- | 'terceiros';
63
-
64
- export type IGetProductType =
65
- | 'confecção'
66
- | 'calha'
67
- | 'tecido 1'
68
- | 'tecido 2'
69
- | 'varoes'
70
- | 'livre'
71
- | 'papel';
72
-
73
- export interface IGetProduct {
74
- index: number; // line index in sheet's config tab
75
- group: IGetProductGroup;
76
- type: IGetProductType;
77
- quantity: number;
78
- reference: string;
79
- designation: string;
80
- discount: number;
81
- price_sale: number;
82
- price_cost: number;
83
- }
84
- export interface IGetDataResponse {
85
- products: IGetProduct[];
86
- }
87
-
88
- export interface IExportRequest {
89
- spreadsheetId: string;
90
- document_header_id: string;
91
- }
92
-
93
- export interface IController {
94
- clone(params: IShared.IFindByIdRequest, data?: ICloneRequest): Promise<ICloneResponse>;
95
- export(params: IExportRequest): Promise<string>;
96
- getData(params: IShared.IFindByIdRequest): Promise<IGetDataResponse>;
97
- update(params: IShared.IFindByIdRequest, data: IUpdateRequest): Promise<void>;
98
- }