@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
@@ -0,0 +1,117 @@
1
+ import {
2
+ INodeExecutionData,
3
+ IExecuteFunctions,
4
+ INodeProperties,
5
+ NodePropertyTypes,
6
+ NodeOperationError,
7
+ } from 'n8n-workflow';
8
+
9
+ import * as operations from './operations';
10
+
11
+ import { DATA_RESOURCE } from '../../models';
12
+ import { N8NOperationModuleHandler } from '../../../modules';
13
+
14
+ /**
15
+ * List of modules consisting data operations
16
+ */
17
+ const moduleHandler = new N8NOperationModuleHandler([
18
+ operations.createSingleObject,
19
+ operations.getSingleObject,
20
+ operations.updateSingleObject,
21
+ operations.deleteSingleObject,
22
+ operations.getManyObjects,
23
+ operations.getSingleFile,
24
+ ]);
25
+
26
+ /**
27
+ * Fields and operations for the **Data** resource in Lime CRM.
28
+ *
29
+ * @remarks
30
+ * - These fields are displayed in the n8n node UI when the resource is set to `Data`.
31
+ * - Each operation corresponds to a CRUD action or a file retrieval for Lime objects.
32
+ *
33
+ * @group Resources
34
+ * @public
35
+ *
36
+ * @see {@link createSingleObject} - Operation to create a single Limeobject
37
+ * @see {@link getSingleObject} - Operation to retrieve a single Limeobject by ID
38
+ * @see {@link updateSingleObject} - Operation to update a single Limeobject by ID
39
+ * @see {@link deleteSingleObject} - Operation to delete a single Limeobject by ID
40
+ * @see {@link getManyObjects} - Operation to fetch multiple Limeobjects based on search criteria
41
+ * @see {@link getSingleFile} - Operation to retrieve a single from Lime CRM
42
+ */
43
+ export const dataFields: INodeProperties[] = [
44
+ {
45
+ displayName: 'Operation',
46
+ name: 'operation',
47
+ type: 'options' as NodePropertyTypes,
48
+ noDataExpression: true,
49
+ displayOptions: {
50
+ show: {
51
+ resource: [DATA_RESOURCE],
52
+ },
53
+ },
54
+ options: moduleHandler.getDescriptions(),
55
+ default: 'fetchMany',
56
+ },
57
+
58
+ ...moduleHandler.getProperties(),
59
+ ];
60
+
61
+ /**
62
+ * Execute a specific **Data** operation on Lime CRM objects.
63
+ *
64
+ * @param args - Contextual parameters for the operation being executed
65
+ * @param args.operation - The operation to perform (e.g., `createSingleObject`, `getManyObjects`)
66
+ * @param args.i - The index of the input item to process
67
+ *
68
+ * @returns A promise resolving to the n8n object containing the result of the operation.
69
+ *
70
+ * @throws NodeOperationError if the operation is unsupported or fails.
71
+ *
72
+ * @public
73
+ * @group Resources
74
+ */
75
+ export async function dataOperations(
76
+ this: IExecuteFunctions,
77
+ { operation, i }: { operation: string; i: number }
78
+ ): Promise<INodeExecutionData | INodeExecutionData[]> {
79
+ switch (operation) {
80
+ case 'createSingleObject': {
81
+ return {
82
+ json: await operations.createSingleObject.execute.call(this, i),
83
+ };
84
+ }
85
+ case 'getSingleObject': {
86
+ return await operations.getSingleObject.execute.call(this, i);
87
+ }
88
+ case 'updateSingleObject': {
89
+ return {
90
+ json: await operations.updateSingleObject.execute.call(this, i),
91
+ };
92
+ }
93
+ case 'deleteSingleObject': {
94
+ await operations.deleteSingleObject.execute.call(this, i);
95
+ return { json: {} };
96
+ }
97
+ case 'getManyObjects': {
98
+ const result = await operations.getManyObjects.execute.call(
99
+ this,
100
+ i
101
+ );
102
+ return result.map((item) => ({
103
+ json: item,
104
+ }));
105
+ }
106
+ case 'getSingleFile': {
107
+ return await operations.getSingleFile.execute.call(this, i);
108
+ }
109
+ }
110
+
111
+ throw new NodeOperationError(
112
+ this.getNode(),
113
+ `The operation "${operation}" is not supported!`
114
+ );
115
+ }
116
+
117
+ export * from './operations';
@@ -0,0 +1,231 @@
1
+ import { IDataObject, IExecuteFunctions, INodeProperties } from 'n8n-workflow';
2
+
3
+ import { createLimeobject, getProperties } from '../../../transport';
4
+ import { DATA_RESOURCE, LimetypeProperty } from '../../../models';
5
+ import {
6
+ adaptProperty,
7
+ getFilePropertiesNames,
8
+ getPropertyType,
9
+ processFileResponse,
10
+ setFileProperties,
11
+ } from '../../../utils';
12
+
13
+ /**
14
+ * Description and metadata for the "Create Single Object" operation in Lime CRM.
15
+ *
16
+ * @public
17
+ */
18
+ export const description = {
19
+ name: 'Create Single Object',
20
+ value: 'createSingleObject',
21
+ description: 'Create a single new object',
22
+ action: 'Create single object',
23
+ };
24
+
25
+ /**
26
+ * Node properties for the "Create Single Object" operation.
27
+ *
28
+ * @param {string} limetype - The type of entity to create
29
+ * @param {'fields' | 'json'} inputMethod - How the user provides object data: 'fields' for form inputs, 'json' for raw JSON
30
+ * @param {Array<{ name: string; value: string }>} properties - Used if inputMethod is 'fields'. List of property name/value pairs to set on the object
31
+ * @param {string} objectJson - Used if inputMethod is 'json'. The full object data in JSON format
32
+ *
33
+ * @public
34
+ */
35
+ export const properties: INodeProperties[] = [
36
+ {
37
+ displayName: 'Limetype',
38
+ name: 'limetype',
39
+ type: 'options',
40
+ typeOptions: {
41
+ loadOptionsMethod: 'getLimetypes',
42
+ },
43
+ required: true,
44
+ default: '',
45
+ description: 'The type of entity to create',
46
+ displayOptions: {
47
+ show: {
48
+ resource: [DATA_RESOURCE],
49
+ operation: ['createSingleObject'],
50
+ },
51
+ },
52
+ },
53
+ {
54
+ displayName: 'Input Method',
55
+ name: 'inputMethod',
56
+ type: 'options',
57
+ options: [
58
+ {
59
+ name: 'Form Fields',
60
+ value: 'fields',
61
+ },
62
+ {
63
+ name: 'JSON',
64
+ value: 'json',
65
+ },
66
+ ],
67
+ default: 'fields',
68
+ description: 'How to input the object data',
69
+ displayOptions: {
70
+ show: {
71
+ resource: [DATA_RESOURCE],
72
+ operation: ['createSingleObject'],
73
+ },
74
+ },
75
+ },
76
+ {
77
+ displayName: 'Properties',
78
+ name: 'properties',
79
+ type: 'fixedCollection',
80
+ placeholder: 'Add Property',
81
+ typeOptions: {
82
+ multipleValues: true,
83
+ },
84
+ default: {},
85
+ displayOptions: {
86
+ show: {
87
+ resource: [DATA_RESOURCE],
88
+ operation: ['createSingleObject'],
89
+ inputMethod: ['fields'],
90
+ },
91
+ },
92
+ options: [
93
+ {
94
+ displayName: 'Property',
95
+ name: 'property',
96
+ values: [
97
+ {
98
+ displayName: 'Property Name',
99
+ name: 'name',
100
+ type: 'options',
101
+ typeOptions: {
102
+ sortable: true,
103
+ loadOptionsMethod: 'getNoHasManyProperties',
104
+ loadOptionsDependsOn: ['limetype'],
105
+ },
106
+ default: '',
107
+ description: 'Name of the property',
108
+ },
109
+ {
110
+ displayName: 'Property Value',
111
+ name: 'value',
112
+ type: 'string',
113
+ default: '',
114
+ description: 'Value of the property',
115
+ },
116
+ ],
117
+ },
118
+ ],
119
+ },
120
+ {
121
+ displayName: 'Object (JSON)',
122
+ name: 'objectJson',
123
+ type: 'json',
124
+ default: '{\n "name": "New Company",\n "phone": "123-456-7890"\n}',
125
+ description: 'Object to create in JSON format',
126
+ displayOptions: {
127
+ show: {
128
+ resource: [DATA_RESOURCE],
129
+ operation: ['createSingleObject'],
130
+ inputMethod: ['json'],
131
+ },
132
+ },
133
+ typeOptions: {
134
+ alwaysOpenEditWindow: true,
135
+ },
136
+ },
137
+ ];
138
+
139
+ /**
140
+ *
141
+ * @param context - Node execution context
142
+ * @param i - The index of the current item in the workflow execution
143
+ * @param properties - List of {@link LimeTypeProperty} fetched from Lime CRM
144
+ * @returns IDataObject - parsed data from Simple Fields mode
145
+ */
146
+ function parseSimpleFieldsData(
147
+ context: IExecuteFunctions,
148
+ i: number,
149
+ properties: LimetypeProperty[]
150
+ ): IDataObject {
151
+ const objectData: IDataObject = {};
152
+ const propertiesInput = context.getNodeParameter(
153
+ 'properties.property',
154
+ i,
155
+ []
156
+ ) as IDataObject[];
157
+
158
+ if (propertiesInput && propertiesInput.length > 0) {
159
+ for (const prop of propertiesInput) {
160
+ if (prop.name && prop.value !== undefined) {
161
+ const propertyName = prop.name as string;
162
+ objectData[propertyName] = adaptProperty(
163
+ prop.value as string,
164
+ getPropertyType(propertyName, properties)
165
+ );
166
+ }
167
+ }
168
+ }
169
+ return objectData;
170
+ }
171
+
172
+ /**
173
+ * Execute the "Create Single Object" operation for Lime CRM.
174
+ *
175
+ * @param i - The index of the current item in the workflow execution
176
+ * @remarks
177
+ * This method handles creating a single Lime CRM object. It supports two input methods:
178
+ * - `fields`: where the user provides property values via form fields.
179
+ * - `json`: where the user provides a full JSON object representing the entity.
180
+ *
181
+ * The method performs the following steps:
182
+ * 1. Reads the limetype and input method from node parameters.
183
+ * 2. Parses input data according to the selected input method.
184
+ * 3. Resolves any file properties present in the object and sets the file properties on the object.
185
+ * 4. Sends a request to the Lime API to create the object.
186
+ * 5. Processes any returned file data and formats the response.
187
+ *
188
+ * @returns The newly created Lime object.
189
+ *
190
+ * @public
191
+ */
192
+ export async function execute(this: IExecuteFunctions, i: number) {
193
+ const limetype = this.getNodeParameter('limetype', i) as string;
194
+ const inputMethod = this.getNodeParameter('inputMethod', i) as string;
195
+
196
+ let objectData: IDataObject;
197
+
198
+ const properties = await getProperties(this, limetype);
199
+
200
+ if (inputMethod === 'json') {
201
+ const jsonInput = this.getNodeParameter('objectJson', i) as string;
202
+ objectData = JSON.parse(jsonInput);
203
+ } else {
204
+ objectData = parseSimpleFieldsData(this, i, properties);
205
+ }
206
+
207
+ const fileProperties = getFilePropertiesNames(
208
+ properties,
209
+ new Set(Object.keys(objectData))
210
+ );
211
+
212
+ const setFilePropertiesResponse = await setFileProperties(
213
+ this,
214
+ i,
215
+ fileProperties,
216
+ objectData
217
+ );
218
+
219
+ const createLimeobjectResponse = await createLimeobject(
220
+ this,
221
+ limetype,
222
+ setFilePropertiesResponse
223
+ );
224
+
225
+ const response = await processFileResponse(
226
+ this,
227
+ fileProperties,
228
+ createLimeobjectResponse
229
+ );
230
+ return response.json;
231
+ }
@@ -0,0 +1,83 @@
1
+ import { IExecuteFunctions, INodeProperties } from 'n8n-workflow';
2
+
3
+ import { deleteLimeobject } from '../../../transport';
4
+ import { DATA_RESOURCE } from '../../../models';
5
+
6
+ /**
7
+ * Description and metadata for the "Delete Single Object" operation in Lime CRM.
8
+ *
9
+ * @public
10
+ */
11
+ export const description = {
12
+ name: 'Delete Single Object',
13
+ value: 'deleteSingleObject',
14
+ description: 'Delete one specific object',
15
+ action: 'Delete single object',
16
+ };
17
+
18
+ /**
19
+ * Node properties for the "Delete Single Object" operation.
20
+ *
21
+ *
22
+ * @param {string} limetype - The type of entity to delete. Loaded from available Limetypes
23
+ * @param {string} objectId - The ID of the object to delete
24
+ *
25
+ * @public
26
+ */
27
+ export const properties: INodeProperties[] = [
28
+ {
29
+ displayName: 'Limetype',
30
+ name: 'limetype',
31
+ type: 'options',
32
+ typeOptions: {
33
+ loadOptionsMethod: 'getLimetypes',
34
+ },
35
+ required: true,
36
+ default: '',
37
+ description: 'The type of entity to delete',
38
+ displayOptions: {
39
+ show: {
40
+ resource: [DATA_RESOURCE],
41
+ operation: ['deleteSingleObject'],
42
+ },
43
+ },
44
+ },
45
+ {
46
+ displayName: 'Object ID',
47
+ name: 'objectId',
48
+ type: 'string',
49
+ required: true,
50
+ default: '',
51
+ description: 'The ID of the object to delete',
52
+ displayOptions: {
53
+ show: {
54
+ resource: [DATA_RESOURCE],
55
+ operation: ['deleteSingleObject'],
56
+ },
57
+ },
58
+ },
59
+ ];
60
+
61
+ /**
62
+ * Execute the "Delete Single Object" operation for Lime CRM.
63
+ *
64
+ * @remarks
65
+ * This operation deletes a single Lime CRM object identified by its object ID.
66
+ * The object type is determined by the selected limetype.
67
+ *
68
+ * The method performs the following steps:
69
+ * 1. Retrieves the `limetype` and `objectId` from {@link properties}.
70
+ * 2. Calls the {@link deleteLimeobject} function to delete the object from Lime CRM.
71
+ *
72
+ * @param i - The index of the current item in the workflow execution
73
+ *
74
+ * @returns The response from the Lime API after attempting deletion.
75
+ *
76
+ * @public
77
+ */
78
+ export async function execute(this: IExecuteFunctions, i: number) {
79
+ const limetype = this.getNodeParameter('limetype', i) as string;
80
+ const objectId = this.getNodeParameter('objectId', i) as string;
81
+
82
+ return await deleteLimeobject(this, limetype, objectId);
83
+ }