@limetech/n8n-nodes-lime 0.4.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 (330) 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/.prettierignore +3 -1
  5. package/.releaserc.json +2 -1
  6. package/CHANGELOG.md +215 -0
  7. package/README.md +2 -9
  8. package/credentials/LimeCrmApi.credentials.ts +44 -7
  9. package/credentials/index.ts +2 -0
  10. package/eslint.config.mjs +2 -1
  11. package/knip.json +9 -0
  12. package/nodes/fortnox/Fortnox.node.ts +3 -3
  13. package/nodes/fortnox/FortnoxTrigger.node.ts +2 -2
  14. package/nodes/fortnox/index.ts +6 -0
  15. package/nodes/fortnox/resources/customers/index.ts +18 -22
  16. package/nodes/fortnox/resources/customers/operations/create.operation.ts +12 -8
  17. package/nodes/fortnox/resources/customers/operations/delete.operation.ts +10 -15
  18. package/nodes/fortnox/resources/customers/operations/get.operation.ts +10 -15
  19. package/nodes/fortnox/resources/customers/operations/getAll.operation.ts +1 -2
  20. package/nodes/fortnox/resources/customers/operations/index.ts +5 -0
  21. package/nodes/fortnox/resources/customers/operations/update.operation.ts +30 -30
  22. package/nodes/fortnox/resources/invoice/index.ts +16 -18
  23. package/nodes/fortnox/resources/invoice/model.ts +0 -4
  24. package/nodes/fortnox/resources/invoice/operations/create.operation.ts +1 -2
  25. package/nodes/fortnox/resources/invoice/operations/get.operation.ts +10 -15
  26. package/nodes/fortnox/resources/invoice/operations/getAll.operation.ts +1 -2
  27. package/nodes/fortnox/resources/invoice/operations/index.ts +4 -0
  28. package/nodes/fortnox/resources/invoice/operations/update.operation.ts +11 -16
  29. package/nodes/fortnox/transport/index.ts +14 -11
  30. package/nodes/index.ts +4 -0
  31. package/nodes/lime-crm/LimeCrmNode.node.ts +126 -69
  32. package/nodes/lime-crm/LimeCrmTrigger.node.ts +86 -53
  33. package/nodes/lime-crm/index.ts +9 -0
  34. package/nodes/lime-crm/methods/getLimetypeProperties.ts +110 -0
  35. package/nodes/lime-crm/methods/getLimetypes.ts +26 -0
  36. package/nodes/lime-crm/methods/index.ts +7 -3
  37. package/nodes/lime-crm/models/constants.ts +73 -0
  38. package/nodes/lime-crm/models/index.ts +21 -0
  39. package/nodes/lime-crm/models/limeobject.ts +13 -0
  40. package/nodes/lime-crm/models/limetype.ts +47 -0
  41. package/nodes/lime-crm/models/propertyTypes.ts +13 -0
  42. package/nodes/lime-crm/models/users.ts +46 -0
  43. package/nodes/lime-crm/models/webhook.ts +61 -0
  44. package/nodes/lime-crm/resources/admin/index.ts +89 -0
  45. package/nodes/lime-crm/resources/admin/operations/getManyUsers.operation.ts +166 -0
  46. package/nodes/lime-crm/resources/admin/operations/getSingleUser.operation.ts +113 -0
  47. package/nodes/lime-crm/resources/admin/operations/index.ts +8 -0
  48. package/nodes/lime-crm/resources/data/index.ts +117 -0
  49. package/nodes/lime-crm/resources/data/operations/createSingleObject.operation.ts +231 -0
  50. package/nodes/lime-crm/resources/data/operations/deleteSingleObject.operation.ts +83 -0
  51. package/nodes/lime-crm/resources/data/operations/getManyObjects.operation.ts +499 -0
  52. package/nodes/lime-crm/resources/data/operations/getSingleFile.operation.ts +162 -0
  53. package/nodes/lime-crm/resources/data/operations/getSingleObject.operation.ts +116 -0
  54. package/nodes/lime-crm/resources/data/operations/index.ts +24 -0
  55. package/nodes/lime-crm/resources/{limeObject/operations/update.operation.ts → data/operations/updateSingleObject.operation.ts} +91 -25
  56. package/nodes/lime-crm/resources/metadata/index.ts +97 -0
  57. package/nodes/lime-crm/resources/metadata/operations/getAllLimetypes.operation.ts +28 -0
  58. package/nodes/lime-crm/resources/metadata/operations/getSingleFileMetadata.operation.ts +147 -0
  59. package/nodes/lime-crm/resources/metadata/operations/getSingleLimetype.operation.ts +58 -0
  60. package/nodes/lime-crm/resources/metadata/operations/index.ts +12 -0
  61. package/nodes/lime-crm/transport/commons.ts +97 -27
  62. package/nodes/lime-crm/transport/files.ts +220 -0
  63. package/nodes/lime-crm/transport/index.ts +38 -13
  64. package/nodes/lime-crm/transport/limeQuery.ts +44 -10
  65. package/nodes/lime-crm/transport/limeobjects.ts +126 -168
  66. package/nodes/lime-crm/transport/limetypes.ts +169 -57
  67. package/nodes/lime-crm/transport/users.ts +264 -0
  68. package/nodes/lime-crm/transport/webhooks.ts +96 -37
  69. package/nodes/lime-crm/utils/files.ts +198 -0
  70. package/nodes/lime-crm/utils/hmac.ts +35 -0
  71. package/nodes/lime-crm/utils/index.ts +10 -0
  72. package/nodes/lime-crm/utils/propertyAdapters.ts +75 -0
  73. package/nodes/lime-crm/utils/webhook.ts +81 -0
  74. package/nodes/modules.ts +44 -0
  75. package/nodes/response.ts +16 -0
  76. package/package.json +21 -29
  77. package/restore_script/README +42 -0
  78. package/restore_script/api_key_download.txt +0 -0
  79. package/restore_script/api_key_upload.txt +0 -0
  80. package/restore_script/cli.py +73 -0
  81. package/restore_script/download.py +73 -0
  82. package/restore_script/main.py +19 -0
  83. package/restore_script/poetry.lock +162 -0
  84. package/restore_script/pyproject.toml +15 -0
  85. package/restore_script/transfer.py +41 -0
  86. package/restore_script/upload.py +66 -0
  87. package/restore_script/utils.py +42 -0
  88. package/tests/nodes/lime-crm/utils.spec.ts +238 -0
  89. package/typedoc.css +9 -0
  90. package/typedoc.json +19 -0
  91. package/.dockerignore +0 -1
  92. package/Dockerfile +0 -21
  93. package/dist/credentials/FortnoxApi.credentials.d.ts +0 -9
  94. package/dist/credentials/FortnoxApi.credentials.js +0 -57
  95. package/dist/credentials/FortnoxApi.credentials.js.map +0 -1
  96. package/dist/credentials/LimeCrmApi.credentials.d.ts +0 -9
  97. package/dist/credentials/LimeCrmApi.credentials.js +0 -66
  98. package/dist/credentials/LimeCrmApi.credentials.js.map +0 -1
  99. package/dist/nodes/fortnox/Fortnox.node.d.ts +0 -5
  100. package/dist/nodes/fortnox/Fortnox.node.js +0 -95
  101. package/dist/nodes/fortnox/Fortnox.node.js.map +0 -1
  102. package/dist/nodes/fortnox/Fortnox.node.json +0 -18
  103. package/dist/nodes/fortnox/FortnoxTrigger.node.d.ts +0 -5
  104. package/dist/nodes/fortnox/FortnoxTrigger.node.js +0 -155
  105. package/dist/nodes/fortnox/FortnoxTrigger.node.js.map +0 -1
  106. package/dist/nodes/fortnox/FortnoxTrigger.node.json +0 -18
  107. package/dist/nodes/fortnox/commons.d.ts +0 -25
  108. package/dist/nodes/fortnox/commons.js +0 -44
  109. package/dist/nodes/fortnox/commons.js.map +0 -1
  110. package/dist/nodes/fortnox/fortnoxLogo.svg +0 -15
  111. package/dist/nodes/fortnox/model.d.ts +0 -20
  112. package/dist/nodes/fortnox/model.js +0 -3
  113. package/dist/nodes/fortnox/model.js.map +0 -1
  114. package/dist/nodes/fortnox/resources/customers/filterParameters.d.ts +0 -2
  115. package/dist/nodes/fortnox/resources/customers/filterParameters.js +0 -31
  116. package/dist/nodes/fortnox/resources/customers/filterParameters.js.map +0 -1
  117. package/dist/nodes/fortnox/resources/customers/index.d.ts +0 -20
  118. package/dist/nodes/fortnox/resources/customers/index.js +0 -87
  119. package/dist/nodes/fortnox/resources/customers/index.js.map +0 -1
  120. package/dist/nodes/fortnox/resources/customers/model.d.ts +0 -99
  121. package/dist/nodes/fortnox/resources/customers/model.js +0 -3
  122. package/dist/nodes/fortnox/resources/customers/model.js.map +0 -1
  123. package/dist/nodes/fortnox/resources/customers/operations/create.operation.d.ts +0 -12
  124. package/dist/nodes/fortnox/resources/customers/operations/create.operation.js +0 -283
  125. package/dist/nodes/fortnox/resources/customers/operations/create.operation.js.map +0 -1
  126. package/dist/nodes/fortnox/resources/customers/operations/delete.operation.d.ts +0 -10
  127. package/dist/nodes/fortnox/resources/customers/operations/delete.operation.js +0 -45
  128. package/dist/nodes/fortnox/resources/customers/operations/delete.operation.js.map +0 -1
  129. package/dist/nodes/fortnox/resources/customers/operations/get.operation.d.ts +0 -11
  130. package/dist/nodes/fortnox/resources/customers/operations/get.operation.js +0 -45
  131. package/dist/nodes/fortnox/resources/customers/operations/get.operation.js.map +0 -1
  132. package/dist/nodes/fortnox/resources/customers/operations/getAll.operation.d.ts +0 -11
  133. package/dist/nodes/fortnox/resources/customers/operations/getAll.operation.js +0 -68
  134. package/dist/nodes/fortnox/resources/customers/operations/getAll.operation.js.map +0 -1
  135. package/dist/nodes/fortnox/resources/customers/operations/update.operation.d.ts +0 -12
  136. package/dist/nodes/fortnox/resources/customers/operations/update.operation.js +0 -276
  137. package/dist/nodes/fortnox/resources/customers/operations/update.operation.js.map +0 -1
  138. package/dist/nodes/fortnox/resources/customers/sortParameters.d.ts +0 -2
  139. package/dist/nodes/fortnox/resources/customers/sortParameters.js +0 -30
  140. package/dist/nodes/fortnox/resources/customers/sortParameters.js.map +0 -1
  141. package/dist/nodes/fortnox/resources/invoice/filterParameters.d.ts +0 -2
  142. package/dist/nodes/fortnox/resources/invoice/filterParameters.js +0 -72
  143. package/dist/nodes/fortnox/resources/invoice/filterParameters.js.map +0 -1
  144. package/dist/nodes/fortnox/resources/invoice/index.d.ts +0 -20
  145. package/dist/nodes/fortnox/resources/invoice/index.js +0 -81
  146. package/dist/nodes/fortnox/resources/invoice/index.js.map +0 -1
  147. package/dist/nodes/fortnox/resources/invoice/invoiceParameters.d.ts +0 -2
  148. package/dist/nodes/fortnox/resources/invoice/invoiceParameters.js +0 -193
  149. package/dist/nodes/fortnox/resources/invoice/invoiceParameters.js.map +0 -1
  150. package/dist/nodes/fortnox/resources/invoice/model.d.ts +0 -150
  151. package/dist/nodes/fortnox/resources/invoice/model.js +0 -3
  152. package/dist/nodes/fortnox/resources/invoice/model.js.map +0 -1
  153. package/dist/nodes/fortnox/resources/invoice/operations/create.operation.d.ts +0 -11
  154. package/dist/nodes/fortnox/resources/invoice/operations/create.operation.js +0 -64
  155. package/dist/nodes/fortnox/resources/invoice/operations/create.operation.js.map +0 -1
  156. package/dist/nodes/fortnox/resources/invoice/operations/get.operation.d.ts +0 -11
  157. package/dist/nodes/fortnox/resources/invoice/operations/get.operation.js +0 -44
  158. package/dist/nodes/fortnox/resources/invoice/operations/get.operation.js.map +0 -1
  159. package/dist/nodes/fortnox/resources/invoice/operations/getAll.operation.d.ts +0 -11
  160. package/dist/nodes/fortnox/resources/invoice/operations/getAll.operation.js +0 -92
  161. package/dist/nodes/fortnox/resources/invoice/operations/getAll.operation.js.map +0 -1
  162. package/dist/nodes/fortnox/resources/invoice/operations/update.operation.d.ts +0 -11
  163. package/dist/nodes/fortnox/resources/invoice/operations/update.operation.js +0 -71
  164. package/dist/nodes/fortnox/resources/invoice/operations/update.operation.js.map +0 -1
  165. package/dist/nodes/fortnox/transport/errorCodes.d.ts +0 -1
  166. package/dist/nodes/fortnox/transport/errorCodes.js +0 -50
  167. package/dist/nodes/fortnox/transport/errorCodes.js.map +0 -1
  168. package/dist/nodes/fortnox/transport/index.d.ts +0 -4
  169. package/dist/nodes/fortnox/transport/index.js +0 -77
  170. package/dist/nodes/fortnox/transport/index.js.map +0 -1
  171. package/dist/nodes/lime-crm/LimeCrm.node.json +0 -18
  172. package/dist/nodes/lime-crm/LimeCrmNode.node.d.ts +0 -14
  173. package/dist/nodes/lime-crm/LimeCrmNode.node.js +0 -126
  174. package/dist/nodes/lime-crm/LimeCrmNode.node.js.map +0 -1
  175. package/dist/nodes/lime-crm/LimeCrmTrigger.node.d.ts +0 -18
  176. package/dist/nodes/lime-crm/LimeCrmTrigger.node.js +0 -215
  177. package/dist/nodes/lime-crm/LimeCrmTrigger.node.js.map +0 -1
  178. package/dist/nodes/lime-crm/assets/lime-crm.svg +0 -1
  179. package/dist/nodes/lime-crm/commons/constants.d.ts +0 -5
  180. package/dist/nodes/lime-crm/commons/constants.js +0 -9
  181. package/dist/nodes/lime-crm/commons/constants.js.map +0 -1
  182. package/dist/nodes/lime-crm/commons/hmac.d.ts +0 -1
  183. package/dist/nodes/lime-crm/commons/hmac.js +0 -11
  184. package/dist/nodes/lime-crm/commons/hmac.js.map +0 -1
  185. package/dist/nodes/lime-crm/commons/index.d.ts +0 -3
  186. package/dist/nodes/lime-crm/commons/index.js +0 -12
  187. package/dist/nodes/lime-crm/commons/index.js.map +0 -1
  188. package/dist/nodes/lime-crm/commons/limetype.d.ts +0 -10
  189. package/dist/nodes/lime-crm/commons/limetype.js +0 -3
  190. package/dist/nodes/lime-crm/commons/limetype.js.map +0 -1
  191. package/dist/nodes/lime-crm/commons/task.d.ts +0 -14
  192. package/dist/nodes/lime-crm/commons/task.js +0 -48
  193. package/dist/nodes/lime-crm/commons/task.js.map +0 -1
  194. package/dist/nodes/lime-crm/commons/webhook.d.ts +0 -20
  195. package/dist/nodes/lime-crm/commons/webhook.js +0 -30
  196. package/dist/nodes/lime-crm/commons/webhook.js.map +0 -1
  197. package/dist/nodes/lime-crm/methods/getEntitiesForErpSystem.d.ts +0 -5
  198. package/dist/nodes/lime-crm/methods/getEntitiesForErpSystem.js +0 -11
  199. package/dist/nodes/lime-crm/methods/getEntitiesForErpSystem.js.map +0 -1
  200. package/dist/nodes/lime-crm/methods/getLimeTypeProperties.d.ts +0 -2
  201. package/dist/nodes/lime-crm/methods/getLimeTypeProperties.js +0 -20
  202. package/dist/nodes/lime-crm/methods/getLimeTypeProperties.js.map +0 -1
  203. package/dist/nodes/lime-crm/methods/getLimeTypes.d.ts +0 -2
  204. package/dist/nodes/lime-crm/methods/getLimeTypes.js +0 -20
  205. package/dist/nodes/lime-crm/methods/getLimeTypes.js.map +0 -1
  206. package/dist/nodes/lime-crm/methods/index.d.ts +0 -3
  207. package/dist/nodes/lime-crm/methods/index.js +0 -10
  208. package/dist/nodes/lime-crm/methods/index.js.map +0 -1
  209. package/dist/nodes/lime-crm/resources/erpConnector/index.d.ts +0 -23
  210. package/dist/nodes/lime-crm/resources/erpConnector/index.js +0 -67
  211. package/dist/nodes/lime-crm/resources/erpConnector/index.js.map +0 -1
  212. package/dist/nodes/lime-crm/resources/erpConnector/operations/createOrUpdateObjects.operation.d.ts +0 -26
  213. package/dist/nodes/lime-crm/resources/erpConnector/operations/createOrUpdateObjects.operation.js +0 -65
  214. package/dist/nodes/lime-crm/resources/erpConnector/operations/createOrUpdateObjects.operation.js.map +0 -1
  215. package/dist/nodes/lime-crm/resources/erpConnector/operations/transform.operation.d.ts +0 -9
  216. package/dist/nodes/lime-crm/resources/erpConnector/operations/transform.operation.js +0 -220
  217. package/dist/nodes/lime-crm/resources/erpConnector/operations/transform.operation.js.map +0 -1
  218. package/dist/nodes/lime-crm/resources/erpConnector/transform.d.ts +0 -15
  219. package/dist/nodes/lime-crm/resources/erpConnector/transform.js +0 -11
  220. package/dist/nodes/lime-crm/resources/erpConnector/transform.js.map +0 -1
  221. package/dist/nodes/lime-crm/resources/erpConnector/transformers/baseTransformer.d.ts +0 -4
  222. package/dist/nodes/lime-crm/resources/erpConnector/transformers/baseTransformer.js +0 -7
  223. package/dist/nodes/lime-crm/resources/erpConnector/transformers/baseTransformer.js.map +0 -1
  224. package/dist/nodes/lime-crm/resources/erpConnector/transformers/fortnox.d.ts +0 -37
  225. package/dist/nodes/lime-crm/resources/erpConnector/transformers/fortnox.js +0 -124
  226. package/dist/nodes/lime-crm/resources/erpConnector/transformers/fortnox.js.map +0 -1
  227. package/dist/nodes/lime-crm/resources/erpConnector/transformers/index.d.ts +0 -1
  228. package/dist/nodes/lime-crm/resources/erpConnector/transformers/index.js +0 -6
  229. package/dist/nodes/lime-crm/resources/erpConnector/transformers/index.js.map +0 -1
  230. package/dist/nodes/lime-crm/resources/limeObject/index.d.ts +0 -14
  231. package/dist/nodes/lime-crm/resources/limeObject/index.js +0 -88
  232. package/dist/nodes/lime-crm/resources/limeObject/index.js.map +0 -1
  233. package/dist/nodes/lime-crm/resources/limeObject/operations/create.operation.d.ts +0 -9
  234. package/dist/nodes/lime-crm/resources/limeObject/operations/create.operation.js +0 -139
  235. package/dist/nodes/lime-crm/resources/limeObject/operations/create.operation.js.map +0 -1
  236. package/dist/nodes/lime-crm/resources/limeObject/operations/delete.operation.d.ts +0 -9
  237. package/dist/nodes/lime-crm/resources/limeObject/operations/delete.operation.js +0 -51
  238. package/dist/nodes/lime-crm/resources/limeObject/operations/delete.operation.js.map +0 -1
  239. package/dist/nodes/lime-crm/resources/limeObject/operations/fetchMany.operation.d.ts +0 -9
  240. package/dist/nodes/lime-crm/resources/limeObject/operations/fetchMany.operation.js +0 -103
  241. package/dist/nodes/lime-crm/resources/limeObject/operations/fetchMany.operation.js.map +0 -1
  242. package/dist/nodes/lime-crm/resources/limeObject/operations/get.operation.d.ts +0 -9
  243. package/dist/nodes/lime-crm/resources/limeObject/operations/get.operation.js +0 -51
  244. package/dist/nodes/lime-crm/resources/limeObject/operations/get.operation.js.map +0 -1
  245. package/dist/nodes/lime-crm/resources/limeObject/operations/search.operation.d.ts +0 -9
  246. package/dist/nodes/lime-crm/resources/limeObject/operations/search.operation.js +0 -103
  247. package/dist/nodes/lime-crm/resources/limeObject/operations/search.operation.js.map +0 -1
  248. package/dist/nodes/lime-crm/resources/limeObject/operations/update.operation.d.ts +0 -9
  249. package/dist/nodes/lime-crm/resources/limeObject/operations/update.operation.js +0 -149
  250. package/dist/nodes/lime-crm/resources/limeObject/operations/update.operation.js.map +0 -1
  251. package/dist/nodes/lime-crm/resources/limeQuery/index.d.ts +0 -6
  252. package/dist/nodes/lime-crm/resources/limeQuery/index.js +0 -66
  253. package/dist/nodes/lime-crm/resources/limeQuery/index.js.map +0 -1
  254. package/dist/nodes/lime-crm/resources/limeQuery/operations/query.operation.d.ts +0 -9
  255. package/dist/nodes/lime-crm/resources/limeQuery/operations/query.operation.js +0 -191
  256. package/dist/nodes/lime-crm/resources/limeQuery/operations/query.operation.js.map +0 -1
  257. package/dist/nodes/lime-crm/resources/limeType/index.d.ts +0 -20
  258. package/dist/nodes/lime-crm/resources/limeType/index.js +0 -81
  259. package/dist/nodes/lime-crm/resources/limeType/index.js.map +0 -1
  260. package/dist/nodes/lime-crm/resources/limeType/operations/getProperties.operation.d.ts +0 -11
  261. package/dist/nodes/lime-crm/resources/limeType/operations/getProperties.operation.js +0 -36
  262. package/dist/nodes/lime-crm/resources/limeType/operations/getProperties.operation.js.map +0 -1
  263. package/dist/nodes/lime-crm/resources/limeType/operations/getType.operation.d.ts +0 -9
  264. package/dist/nodes/lime-crm/resources/limeType/operations/getType.operation.js +0 -36
  265. package/dist/nodes/lime-crm/resources/limeType/operations/getType.operation.js.map +0 -1
  266. package/dist/nodes/lime-crm/resources/limeType/operations/listTypes.operation.d.ts +0 -10
  267. package/dist/nodes/lime-crm/resources/limeType/operations/listTypes.operation.js +0 -15
  268. package/dist/nodes/lime-crm/resources/limeType/operations/listTypes.operation.js.map +0 -1
  269. package/dist/nodes/lime-crm/transport/commons.d.ts +0 -5
  270. package/dist/nodes/lime-crm/transport/commons.js +0 -33
  271. package/dist/nodes/lime-crm/transport/commons.js.map +0 -1
  272. package/dist/nodes/lime-crm/transport/erpConnector.d.ts +0 -9
  273. package/dist/nodes/lime-crm/transport/erpConnector.js +0 -11
  274. package/dist/nodes/lime-crm/transport/erpConnector.js.map +0 -1
  275. package/dist/nodes/lime-crm/transport/index.d.ts +0 -6
  276. package/dist/nodes/lime-crm/transport/index.js +0 -24
  277. package/dist/nodes/lime-crm/transport/index.js.map +0 -1
  278. package/dist/nodes/lime-crm/transport/limeQuery.d.ts +0 -10
  279. package/dist/nodes/lime-crm/transport/limeQuery.js +0 -15
  280. package/dist/nodes/lime-crm/transport/limeQuery.js.map +0 -1
  281. package/dist/nodes/lime-crm/transport/limeobjects.d.ts +0 -7
  282. package/dist/nodes/lime-crm/transport/limeobjects.js +0 -134
  283. package/dist/nodes/lime-crm/transport/limeobjects.js.map +0 -1
  284. package/dist/nodes/lime-crm/transport/limetypes.d.ts +0 -6
  285. package/dist/nodes/lime-crm/transport/limetypes.js +0 -54
  286. package/dist/nodes/lime-crm/transport/limetypes.js.map +0 -1
  287. package/dist/nodes/lime-crm/transport/task.d.ts +0 -13
  288. package/dist/nodes/lime-crm/transport/task.js +0 -13
  289. package/dist/nodes/lime-crm/transport/task.js.map +0 -1
  290. package/dist/nodes/lime-crm/transport/webhooks.d.ts +0 -16
  291. package/dist/nodes/lime-crm/transport/webhooks.js +0 -43
  292. package/dist/nodes/lime-crm/transport/webhooks.js.map +0 -1
  293. package/dist/nodes/nodeResponse.d.ts +0 -12
  294. package/dist/nodes/nodeResponse.js +0 -3
  295. package/dist/nodes/nodeResponse.js.map +0 -1
  296. package/dist/package.json +0 -75
  297. package/dist/tsconfig.tsbuildinfo +0 -1
  298. package/docker-compose.yml +0 -46
  299. package/nodes/lime-crm/commons/constants.ts +0 -10
  300. package/nodes/lime-crm/commons/hmac.ts +0 -13
  301. package/nodes/lime-crm/commons/index.ts +0 -10
  302. package/nodes/lime-crm/commons/limetype.ts +0 -11
  303. package/nodes/lime-crm/commons/task.ts +0 -55
  304. package/nodes/lime-crm/commons/webhook.ts +0 -56
  305. package/nodes/lime-crm/methods/getEntitiesForErpSystem.ts +0 -11
  306. package/nodes/lime-crm/methods/getLimeTypeProperties.ts +0 -27
  307. package/nodes/lime-crm/methods/getLimeTypes.ts +0 -23
  308. package/nodes/lime-crm/resources/erpConnector/index.ts +0 -43
  309. package/nodes/lime-crm/resources/erpConnector/operations/createOrUpdateObjects.operation.ts +0 -69
  310. package/nodes/lime-crm/resources/erpConnector/operations/transform.operation.ts +0 -274
  311. package/nodes/lime-crm/resources/erpConnector/transform.ts +0 -49
  312. package/nodes/lime-crm/resources/erpConnector/transformers/baseTransformer.ts +0 -18
  313. package/nodes/lime-crm/resources/erpConnector/transformers/fortnox.ts +0 -201
  314. package/nodes/lime-crm/resources/erpConnector/transformers/index.ts +0 -1
  315. package/nodes/lime-crm/resources/limeObject/index.ts +0 -64
  316. package/nodes/lime-crm/resources/limeObject/operations/create.operation.ts +0 -152
  317. package/nodes/lime-crm/resources/limeObject/operations/delete.operation.ts +0 -55
  318. package/nodes/lime-crm/resources/limeObject/operations/fetchMany.operation.ts +0 -112
  319. package/nodes/lime-crm/resources/limeObject/operations/get.operation.ts +0 -54
  320. package/nodes/lime-crm/resources/limeQuery/index.ts +0 -40
  321. package/nodes/lime-crm/resources/limeQuery/operations/query.operation.ts +0 -222
  322. package/nodes/lime-crm/resources/limeType/index.ts +0 -58
  323. package/nodes/lime-crm/resources/limeType/operations/getProperties.operation.ts +0 -42
  324. package/nodes/lime-crm/resources/limeType/operations/getType.operation.ts +0 -36
  325. package/nodes/lime-crm/resources/limeType/operations/listTypes.operation.ts +0 -18
  326. package/nodes/lime-crm/transport/erpConnector.ts +0 -21
  327. package/nodes/lime-crm/transport/task.ts +0 -32
  328. package/nodes/nodeResponse.ts +0 -13
  329. package/tests/fixtures/fortnox.ts +0 -182
  330. package/tests/transform.spec.ts +0 -187
@@ -1,197 +1,155 @@
1
- import { callLimeApi } from './commons';
2
- import { IAllExecuteFunctions, IDataObject } from 'n8n-workflow';
3
- import { NodeResponse } from '../../nodeResponse';
4
-
1
+ import { callLimeApi, removeKeys } from './commons';
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
+ */
5
11
  const LIMEOBJECT_URL = '/api/v1/limeobject/';
6
12
 
7
- interface FetchManyLimeObjectsApiResponse {
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 {
22
+ id_: number;
23
+ _links: object;
24
+ }
25
+
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 {
8
35
  _embedded: {
9
- limeobjects: Array<object>;
36
+ limeobjects: LimeobjectCrmApiResponse[];
10
37
  };
11
38
  }
12
39
 
13
- export async function createLimeObject(
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
+ */
50
+ export async function createLimeobject(
14
51
  nodeContext: IAllExecuteFunctions,
15
- limeType: string,
52
+ limetype: string,
16
53
  data: object
17
- ): Promise<NodeResponse<unknown>> {
18
- const url = `${LIMEOBJECT_URL}${limeType}/`;
19
- const response = await callLimeApi(nodeContext, 'POST', url, {
20
- body: data,
21
- });
22
- if (response.success) return response;
23
-
24
- return {
25
- ...response,
26
- metadata: {
27
- ...response.metadata,
28
- limeType: limeType,
54
+ ): Promise<Limeobject> {
55
+ const url = `${LIMEOBJECT_URL}${limetype}/`;
56
+ const response = await callLimeApi<LimeobjectCrmApiResponse>(nodeContext, {
57
+ method: 'POST',
58
+ url: url,
59
+ requestOptions: {
60
+ body: data,
29
61
  },
30
- };
62
+ errorMetadata: {
63
+ limetype: limetype,
64
+ },
65
+ });
66
+ return removeKeys(response, ['_links']);
31
67
  }
32
68
 
33
- export async function deleteLimeObject(
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
+ */
80
+ export async function deleteLimeobject(
34
81
  nodeContext: IAllExecuteFunctions,
35
- limeType: string,
82
+ limetype: string,
36
83
  id: string
37
- ): Promise<NodeResponse<void>> {
38
- const url = `${LIMEOBJECT_URL}${limeType}/${id}/`;
39
- const response: NodeResponse<void> = await callLimeApi(
40
- nodeContext,
41
- 'DELETE',
42
- url
43
- );
44
-
45
- if (response.success) return response;
46
-
47
- return {
48
- ...response,
49
- metadata: {
50
- ...response.metadata,
51
- limeType: limeType,
84
+ ): Promise<void> {
85
+ const url = `${LIMEOBJECT_URL}${limetype}/${id}/`;
86
+ return await callLimeApi(nodeContext, {
87
+ method: 'DELETE',
88
+ url: url,
89
+ errorMetadata: {
90
+ limetype: limetype,
52
91
  id: id,
53
92
  },
54
- };
93
+ });
55
94
  }
56
95
 
57
- export async function getLimeObject(
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
+ */
107
+ export async function getLimeobject(
58
108
  nodeContext: IAllExecuteFunctions,
59
- limeType: string,
109
+ limetype: string,
60
110
  id: string
61
- ): Promise<NodeResponse<unknown>> {
62
- const url = `${LIMEOBJECT_URL}${limeType}/${id}/`;
63
- const response = await callLimeApi(nodeContext, 'GET', url);
64
-
65
- if (response.success) return response;
66
-
67
- return {
68
- ...response,
69
- metadata: {
70
- ...response.metadata,
71
- limeType: limeType,
111
+ ): Promise<Limeobject> {
112
+ const url = `${LIMEOBJECT_URL}${limetype}/${id}/`;
113
+ const response = await callLimeApi<LimeobjectCrmApiResponse>(nodeContext, {
114
+ method: 'GET',
115
+ url: url,
116
+ errorMetadata: {
117
+ limetype: limetype,
72
118
  id: id,
73
119
  },
74
- };
120
+ });
121
+ return removeKeys(response, ['_links']);
75
122
  }
76
123
 
77
- export async function updateLimeObject(
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
+ */
136
+ export async function updateLimeobject(
78
137
  nodeContext: IAllExecuteFunctions,
79
- limeType: string,
138
+ limetype: string,
80
139
  id: string,
81
140
  data: object
82
- ): Promise<NodeResponse<unknown>> {
83
- const url = `${LIMEOBJECT_URL}${limeType}/${id}/`;
84
- const response = await callLimeApi(nodeContext, 'PUT', url, {
85
- body: data,
86
- });
87
-
88
- if (response.success) return response;
89
-
90
- return {
91
- ...response,
92
- metadata: {
93
- ...response.metadata,
94
- limeType: limeType,
95
- id: id,
141
+ ): Promise<Limeobject> {
142
+ const url = `${LIMEOBJECT_URL}${limetype}/${id}/`;
143
+ const response = await callLimeApi<LimeobjectCrmApiResponse>(nodeContext, {
144
+ method: 'PUT',
145
+ url: url,
146
+ requestOptions: {
147
+ body: data,
96
148
  },
97
- };
98
- }
99
-
100
- async function _searchLimeObjectWithLimit(
101
- nodeContext: IAllExecuteFunctions,
102
- url: string,
103
- limit: number,
104
- offset: number,
105
- qs: IDataObject
106
- ): Promise<NodeResponse<FetchManyLimeObjectsApiResponse>> {
107
- const returnData = [];
108
- let hasMoreData = true;
109
- let currentOffset = Math.max(0, offset);
110
- const pageLimit = 50;
111
-
112
- while (hasMoreData) {
113
- qs._limit = Math.min(limit, pageLimit);
114
- qs._offset = currentOffset;
115
-
116
- const response = await callLimeApi<FetchManyLimeObjectsApiResponse>(
117
- nodeContext,
118
- 'GET',
119
- url,
120
- {
121
- qs: qs,
122
- }
123
- );
124
- if (!response.success) return response;
125
-
126
- const items = response.data._embedded?.limeobjects || [];
127
-
128
- if (items.length === 0) {
129
- hasMoreData = false;
130
- } else {
131
- returnData.push(...items);
132
- currentOffset += items.length;
133
- limit -= items.length;
134
-
135
- if (limit <= 0) {
136
- hasMoreData = false;
137
- }
138
- }
139
- }
140
- return {
141
- success: true,
142
- data: { _embedded: { limeobjects: returnData } },
143
- };
144
- }
145
-
146
- export async function fetchManyLimeObjects(
147
- nodeContext: IAllExecuteFunctions,
148
- limeType: string,
149
- searchField: string,
150
- searchTerm: string,
151
- limit: number,
152
- offset: number,
153
- sortField: string | null
154
- ): Promise<NodeResponse<Array<object>>> {
155
- const url = `${LIMEOBJECT_URL}${limeType}/`;
156
- const qs: IDataObject = {
157
- ...(searchField && searchTerm && { [searchField]: searchTerm }),
158
- ...(offset != null && offset > 0 && { _offset: offset }),
159
- ...(sortField != null && { _sort: sortField }),
160
- };
161
-
162
- let response;
163
- if (limit) {
164
- response = await _searchLimeObjectWithLimit(
165
- nodeContext,
166
- url,
167
- limit,
168
- offset,
169
- qs
170
- );
171
- } else {
172
- response = await callLimeApi<FetchManyLimeObjectsApiResponse>(
173
- nodeContext,
174
- 'GET',
175
- url,
176
- {
177
- qs: qs,
178
- }
179
- );
180
- }
181
-
182
- if (response.success) {
183
- return {
184
- success: true,
185
- data: response.data?._embedded.limeobjects ?? [],
186
- };
187
- }
188
- return {
189
- success: response.success,
190
- error: response.error,
191
- status: response.status,
192
- metadata: {
193
- ...response.metadata,
194
- limeType: limeType,
149
+ errorMetadata: {
150
+ limetype: limetype,
151
+ id: id,
195
152
  },
196
- };
153
+ });
154
+ return removeKeys(response, ['_links']);
197
155
  }
@@ -1,85 +1,197 @@
1
1
  import { callLimeApi } from '.';
2
2
  import { IAllExecuteFunctions } from 'n8n-workflow';
3
- import { LimeType, LimeTypeProperty } from '../commons';
4
- import { NodeResponse } from '../../nodeResponse';
3
+ import { removeKeys } from './commons';
4
+ import { Limetype, LimetypeProperty } from '../models';
5
5
 
6
+ /**
7
+ * Endpoint path for Lime CRM Limetype API.
8
+ *
9
+ * @internal
10
+ * @group Transport
11
+ */
6
12
  const LIMETYPE_URL = '/api/v1/limetype/';
7
13
 
8
- interface LimeTypesApiResponse {
9
- _links: {
10
- limetypes: LimeType[];
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 {
25
+ name: string;
26
+ _links?: object;
27
+ _embedded?: object;
28
+ }
29
+
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 {
42
+ name: string;
43
+ localname?: {
44
+ singular?: string;
45
+ plural?: string;
46
+ };
47
+ _embedded: {
48
+ properties: LimetypePropertyApiResponse[];
11
49
  };
50
+ _links: object;
12
51
  }
13
52
 
14
- interface LimeTypePropertiesApiResponse {
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 {
15
64
  _embedded: {
16
- properties: LimeTypeProperty[];
65
+ limetypes: LimetypeCrmApiResponse[];
66
+ _links: object;
17
67
  };
18
68
  }
19
69
 
20
- export async function getLimeTypesFromApi(
21
- nodeContext: IAllExecuteFunctions
22
- ): Promise<NodeResponse<LimeType[]>> {
23
- const response = await callLimeApi<LimeTypesApiResponse>(
24
- nodeContext,
25
- 'GET',
26
- LIMETYPE_URL
27
- );
28
- if (response.success) {
29
- return {
30
- success: true,
31
- data: response.data?._links.limetypes ?? [],
32
- };
33
- }
34
- return response;
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 {
80
+ _embedded: {
81
+ properties: LimetypeCrmApiResponse[];
82
+ };
35
83
  }
36
84
 
37
- export async function getLimeType(
38
- nodeContext: IAllExecuteFunctions,
39
- limeType: string
40
- ): Promise<NodeResponse<LimeType>> {
41
- const url = `${LIMETYPE_URL}${limeType}/`;
42
- const response = await callLimeApi<LimeType>(nodeContext, 'GET', url);
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
+ */
96
+ function deserializeLimetype(limetype: LimetypeCrmApiResponse): Limetype {
97
+ return {
98
+ ...removeKeys(limetype, ['_links', '_embedded']),
99
+ properties: limetype._embedded.properties.map((property) =>
100
+ removeKeys(property, ['_links'])
101
+ ),
102
+ } as Limetype;
103
+ }
43
104
 
44
- if (response.success) return response;
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
+ */
114
+ export async function getLimetypesFromApi(
115
+ nodeContext: IAllExecuteFunctions
116
+ ): Promise<Limetype[]> {
117
+ const response = await callLimeApi<LimetypesCrmApiResponse>(nodeContext, {
118
+ method: 'GET',
119
+ url: LIMETYPE_URL,
120
+ requestOptions: {
121
+ qs: {
122
+ _embed: 'limetypes.properties',
123
+ },
124
+ },
125
+ });
126
+ return response._embedded?.limetypes.map(deserializeLimetype) || [];
127
+ }
45
128
 
46
- return {
47
- ...response,
48
- metadata: {
49
- ...response.metadata,
50
- limetype: limeType,
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
+ */
139
+ export async function getLimetype(
140
+ nodeContext: IAllExecuteFunctions,
141
+ limetype: string
142
+ ): Promise<Limetype> {
143
+ const url = `${LIMETYPE_URL}${limetype}/`;
144
+ const response = await callLimeApi<LimetypeCrmApiResponse>(nodeContext, {
145
+ method: 'GET',
146
+ url: url,
147
+ requestOptions: {
148
+ qs: {
149
+ _embed: 'properties',
150
+ },
51
151
  },
52
- };
152
+ });
153
+
154
+ return deserializeLimetype(response);
53
155
  }
54
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
+ */
55
167
  export async function getProperties(
56
168
  nodeContext: IAllExecuteFunctions,
57
- limeType: string
58
- ): Promise<NodeResponse<LimeTypeProperty[]>> {
59
- const url = `${LIMETYPE_URL}${limeType}/`;
60
- const response = await callLimeApi<LimeTypePropertiesApiResponse>(
169
+ limetype: string
170
+ ): Promise<LimetypeProperty[]> {
171
+ const url = `${LIMETYPE_URL}${limetype}/`;
172
+ const response = await callLimeApi<LimetypePropertiesApiResponse>(
61
173
  nodeContext,
62
- 'GET',
63
- url,
64
174
  {
65
- qs: {
66
- _embed: 'properties',
175
+ method: 'GET',
176
+ url: url,
177
+ requestOptions: {
178
+ qs: {
179
+ _embed: 'properties',
180
+ },
181
+ },
182
+ errorMetadata: {
183
+ limetype: limetype,
67
184
  },
68
185
  }
69
186
  );
70
187
 
71
- if (response.success) {
72
- return {
73
- success: true,
74
- data: response.data?._embedded.properties ?? [],
75
- };
76
- }
77
-
78
- return {
79
- ...response,
80
- metadata: {
81
- ...response.metadata,
82
- limetype: limeType,
83
- },
84
- };
188
+ return (
189
+ response._embedded.properties.map(
190
+ (property) =>
191
+ removeKeys(property, [
192
+ '_links',
193
+ '_embedded',
194
+ ]) as LimetypeProperty
195
+ ) || []
196
+ );
85
197
  }