@machinemetrics/mm-erp-sdk 0.1.9 → 0.2.0-beta.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 (339) hide show
  1. package/README.md +0 -5
  2. package/dist/config-CvA-mFWF.js +418 -0
  3. package/dist/config-CvA-mFWF.js.map +1 -0
  4. package/dist/connector-factory-BPm2GVVF.js +30 -0
  5. package/dist/connector-factory-BPm2GVVF.js.map +1 -0
  6. package/dist/hashed-cache-manager-B15NN8hK.js +322 -0
  7. package/dist/hashed-cache-manager-B15NN8hK.js.map +1 -0
  8. package/dist/index-D8qO1NyK.js +192 -0
  9. package/dist/index-D8qO1NyK.js.map +1 -0
  10. package/dist/index.d.ts +43 -42
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/knexfile-Bng2Ru9c.js +20 -0
  13. package/dist/knexfile-Bng2Ru9c.js.map +1 -0
  14. package/dist/knexfile.d.ts.map +1 -1
  15. package/dist/logger-BWw0_z9q.js +17557 -0
  16. package/dist/logger-BWw0_z9q.js.map +1 -0
  17. package/dist/migrations/20241015162631_create_cache_table.js +15 -11
  18. package/dist/migrations/20241015162631_create_cache_table.js.map +1 -1
  19. package/dist/migrations/20241015162632_create_sdk_cache_table.js +15 -11
  20. package/dist/migrations/20241015162632_create_sdk_cache_table.js.map +1 -1
  21. package/dist/migrations/20250103162631_create_record_tracking_table.js +15 -14
  22. package/dist/migrations/20250103162631_create_record_tracking_table.js.map +1 -1
  23. package/dist/mm-erp-sdk.js +4978 -0
  24. package/dist/mm-erp-sdk.js.map +1 -0
  25. package/dist/services/caching-service/batch-cache-manager.d.ts +1 -1
  26. package/dist/services/caching-service/batch-cache-manager.d.ts.map +1 -1
  27. package/dist/services/caching-service/hashed-cache-manager.d.ts +2 -2
  28. package/dist/services/caching-service/hashed-cache-manager.d.ts.map +1 -1
  29. package/dist/services/caching-service/index.d.ts +1 -1
  30. package/dist/services/caching-service/index.d.ts.map +1 -1
  31. package/dist/services/caching-service/record-tracking-manager.d.ts +1 -1
  32. package/dist/services/caching-service/record-tracking-manager.d.ts.map +1 -1
  33. package/dist/services/data-sync-service/configuration-manager.d.ts +1 -1
  34. package/dist/services/data-sync-service/configuration-manager.d.ts.map +1 -1
  35. package/dist/services/data-sync-service/data-sync-service.d.ts.map +1 -1
  36. package/dist/services/data-sync-service/index.d.ts +3 -3
  37. package/dist/services/data-sync-service/index.d.ts.map +1 -1
  38. package/dist/services/data-sync-service/jobs/clean-up-expired-cache.js +39 -40
  39. package/dist/services/data-sync-service/jobs/clean-up-expired-cache.js.map +1 -1
  40. package/dist/services/data-sync-service/jobs/from-erp.d.ts.map +1 -1
  41. package/dist/services/data-sync-service/jobs/from-erp.js +36 -48
  42. package/dist/services/data-sync-service/jobs/from-erp.js.map +1 -1
  43. package/dist/services/data-sync-service/jobs/retry-failed-labor-tickets.js +35 -36
  44. package/dist/services/data-sync-service/jobs/retry-failed-labor-tickets.js.map +1 -1
  45. package/dist/services/data-sync-service/jobs/run-migrations.js +21 -22
  46. package/dist/services/data-sync-service/jobs/run-migrations.js.map +1 -1
  47. package/dist/services/data-sync-service/jobs/to-erp.d.ts.map +1 -1
  48. package/dist/services/data-sync-service/jobs/to-erp.js +45 -48
  49. package/dist/services/data-sync-service/jobs/to-erp.js.map +1 -1
  50. package/dist/services/data-sync-service/nats-labor-ticket-listener.d.ts +30 -0
  51. package/dist/services/data-sync-service/nats-labor-ticket-listener.d.ts.map +1 -0
  52. package/dist/services/erp-api-services/errors.d.ts +1 -1
  53. package/dist/services/erp-api-services/errors.d.ts.map +1 -1
  54. package/dist/services/erp-api-services/graphql/graphql-service.d.ts +2 -2
  55. package/dist/services/erp-api-services/graphql/graphql-service.d.ts.map +1 -1
  56. package/dist/services/erp-api-services/index.d.ts +8 -8
  57. package/dist/services/erp-api-services/index.d.ts.map +1 -1
  58. package/dist/services/erp-api-services/rest/rest-api-service.d.ts +2 -2
  59. package/dist/services/erp-api-services/rest/rest-api-service.d.ts.map +1 -1
  60. package/dist/services/erp-api-services/types.d.ts +2 -2
  61. package/dist/services/erp-api-services/types.d.ts.map +1 -1
  62. package/dist/services/mm-api-service/company-info.d.ts +13 -0
  63. package/dist/services/mm-api-service/company-info.d.ts.map +1 -0
  64. package/dist/services/mm-api-service/index.d.ts +13 -6
  65. package/dist/services/mm-api-service/index.d.ts.map +1 -1
  66. package/dist/services/mm-api-service/mm-api-service.d.ts +13 -7
  67. package/dist/services/mm-api-service/mm-api-service.d.ts.map +1 -1
  68. package/dist/services/mm-api-service/types/entity-transformer.d.ts +2 -2
  69. package/dist/services/mm-api-service/types/entity-transformer.d.ts.map +1 -1
  70. package/dist/services/mm-api-service/types/receive-types.d.ts +3 -0
  71. package/dist/services/mm-api-service/types/receive-types.d.ts.map +1 -1
  72. package/dist/services/nats-service/nats-service.d.ts +114 -0
  73. package/dist/services/nats-service/nats-service.d.ts.map +1 -0
  74. package/dist/services/nats-service/test-nats-subscriber.d.ts +6 -0
  75. package/dist/services/nats-service/test-nats-subscriber.d.ts.map +1 -0
  76. package/dist/services/psql-erp-service/index.d.ts +3 -3
  77. package/dist/services/psql-erp-service/index.d.ts.map +1 -1
  78. package/dist/services/psql-erp-service/psql-service.d.ts +2 -2
  79. package/dist/services/psql-erp-service/psql-service.d.ts.map +1 -1
  80. package/dist/services/reporting-service/index.d.ts +1 -1
  81. package/dist/services/reporting-service/index.d.ts.map +1 -1
  82. package/dist/services/reporting-service/logger.d.ts.map +1 -1
  83. package/dist/services/sql-server-erp-service/index.d.ts +3 -3
  84. package/dist/services/sql-server-erp-service/index.d.ts.map +1 -1
  85. package/dist/services/sql-server-erp-service/internal/sql-labor-ticket-operations.d.ts +2 -2
  86. package/dist/services/sql-server-erp-service/internal/sql-labor-ticket-operations.d.ts.map +1 -1
  87. package/dist/services/sql-server-erp-service/sql-server-helpers.d.ts +3 -3
  88. package/dist/services/sql-server-erp-service/sql-server-helpers.d.ts.map +1 -1
  89. package/dist/services/sql-server-erp-service/sql-server-service.d.ts +2 -2
  90. package/dist/services/sql-server-erp-service/sql-server-service.d.ts.map +1 -1
  91. package/dist/services/sqlite-service/index.d.ts +1 -1
  92. package/dist/services/sqlite-service/index.d.ts.map +1 -1
  93. package/dist/types/erp-connector.d.ts +1 -1
  94. package/dist/types/erp-connector.d.ts.map +1 -1
  95. package/dist/types/index.d.ts +2 -2
  96. package/dist/types/index.d.ts.map +1 -1
  97. package/dist/utils/connector-factory.d.ts +1 -1
  98. package/dist/utils/connector-factory.d.ts.map +1 -1
  99. package/dist/utils/connector-log/log-deduper.d.ts +1 -1
  100. package/dist/utils/connector-log/log-deduper.d.ts.map +1 -1
  101. package/dist/utils/connector-log/mm-connector-logger-example.d.ts +0 -1
  102. package/dist/utils/connector-log/mm-connector-logger.d.ts +1 -1
  103. package/dist/utils/connector-log/mm-connector-logger.d.ts.map +1 -1
  104. package/dist/utils/erp-type-from-entity.d.ts +1 -1
  105. package/dist/utils/erp-type-from-entity.d.ts.map +1 -1
  106. package/dist/utils/error-formatter.d.ts +19 -0
  107. package/dist/utils/error-formatter.d.ts.map +1 -0
  108. package/dist/utils/index.d.ts +38 -33
  109. package/dist/utils/index.d.ts.map +1 -1
  110. package/dist/utils/mm-labor-ticket-helpers.d.ts +1 -1
  111. package/dist/utils/mm-labor-ticket-helpers.d.ts.map +1 -1
  112. package/dist/utils/removeExtraneousFields.d.ts +1 -1
  113. package/dist/utils/removeExtraneousFields.d.ts.map +1 -1
  114. package/dist/utils/removeIdFieldFromPayload.d.ts +1 -1
  115. package/dist/utils/removeIdFieldFromPayload.d.ts.map +1 -1
  116. package/dist/utils/resource-group.d.ts +1 -1
  117. package/dist/utils/resource-group.d.ts.map +1 -1
  118. package/dist/utils/standard-process-drivers/error-processor.d.ts +3 -3
  119. package/dist/utils/standard-process-drivers/error-processor.d.ts.map +1 -1
  120. package/dist/utils/standard-process-drivers/index.d.ts +3 -3
  121. package/dist/utils/standard-process-drivers/index.d.ts.map +1 -1
  122. package/dist/utils/standard-process-drivers/labor-ticket-erp-synchronizer.d.ts +1 -1
  123. package/dist/utils/standard-process-drivers/labor-ticket-erp-synchronizer.d.ts.map +1 -1
  124. package/dist/utils/standard-process-drivers/mm-entity-processor.d.ts +4 -4
  125. package/dist/utils/standard-process-drivers/mm-entity-processor.d.ts.map +1 -1
  126. package/dist/utils/standard-process-drivers/standard-process-drivers.d.ts +4 -4
  127. package/dist/utils/standard-process-drivers/standard-process-drivers.d.ts.map +1 -1
  128. package/package.json +10 -6
  129. package/src/index.ts +45 -42
  130. package/src/knexfile.ts +0 -1
  131. package/src/services/caching-service/batch-cache-manager.ts +2 -2
  132. package/src/services/caching-service/hashed-cache-manager.ts +5 -5
  133. package/src/services/caching-service/index.ts +1 -1
  134. package/src/services/caching-service/record-tracking-manager.ts +2 -2
  135. package/src/services/data-sync-service/configuration-manager.ts +2 -2
  136. package/src/services/data-sync-service/data-sync-service.ts +19 -10
  137. package/src/services/data-sync-service/index.ts +3 -3
  138. package/src/services/data-sync-service/jobs/clean-up-expired-cache.ts +3 -3
  139. package/src/services/data-sync-service/jobs/from-erp.ts +5 -10
  140. package/src/services/data-sync-service/jobs/retry-failed-labor-tickets.ts +2 -2
  141. package/src/services/data-sync-service/jobs/run-migrations.ts +2 -2
  142. package/src/services/data-sync-service/jobs/to-erp.ts +7 -3
  143. package/src/services/data-sync-service/nats-labor-ticket-listener.ts +341 -0
  144. package/src/services/erp-api-services/errors.ts +3 -3
  145. package/src/services/erp-api-services/graphql/graphql-service.ts +5 -5
  146. package/src/services/erp-api-services/index.ts +8 -8
  147. package/src/services/erp-api-services/rest/rest-api-service.ts +4 -4
  148. package/src/services/erp-api-services/types.ts +2 -2
  149. package/src/services/mm-api-service/company-info.ts +87 -0
  150. package/src/services/mm-api-service/index.ts +14 -6
  151. package/src/services/mm-api-service/mm-api-service.ts +29 -12
  152. package/src/services/mm-api-service/token-mgr.ts +4 -4
  153. package/src/services/mm-api-service/types/entity-transformer.ts +3 -3
  154. package/src/services/mm-api-service/types/receive-types.ts +1 -0
  155. package/src/services/nats-service/nats-service.ts +351 -0
  156. package/src/services/nats-service/test-nats-subscriber.ts +96 -0
  157. package/src/services/psql-erp-service/index.ts +3 -3
  158. package/src/services/psql-erp-service/psql-service.ts +4 -4
  159. package/src/services/reporting-service/index.ts +1 -1
  160. package/src/services/reporting-service/logger.ts +81 -111
  161. package/src/services/sql-server-erp-service/index.ts +3 -3
  162. package/src/services/sql-server-erp-service/internal/sql-labor-ticket-operations.ts +2 -2
  163. package/src/services/sql-server-erp-service/internal/sql-transaction-manager.ts +1 -1
  164. package/src/services/sql-server-erp-service/sql-server-helpers.ts +6 -6
  165. package/src/services/sql-server-erp-service/sql-server-service.ts +4 -4
  166. package/src/services/sqlite-service/index.ts +1 -1
  167. package/src/services/sqlite-service/sqlite-coordinator.ts +2 -2
  168. package/src/types/erp-connector.ts +1 -1
  169. package/src/types/index.ts +2 -2
  170. package/src/utils/application-initializer.ts +5 -5
  171. package/src/utils/connector-factory.ts +2 -2
  172. package/src/utils/connector-log/log-deduper.ts +2 -2
  173. package/src/utils/connector-log/mm-connector-logger.ts +3 -3
  174. package/src/utils/erp-type-from-entity.ts +1 -1
  175. package/src/utils/error-formatter.ts +205 -0
  176. package/src/utils/http-client.ts +3 -2
  177. package/src/utils/index.ts +39 -33
  178. package/src/utils/local-data-store/database-lock.ts +1 -1
  179. package/src/utils/mm-labor-ticket-helpers.ts +2 -2
  180. package/src/utils/removeExtraneousFields.ts +1 -1
  181. package/src/utils/removeIdFieldFromPayload.ts +1 -1
  182. package/src/utils/resource-group.ts +2 -2
  183. package/src/utils/standard-process-drivers/error-processor.ts +5 -5
  184. package/src/utils/standard-process-drivers/index.ts +3 -3
  185. package/src/utils/standard-process-drivers/labor-ticket-erp-synchronizer.ts +6 -6
  186. package/src/utils/standard-process-drivers/mm-entity-processor.ts +7 -7
  187. package/src/utils/standard-process-drivers/standard-process-drivers.ts +6 -6
  188. package/src/utils/time-utils.ts +3 -3
  189. package/src/utils/timezone.ts +2 -2
  190. package/dist/index.js +0 -48
  191. package/dist/index.js.map +0 -1
  192. package/dist/knexfile.js +0 -19
  193. package/dist/knexfile.js.map +0 -1
  194. package/dist/migrations/20241015162631_create_cache_table.d.ts +0 -4
  195. package/dist/migrations/20241015162631_create_cache_table.d.ts.map +0 -1
  196. package/dist/migrations/20241015162632_create_sdk_cache_table.d.ts +0 -4
  197. package/dist/migrations/20241015162632_create_sdk_cache_table.d.ts.map +0 -1
  198. package/dist/migrations/20250103162631_create_record_tracking_table.d.ts +0 -4
  199. package/dist/migrations/20250103162631_create_record_tracking_table.d.ts.map +0 -1
  200. package/dist/services/caching-service/batch-cache-manager.js +0 -84
  201. package/dist/services/caching-service/batch-cache-manager.js.map +0 -1
  202. package/dist/services/caching-service/hashed-cache-manager.js +0 -223
  203. package/dist/services/caching-service/hashed-cache-manager.js.map +0 -1
  204. package/dist/services/caching-service/index.js +0 -2
  205. package/dist/services/caching-service/index.js.map +0 -1
  206. package/dist/services/caching-service/record-tracking-manager.js +0 -28
  207. package/dist/services/caching-service/record-tracking-manager.js.map +0 -1
  208. package/dist/services/data-sync-service/configuration-manager.js +0 -163
  209. package/dist/services/data-sync-service/configuration-manager.js.map +0 -1
  210. package/dist/services/data-sync-service/data-sync-service.js +0 -95
  211. package/dist/services/data-sync-service/data-sync-service.js.map +0 -1
  212. package/dist/services/data-sync-service/index.js +0 -10
  213. package/dist/services/data-sync-service/index.js.map +0 -1
  214. package/dist/services/erp-api-services/errors.js +0 -83
  215. package/dist/services/erp-api-services/errors.js.map +0 -1
  216. package/dist/services/erp-api-services/graphql/graphql-service.js +0 -102
  217. package/dist/services/erp-api-services/graphql/graphql-service.js.map +0 -1
  218. package/dist/services/erp-api-services/graphql/types.js +0 -6
  219. package/dist/services/erp-api-services/graphql/types.js.map +0 -1
  220. package/dist/services/erp-api-services/index.js +0 -13
  221. package/dist/services/erp-api-services/index.js.map +0 -1
  222. package/dist/services/erp-api-services/oauth-client.js +0 -41
  223. package/dist/services/erp-api-services/oauth-client.js.map +0 -1
  224. package/dist/services/erp-api-services/rest/get-query-params.js +0 -23
  225. package/dist/services/erp-api-services/rest/get-query-params.js.map +0 -1
  226. package/dist/services/erp-api-services/rest/rest-api-service.js +0 -163
  227. package/dist/services/erp-api-services/rest/rest-api-service.js.map +0 -1
  228. package/dist/services/erp-api-services/types.js +0 -2
  229. package/dist/services/erp-api-services/types.js.map +0 -1
  230. package/dist/services/mm-api-service/index.js +0 -15
  231. package/dist/services/mm-api-service/index.js.map +0 -1
  232. package/dist/services/mm-api-service/mm-api-service.js +0 -519
  233. package/dist/services/mm-api-service/mm-api-service.js.map +0 -1
  234. package/dist/services/mm-api-service/token-mgr.js +0 -113
  235. package/dist/services/mm-api-service/token-mgr.js.map +0 -1
  236. package/dist/services/mm-api-service/types/checkpoint.js +0 -2
  237. package/dist/services/mm-api-service/types/checkpoint.js.map +0 -1
  238. package/dist/services/mm-api-service/types/entity-transformer.js +0 -186
  239. package/dist/services/mm-api-service/types/entity-transformer.js.map +0 -1
  240. package/dist/services/mm-api-service/types/mm-response-interfaces.js +0 -34
  241. package/dist/services/mm-api-service/types/mm-response-interfaces.js.map +0 -1
  242. package/dist/services/mm-api-service/types/receive-types.js +0 -55
  243. package/dist/services/mm-api-service/types/receive-types.js.map +0 -1
  244. package/dist/services/mm-api-service/types/send-types.js +0 -337
  245. package/dist/services/mm-api-service/types/send-types.js.map +0 -1
  246. package/dist/services/psql-erp-service/configuration.js +0 -2
  247. package/dist/services/psql-erp-service/configuration.js.map +0 -1
  248. package/dist/services/psql-erp-service/index.js +0 -10
  249. package/dist/services/psql-erp-service/index.js.map +0 -1
  250. package/dist/services/psql-erp-service/internal/types/psql-types.js +0 -5
  251. package/dist/services/psql-erp-service/internal/types/psql-types.js.map +0 -1
  252. package/dist/services/psql-erp-service/psql-helpers.js +0 -99
  253. package/dist/services/psql-erp-service/psql-helpers.js.map +0 -1
  254. package/dist/services/psql-erp-service/psql-service.js +0 -187
  255. package/dist/services/psql-erp-service/psql-service.js.map +0 -1
  256. package/dist/services/reporting-service/index.js +0 -5
  257. package/dist/services/reporting-service/index.js.map +0 -1
  258. package/dist/services/reporting-service/logger.js +0 -217
  259. package/dist/services/reporting-service/logger.js.map +0 -1
  260. package/dist/services/sql-server-erp-service/configuration.js +0 -2
  261. package/dist/services/sql-server-erp-service/configuration.js.map +0 -1
  262. package/dist/services/sql-server-erp-service/index.js +0 -11
  263. package/dist/services/sql-server-erp-service/index.js.map +0 -1
  264. package/dist/services/sql-server-erp-service/internal/sql-labor-ticket-operations.js +0 -50
  265. package/dist/services/sql-server-erp-service/internal/sql-labor-ticket-operations.js.map +0 -1
  266. package/dist/services/sql-server-erp-service/internal/sql-server-config.js +0 -40
  267. package/dist/services/sql-server-erp-service/internal/sql-server-config.js.map +0 -1
  268. package/dist/services/sql-server-erp-service/internal/sql-transaction-manager.js +0 -36
  269. package/dist/services/sql-server-erp-service/internal/sql-transaction-manager.js.map +0 -1
  270. package/dist/services/sql-server-erp-service/internal/types/sql-server-types.js +0 -2
  271. package/dist/services/sql-server-erp-service/internal/types/sql-server-types.js.map +0 -1
  272. package/dist/services/sql-server-erp-service/sql-server-helpers.js +0 -66
  273. package/dist/services/sql-server-erp-service/sql-server-helpers.js.map +0 -1
  274. package/dist/services/sql-server-erp-service/sql-server-service.js +0 -154
  275. package/dist/services/sql-server-erp-service/sql-server-service.js.map +0 -1
  276. package/dist/services/sql-server-erp-service/types/sql-input-param.js +0 -2
  277. package/dist/services/sql-server-erp-service/types/sql-input-param.js.map +0 -1
  278. package/dist/services/sqlite-service/index.js +0 -2
  279. package/dist/services/sqlite-service/index.js.map +0 -1
  280. package/dist/services/sqlite-service/sqlite-coordinator.js +0 -60
  281. package/dist/services/sqlite-service/sqlite-coordinator.js.map +0 -1
  282. package/dist/types/erp-connector.js +0 -2
  283. package/dist/types/erp-connector.js.map +0 -1
  284. package/dist/types/erp-types.js +0 -13
  285. package/dist/types/erp-types.js.map +0 -1
  286. package/dist/types/index.js +0 -6
  287. package/dist/types/index.js.map +0 -1
  288. package/dist/utils/application-initializer.js +0 -55
  289. package/dist/utils/application-initializer.js.map +0 -1
  290. package/dist/utils/cleanup-numbers.js +0 -6
  291. package/dist/utils/cleanup-numbers.js.map +0 -1
  292. package/dist/utils/connector-factory.js +0 -34
  293. package/dist/utils/connector-factory.js.map +0 -1
  294. package/dist/utils/connector-log/log-deduper.js +0 -240
  295. package/dist/utils/connector-log/log-deduper.js.map +0 -1
  296. package/dist/utils/connector-log/mm-connector-logger-example.js +0 -88
  297. package/dist/utils/connector-log/mm-connector-logger-example.js.map +0 -1
  298. package/dist/utils/connector-log/mm-connector-logger.js +0 -151
  299. package/dist/utils/connector-log/mm-connector-logger.js.map +0 -1
  300. package/dist/utils/data-transformation.js +0 -38
  301. package/dist/utils/data-transformation.js.map +0 -1
  302. package/dist/utils/erp-type-from-entity.js +0 -6
  303. package/dist/utils/erp-type-from-entity.js.map +0 -1
  304. package/dist/utils/error-utils.js +0 -21
  305. package/dist/utils/error-utils.js.map +0 -1
  306. package/dist/utils/http-client.js +0 -186
  307. package/dist/utils/http-client.js.map +0 -1
  308. package/dist/utils/index.js +0 -65
  309. package/dist/utils/index.js.map +0 -1
  310. package/dist/utils/local-data-store/database-lock.js +0 -68
  311. package/dist/utils/local-data-store/database-lock.js.map +0 -1
  312. package/dist/utils/local-data-store/jobs-shared-data.js +0 -116
  313. package/dist/utils/local-data-store/jobs-shared-data.js.map +0 -1
  314. package/dist/utils/mm-labor-ticket-helpers.js +0 -23
  315. package/dist/utils/mm-labor-ticket-helpers.js.map +0 -1
  316. package/dist/utils/removeExtraneousFields.js +0 -16
  317. package/dist/utils/removeExtraneousFields.js.map +0 -1
  318. package/dist/utils/removeIdFieldFromPayload.js +0 -16
  319. package/dist/utils/removeIdFieldFromPayload.js.map +0 -1
  320. package/dist/utils/resource-group.js +0 -59
  321. package/dist/utils/resource-group.js.map +0 -1
  322. package/dist/utils/standard-process-drivers/error-processor.js +0 -262
  323. package/dist/utils/standard-process-drivers/error-processor.js.map +0 -1
  324. package/dist/utils/standard-process-drivers/index.js +0 -4
  325. package/dist/utils/standard-process-drivers/index.js.map +0 -1
  326. package/dist/utils/standard-process-drivers/labor-ticket-erp-synchronizer.js +0 -164
  327. package/dist/utils/standard-process-drivers/labor-ticket-erp-synchronizer.js.map +0 -1
  328. package/dist/utils/standard-process-drivers/mm-entity-processor.js +0 -168
  329. package/dist/utils/standard-process-drivers/mm-entity-processor.js.map +0 -1
  330. package/dist/utils/standard-process-drivers/standard-process-drivers.js +0 -324
  331. package/dist/utils/standard-process-drivers/standard-process-drivers.js.map +0 -1
  332. package/dist/utils/time-utils.js +0 -96
  333. package/dist/utils/time-utils.js.map +0 -1
  334. package/dist/utils/timezone.js +0 -105
  335. package/dist/utils/timezone.js.map +0 -1
  336. package/dist/utils/trimObjectValues.js +0 -11
  337. package/dist/utils/trimObjectValues.js.map +0 -1
  338. package/dist/utils/uniqueRows.js +0 -35
  339. package/dist/utils/uniqueRows.js.map +0 -1
@@ -1,223 +0,0 @@
1
- import knex from "knex";
2
- import config from "../../knexfile.js";
3
- import stringify from "json-stable-stringify";
4
- import XXH from "xxhashjs";
5
- import { CoreConfiguration } from "../data-sync-service/configuration-manager.js";
6
- import { logger } from "../reporting-service/index.js";
7
- export class HashedCacheManager {
8
- static TABLE_NAME = "sdk_cache";
9
- db;
10
- options;
11
- static SEED = 0xabcd; // Arbitrary seed for hashing
12
- isDestroyed = false;
13
- metrics = {
14
- recordCounts: {},
15
- };
16
- constructor(options) {
17
- this.options = {
18
- ttl: options?.ttl || CoreConfiguration.inst().cacheTTL,
19
- tableName: options?.tableName || HashedCacheManager.TABLE_NAME,
20
- };
21
- this.db = knex({
22
- ...config.local,
23
- pool: {
24
- min: 0,
25
- max: 10,
26
- },
27
- });
28
- }
29
- /**
30
- * Checks if the cache manager is still valid
31
- * @throws Error if the cache manager has been destroyed
32
- */
33
- checkValid() {
34
- if (this.isDestroyed) {
35
- throw new Error("Cache manager has been destroyed");
36
- }
37
- }
38
- /**
39
- * Generates a stable hash of a record using JSON stringify + xxhash
40
- */
41
- static hashRecord(record) {
42
- try {
43
- const serialized = stringify(record);
44
- if (!serialized) {
45
- throw new Error("Failed to serialize record for hashing");
46
- }
47
- const hash = XXH.h64(serialized, HashedCacheManager.SEED).toString(16);
48
- return hash;
49
- }
50
- catch (error) {
51
- if (error instanceof Error && error.message.includes("circular")) {
52
- throw new Error("Failed to serialize record for hashing");
53
- }
54
- throw error;
55
- }
56
- }
57
- /**
58
- * Gets a record from the cache
59
- * @param type The type of record
60
- * @param hash The hash of the record
61
- * @returns The record if it exists, null otherwise
62
- */
63
- async getRecord(type, hash) {
64
- this.checkValid();
65
- return this.db(this.options.tableName)
66
- .select("key")
67
- .where({ type, key: hash })
68
- .first();
69
- }
70
- /**
71
- * Stores a record in the cache
72
- * @param type The type of record
73
- * @param record The record to store
74
- * @returns true if a new record was created, false if an existing record was updated
75
- */
76
- async store(type, record) {
77
- if (!this.isDestroyed && record) {
78
- try {
79
- const hash = HashedCacheManager.hashRecord(record);
80
- const now = new Date();
81
- // First check if record exists with same type and hash
82
- const existing = await this.db(this.options.tableName)
83
- .where({
84
- type,
85
- key: hash,
86
- })
87
- .first();
88
- if (existing) {
89
- return false; // No need to update, hash hasn't changed
90
- }
91
- else {
92
- // Insert new record with minimal data
93
- const result = await this.db(this.options.tableName)
94
- .insert({
95
- type,
96
- key: hash,
97
- created_at: now,
98
- })
99
- .returning("id");
100
- return result.length > 0;
101
- }
102
- }
103
- catch (error) {
104
- logger.error("Error storing record:", error);
105
- throw error;
106
- }
107
- }
108
- return false;
109
- }
110
- /**
111
- * Checks if a record has changed since last seen
112
- * @param type The type of record
113
- * @param record The record to check
114
- * @returns true if the record has changed or is new
115
- */
116
- async hasChanged(type, record) {
117
- this.checkValid();
118
- const newHash = HashedCacheManager.hashRecord(record);
119
- const existing = await this.getRecord(type, newHash);
120
- return !existing;
121
- }
122
- /**
123
- * Checks if a record has changed and stores it if it has
124
- * @param type The type of record
125
- * @param record The record to check and store
126
- * @returns true if the record was changed or is new
127
- */
128
- async upsert(type, record) {
129
- this.checkValid();
130
- const hasChanged = await this.hasChanged(type, record);
131
- if (hasChanged) {
132
- await this.store(type, record);
133
- }
134
- return hasChanged;
135
- }
136
- /**
137
- * Removes expired records based on TTL
138
- */
139
- async removeExpiredObjects() {
140
- this.checkValid();
141
- const ttl = this.options.ttl;
142
- if (!ttl)
143
- return;
144
- const ttlMilliseconds = ttl * 1000;
145
- const expirationLimitDate = new Date(Date.now() - ttlMilliseconds);
146
- const expirationLimit = expirationLimitDate
147
- .toISOString()
148
- .slice(0, 19)
149
- .replace("T", " ");
150
- await this.db(this.options.tableName)
151
- .where("created_at", "<", expirationLimit)
152
- .del();
153
- }
154
- /**
155
- * Gets all records of a specific type
156
- */
157
- async getRecordsByType(type) {
158
- this.checkValid();
159
- const records = await this.db(this.options.tableName)
160
- .select("key")
161
- .where({ type });
162
- return records.map((record) => record.key);
163
- }
164
- /**
165
- * Removes all records of a specific type
166
- */
167
- async removeRecordsByType(type) {
168
- this.checkValid();
169
- await this.db(this.options.tableName).where({ type }).del();
170
- }
171
- /**
172
- * Removes a specific record
173
- */
174
- async removeRecord(type, record) {
175
- if (!this.isDestroyed) {
176
- try {
177
- const hash = HashedCacheManager.hashRecord(record);
178
- await this.db(this.options.tableName)
179
- .where({ type, key: hash }) // Use key for deletion
180
- .del();
181
- }
182
- catch (error) {
183
- logger.error("Error removing record:", error);
184
- throw error;
185
- }
186
- }
187
- }
188
- /**
189
- * Clears all records from the cache
190
- */
191
- async clear() {
192
- this.checkValid();
193
- await this.db(this.options.tableName).del();
194
- }
195
- /**
196
- * Cleans up database connection and marks the cache manager as destroyed
197
- */
198
- async destroy() {
199
- if (!this.isDestroyed) {
200
- await this.db.destroy();
201
- this.isDestroyed = true;
202
- }
203
- }
204
- /**
205
- * Gets the current cache metrics
206
- * @returns The current cache metrics
207
- */
208
- async getMetrics() {
209
- this.checkValid();
210
- // Get counts for each type
211
- const counts = (await this.db(this.options.tableName)
212
- .select("type")
213
- .count("* as count")
214
- .groupBy("type"));
215
- // Update metrics
216
- this.metrics.recordCounts = counts.reduce((acc, row) => {
217
- acc[row.type] = parseInt(row.count, 10);
218
- return acc;
219
- }, {});
220
- return this.metrics;
221
- }
222
- }
223
- //# sourceMappingURL=hashed-cache-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hashed-cache-manager.js","sourceRoot":"","sources":["../../../src/services/caching-service/hashed-cache-manager.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/caching-service/index.ts"],"names":[],"mappings":""}
@@ -1,28 +0,0 @@
1
- import knex from "knex";
2
- import config from "../../knexfile.js";
3
- const DEFAULT_RECORD_TRACKING_TABLE_NAME = "record_tracking";
4
- export class RecordTrackingManager {
5
- db;
6
- constructor() {
7
- this.db = knex(config.local);
8
- }
9
- async updateRecord(record) {
10
- if (record.lastValue && record.recordId) {
11
- const recordUpdated = await this.db(DEFAULT_RECORD_TRACKING_TABLE_NAME)
12
- .where({ entityType: record.entityType })
13
- .update(record);
14
- if (recordUpdated < 1) {
15
- await this.db(DEFAULT_RECORD_TRACKING_TABLE_NAME).insert(record);
16
- }
17
- }
18
- }
19
- async getTrackingRecord(type) {
20
- return await this.db(DEFAULT_RECORD_TRACKING_TABLE_NAME)
21
- .select("*")
22
- .where({ entityType: type.toString() });
23
- }
24
- async destroy() {
25
- return this.db.destroy();
26
- }
27
- }
28
- //# sourceMappingURL=record-tracking-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"record-tracking-manager.js","sourceRoot":"","sources":["../../../src/services/caching-service/record-tracking-manager.ts"],"names":[],"mappings":"AAAA,OAAO,IAAc,MAAM,MAAM,CAAC;AAClC,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAGvC,MAAM,kCAAkC,GAAG,iBAAiB,CAAC;AAQ7D,MAAM,OAAO,qBAAqB;IAChC,EAAE,CAAO;IAET;QACE,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAA4B;QAC7C,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACxC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,kCAAkC,CAAC;iBACpE,KAAK,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC;iBACxC,MAAM,CAAC,MAAM,CAAC,CAAC;YAElB,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;gBACtB,MAAM,IAAI,CAAC,EAAE,CAAC,kCAAkC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACnE,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,IAAgB;QACtC,OAAO,MAAM,IAAI,CAAC,EAAE,CAAC,kCAAkC,CAAC;aACrD,MAAM,CAAC,GAAG,CAAC;aACX,KAAK,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,OAAO;QACX,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;CACF"}
@@ -1,163 +0,0 @@
1
- import "dotenv/config";
2
- import { configureLogger } from "../reporting-service/logger.js";
3
- export class CoreConfiguration {
4
- static instance;
5
- // General Configuration
6
- logLevel;
7
- erpSystem;
8
- nodeEnv;
9
- // MM API (aka "Mapping") Service
10
- mmERPSvcApiBaseUrl;
11
- mmApiBaseUrl;
12
- mmApiAuthToken;
13
- mmApiRetryAttempts;
14
- // Caching (optionally used for interacting with the MM API)
15
- cacheTTL;
16
- // ERP API Service
17
- erpApiPagingLimit; //Pagination limit for ERP API
18
- // Job timing Intervals
19
- fromErpInterval;
20
- toErpInterval;
21
- retryLaborTicketsInterval;
22
- cacheExpirationCheckInterval;
23
- constructor() {
24
- this.logLevel = process.env.LOG_LEVEL || "info";
25
- this.erpSystem = process.env.ERP_SYSTEM || "template";
26
- this.nodeEnv = process.env.NODE_ENV || "development";
27
- //#region MM API (aka "Mapping") Service
28
- /**
29
- * MM ERP Service REST API URL (typically https://erp-api.svc.machinemetrics.com)
30
- */
31
- this.mmERPSvcApiBaseUrl = process.env.MM_MAPPING_SERVICE_URL || "";
32
- /**
33
- * MM REST API URL (typically https://api.machinemetrics.com)
34
- */
35
- console.log("=== CONFIG DEBUG ===");
36
- console.log("MM_MAPPING_AUTH_SERVICE_URL env var:", process.env.MM_MAPPING_AUTH_SERVICE_URL);
37
- this.mmApiBaseUrl = process.env.MM_MAPPING_AUTH_SERVICE_URL || "";
38
- console.log("mmApiBaseUrl set to:", this.mmApiBaseUrl);
39
- console.log("=== END CONFIG DEBUG ===");
40
- /**
41
- * Company Auth Token
42
- */
43
- this.mmApiAuthToken = process.env.MM_MAPPING_SERVICE_TOKEN || "";
44
- /**
45
- * Number of retry attempts for MM API calls
46
- */
47
- this.mmApiRetryAttempts = parseInt(process.env.RETRY_ATTEMPTS || "0");
48
- //#endregion MM API (aka "Mapping") Service
49
- /**
50
- * Default pagination limit for ERP API
51
- */
52
- this.erpApiPagingLimit = parseInt(process.env.ERP_PAGINATION_LIMIT || "0");
53
- //#endregion ERP API Service
54
- /**
55
- * For how to define the intervals, see Bree's documentation: https://github.com/breejs/bree
56
- */
57
- this.fromErpInterval =
58
- process.env.FROM_ERP_INTERVAL || process.env.POLL_INTERVAL || "5 min";
59
- this.toErpInterval = process.env.TO_ERP_INTERVAL || "5 min";
60
- this.retryLaborTicketsInterval =
61
- process.env.RETRY_LABOR_TICKETS_INTERVAL || "30 min";
62
- this.cacheExpirationCheckInterval =
63
- process.env.CACHE_EXPIRATION_CHECK_INTERVAL || "5 min";
64
- /**
65
- * Cache TTL (in seconds)
66
- */
67
- const cacheTTLDef = 7 * 24 * 60 * 60; // 7 days
68
- this.cacheTTL = parseInt(process.env.CACHE_TTL || cacheTTLDef.toString());
69
- // Configure the logger with our settings
70
- configureLogger(this.logLevel, this.nodeEnv);
71
- }
72
- static inst() {
73
- if (!CoreConfiguration.instance) {
74
- CoreConfiguration.instance = new CoreConfiguration();
75
- }
76
- return CoreConfiguration.instance;
77
- }
78
- /**
79
- * Returns a sanitized version of the configuration for safe logging.
80
- * Masks sensitive fields like authentication tokens.
81
- */
82
- toSafeLogObject() {
83
- const maskSensitiveValue = (value) => {
84
- if (!value || value.length === 0) {
85
- return "";
86
- }
87
- if (value.length < 6) {
88
- return "********";
89
- }
90
- // Show first 3 and last 3 characters, mask the middle
91
- return value.substring(0, 3) + "********" + value.substring(value.length - 3);
92
- };
93
- return {
94
- logLevel: this.logLevel,
95
- erpSystem: this.erpSystem,
96
- nodeEnv: this.nodeEnv,
97
- mmERPSvcApiBaseUrl: this.mmERPSvcApiBaseUrl,
98
- mmApiBaseUrl: this.mmApiBaseUrl,
99
- mmApiAuthToken: maskSensitiveValue(this.mmApiAuthToken),
100
- mmApiRetryAttempts: this.mmApiRetryAttempts,
101
- cacheTTL: this.cacheTTL,
102
- erpApiPagingLimit: this.erpApiPagingLimit,
103
- fromErpInterval: this.fromErpInterval,
104
- toErpInterval: this.toErpInterval,
105
- retryLaborTicketsInterval: this.retryLaborTicketsInterval,
106
- cacheExpirationCheckInterval: this.cacheExpirationCheckInterval,
107
- };
108
- }
109
- }
110
- /**
111
- * Helper function to get the SQL Server Configuration for collectors that use SQL Server to interact with the ERP
112
- */
113
- export const getSQLServerConfiguration = () => {
114
- return {
115
- username: process.env.ERP_SQLSERVER_USERNAME || "",
116
- password: process.env.ERP_SQLSERVER_PASSWORD || "",
117
- database: process.env.ERP_SQLSERVER_DATABASE || "",
118
- host: process.env.ERP_SQLSERVER_HOST || process.env.ERP_SQLSERVER_SERVER || "",
119
- port: process.env.ERP_SQLSERVER_PORT || "1433",
120
- connectionTimeout: process.env.ERP_SQLSERVER_CONNECTION_TIMEOUT || "30000",
121
- requestTimeout: process.env.ERP_SQLSERVER_REQUEST_TIMEOUT || "60000",
122
- poolMax: process.env.ERP_SQLSERVER_MAX || "10",
123
- poolMin: process.env.ERP_SQLSERVER_MIN || "0",
124
- idleTimeoutMillis: process.env.ERP_SQLSERVER_IDLE_TIMEOUT_MMILLIS || "30000",
125
- encrypt: process.env.ERP_SQLSERVER_ENCRYPT === "true",
126
- trustServer: process.env.ERP_SQLSERVER_TRUST_SERVER === "true",
127
- };
128
- };
129
- /**
130
- * Parameters required to connect to an ERP system via its API.
131
- * Contains all the necessary settings to establish a connection and authenticate with an ERP system's API.
132
- */
133
- export class ErpApiConnectionParams {
134
- erpApiUrl;
135
- erpApiClientId;
136
- erpApiClientSecret;
137
- erpApiOrganizationId;
138
- erpAuthBaseUrl;
139
- retryAttempts;
140
- constructor(erpApiUrl, // Base url of ERP
141
- erpApiClientId, // Client ID to authenticate with ERP
142
- erpApiClientSecret, // Client Secret to authenticate with ERP
143
- erpApiOrganizationId, // Organization / tenant Id
144
- erpAuthBaseUrl, // Auth base url
145
- retryAttempts = 3 // Number of retry attempts for API calls
146
- ) {
147
- this.erpApiUrl = erpApiUrl;
148
- this.erpApiClientId = erpApiClientId;
149
- this.erpApiClientSecret = erpApiClientSecret;
150
- this.erpApiOrganizationId = erpApiOrganizationId;
151
- this.erpAuthBaseUrl = erpAuthBaseUrl;
152
- this.retryAttempts = retryAttempts;
153
- }
154
- }
155
- /**
156
- * Helper function to get the ERP API Connection Parameters
157
- * Not all connectors use these, but keeping these commonly values in one place may
158
- * make it easier to set and understand env var names set in App.
159
- */
160
- export const getErpApiConnectionParams = () => {
161
- return new ErpApiConnectionParams(process.env.ERP_API_URL || "", process.env.ERP_API_CLIENT_ID || "", process.env.ERP_API_CLIENT_SECRET || "", process.env.ERP_API_ORGANIZATION_ID || "", process.env.ERP_AUTH_BASE_URL || "", parseInt(process.env.ERP_API_RETRY_ATTEMPTS || "3"));
162
- };
163
- //# sourceMappingURL=configuration-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"configuration-manager.js","sourceRoot":"","sources":["../../../src/services/data-sync-service/configuration-manager.ts"],"names":[],"mappings":"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"}
@@ -1,95 +0,0 @@
1
- import Bree from "bree";
2
- import Graceful from "@ladjs/graceful";
3
- import path from "path";
4
- import { fileURLToPath } from "url";
5
- import { CoreConfiguration } from "./configuration-manager.js";
6
- import logger from "../reporting-service/logger.js";
7
- const GracefulClass = Graceful;
8
- export const runDataSyncService = async (connectorPath) => {
9
- const config = CoreConfiguration.inst();
10
- try {
11
- // Find the SDK's node_modules directory and jobs path using ES module import
12
- const currentFileUrl = import.meta.url;
13
- const currentFilePath = fileURLToPath(currentFileUrl);
14
- // Navigate from current file to the SDK root and then to jobs
15
- // Current: /path/to/sdk/dist/mm-erp-sdk.js.js
16
- // Target: /path/to/sdk/dist/services/data-sync-service/jobs
17
- const sdkDistPath = path.dirname(currentFilePath);
18
- const jobsPath = path.join(sdkDistPath, "jobs");
19
- const bree = new Bree({
20
- root: jobsPath,
21
- logger,
22
- worker: {
23
- env: {
24
- CONNECTOR_PATH: connectorPath,
25
- // Pass through all required environment variables
26
- MM_MAPPING_SERVICE_URL: process.env.MM_MAPPING_SERVICE_URL,
27
- MM_MAPPING_AUTH_SERVICE_URL: process.env.MM_MAPPING_AUTH_SERVICE_URL,
28
- MM_MAPPING_SERVICE_TOKEN: process.env.MM_MAPPING_SERVICE_TOKEN,
29
- ERP_SYSTEM: process.env.ERP_SYSTEM,
30
- LOG_LEVEL: process.env.LOG_LEVEL,
31
- NODE_ENV: process.env.NODE_ENV,
32
- RETRY_ATTEMPTS: process.env.RETRY_ATTEMPTS,
33
- CACHE_TTL: process.env.CACHE_TTL,
34
- // Pass through all other environment variables that might be needed
35
- ...process.env,
36
- },
37
- },
38
- jobs: [
39
- // {
40
- // name: 'run-migrations', // Running this once on startup will create the tables in the sqlite database
41
- // },
42
- {
43
- name: "from-erp",
44
- timeout: "10s",
45
- interval: config.fromErpInterval,
46
- },
47
- {
48
- name: "to-erp",
49
- //timeout: '3s', // Use timeout during development to see the job in action quickly
50
- interval: config.toErpInterval,
51
- },
52
- {
53
- name: "retry-failed-labor-tickets",
54
- interval: config.retryLaborTicketsInterval,
55
- },
56
- {
57
- name: "clean-up-expired-cache",
58
- interval: config.cacheExpirationCheckInterval,
59
- },
60
- ],
61
- });
62
- logger.info("\n================================INITIATING DATA SYNC CYCLES (Bree)================================\n");
63
- const jobsConfig = bree.config.jobs.map((job) => ({
64
- name: job.name,
65
- interval: job.interval,
66
- timeout: job.timeout,
67
- }));
68
- logger.info("JOBS CONFIGURATION:", { jobs: jobsConfig });
69
- const graceful = new GracefulClass({ brees: [bree] });
70
- graceful.listen();
71
- (async () => {
72
- await bree.start();
73
- })();
74
- bree.on("jobStarted", (job) => {
75
- console.log("Job " + job.name + " started");
76
- });
77
- bree.on("jobCompleted", (job) => {
78
- if (job.error) {
79
- console.error("Job " + job.name + " failed:", job.error);
80
- }
81
- else {
82
- console.log("Job " + job.name + " completed successfully!");
83
- }
84
- });
85
- bree.on("error", (error) => {
86
- console.error("Bree error:", error);
87
- });
88
- // Exit and let the jobs take over
89
- logger.info("\n================================DATA SYNC CYCLES INITIATION COMPLETED================================\n");
90
- }
91
- catch (error) {
92
- logger.error("startUp: Error initiating data sync cycles:", error);
93
- }
94
- };
95
- //# sourceMappingURL=data-sync-service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"data-sync-service.js","sourceRoot":"","sources":["../../../src/services/data-sync-service/data-sync-service.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- /**
2
- * Core data sync service functionality
3
- */
4
- export { runDataSyncService } from "./data-sync-service.js";
5
- /**
6
- * Configuration management for data sync
7
- */
8
- export { getSQLServerConfiguration } from "./configuration-manager.js";
9
- export { ErpApiConnectionParams, getErpApiConnectionParams } from "./configuration-manager.js";
10
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/data-sync-service/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D;;GAEG;AACH,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAEvE,OAAO,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC"}
@@ -1,83 +0,0 @@
1
- import { AxiosError } from "axios";
2
- import logger from "../reporting-service/logger.js";
3
- import { HTTPError } from "../../utils/http-client.js";
4
- /**
5
- * Represents GraphQL specific errors (validation, missing fields, etc.)
6
- */
7
- export class GraphQLError extends Error {
8
- errors;
9
- constructor(message, errors) {
10
- super(message);
11
- this.errors = errors;
12
- this.name = "GraphQLError";
13
- }
14
- }
15
- /**
16
- * Centralized error handling for API requests.
17
- * Transforms various error types into standardized HTTPError or GraphQLError.
18
- */
19
- export class ErrorHandler {
20
- /**
21
- * Transforms any error into a standardized HTTPError or GraphQLError and throws it.
22
- * Never returns - always throws an error.
23
- *
24
- * @throws {HTTPError|GraphQLError} Standardized error with appropriate details
25
- */
26
- static handle(error) {
27
- // Handle HTTPError (already processed by http-client)
28
- if (error instanceof HTTPError) {
29
- // For GraphQL responses with errors in the data
30
- if (error.data &&
31
- typeof error.data === "object" &&
32
- "errors" in error.data) {
33
- const graphqlError = new GraphQLError("GraphQL Error", error.data.errors);
34
- // Log the error
35
- logger.error("Error>>GraphQL", {
36
- message: graphqlError.message,
37
- errors: graphqlError.errors,
38
- });
39
- throw graphqlError;
40
- }
41
- // Log HTTP error with generic response data
42
- logger.error("Error>>HTTP", {
43
- status: error.status,
44
- message: error.message,
45
- code: error.code,
46
- data: error.data,
47
- });
48
- throw error; // Re-throw the original HTTPError
49
- }
50
- // Handle raw AxiosError (direct usage, not through http-client)
51
- if (error instanceof AxiosError) {
52
- // For GraphQL responses with errors
53
- if (error.response?.data?.errors) {
54
- const graphqlError = new GraphQLError("GraphQL Error", error.response.data.errors);
55
- // Log the error
56
- logger.error("Error>>GraphQL", {
57
- message: graphqlError.message,
58
- errors: graphqlError.errors,
59
- });
60
- throw graphqlError;
61
- }
62
- // For HTTP errors - create HTTPError and log with response data
63
- const httpError = new HTTPError(error.message, error.response?.status || 500, error.code, error.response?.data);
64
- // Log HTTP error with generic response data
65
- logger.error("Error>>HTTP", {
66
- status: httpError.status,
67
- message: httpError.message,
68
- code: httpError.code,
69
- data: httpError.data,
70
- });
71
- throw httpError;
72
- }
73
- // For other errors
74
- const httpError = new HTTPError(error instanceof Error ? error.message : "An unknown error occurred", 500);
75
- // Log the error
76
- logger.error("Error>>Unknown", {
77
- message: httpError.message,
78
- status: httpError.status,
79
- });
80
- throw httpError;
81
- }
82
- }
83
- //# sourceMappingURL=errors.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/services/erp-api-services/errors.ts"],"names":[],"mappings":"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"}