@limetech/n8n-nodes-lime 0.5.0 → 2.3.1-dev.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 (303) hide show
  1. package/.github/workflows/lint.yml +3 -1
  2. package/.github/workflows/release.yml +2 -49
  3. package/.github/workflows/test-and-build.yml +1 -1
  4. package/.releaserc.json +2 -1
  5. package/CHANGELOG.md +122 -0
  6. package/README.md +1 -1
  7. package/credentials/LimeCrmApi.credentials.ts +38 -1
  8. package/credentials/index.ts +2 -0
  9. package/eslint.config.mjs +2 -1
  10. package/knip.json +9 -0
  11. package/nodes/fortnox/index.ts +6 -0
  12. package/nodes/fortnox/resources/customers/index.ts +18 -22
  13. package/nodes/fortnox/resources/customers/operations/create.operation.ts +12 -8
  14. package/nodes/fortnox/resources/customers/operations/delete.operation.ts +10 -15
  15. package/nodes/fortnox/resources/customers/operations/get.operation.ts +10 -15
  16. package/nodes/fortnox/resources/customers/operations/getAll.operation.ts +1 -2
  17. package/nodes/fortnox/resources/customers/operations/index.ts +5 -0
  18. package/nodes/fortnox/resources/customers/operations/update.operation.ts +30 -30
  19. package/nodes/fortnox/resources/invoice/index.ts +16 -18
  20. package/nodes/fortnox/resources/invoice/model.ts +0 -4
  21. package/nodes/fortnox/resources/invoice/operations/create.operation.ts +1 -2
  22. package/nodes/fortnox/resources/invoice/operations/get.operation.ts +10 -15
  23. package/nodes/fortnox/resources/invoice/operations/getAll.operation.ts +1 -2
  24. package/nodes/fortnox/resources/invoice/operations/index.ts +4 -0
  25. package/nodes/fortnox/resources/invoice/operations/update.operation.ts +11 -16
  26. package/nodes/fortnox/transport/index.ts +14 -11
  27. package/nodes/index.ts +4 -0
  28. package/nodes/lime-crm/LimeCrmNode.node.ts +81 -11
  29. package/nodes/lime-crm/LimeCrmTrigger.node.ts +70 -30
  30. package/nodes/lime-crm/index.ts +9 -0
  31. package/nodes/lime-crm/methods/getLimetypeProperties.ts +51 -8
  32. package/nodes/lime-crm/methods/getLimetypes.ts +14 -9
  33. package/nodes/lime-crm/methods/index.ts +1 -1
  34. package/nodes/lime-crm/models/constants.ts +73 -0
  35. package/nodes/lime-crm/models/index.ts +21 -0
  36. package/nodes/lime-crm/models/limeobject.ts +13 -0
  37. package/nodes/lime-crm/models/limetype.ts +47 -0
  38. package/nodes/lime-crm/models/propertyTypes.ts +13 -0
  39. package/nodes/lime-crm/models/users.ts +46 -0
  40. package/nodes/lime-crm/models/webhook.ts +61 -0
  41. package/nodes/lime-crm/resources/admin/index.ts +89 -0
  42. package/nodes/lime-crm/resources/admin/operations/getManyUsers.operation.ts +166 -0
  43. package/nodes/lime-crm/resources/admin/operations/getSingleUser.operation.ts +113 -0
  44. package/nodes/lime-crm/resources/admin/operations/index.ts +8 -0
  45. package/nodes/lime-crm/resources/data/index.ts +68 -31
  46. package/nodes/lime-crm/resources/data/operations/{createSingleObject.ts → createSingleObject.operation.ts} +82 -26
  47. package/nodes/lime-crm/resources/data/operations/{deleteSingleObject.ts → deleteSingleObject.operation.ts} +32 -4
  48. package/nodes/lime-crm/resources/data/operations/{getManyObjects.ts → getManyObjects.operation.ts} +191 -48
  49. package/nodes/lime-crm/resources/data/operations/{getSingleFile.ts → getSingleFile.operation.ts} +36 -12
  50. package/nodes/lime-crm/resources/data/operations/{getSingleObject.ts → getSingleObject.operation.ts} +39 -6
  51. package/nodes/lime-crm/resources/data/operations/index.ts +24 -0
  52. package/nodes/lime-crm/resources/data/operations/updateSingleObject.operation.ts +55 -17
  53. package/nodes/lime-crm/resources/metadata/index.ts +56 -16
  54. package/nodes/lime-crm/resources/metadata/operations/getAllLimetypes.operation.ts +15 -5
  55. package/nodes/lime-crm/resources/metadata/operations/{getSingleFileMetadata.ts → getSingleFileMetadata.operation.ts} +31 -14
  56. package/nodes/lime-crm/resources/metadata/operations/{getSingleLimetype.ts → getSingleLimetype.operation.ts} +23 -1
  57. package/nodes/lime-crm/resources/metadata/operations/index.ts +12 -0
  58. package/nodes/lime-crm/transport/commons.ts +86 -28
  59. package/nodes/lime-crm/transport/files.ts +149 -84
  60. package/nodes/lime-crm/transport/index.ts +35 -17
  61. package/nodes/lime-crm/transport/limeQuery.ts +42 -6
  62. package/nodes/lime-crm/transport/limeobjects.ts +102 -179
  63. package/nodes/lime-crm/transport/limetypes.ts +126 -70
  64. package/nodes/lime-crm/transport/users.ts +264 -0
  65. package/nodes/lime-crm/transport/webhooks.ts +96 -37
  66. package/nodes/lime-crm/{commons → utils}/files.ts +75 -39
  67. package/nodes/lime-crm/utils/hmac.ts +35 -0
  68. package/nodes/lime-crm/utils/index.ts +10 -0
  69. package/nodes/lime-crm/utils/propertyAdapters.ts +75 -0
  70. package/nodes/lime-crm/utils/webhook.ts +81 -0
  71. package/nodes/modules.ts +44 -0
  72. package/nodes/response.ts +16 -0
  73. package/package.json +18 -27
  74. package/tests/nodes/lime-crm/utils.spec.ts +238 -0
  75. package/typedoc.css +9 -0
  76. package/typedoc.json +19 -0
  77. package/.dockerignore +0 -1
  78. package/Dockerfile +0 -21
  79. package/dist/credentials/FortnoxApi.credentials.d.ts +0 -9
  80. package/dist/credentials/FortnoxApi.credentials.js +0 -57
  81. package/dist/credentials/FortnoxApi.credentials.js.map +0 -1
  82. package/dist/credentials/LimeCrmApi.credentials.d.ts +0 -9
  83. package/dist/credentials/LimeCrmApi.credentials.js +0 -66
  84. package/dist/credentials/LimeCrmApi.credentials.js.map +0 -1
  85. package/dist/nodes/fortnox/Fortnox.node.d.ts +0 -5
  86. package/dist/nodes/fortnox/Fortnox.node.js +0 -95
  87. package/dist/nodes/fortnox/Fortnox.node.js.map +0 -1
  88. package/dist/nodes/fortnox/Fortnox.node.json +0 -18
  89. package/dist/nodes/fortnox/FortnoxTrigger.node.d.ts +0 -5
  90. package/dist/nodes/fortnox/FortnoxTrigger.node.js +0 -155
  91. package/dist/nodes/fortnox/FortnoxTrigger.node.js.map +0 -1
  92. package/dist/nodes/fortnox/FortnoxTrigger.node.json +0 -18
  93. package/dist/nodes/fortnox/commons.d.ts +0 -25
  94. package/dist/nodes/fortnox/commons.js +0 -44
  95. package/dist/nodes/fortnox/commons.js.map +0 -1
  96. package/dist/nodes/fortnox/fortnoxLogo.svg +0 -15
  97. package/dist/nodes/fortnox/model.d.ts +0 -20
  98. package/dist/nodes/fortnox/model.js +0 -3
  99. package/dist/nodes/fortnox/model.js.map +0 -1
  100. package/dist/nodes/fortnox/resources/customers/filterParameters.d.ts +0 -2
  101. package/dist/nodes/fortnox/resources/customers/filterParameters.js +0 -31
  102. package/dist/nodes/fortnox/resources/customers/filterParameters.js.map +0 -1
  103. package/dist/nodes/fortnox/resources/customers/index.d.ts +0 -20
  104. package/dist/nodes/fortnox/resources/customers/index.js +0 -87
  105. package/dist/nodes/fortnox/resources/customers/index.js.map +0 -1
  106. package/dist/nodes/fortnox/resources/customers/model.d.ts +0 -99
  107. package/dist/nodes/fortnox/resources/customers/model.js +0 -3
  108. package/dist/nodes/fortnox/resources/customers/model.js.map +0 -1
  109. package/dist/nodes/fortnox/resources/customers/operations/create.operation.d.ts +0 -12
  110. package/dist/nodes/fortnox/resources/customers/operations/create.operation.js +0 -283
  111. package/dist/nodes/fortnox/resources/customers/operations/create.operation.js.map +0 -1
  112. package/dist/nodes/fortnox/resources/customers/operations/delete.operation.d.ts +0 -10
  113. package/dist/nodes/fortnox/resources/customers/operations/delete.operation.js +0 -45
  114. package/dist/nodes/fortnox/resources/customers/operations/delete.operation.js.map +0 -1
  115. package/dist/nodes/fortnox/resources/customers/operations/get.operation.d.ts +0 -11
  116. package/dist/nodes/fortnox/resources/customers/operations/get.operation.js +0 -45
  117. package/dist/nodes/fortnox/resources/customers/operations/get.operation.js.map +0 -1
  118. package/dist/nodes/fortnox/resources/customers/operations/getAll.operation.d.ts +0 -11
  119. package/dist/nodes/fortnox/resources/customers/operations/getAll.operation.js +0 -68
  120. package/dist/nodes/fortnox/resources/customers/operations/getAll.operation.js.map +0 -1
  121. package/dist/nodes/fortnox/resources/customers/operations/update.operation.d.ts +0 -12
  122. package/dist/nodes/fortnox/resources/customers/operations/update.operation.js +0 -276
  123. package/dist/nodes/fortnox/resources/customers/operations/update.operation.js.map +0 -1
  124. package/dist/nodes/fortnox/resources/customers/sortParameters.d.ts +0 -2
  125. package/dist/nodes/fortnox/resources/customers/sortParameters.js +0 -30
  126. package/dist/nodes/fortnox/resources/customers/sortParameters.js.map +0 -1
  127. package/dist/nodes/fortnox/resources/invoice/filterParameters.d.ts +0 -2
  128. package/dist/nodes/fortnox/resources/invoice/filterParameters.js +0 -72
  129. package/dist/nodes/fortnox/resources/invoice/filterParameters.js.map +0 -1
  130. package/dist/nodes/fortnox/resources/invoice/index.d.ts +0 -20
  131. package/dist/nodes/fortnox/resources/invoice/index.js +0 -81
  132. package/dist/nodes/fortnox/resources/invoice/index.js.map +0 -1
  133. package/dist/nodes/fortnox/resources/invoice/invoiceParameters.d.ts +0 -2
  134. package/dist/nodes/fortnox/resources/invoice/invoiceParameters.js +0 -193
  135. package/dist/nodes/fortnox/resources/invoice/invoiceParameters.js.map +0 -1
  136. package/dist/nodes/fortnox/resources/invoice/model.d.ts +0 -150
  137. package/dist/nodes/fortnox/resources/invoice/model.js +0 -3
  138. package/dist/nodes/fortnox/resources/invoice/model.js.map +0 -1
  139. package/dist/nodes/fortnox/resources/invoice/operations/create.operation.d.ts +0 -11
  140. package/dist/nodes/fortnox/resources/invoice/operations/create.operation.js +0 -64
  141. package/dist/nodes/fortnox/resources/invoice/operations/create.operation.js.map +0 -1
  142. package/dist/nodes/fortnox/resources/invoice/operations/get.operation.d.ts +0 -11
  143. package/dist/nodes/fortnox/resources/invoice/operations/get.operation.js +0 -44
  144. package/dist/nodes/fortnox/resources/invoice/operations/get.operation.js.map +0 -1
  145. package/dist/nodes/fortnox/resources/invoice/operations/getAll.operation.d.ts +0 -11
  146. package/dist/nodes/fortnox/resources/invoice/operations/getAll.operation.js +0 -92
  147. package/dist/nodes/fortnox/resources/invoice/operations/getAll.operation.js.map +0 -1
  148. package/dist/nodes/fortnox/resources/invoice/operations/update.operation.d.ts +0 -11
  149. package/dist/nodes/fortnox/resources/invoice/operations/update.operation.js +0 -71
  150. package/dist/nodes/fortnox/resources/invoice/operations/update.operation.js.map +0 -1
  151. package/dist/nodes/fortnox/transport/errorCodes.d.ts +0 -1
  152. package/dist/nodes/fortnox/transport/errorCodes.js +0 -50
  153. package/dist/nodes/fortnox/transport/errorCodes.js.map +0 -1
  154. package/dist/nodes/fortnox/transport/index.d.ts +0 -4
  155. package/dist/nodes/fortnox/transport/index.js +0 -77
  156. package/dist/nodes/fortnox/transport/index.js.map +0 -1
  157. package/dist/nodes/lime-crm/LimeCrm.node.json +0 -18
  158. package/dist/nodes/lime-crm/LimeCrmNode.node.d.ts +0 -14
  159. package/dist/nodes/lime-crm/LimeCrmNode.node.js +0 -126
  160. package/dist/nodes/lime-crm/LimeCrmNode.node.js.map +0 -1
  161. package/dist/nodes/lime-crm/LimeCrmTrigger.node.d.ts +0 -18
  162. package/dist/nodes/lime-crm/LimeCrmTrigger.node.js +0 -215
  163. package/dist/nodes/lime-crm/LimeCrmTrigger.node.js.map +0 -1
  164. package/dist/nodes/lime-crm/assets/lime-crm.svg +0 -1
  165. package/dist/nodes/lime-crm/commons/constants.d.ts +0 -5
  166. package/dist/nodes/lime-crm/commons/constants.js +0 -9
  167. package/dist/nodes/lime-crm/commons/constants.js.map +0 -1
  168. package/dist/nodes/lime-crm/commons/hmac.d.ts +0 -1
  169. package/dist/nodes/lime-crm/commons/hmac.js +0 -11
  170. package/dist/nodes/lime-crm/commons/hmac.js.map +0 -1
  171. package/dist/nodes/lime-crm/commons/index.d.ts +0 -3
  172. package/dist/nodes/lime-crm/commons/index.js +0 -12
  173. package/dist/nodes/lime-crm/commons/index.js.map +0 -1
  174. package/dist/nodes/lime-crm/commons/limetype.d.ts +0 -10
  175. package/dist/nodes/lime-crm/commons/limetype.js +0 -3
  176. package/dist/nodes/lime-crm/commons/limetype.js.map +0 -1
  177. package/dist/nodes/lime-crm/commons/task.d.ts +0 -14
  178. package/dist/nodes/lime-crm/commons/task.js +0 -48
  179. package/dist/nodes/lime-crm/commons/task.js.map +0 -1
  180. package/dist/nodes/lime-crm/commons/webhook.d.ts +0 -20
  181. package/dist/nodes/lime-crm/commons/webhook.js +0 -30
  182. package/dist/nodes/lime-crm/commons/webhook.js.map +0 -1
  183. package/dist/nodes/lime-crm/methods/getEntitiesForErpSystem.d.ts +0 -5
  184. package/dist/nodes/lime-crm/methods/getEntitiesForErpSystem.js +0 -11
  185. package/dist/nodes/lime-crm/methods/getEntitiesForErpSystem.js.map +0 -1
  186. package/dist/nodes/lime-crm/methods/getLimeTypeProperties.d.ts +0 -2
  187. package/dist/nodes/lime-crm/methods/getLimeTypeProperties.js +0 -20
  188. package/dist/nodes/lime-crm/methods/getLimeTypeProperties.js.map +0 -1
  189. package/dist/nodes/lime-crm/methods/getLimeTypes.d.ts +0 -2
  190. package/dist/nodes/lime-crm/methods/getLimeTypes.js +0 -20
  191. package/dist/nodes/lime-crm/methods/getLimeTypes.js.map +0 -1
  192. package/dist/nodes/lime-crm/methods/index.d.ts +0 -3
  193. package/dist/nodes/lime-crm/methods/index.js +0 -10
  194. package/dist/nodes/lime-crm/methods/index.js.map +0 -1
  195. package/dist/nodes/lime-crm/resources/erpConnector/index.d.ts +0 -23
  196. package/dist/nodes/lime-crm/resources/erpConnector/index.js +0 -67
  197. package/dist/nodes/lime-crm/resources/erpConnector/index.js.map +0 -1
  198. package/dist/nodes/lime-crm/resources/erpConnector/operations/createOrUpdateObjects.operation.d.ts +0 -26
  199. package/dist/nodes/lime-crm/resources/erpConnector/operations/createOrUpdateObjects.operation.js +0 -65
  200. package/dist/nodes/lime-crm/resources/erpConnector/operations/createOrUpdateObjects.operation.js.map +0 -1
  201. package/dist/nodes/lime-crm/resources/erpConnector/operations/transform.operation.d.ts +0 -9
  202. package/dist/nodes/lime-crm/resources/erpConnector/operations/transform.operation.js +0 -220
  203. package/dist/nodes/lime-crm/resources/erpConnector/operations/transform.operation.js.map +0 -1
  204. package/dist/nodes/lime-crm/resources/erpConnector/transform.d.ts +0 -15
  205. package/dist/nodes/lime-crm/resources/erpConnector/transform.js +0 -11
  206. package/dist/nodes/lime-crm/resources/erpConnector/transform.js.map +0 -1
  207. package/dist/nodes/lime-crm/resources/erpConnector/transformers/baseTransformer.d.ts +0 -4
  208. package/dist/nodes/lime-crm/resources/erpConnector/transformers/baseTransformer.js +0 -7
  209. package/dist/nodes/lime-crm/resources/erpConnector/transformers/baseTransformer.js.map +0 -1
  210. package/dist/nodes/lime-crm/resources/erpConnector/transformers/fortnox.d.ts +0 -37
  211. package/dist/nodes/lime-crm/resources/erpConnector/transformers/fortnox.js +0 -124
  212. package/dist/nodes/lime-crm/resources/erpConnector/transformers/fortnox.js.map +0 -1
  213. package/dist/nodes/lime-crm/resources/erpConnector/transformers/index.d.ts +0 -1
  214. package/dist/nodes/lime-crm/resources/erpConnector/transformers/index.js +0 -6
  215. package/dist/nodes/lime-crm/resources/erpConnector/transformers/index.js.map +0 -1
  216. package/dist/nodes/lime-crm/resources/limeObject/index.d.ts +0 -14
  217. package/dist/nodes/lime-crm/resources/limeObject/index.js +0 -88
  218. package/dist/nodes/lime-crm/resources/limeObject/index.js.map +0 -1
  219. package/dist/nodes/lime-crm/resources/limeObject/operations/create.operation.d.ts +0 -9
  220. package/dist/nodes/lime-crm/resources/limeObject/operations/create.operation.js +0 -139
  221. package/dist/nodes/lime-crm/resources/limeObject/operations/create.operation.js.map +0 -1
  222. package/dist/nodes/lime-crm/resources/limeObject/operations/delete.operation.d.ts +0 -9
  223. package/dist/nodes/lime-crm/resources/limeObject/operations/delete.operation.js +0 -51
  224. package/dist/nodes/lime-crm/resources/limeObject/operations/delete.operation.js.map +0 -1
  225. package/dist/nodes/lime-crm/resources/limeObject/operations/fetchMany.operation.d.ts +0 -9
  226. package/dist/nodes/lime-crm/resources/limeObject/operations/fetchMany.operation.js +0 -103
  227. package/dist/nodes/lime-crm/resources/limeObject/operations/fetchMany.operation.js.map +0 -1
  228. package/dist/nodes/lime-crm/resources/limeObject/operations/get.operation.d.ts +0 -9
  229. package/dist/nodes/lime-crm/resources/limeObject/operations/get.operation.js +0 -51
  230. package/dist/nodes/lime-crm/resources/limeObject/operations/get.operation.js.map +0 -1
  231. package/dist/nodes/lime-crm/resources/limeObject/operations/search.operation.d.ts +0 -9
  232. package/dist/nodes/lime-crm/resources/limeObject/operations/search.operation.js +0 -103
  233. package/dist/nodes/lime-crm/resources/limeObject/operations/search.operation.js.map +0 -1
  234. package/dist/nodes/lime-crm/resources/limeObject/operations/update.operation.d.ts +0 -9
  235. package/dist/nodes/lime-crm/resources/limeObject/operations/update.operation.js +0 -149
  236. package/dist/nodes/lime-crm/resources/limeObject/operations/update.operation.js.map +0 -1
  237. package/dist/nodes/lime-crm/resources/limeQuery/index.d.ts +0 -6
  238. package/dist/nodes/lime-crm/resources/limeQuery/index.js +0 -66
  239. package/dist/nodes/lime-crm/resources/limeQuery/index.js.map +0 -1
  240. package/dist/nodes/lime-crm/resources/limeQuery/operations/query.operation.d.ts +0 -9
  241. package/dist/nodes/lime-crm/resources/limeQuery/operations/query.operation.js +0 -191
  242. package/dist/nodes/lime-crm/resources/limeQuery/operations/query.operation.js.map +0 -1
  243. package/dist/nodes/lime-crm/resources/limeType/index.d.ts +0 -20
  244. package/dist/nodes/lime-crm/resources/limeType/index.js +0 -81
  245. package/dist/nodes/lime-crm/resources/limeType/index.js.map +0 -1
  246. package/dist/nodes/lime-crm/resources/limeType/operations/getProperties.operation.d.ts +0 -11
  247. package/dist/nodes/lime-crm/resources/limeType/operations/getProperties.operation.js +0 -36
  248. package/dist/nodes/lime-crm/resources/limeType/operations/getProperties.operation.js.map +0 -1
  249. package/dist/nodes/lime-crm/resources/limeType/operations/getType.operation.d.ts +0 -9
  250. package/dist/nodes/lime-crm/resources/limeType/operations/getType.operation.js +0 -36
  251. package/dist/nodes/lime-crm/resources/limeType/operations/getType.operation.js.map +0 -1
  252. package/dist/nodes/lime-crm/resources/limeType/operations/listTypes.operation.d.ts +0 -10
  253. package/dist/nodes/lime-crm/resources/limeType/operations/listTypes.operation.js +0 -15
  254. package/dist/nodes/lime-crm/resources/limeType/operations/listTypes.operation.js.map +0 -1
  255. package/dist/nodes/lime-crm/transport/commons.d.ts +0 -5
  256. package/dist/nodes/lime-crm/transport/commons.js +0 -33
  257. package/dist/nodes/lime-crm/transport/commons.js.map +0 -1
  258. package/dist/nodes/lime-crm/transport/erpConnector.d.ts +0 -9
  259. package/dist/nodes/lime-crm/transport/erpConnector.js +0 -11
  260. package/dist/nodes/lime-crm/transport/erpConnector.js.map +0 -1
  261. package/dist/nodes/lime-crm/transport/index.d.ts +0 -6
  262. package/dist/nodes/lime-crm/transport/index.js +0 -24
  263. package/dist/nodes/lime-crm/transport/index.js.map +0 -1
  264. package/dist/nodes/lime-crm/transport/limeQuery.d.ts +0 -10
  265. package/dist/nodes/lime-crm/transport/limeQuery.js +0 -15
  266. package/dist/nodes/lime-crm/transport/limeQuery.js.map +0 -1
  267. package/dist/nodes/lime-crm/transport/limeobjects.d.ts +0 -7
  268. package/dist/nodes/lime-crm/transport/limeobjects.js +0 -134
  269. package/dist/nodes/lime-crm/transport/limeobjects.js.map +0 -1
  270. package/dist/nodes/lime-crm/transport/limetypes.d.ts +0 -6
  271. package/dist/nodes/lime-crm/transport/limetypes.js +0 -54
  272. package/dist/nodes/lime-crm/transport/limetypes.js.map +0 -1
  273. package/dist/nodes/lime-crm/transport/task.d.ts +0 -13
  274. package/dist/nodes/lime-crm/transport/task.js +0 -13
  275. package/dist/nodes/lime-crm/transport/task.js.map +0 -1
  276. package/dist/nodes/lime-crm/transport/webhooks.d.ts +0 -16
  277. package/dist/nodes/lime-crm/transport/webhooks.js +0 -43
  278. package/dist/nodes/lime-crm/transport/webhooks.js.map +0 -1
  279. package/dist/nodes/nodeResponse.d.ts +0 -12
  280. package/dist/nodes/nodeResponse.js +0 -3
  281. package/dist/nodes/nodeResponse.js.map +0 -1
  282. package/dist/package.json +0 -75
  283. package/dist/tsconfig.tsbuildinfo +0 -1
  284. package/docker-compose.yml +0 -52
  285. package/nodes/lime-crm/commons/constants.ts +0 -9
  286. package/nodes/lime-crm/commons/hmac.ts +0 -13
  287. package/nodes/lime-crm/commons/index.ts +0 -10
  288. package/nodes/lime-crm/commons/task.ts +0 -55
  289. package/nodes/lime-crm/commons/webhook.ts +0 -68
  290. package/nodes/lime-crm/methods/getEntitiesForErpSystem.ts +0 -11
  291. package/nodes/lime-crm/model.ts +0 -22
  292. package/nodes/lime-crm/resources/erpConnector/index.ts +0 -43
  293. package/nodes/lime-crm/resources/erpConnector/operations/createOrUpdateObjects.operation.ts +0 -69
  294. package/nodes/lime-crm/resources/erpConnector/operations/transform.operation.ts +0 -274
  295. package/nodes/lime-crm/resources/erpConnector/transform.ts +0 -49
  296. package/nodes/lime-crm/resources/erpConnector/transformers/baseTransformer.ts +0 -18
  297. package/nodes/lime-crm/resources/erpConnector/transformers/fortnox.ts +0 -201
  298. package/nodes/lime-crm/resources/erpConnector/transformers/index.ts +0 -1
  299. package/nodes/lime-crm/transport/erpConnector.ts +0 -21
  300. package/nodes/lime-crm/transport/task.ts +0 -32
  301. package/nodes/nodeResponse.ts +0 -13
  302. package/tests/fixtures/fortnox.ts +0 -182
  303. package/tests/transform.spec.ts +0 -187
@@ -1,232 +1,155 @@
1
1
  import { callLimeApi, removeKeys } from './commons';
2
- import { IAllExecuteFunctions, IDataObject } from 'n8n-workflow';
3
- import { NodeResponse } from '../../nodeResponse';
4
- import { Limeobject } from '../model';
5
-
2
+ import { IAllExecuteFunctions } from 'n8n-workflow';
3
+ import { Limeobject } from '../models';
4
+
5
+ /**
6
+ * Endpoint path for Lime CRM Limeobject API.
7
+ *
8
+ * @internal
9
+ * @group Transport
10
+ */
6
11
  const LIMEOBJECT_URL = '/api/v1/limeobject/';
7
12
 
8
- interface LimeobjectCrmApiResponse {
13
+ /**
14
+ * Single Limeobject representation returned by the CRM API.
15
+ *
16
+ * @property id_ - The unique ID of the Limeobject
17
+ * @property _links - Links metadata returned by the API (not used in processing)
18
+ * @public
19
+ * @group Transport
20
+ */
21
+ export interface LimeobjectCrmApiResponse {
9
22
  id_: number;
10
23
  _links: object;
11
24
  }
12
25
 
13
- interface FetchManyLimeobjectsApiResponse {
26
+ /**
27
+ * Representation of the response from the CRM API when fetching multiple Limeobjects.
28
+ *
29
+ * @property _embedded - The embedded resources
30
+ * @property _embedded.limeobjects - An array of Limeobjects returned by the API. {@link LimeobjectCrmApiResponse}
31
+ * @public
32
+ * @group Transport
33
+ */
34
+ export interface FetchManyLimeobjectsApiResponse {
14
35
  _embedded: {
15
36
  limeobjects: LimeobjectCrmApiResponse[];
16
37
  };
17
38
  }
18
39
 
40
+ /**
41
+ * Create a new Limeobject for the specified Limetype.
42
+ *
43
+ * @param nodeContext - The n8n execution context
44
+ * @param limetype - The Limetype of the object to create
45
+ * @param data - The data object to send to the API
46
+ * @returns The created Limeobject
47
+ * @public
48
+ * @group Transport
49
+ */
19
50
  export async function createLimeobject(
20
51
  nodeContext: IAllExecuteFunctions,
21
52
  limetype: string,
22
53
  data: object
23
- ): Promise<NodeResponse<Limeobject>> {
54
+ ): Promise<Limeobject> {
24
55
  const url = `${LIMEOBJECT_URL}${limetype}/`;
25
- const response = await callLimeApi<LimeobjectCrmApiResponse>(
26
- nodeContext,
27
- 'POST',
28
- url,
29
- {
56
+ const response = await callLimeApi<LimeobjectCrmApiResponse>(nodeContext, {
57
+ method: 'POST',
58
+ url: url,
59
+ requestOptions: {
30
60
  body: data,
31
- }
32
- );
33
- if (response.success)
34
- return {
35
- success: true,
36
- data: removeKeys(response.data, ['_links']),
37
- };
38
-
39
- return {
40
- ...response,
41
- metadata: {
42
- ...response.metadata,
61
+ },
62
+ errorMetadata: {
43
63
  limetype: limetype,
44
64
  },
45
- };
65
+ });
66
+ return removeKeys(response, ['_links']);
46
67
  }
47
68
 
69
+ /**
70
+ * Delete a Limeobject.
71
+ *
72
+ * @param nodeContext - The n8n execution context
73
+ * @param limetype - The Limetype of the object to delete
74
+ * @param id - The ID of the Limeobject
75
+ * @returns empty response
76
+ *
77
+ * @public
78
+ * @group Transport
79
+ */
48
80
  export async function deleteLimeobject(
49
81
  nodeContext: IAllExecuteFunctions,
50
82
  limetype: string,
51
83
  id: string
52
- ): Promise<NodeResponse<void>> {
84
+ ): Promise<void> {
53
85
  const url = `${LIMEOBJECT_URL}${limetype}/${id}/`;
54
- const response: NodeResponse<void> = await callLimeApi(
55
- nodeContext,
56
- 'DELETE',
57
- url
58
- );
59
-
60
- if (response.success) return response;
61
-
62
- return {
63
- ...response,
64
- metadata: {
65
- ...response.metadata,
86
+ return await callLimeApi(nodeContext, {
87
+ method: 'DELETE',
88
+ url: url,
89
+ errorMetadata: {
66
90
  limetype: limetype,
67
91
  id: id,
68
92
  },
69
- };
93
+ });
70
94
  }
71
95
 
96
+ /**
97
+ * Retrieve a Limeobject.
98
+ *
99
+ * @param nodeContext - The n8n execution context
100
+ * @param limetype - The Limetype of the object to retrieve
101
+ * @param id - The ID of the Limeobject
102
+ * @returns The Limeobject.
103
+ *
104
+ * @public
105
+ * @group Transport
106
+ */
72
107
  export async function getLimeobject(
73
108
  nodeContext: IAllExecuteFunctions,
74
109
  limetype: string,
75
110
  id: string
76
- ): Promise<NodeResponse<Limeobject>> {
111
+ ): Promise<Limeobject> {
77
112
  const url = `${LIMEOBJECT_URL}${limetype}/${id}/`;
78
- const response = await callLimeApi<LimeobjectCrmApiResponse>(
79
- nodeContext,
80
- 'GET',
81
- url
82
- );
83
-
84
- if (response.success)
85
- return {
86
- success: true,
87
- data: removeKeys(response.data, ['_links']),
88
- };
89
-
90
- return {
91
- ...response,
92
- metadata: {
93
- ...response.metadata,
113
+ const response = await callLimeApi<LimeobjectCrmApiResponse>(nodeContext, {
114
+ method: 'GET',
115
+ url: url,
116
+ errorMetadata: {
94
117
  limetype: limetype,
95
118
  id: id,
96
119
  },
97
- };
120
+ });
121
+ return removeKeys(response, ['_links']);
98
122
  }
99
123
 
124
+ /**
125
+ * Update a Limeobject.
126
+ *
127
+ * @param nodeContext - The n8n execution context
128
+ * @param limetype - The Limetype of the object to update
129
+ * @param id - The ID of the Limeobject
130
+ * @param data - The updated data to send
131
+ * @returns The updated Limeobject.
132
+ *
133
+ * @public
134
+ * @group Transport
135
+ */
100
136
  export async function updateLimeobject(
101
137
  nodeContext: IAllExecuteFunctions,
102
138
  limetype: string,
103
139
  id: string,
104
140
  data: object
105
- ): Promise<NodeResponse<Limeobject>> {
141
+ ): Promise<Limeobject> {
106
142
  const url = `${LIMEOBJECT_URL}${limetype}/${id}/`;
107
- const response = await callLimeApi<LimeobjectCrmApiResponse>(
108
- nodeContext,
109
- 'PUT',
110
- url,
111
- {
143
+ const response = await callLimeApi<LimeobjectCrmApiResponse>(nodeContext, {
144
+ method: 'PUT',
145
+ url: url,
146
+ requestOptions: {
112
147
  body: data,
113
- }
114
- );
115
-
116
- if (response.success)
117
- return {
118
- success: true,
119
- data: removeKeys(response.data, ['_links']),
120
- };
121
-
122
- return {
123
- ...response,
124
- metadata: {
125
- ...response.metadata,
126
- limetype: limetype,
127
- id: id,
128
148
  },
129
- };
130
- }
131
-
132
- async function _searchLimeobjectWithLimit(
133
- nodeContext: IAllExecuteFunctions,
134
- url: string,
135
- limit: number,
136
- offset: number,
137
- qs: IDataObject
138
- ): Promise<NodeResponse<FetchManyLimeobjectsApiResponse>> {
139
- const returnData: LimeobjectCrmApiResponse[] = [];
140
- let hasMoreData = true;
141
- let currentOffset = Math.max(0, offset);
142
- const pageLimit = 50;
143
-
144
- while (hasMoreData) {
145
- qs._limit = Math.min(limit, pageLimit);
146
- qs._offset = currentOffset;
147
-
148
- const response = await callLimeApi<FetchManyLimeobjectsApiResponse>(
149
- nodeContext,
150
- 'GET',
151
- url,
152
- {
153
- qs: qs,
154
- }
155
- );
156
- if (!response.success) return response;
157
-
158
- const items = response.data._embedded?.limeobjects || [];
159
-
160
- if (items.length === 0) {
161
- hasMoreData = false;
162
- } else {
163
- returnData.push(...items);
164
- currentOffset += items.length;
165
- limit -= items.length;
166
-
167
- if (limit <= 0) {
168
- hasMoreData = false;
169
- }
170
- }
171
- }
172
- return {
173
- success: true,
174
- data: { _embedded: { limeobjects: returnData } },
175
- };
176
- }
177
-
178
- export async function fetchManyLimeobjects(
179
- nodeContext: IAllExecuteFunctions,
180
- limetype: string,
181
- searchField: string,
182
- searchTerm: string,
183
- limit: number,
184
- offset: number,
185
- sortField: string | null
186
- ): Promise<NodeResponse<Limeobject[]>> {
187
- const url = `${LIMEOBJECT_URL}${limetype}/`;
188
- const qs: IDataObject = {
189
- ...(searchField && searchTerm && { [searchField]: searchTerm }),
190
- ...(offset != null && offset > 0 && { _offset: offset }),
191
- ...(sortField != null && { _sort: sortField }),
192
- };
193
-
194
- let response;
195
- if (limit) {
196
- response = await _searchLimeobjectWithLimit(
197
- nodeContext,
198
- url,
199
- limit,
200
- offset,
201
- qs
202
- );
203
- } else {
204
- response = await callLimeApi<FetchManyLimeobjectsApiResponse>(
205
- nodeContext,
206
- 'GET',
207
- url,
208
- {
209
- qs: qs,
210
- }
211
- );
212
- }
213
-
214
- if (response.success) {
215
- return {
216
- success: true,
217
- data:
218
- response.data?._embedded.limeobjects.map((limeobject) =>
219
- removeKeys(limeobject, ['_links'])
220
- ) ?? [],
221
- };
222
- }
223
- return {
224
- success: response.success,
225
- error: response.error,
226
- status: response.status,
227
- metadata: {
228
- ...response.metadata,
149
+ errorMetadata: {
229
150
  limetype: limetype,
151
+ id: id,
230
152
  },
231
- };
153
+ });
154
+ return removeKeys(response, ['_links']);
232
155
  }
@@ -1,18 +1,44 @@
1
1
  import { callLimeApi } from '.';
2
2
  import { IAllExecuteFunctions } from 'n8n-workflow';
3
- import { Limetype, LimetypeProperty } from '../model';
4
- import { NodeResponse } from '../../nodeResponse';
5
3
  import { removeKeys } from './commons';
4
+ import { Limetype, LimetypeProperty } from '../models';
6
5
 
6
+ /**
7
+ * Endpoint path for Lime CRM Limetype API.
8
+ *
9
+ * @internal
10
+ * @group Transport
11
+ */
7
12
  const LIMETYPE_URL = '/api/v1/limetype/';
8
13
 
9
- interface LimetypePropertyApiResponse {
14
+ /**
15
+ * Lime CRM Limetype API response structure.
16
+ *
17
+ * @property name - The internal name of the property
18
+ * @property _links - Optional API link metadata
19
+ * @property _embedded - Optional embedded resources
20
+ *
21
+ * @public
22
+ * @group Transport
23
+ */
24
+ export interface LimetypePropertyApiResponse {
10
25
  name: string;
11
26
  _links?: object;
12
27
  _embedded?: object;
13
28
  }
14
29
 
15
- interface LimetypeCrmApiResponse {
30
+ /**
31
+ * Representation of a single Limetype object returned by the Lime CRM API.
32
+ *
33
+ * @property name - The internal name of the Limetype
34
+ * @property localname - Optional local name for singular and plural forms
35
+ * @property _embedded - Contains the Limetype's properties
36
+ * @property _links - API link metadata.
37
+ *
38
+ * @public
39
+ * @group Transport
40
+ */
41
+ export interface LimetypeCrmApiResponse {
16
42
  name: string;
17
43
  localname?: {
18
44
  singular?: string;
@@ -24,19 +50,49 @@ interface LimetypeCrmApiResponse {
24
50
  _links: object;
25
51
  }
26
52
 
27
- interface LimetypesCrmApiResponse {
53
+ /**
54
+ * Response structure for the `/limetype/` endpoint.
55
+ *
56
+ * @property _embedded - The embedded resources
57
+ * @property _embedded.limetypes - The list of Limetype definitions
58
+ * @property _embedded._links - API link metadata
59
+ *
60
+ * @public
61
+ * @group Transport
62
+ */
63
+ export interface LimetypesCrmApiResponse {
28
64
  _embedded: {
29
65
  limetypes: LimetypeCrmApiResponse[];
30
66
  _links: object;
31
67
  };
32
68
  }
33
69
 
34
- interface LimetypePropertiesApiResponse {
70
+ /**
71
+ * Response structure for the Limetype properties API.
72
+ *
73
+ * @property _embedded - The embedded resources
74
+ * @property _embedded.properties - The list of Limetype properties
75
+ *
76
+ * @public
77
+ * @group Transport
78
+ */
79
+ export interface LimetypePropertiesApiResponse {
35
80
  _embedded: {
36
81
  properties: LimetypeCrmApiResponse[];
37
82
  };
38
83
  }
39
84
 
85
+ /**
86
+ * Transform a Lime CRM API Limetype response into an internal {@link Limetype} model.
87
+ *
88
+ * Removes `_links` and `_embedded` metadata while preserving property data.
89
+ *
90
+ * @param limetype - The raw Limetype API response.
91
+ * @returns A deserialized {@link Limetype} object.
92
+ *
93
+ * @internal
94
+ * @group Transport
95
+ */
40
96
  function deserializeLimetype(limetype: LimetypeCrmApiResponse): Limetype {
41
97
  return {
42
98
  ...removeKeys(limetype, ['_links', '_embedded']),
@@ -46,96 +102,96 @@ function deserializeLimetype(limetype: LimetypeCrmApiResponse): Limetype {
46
102
  } as Limetype;
47
103
  }
48
104
 
105
+ /**
106
+ * Fetch all available Limetypes from the Lime CRM API, including their properties.
107
+ *
108
+ * @param nodeContext - The n8n execution context
109
+ * @returns A list of {@link Limetype} objects
110
+ *
111
+ * @public
112
+ * @group Transport
113
+ */
49
114
  export async function getLimetypesFromApi(
50
115
  nodeContext: IAllExecuteFunctions
51
- ): Promise<NodeResponse<Limetype[]>> {
52
- const response = await callLimeApi<LimetypesCrmApiResponse>(
53
- nodeContext,
54
- 'GET',
55
- LIMETYPE_URL,
56
- {
116
+ ): Promise<Limetype[]> {
117
+ const response = await callLimeApi<LimetypesCrmApiResponse>(nodeContext, {
118
+ method: 'GET',
119
+ url: LIMETYPE_URL,
120
+ requestOptions: {
57
121
  qs: {
58
122
  _embed: 'limetypes.properties',
59
123
  },
60
- }
61
- );
62
- if (response.success) {
63
- return {
64
- success: true,
65
- data:
66
- response.data._embedded?.limetypes.map(deserializeLimetype) ||
67
- [],
68
- };
69
- }
70
- return response;
124
+ },
125
+ });
126
+ return response._embedded?.limetypes.map(deserializeLimetype) || [];
71
127
  }
72
128
 
129
+ /**
130
+ * Fetch a specific Limetype definition from the Lime CRM API.
131
+ *
132
+ * @param nodeContext - The n8n execution context
133
+ * @param limetype - The internal name of the Limetype to fetch
134
+ * @returns A {@link Limetype} object
135
+ *
136
+ * @public
137
+ * @group Transport
138
+ */
73
139
  export async function getLimetype(
74
140
  nodeContext: IAllExecuteFunctions,
75
141
  limetype: string
76
- ): Promise<NodeResponse<Limetype>> {
142
+ ): Promise<Limetype> {
77
143
  const url = `${LIMETYPE_URL}${limetype}/`;
78
- const response = await callLimeApi<LimetypeCrmApiResponse>(
79
- nodeContext,
80
- 'GET',
81
- url,
82
- {
144
+ const response = await callLimeApi<LimetypeCrmApiResponse>(nodeContext, {
145
+ method: 'GET',
146
+ url: url,
147
+ requestOptions: {
83
148
  qs: {
84
149
  _embed: 'properties',
85
150
  },
86
- }
87
- );
88
-
89
- if (response.success)
90
- return {
91
- success: true,
92
- data: deserializeLimetype(response.data),
93
- };
94
-
95
- return {
96
- ...response,
97
- metadata: {
98
- ...response.metadata,
99
- limetype: limetype,
100
151
  },
101
- };
152
+ });
153
+
154
+ return deserializeLimetype(response);
102
155
  }
103
156
 
157
+ /**
158
+ * Fetch the property definitions of a specific Limetype.
159
+ *
160
+ * @param nodeContext - The n8n execution context
161
+ * @param limetype - The internal name of the Limetype to fetch properties for
162
+ * @returns An array of {@link LimetypeProperty} objects.
163
+ *
164
+ * @public
165
+ * @group Transport
166
+ */
104
167
  export async function getProperties(
105
168
  nodeContext: IAllExecuteFunctions,
106
169
  limetype: string
107
- ): Promise<NodeResponse<LimetypeProperty[]>> {
170
+ ): Promise<LimetypeProperty[]> {
108
171
  const url = `${LIMETYPE_URL}${limetype}/`;
109
172
  const response = await callLimeApi<LimetypePropertiesApiResponse>(
110
173
  nodeContext,
111
- 'GET',
112
- url,
113
174
  {
114
- qs: {
115
- _embed: 'properties',
175
+ method: 'GET',
176
+ url: url,
177
+ requestOptions: {
178
+ qs: {
179
+ _embed: 'properties',
180
+ },
181
+ },
182
+ errorMetadata: {
183
+ limetype: limetype,
116
184
  },
117
185
  }
118
186
  );
119
187
 
120
- if (response.success) {
121
- return {
122
- success: true,
123
- data:
124
- response.data?._embedded.properties.map(
125
- (property) =>
126
- removeKeys(property, [
127
- '_links',
128
- '_embedded',
129
- ]) as LimetypeProperty
130
- ) || [],
131
- };
132
- }
133
-
134
- return {
135
- ...response,
136
- metadata: {
137
- ...response.metadata,
138
- limetype: limetype,
139
- },
140
- };
188
+ return (
189
+ response._embedded.properties.map(
190
+ (property) =>
191
+ removeKeys(property, [
192
+ '_links',
193
+ '_embedded',
194
+ ]) as LimetypeProperty
195
+ ) || []
196
+ );
141
197
  }