@machinemetrics/mm-erp-sdk 0.1.9-beta.5 → 0.1.9
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.
- package/README.md +5 -0
- package/dist/index.d.ts +42 -43
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +48 -0
- package/dist/index.js.map +1 -0
- package/dist/knexfile.d.ts.map +1 -1
- package/dist/knexfile.js +19 -0
- package/dist/knexfile.js.map +1 -0
- package/dist/migrations/20241015162631_create_cache_table.d.ts +4 -0
- package/dist/migrations/20241015162631_create_cache_table.d.ts.map +1 -0
- package/dist/migrations/20241015162631_create_cache_table.js +11 -15
- package/dist/migrations/20241015162631_create_cache_table.js.map +1 -1
- package/dist/migrations/20241015162632_create_sdk_cache_table.d.ts +4 -0
- package/dist/migrations/20241015162632_create_sdk_cache_table.d.ts.map +1 -0
- package/dist/migrations/20241015162632_create_sdk_cache_table.js +11 -15
- package/dist/migrations/20241015162632_create_sdk_cache_table.js.map +1 -1
- package/dist/migrations/20250103162631_create_record_tracking_table.d.ts +4 -0
- package/dist/migrations/20250103162631_create_record_tracking_table.d.ts.map +1 -0
- package/dist/migrations/20250103162631_create_record_tracking_table.js +14 -15
- package/dist/migrations/20250103162631_create_record_tracking_table.js.map +1 -1
- package/dist/services/caching-service/batch-cache-manager.d.ts +1 -1
- package/dist/services/caching-service/batch-cache-manager.d.ts.map +1 -1
- package/dist/services/caching-service/batch-cache-manager.js +84 -0
- package/dist/services/caching-service/batch-cache-manager.js.map +1 -0
- package/dist/services/caching-service/hashed-cache-manager.d.ts +2 -2
- package/dist/services/caching-service/hashed-cache-manager.d.ts.map +1 -1
- package/dist/services/caching-service/hashed-cache-manager.js +223 -0
- package/dist/services/caching-service/hashed-cache-manager.js.map +1 -0
- package/dist/services/caching-service/index.d.ts +1 -1
- package/dist/services/caching-service/index.d.ts.map +1 -1
- package/dist/services/caching-service/index.js +2 -0
- package/dist/services/caching-service/index.js.map +1 -0
- package/dist/services/caching-service/record-tracking-manager.d.ts +1 -1
- package/dist/services/caching-service/record-tracking-manager.d.ts.map +1 -1
- package/dist/services/caching-service/record-tracking-manager.js +28 -0
- package/dist/services/caching-service/record-tracking-manager.js.map +1 -0
- package/dist/services/data-sync-service/configuration-manager.d.ts +1 -1
- package/dist/services/data-sync-service/configuration-manager.d.ts.map +1 -1
- package/dist/services/data-sync-service/configuration-manager.js +163 -0
- package/dist/services/data-sync-service/configuration-manager.js.map +1 -0
- package/dist/services/data-sync-service/data-sync-service.d.ts.map +1 -1
- package/dist/services/data-sync-service/data-sync-service.js +95 -0
- package/dist/services/data-sync-service/data-sync-service.js.map +1 -0
- package/dist/services/data-sync-service/index.d.ts +3 -3
- package/dist/services/data-sync-service/index.d.ts.map +1 -1
- package/dist/services/data-sync-service/index.js +10 -0
- package/dist/services/data-sync-service/index.js.map +1 -0
- package/dist/services/data-sync-service/jobs/clean-up-expired-cache.js +40 -39
- package/dist/services/data-sync-service/jobs/clean-up-expired-cache.js.map +1 -1
- package/dist/services/data-sync-service/jobs/from-erp.d.ts.map +1 -1
- package/dist/services/data-sync-service/jobs/from-erp.js +48 -36
- package/dist/services/data-sync-service/jobs/from-erp.js.map +1 -1
- package/dist/services/data-sync-service/jobs/retry-failed-labor-tickets.js +36 -35
- package/dist/services/data-sync-service/jobs/retry-failed-labor-tickets.js.map +1 -1
- package/dist/services/data-sync-service/jobs/run-migrations.js +22 -21
- package/dist/services/data-sync-service/jobs/run-migrations.js.map +1 -1
- package/dist/services/data-sync-service/jobs/to-erp.d.ts.map +1 -1
- package/dist/services/data-sync-service/jobs/to-erp.js +48 -45
- package/dist/services/data-sync-service/jobs/to-erp.js.map +1 -1
- package/dist/services/erp-api-services/errors.d.ts +1 -1
- package/dist/services/erp-api-services/errors.d.ts.map +1 -1
- package/dist/services/erp-api-services/errors.js +83 -0
- package/dist/services/erp-api-services/errors.js.map +1 -0
- package/dist/services/erp-api-services/graphql/graphql-service.d.ts +2 -2
- package/dist/services/erp-api-services/graphql/graphql-service.d.ts.map +1 -1
- package/dist/services/erp-api-services/graphql/graphql-service.js +102 -0
- package/dist/services/erp-api-services/graphql/graphql-service.js.map +1 -0
- package/dist/services/erp-api-services/graphql/types.js +6 -0
- package/dist/services/erp-api-services/graphql/types.js.map +1 -0
- package/dist/services/erp-api-services/index.d.ts +8 -8
- package/dist/services/erp-api-services/index.d.ts.map +1 -1
- package/dist/services/erp-api-services/index.js +13 -0
- package/dist/services/erp-api-services/index.js.map +1 -0
- package/dist/services/erp-api-services/oauth-client.js +41 -0
- package/dist/services/erp-api-services/oauth-client.js.map +1 -0
- package/dist/services/erp-api-services/rest/get-query-params.js +23 -0
- package/dist/services/erp-api-services/rest/get-query-params.js.map +1 -0
- package/dist/services/erp-api-services/rest/rest-api-service.d.ts +2 -2
- package/dist/services/erp-api-services/rest/rest-api-service.d.ts.map +1 -1
- package/dist/services/erp-api-services/rest/rest-api-service.js +163 -0
- package/dist/services/erp-api-services/rest/rest-api-service.js.map +1 -0
- package/dist/services/erp-api-services/types.d.ts +2 -2
- package/dist/services/erp-api-services/types.d.ts.map +1 -1
- package/dist/services/erp-api-services/types.js +2 -0
- package/dist/services/erp-api-services/types.js.map +1 -0
- package/dist/services/mm-api-service/index.d.ts +6 -13
- package/dist/services/mm-api-service/index.d.ts.map +1 -1
- package/dist/services/mm-api-service/index.js +15 -0
- package/dist/services/mm-api-service/index.js.map +1 -0
- package/dist/services/mm-api-service/mm-api-service.d.ts +7 -13
- package/dist/services/mm-api-service/mm-api-service.d.ts.map +1 -1
- package/dist/services/mm-api-service/mm-api-service.js +519 -0
- package/dist/services/mm-api-service/mm-api-service.js.map +1 -0
- package/dist/services/mm-api-service/token-mgr.js +113 -0
- package/dist/services/mm-api-service/token-mgr.js.map +1 -0
- package/dist/services/mm-api-service/types/checkpoint.js +2 -0
- package/dist/services/mm-api-service/types/checkpoint.js.map +1 -0
- package/dist/services/mm-api-service/types/entity-transformer.d.ts +2 -2
- package/dist/services/mm-api-service/types/entity-transformer.d.ts.map +1 -1
- package/dist/services/mm-api-service/types/entity-transformer.js +186 -0
- package/dist/services/mm-api-service/types/entity-transformer.js.map +1 -0
- package/dist/services/mm-api-service/types/mm-response-interfaces.js +34 -0
- package/dist/services/mm-api-service/types/mm-response-interfaces.js.map +1 -0
- package/dist/services/mm-api-service/types/receive-types.js +55 -0
- package/dist/services/mm-api-service/types/receive-types.js.map +1 -0
- package/dist/services/mm-api-service/types/send-types.js +337 -0
- package/dist/services/mm-api-service/types/send-types.js.map +1 -0
- package/dist/services/psql-erp-service/configuration.js +2 -0
- package/dist/services/psql-erp-service/configuration.js.map +1 -0
- package/dist/services/psql-erp-service/index.d.ts +3 -3
- package/dist/services/psql-erp-service/index.d.ts.map +1 -1
- package/dist/services/psql-erp-service/index.js +10 -0
- package/dist/services/psql-erp-service/index.js.map +1 -0
- package/dist/services/psql-erp-service/internal/types/psql-types.js +5 -0
- package/dist/services/psql-erp-service/internal/types/psql-types.js.map +1 -0
- package/dist/services/psql-erp-service/psql-helpers.js +99 -0
- package/dist/services/psql-erp-service/psql-helpers.js.map +1 -0
- package/dist/services/psql-erp-service/psql-service.d.ts +2 -2
- package/dist/services/psql-erp-service/psql-service.d.ts.map +1 -1
- package/dist/services/psql-erp-service/psql-service.js +187 -0
- package/dist/services/psql-erp-service/psql-service.js.map +1 -0
- package/dist/services/reporting-service/index.d.ts +1 -1
- package/dist/services/reporting-service/index.d.ts.map +1 -1
- package/dist/services/reporting-service/index.js +5 -0
- package/dist/services/reporting-service/index.js.map +1 -0
- package/dist/services/reporting-service/logger.d.ts.map +1 -1
- package/dist/services/reporting-service/logger.js +217 -0
- package/dist/services/reporting-service/logger.js.map +1 -0
- package/dist/services/sql-server-erp-service/configuration.js +2 -0
- package/dist/services/sql-server-erp-service/configuration.js.map +1 -0
- package/dist/services/sql-server-erp-service/index.d.ts +3 -3
- package/dist/services/sql-server-erp-service/index.d.ts.map +1 -1
- package/dist/services/sql-server-erp-service/index.js +11 -0
- package/dist/services/sql-server-erp-service/index.js.map +1 -0
- package/dist/services/sql-server-erp-service/internal/sql-labor-ticket-operations.d.ts +2 -2
- package/dist/services/sql-server-erp-service/internal/sql-labor-ticket-operations.d.ts.map +1 -1
- package/dist/services/sql-server-erp-service/internal/sql-labor-ticket-operations.js +50 -0
- package/dist/services/sql-server-erp-service/internal/sql-labor-ticket-operations.js.map +1 -0
- package/dist/services/sql-server-erp-service/internal/sql-server-config.js +40 -0
- package/dist/services/sql-server-erp-service/internal/sql-server-config.js.map +1 -0
- package/dist/services/sql-server-erp-service/internal/sql-transaction-manager.js +36 -0
- package/dist/services/sql-server-erp-service/internal/sql-transaction-manager.js.map +1 -0
- package/dist/services/sql-server-erp-service/internal/types/sql-server-types.js +2 -0
- package/dist/services/sql-server-erp-service/internal/types/sql-server-types.js.map +1 -0
- package/dist/services/sql-server-erp-service/sql-server-helpers.d.ts +3 -3
- package/dist/services/sql-server-erp-service/sql-server-helpers.d.ts.map +1 -1
- package/dist/services/sql-server-erp-service/sql-server-helpers.js +66 -0
- package/dist/services/sql-server-erp-service/sql-server-helpers.js.map +1 -0
- package/dist/services/sql-server-erp-service/sql-server-service.d.ts +2 -2
- package/dist/services/sql-server-erp-service/sql-server-service.d.ts.map +1 -1
- package/dist/services/sql-server-erp-service/sql-server-service.js +154 -0
- package/dist/services/sql-server-erp-service/sql-server-service.js.map +1 -0
- package/dist/services/sql-server-erp-service/types/sql-input-param.js +2 -0
- package/dist/services/sql-server-erp-service/types/sql-input-param.js.map +1 -0
- package/dist/services/sqlite-service/index.d.ts +1 -1
- package/dist/services/sqlite-service/index.d.ts.map +1 -1
- package/dist/services/sqlite-service/index.js +2 -0
- package/dist/services/sqlite-service/index.js.map +1 -0
- package/dist/services/sqlite-service/sqlite-coordinator.js +60 -0
- package/dist/services/sqlite-service/sqlite-coordinator.js.map +1 -0
- package/dist/types/erp-connector.d.ts +1 -1
- package/dist/types/erp-connector.d.ts.map +1 -1
- package/dist/types/erp-connector.js +2 -0
- package/dist/types/erp-connector.js.map +1 -0
- package/dist/types/erp-types.js +13 -0
- package/dist/types/erp-types.js.map +1 -0
- package/dist/types/index.d.ts +2 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +6 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/application-initializer.js +55 -0
- package/dist/utils/application-initializer.js.map +1 -0
- package/dist/utils/cleanup-numbers.js +6 -0
- package/dist/utils/cleanup-numbers.js.map +1 -0
- package/dist/utils/connector-factory.d.ts +1 -1
- package/dist/utils/connector-factory.d.ts.map +1 -1
- package/dist/utils/connector-factory.js +34 -0
- package/dist/utils/connector-factory.js.map +1 -0
- package/dist/utils/connector-log/log-deduper.d.ts +1 -1
- package/dist/utils/connector-log/log-deduper.d.ts.map +1 -1
- package/dist/utils/connector-log/log-deduper.js +240 -0
- package/dist/utils/connector-log/log-deduper.js.map +1 -0
- package/dist/utils/connector-log/mm-connector-logger-example.d.ts +1 -0
- package/dist/utils/connector-log/mm-connector-logger-example.js +88 -0
- package/dist/utils/connector-log/mm-connector-logger-example.js.map +1 -0
- package/dist/utils/connector-log/mm-connector-logger.d.ts +1 -1
- package/dist/utils/connector-log/mm-connector-logger.d.ts.map +1 -1
- package/dist/utils/connector-log/mm-connector-logger.js +151 -0
- package/dist/utils/connector-log/mm-connector-logger.js.map +1 -0
- package/dist/utils/data-transformation.js +38 -0
- package/dist/utils/data-transformation.js.map +1 -0
- package/dist/utils/erp-type-from-entity.d.ts +1 -1
- package/dist/utils/erp-type-from-entity.d.ts.map +1 -1
- package/dist/utils/erp-type-from-entity.js +6 -0
- package/dist/utils/erp-type-from-entity.js.map +1 -0
- package/dist/utils/error-utils.js +21 -0
- package/dist/utils/error-utils.js.map +1 -0
- package/dist/utils/http-client.js +186 -0
- package/dist/utils/http-client.js.map +1 -0
- package/dist/utils/index.d.ts +33 -38
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +65 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/local-data-store/database-lock.js +68 -0
- package/dist/utils/local-data-store/database-lock.js.map +1 -0
- package/dist/utils/local-data-store/jobs-shared-data.js +116 -0
- package/dist/utils/local-data-store/jobs-shared-data.js.map +1 -0
- package/dist/utils/mm-labor-ticket-helpers.d.ts +1 -1
- package/dist/utils/mm-labor-ticket-helpers.d.ts.map +1 -1
- package/dist/utils/mm-labor-ticket-helpers.js +23 -0
- package/dist/utils/mm-labor-ticket-helpers.js.map +1 -0
- package/dist/utils/removeExtraneousFields.d.ts +1 -1
- package/dist/utils/removeExtraneousFields.d.ts.map +1 -1
- package/dist/utils/removeExtraneousFields.js +16 -0
- package/dist/utils/removeExtraneousFields.js.map +1 -0
- package/dist/utils/removeIdFieldFromPayload.d.ts +1 -1
- package/dist/utils/removeIdFieldFromPayload.d.ts.map +1 -1
- package/dist/utils/removeIdFieldFromPayload.js +16 -0
- package/dist/utils/removeIdFieldFromPayload.js.map +1 -0
- package/dist/utils/resource-group.d.ts +1 -1
- package/dist/utils/resource-group.d.ts.map +1 -1
- package/dist/utils/resource-group.js +59 -0
- package/dist/utils/resource-group.js.map +1 -0
- package/dist/utils/standard-process-drivers/error-processor.d.ts +3 -3
- package/dist/utils/standard-process-drivers/error-processor.d.ts.map +1 -1
- package/dist/utils/standard-process-drivers/error-processor.js +262 -0
- package/dist/utils/standard-process-drivers/error-processor.js.map +1 -0
- package/dist/utils/standard-process-drivers/index.d.ts +3 -3
- package/dist/utils/standard-process-drivers/index.d.ts.map +1 -1
- package/dist/utils/standard-process-drivers/index.js +4 -0
- package/dist/utils/standard-process-drivers/index.js.map +1 -0
- package/dist/utils/standard-process-drivers/labor-ticket-erp-synchronizer.d.ts +1 -1
- package/dist/utils/standard-process-drivers/labor-ticket-erp-synchronizer.d.ts.map +1 -1
- package/dist/utils/standard-process-drivers/labor-ticket-erp-synchronizer.js +164 -0
- package/dist/utils/standard-process-drivers/labor-ticket-erp-synchronizer.js.map +1 -0
- package/dist/utils/standard-process-drivers/mm-entity-processor.d.ts +4 -4
- package/dist/utils/standard-process-drivers/mm-entity-processor.d.ts.map +1 -1
- package/dist/utils/standard-process-drivers/mm-entity-processor.js +168 -0
- package/dist/utils/standard-process-drivers/mm-entity-processor.js.map +1 -0
- package/dist/utils/standard-process-drivers/standard-process-drivers.d.ts +4 -4
- package/dist/utils/standard-process-drivers/standard-process-drivers.d.ts.map +1 -1
- package/dist/utils/standard-process-drivers/standard-process-drivers.js +324 -0
- package/dist/utils/standard-process-drivers/standard-process-drivers.js.map +1 -0
- package/dist/utils/time-utils.js +96 -0
- package/dist/utils/time-utils.js.map +1 -0
- package/dist/utils/timezone.js +105 -0
- package/dist/utils/timezone.js.map +1 -0
- package/dist/utils/trimObjectValues.js +11 -0
- package/dist/utils/trimObjectValues.js.map +1 -0
- package/dist/utils/uniqueRows.js +35 -0
- package/dist/utils/uniqueRows.js.map +1 -0
- package/package.json +6 -10
- package/src/index.ts +42 -45
- package/src/knexfile.ts +1 -0
- package/src/services/caching-service/batch-cache-manager.ts +2 -2
- package/src/services/caching-service/hashed-cache-manager.ts +5 -5
- package/src/services/caching-service/index.ts +1 -1
- package/src/services/caching-service/record-tracking-manager.ts +2 -2
- package/src/services/data-sync-service/configuration-manager.ts +2 -2
- package/src/services/data-sync-service/data-sync-service.ts +10 -19
- package/src/services/data-sync-service/index.ts +3 -3
- package/src/services/data-sync-service/jobs/clean-up-expired-cache.ts +3 -3
- package/src/services/data-sync-service/jobs/from-erp.ts +10 -5
- package/src/services/data-sync-service/jobs/retry-failed-labor-tickets.ts +2 -2
- package/src/services/data-sync-service/jobs/run-migrations.ts +2 -2
- package/src/services/data-sync-service/jobs/to-erp.ts +3 -7
- package/src/services/erp-api-services/errors.ts +3 -3
- package/src/services/erp-api-services/graphql/graphql-service.ts +5 -5
- package/src/services/erp-api-services/index.ts +8 -8
- package/src/services/erp-api-services/rest/rest-api-service.ts +4 -4
- package/src/services/erp-api-services/types.ts +2 -2
- package/src/services/mm-api-service/index.ts +6 -14
- package/src/services/mm-api-service/mm-api-service.ts +12 -29
- package/src/services/mm-api-service/token-mgr.ts +4 -4
- package/src/services/mm-api-service/types/entity-transformer.ts +3 -3
- package/src/services/psql-erp-service/index.ts +3 -3
- package/src/services/psql-erp-service/psql-service.ts +4 -4
- package/src/services/reporting-service/index.ts +1 -1
- package/src/services/reporting-service/logger.ts +111 -81
- package/src/services/sql-server-erp-service/index.ts +3 -3
- package/src/services/sql-server-erp-service/internal/sql-labor-ticket-operations.ts +2 -2
- package/src/services/sql-server-erp-service/internal/sql-transaction-manager.ts +1 -1
- package/src/services/sql-server-erp-service/sql-server-helpers.ts +6 -6
- package/src/services/sql-server-erp-service/sql-server-service.ts +4 -4
- package/src/services/sqlite-service/index.ts +1 -1
- package/src/services/sqlite-service/sqlite-coordinator.ts +2 -2
- package/src/types/erp-connector.ts +1 -1
- package/src/types/index.ts +2 -2
- package/src/utils/application-initializer.ts +5 -5
- package/src/utils/connector-factory.ts +3 -16
- package/src/utils/connector-log/log-deduper.ts +2 -2
- package/src/utils/connector-log/mm-connector-logger.ts +3 -3
- package/src/utils/erp-type-from-entity.ts +1 -1
- package/src/utils/http-client.ts +1 -1
- package/src/utils/index.ts +33 -39
- package/src/utils/local-data-store/database-lock.ts +1 -1
- package/src/utils/mm-labor-ticket-helpers.ts +2 -2
- package/src/utils/removeExtraneousFields.ts +1 -1
- package/src/utils/removeIdFieldFromPayload.ts +1 -1
- package/src/utils/resource-group.ts +2 -2
- package/src/utils/standard-process-drivers/error-processor.ts +5 -5
- package/src/utils/standard-process-drivers/index.ts +3 -3
- package/src/utils/standard-process-drivers/labor-ticket-erp-synchronizer.ts +6 -6
- package/src/utils/standard-process-drivers/mm-entity-processor.ts +7 -7
- package/src/utils/standard-process-drivers/standard-process-drivers.ts +6 -6
- package/src/utils/time-utils.ts +3 -3
- package/src/utils/timezone.ts +2 -2
- package/dist/config-CvA-mFWF.js +0 -418
- package/dist/config-CvA-mFWF.js.map +0 -1
- package/dist/connector-factory-Dg6bzS-I.js +0 -42
- package/dist/connector-factory-Dg6bzS-I.js.map +0 -1
- package/dist/hashed-cache-manager-B15NN8hK.js +0 -322
- package/dist/hashed-cache-manager-B15NN8hK.js.map +0 -1
- package/dist/index-D8qO1NyK.js +0 -192
- package/dist/index-D8qO1NyK.js.map +0 -1
- package/dist/knexfile-Bng2Ru9c.js +0 -20
- package/dist/knexfile-Bng2Ru9c.js.map +0 -1
- package/dist/logger-BWw0_z9q.js +0 -17557
- package/dist/logger-BWw0_z9q.js.map +0 -1
- package/dist/mm-erp-sdk.js +0 -4975
- package/dist/mm-erp-sdk.js.map +0 -1
- package/dist/services/data-sync-service/nats-labor-ticket-listener.d.ts +0 -30
- package/dist/services/data-sync-service/nats-labor-ticket-listener.d.ts.map +0 -1
- package/dist/services/mm-api-service/company-info.d.ts +0 -13
- package/dist/services/mm-api-service/company-info.d.ts.map +0 -1
- package/dist/services/nats-service/nats-service.d.ts +0 -114
- package/dist/services/nats-service/nats-service.d.ts.map +0 -1
- package/dist/services/nats-service/test-nats-subscriber.d.ts +0 -6
- package/dist/services/nats-service/test-nats-subscriber.d.ts.map +0 -1
- package/dist/utils/error-formatter.d.ts +0 -19
- package/dist/utils/error-formatter.d.ts.map +0 -1
- package/src/services/data-sync-service/nats-labor-ticket-listener.ts +0 -341
- package/src/services/mm-api-service/company-info.ts +0 -87
- package/src/services/nats-service/nats-service.ts +0 -351
- package/src/services/nats-service/test-nats-subscriber.ts +0 -96
- package/src/utils/error-formatter.ts +0 -205
|
@@ -2,11 +2,11 @@ import {
|
|
|
2
2
|
HTTPClient,
|
|
3
3
|
HTTPClientFactory,
|
|
4
4
|
HTTPResponse,
|
|
5
|
-
} from "../../../utils/http-client";
|
|
6
|
-
import { GraphQLResponse } from "./types";
|
|
7
|
-
import { ErrorHandler } from "../errors";
|
|
8
|
-
import { APIResponse } from "../types";
|
|
9
|
-
import { ERPApiConfig } from "../types";
|
|
5
|
+
} from "../../../utils/http-client.js";
|
|
6
|
+
import { GraphQLResponse } from "./types.js";
|
|
7
|
+
import { ErrorHandler } from "../errors.js";
|
|
8
|
+
import { APIResponse } from "../types.js";
|
|
9
|
+
import { ERPApiConfig } from "../types.js";
|
|
10
10
|
|
|
11
11
|
const DEFAULT_RETRY_ATTEMPTS = 0; // One try only, no retries
|
|
12
12
|
|
|
@@ -4,19 +4,19 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
// REST API Service
|
|
7
|
-
export { RestAPIService } from "./rest/rest-api-service";
|
|
8
|
-
export type { QueryParams } from "./rest/get-query-params";
|
|
7
|
+
export { RestAPIService } from "./rest/rest-api-service.js";
|
|
8
|
+
export type { QueryParams } from "./rest/get-query-params.js";
|
|
9
9
|
|
|
10
10
|
// GraphQL Service
|
|
11
|
-
export { GraphQLService } from "./graphql/graphql-service";
|
|
12
|
-
export type { GraphQLServerError } from './graphql/types';
|
|
11
|
+
export { GraphQLService } from "./graphql/graphql-service.js";
|
|
12
|
+
export type { GraphQLServerError } from './graphql/types.js';
|
|
13
13
|
|
|
14
14
|
// OAuth Client
|
|
15
|
-
export { OAuthClient } from './oauth-client';
|
|
16
|
-
export type { OAuthConfig } from './oauth-client';
|
|
15
|
+
export { OAuthClient } from './oauth-client.js';
|
|
16
|
+
export type { OAuthConfig } from './oauth-client.js';
|
|
17
17
|
|
|
18
18
|
// API Response
|
|
19
|
-
export type { APIResponse } from './types';
|
|
19
|
+
export type { APIResponse } from './types.js';
|
|
20
20
|
|
|
21
21
|
// Error classes
|
|
22
|
-
export { ErrorHandler, GraphQLError } from './errors';
|
|
22
|
+
export { ErrorHandler, GraphQLError } from './errors.js';
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { HTTPClient, HTTPClientFactory } from "../../../utils/http-client";
|
|
1
|
+
import { HTTPClient, HTTPClientFactory } from "../../../utils/http-client.js";
|
|
2
2
|
import {
|
|
3
3
|
QueryParams,
|
|
4
4
|
buildLogicalCondition,
|
|
5
5
|
Pagination,
|
|
6
|
-
} from "./get-query-params";
|
|
7
|
-
import { ErrorHandler } from "../errors";
|
|
8
|
-
import { APIResponse, ERPApiConfig } from "../types";
|
|
6
|
+
} from "./get-query-params.js";
|
|
7
|
+
import { ErrorHandler } from "../errors.js";
|
|
8
|
+
import { APIResponse, ERPApiConfig } from "../types.js";
|
|
9
9
|
|
|
10
10
|
const DEFAULT_RETRY_ATTEMPTS = 0; // One try only, no retries
|
|
11
11
|
const DEFAULT_PAGINATION_LIMIT = 100; // Reasonable default for most APIs
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Pagination } from "./rest/get-query-params";
|
|
2
|
-
import { GraphQLServerError } from "./graphql/types";
|
|
1
|
+
import { Pagination } from "./rest/get-query-params.js";
|
|
2
|
+
import { GraphQLServerError } from "./graphql/types.js";
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Configuration for making API requests to an ERP system.
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { MMApiClient } from "./mm-api-service";
|
|
1
|
+
import { MMApiClient } from "./mm-api-service.js";
|
|
2
2
|
import type {
|
|
3
3
|
MMReceiveLaborTicket,
|
|
4
4
|
MMReceiveLaborTicketReason,
|
|
5
5
|
MMReceiveLaborTicketWorkOrderOperation,
|
|
6
|
-
} from "./types/receive-types";
|
|
6
|
+
} from "./types/receive-types.js";
|
|
7
7
|
import {
|
|
8
8
|
MMSendPerson,
|
|
9
9
|
MMSendResource,
|
|
@@ -14,8 +14,8 @@ import {
|
|
|
14
14
|
MMSendReason,
|
|
15
15
|
MMSendLaborTicket,
|
|
16
16
|
MMSendWorkOrderBatch,
|
|
17
|
-
} from "./types/send-types";
|
|
18
|
-
import type { IToRESTApiObject } from "./types/send-types";
|
|
17
|
+
} from "./types/send-types.js";
|
|
18
|
+
import type { IToRESTApiObject } from "./types/send-types.js";
|
|
19
19
|
import type {
|
|
20
20
|
MMApiBaseResponse,
|
|
21
21
|
MM200NonLaborTicketResponse,
|
|
@@ -26,9 +26,7 @@ import type {
|
|
|
26
26
|
MM500LaborTicketException,
|
|
27
27
|
MMGraphQLResourceResponse,
|
|
28
28
|
MMMachineGroupsResponse,
|
|
29
|
-
} from "./types/mm-response-interfaces";
|
|
30
|
-
import { getCompanyInfo } from "./company-info";
|
|
31
|
-
import type { CompanyInfo } from "./company-info";
|
|
29
|
+
} from "./types/mm-response-interfaces.js";
|
|
32
30
|
|
|
33
31
|
/**
|
|
34
32
|
* A class to manage interactions with the MM API
|
|
@@ -54,7 +52,7 @@ export type {
|
|
|
54
52
|
/**
|
|
55
53
|
* Types related of labor tickets received from the MM API
|
|
56
54
|
*/
|
|
57
|
-
export { MMReceiveLaborTicket } from "./types/receive-types";
|
|
55
|
+
export { MMReceiveLaborTicket } from "./types/receive-types.js";
|
|
58
56
|
export type {
|
|
59
57
|
MMReceiveLaborTicketReason,
|
|
60
58
|
MMReceiveLaborTicketWorkOrderOperation,
|
|
@@ -83,9 +81,3 @@ export {
|
|
|
83
81
|
* Batch interfaces for sending multiple related entities
|
|
84
82
|
*/
|
|
85
83
|
export type { MMSendWorkOrderBatch };
|
|
86
|
-
|
|
87
|
-
/**
|
|
88
|
-
* Company information utilities
|
|
89
|
-
*/
|
|
90
|
-
export { getCompanyInfo };
|
|
91
|
-
export type { CompanyInfo };
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import logger from "../reporting-service/logger";
|
|
2
|
-
import { ERPObjType } from "../../types/erp-types";
|
|
3
|
-
import { MMReceiveLaborTicket } from "./types/receive-types";
|
|
4
|
-
import { MMTokenManager } from "./token-mgr";
|
|
5
|
-
import * as MM_SEND_TYPES from "./types/send-types";
|
|
1
|
+
import logger from "../reporting-service/logger.js";
|
|
2
|
+
import { ERPObjType } from "../../types/erp-types.js";
|
|
3
|
+
import { MMReceiveLaborTicket } from "./types/receive-types.js";
|
|
4
|
+
import { MMTokenManager } from "./token-mgr.js";
|
|
5
|
+
import * as MM_SEND_TYPES from "./types/send-types.js";
|
|
6
6
|
import {
|
|
7
7
|
HTTPClient,
|
|
8
8
|
HTTPMethod,
|
|
9
9
|
HTTPRequestConfig,
|
|
10
10
|
HTTPClientFactory,
|
|
11
|
-
} from "../../utils/http-client";
|
|
12
|
-
import { Checkpoint } from "./types/checkpoint";
|
|
13
|
-
import { CoreConfiguration } from "../data-sync-service/configuration-manager";
|
|
14
|
-
import { ErrorHandler } from "../erp-api-services/errors";
|
|
11
|
+
} from "../../utils/http-client.js";
|
|
12
|
+
import { Checkpoint } from "./types/checkpoint.js";
|
|
13
|
+
import { CoreConfiguration } from "../data-sync-service/configuration-manager.js";
|
|
14
|
+
import { ErrorHandler } from "../erp-api-services/errors.js";
|
|
15
15
|
import {
|
|
16
16
|
MMApiBaseResponse,
|
|
17
17
|
MMGraphQLResourceResponse,
|
|
18
18
|
MMMachineGroupsResponse,
|
|
19
|
-
} from "./types/mm-response-interfaces";
|
|
19
|
+
} from "./types/mm-response-interfaces.js";
|
|
20
20
|
|
|
21
21
|
const MAPPING = "MAPPING";
|
|
22
22
|
const CHECKPOINTS = "CHECKPOINTS";
|
|
@@ -80,12 +80,9 @@ export class MMApiClient {
|
|
|
80
80
|
return typeof err === "object" && err !== null && "status" in err;
|
|
81
81
|
};
|
|
82
82
|
|
|
83
|
-
// Check if this looks like an auth error - retry on auth status codes
|
|
83
|
+
// Check if this looks like an auth error - only retry on explicit auth status codes
|
|
84
84
|
const isAuthError =
|
|
85
|
-
hasStatus(error) && (error.status === 401 || error.status === 403)
|
|
86
|
-
(hasStatus(error) && error.status === 500 &&
|
|
87
|
-
typeof (error as any).data?.error === 'string' &&
|
|
88
|
-
(error as any).data.error.includes('JWT'));
|
|
85
|
+
hasStatus(error) && (error.status === 401 || error.status === 403);
|
|
89
86
|
|
|
90
87
|
if (isAuthError && !options.token) {
|
|
91
88
|
// Only retry if we used cached token
|
|
@@ -509,20 +506,6 @@ export class MMApiClient {
|
|
|
509
506
|
return updates.data.map((ticket) => new MMReceiveLaborTicket(ticket));
|
|
510
507
|
}
|
|
511
508
|
|
|
512
|
-
/**
|
|
513
|
-
* Fetch a single labor ticket by reference from the MM API
|
|
514
|
-
* @param laborTicketRef The labor ticket reference to fetch
|
|
515
|
-
* @returns Promise with the labor ticket data
|
|
516
|
-
*/
|
|
517
|
-
async fetchLaborTicketByRef(
|
|
518
|
-
laborTicketRef: string
|
|
519
|
-
): Promise<MMReceiveLaborTicket> {
|
|
520
|
-
const response = (await this.getData(
|
|
521
|
-
`${this.resourceURLs[ERPObjType.LABOR_TICKETS]}/${laborTicketRef}`
|
|
522
|
-
)) as { data: MMReceiveLaborTicket };
|
|
523
|
-
return new MMReceiveLaborTicket(response.data);
|
|
524
|
-
}
|
|
525
|
-
|
|
526
509
|
/**
|
|
527
510
|
* Fetch a checkpoint for a specific system, table, and checkpoint type
|
|
528
511
|
* @param checkpoint The checkpoint to fetch
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getCachedMMToken,
|
|
3
3
|
setCachedMMToken,
|
|
4
|
-
} from "../../utils/local-data-store/jobs-shared-data";
|
|
5
|
-
import { HTTPClient, HTTPClientFactory } from "../../utils/http-client";
|
|
6
|
-
import { CoreConfiguration } from "../data-sync-service/configuration-manager";
|
|
7
|
-
import { logger } from "../reporting-service";
|
|
4
|
+
} from "../../utils/local-data-store/jobs-shared-data.js";
|
|
5
|
+
import { HTTPClient, HTTPClientFactory } from "../../utils/http-client.js";
|
|
6
|
+
import { CoreConfiguration } from "../data-sync-service/configuration-manager.js";
|
|
7
|
+
import { logger } from "../reporting-service/index.js";
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
10
|
* Manages the MM API token with caching and expiration checking
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ERPObjType } from "../../../types/erp-types";
|
|
2
|
-
import { IToRESTApiObject } from "
|
|
1
|
+
import { ERPObjType } from "../../../types/erp-types.js";
|
|
2
|
+
import { IToRESTApiObject } from "../index.js";
|
|
3
3
|
import {
|
|
4
4
|
MMSendPerson,
|
|
5
5
|
MMSendResource,
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
MMSendWorkOrderOperation,
|
|
10
10
|
MMSendLaborTicket,
|
|
11
11
|
MMSendReason,
|
|
12
|
-
} from "
|
|
12
|
+
} from "../index.js";
|
|
13
13
|
|
|
14
14
|
/**
|
|
15
15
|
* Utility class for transforming entities to/from non-typed and typed objects
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { PsqlService } from "./psql-service";
|
|
1
|
+
import { PsqlService } from "./psql-service.js";
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* A class to manage interactions with PSQL (Pervasive) databases via ODBC
|
|
@@ -8,7 +8,7 @@ export { PsqlService };
|
|
|
8
8
|
/**
|
|
9
9
|
* Configuration interface for PSQL connections
|
|
10
10
|
*/
|
|
11
|
-
export type { PsqlConfiguration } from "./configuration";
|
|
11
|
+
export type { PsqlConfiguration } from "./configuration.js";
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
* Helper functions for PSQL data formatting
|
|
@@ -19,4 +19,4 @@ export {
|
|
|
19
19
|
combinePsqlDateTime,
|
|
20
20
|
isPsqlDateEmpty,
|
|
21
21
|
cleanPsqlCharField,
|
|
22
|
-
} from "./psql-helpers";
|
|
22
|
+
} from "./psql-helpers.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { PsqlConfiguration } from "./configuration";
|
|
2
|
-
import { ERPResponse } from "../../types/erp-types";
|
|
3
|
-
import { OdbcErrorResponse } from "./internal/types/psql-types";
|
|
4
|
-
import logger from "../reporting-service/logger";
|
|
1
|
+
import { PsqlConfiguration } from "./configuration.js";
|
|
2
|
+
import { ERPResponse } from "../../types/erp-types.js";
|
|
3
|
+
import { OdbcErrorResponse } from "./internal/types/psql-types.js";
|
|
4
|
+
import logger from "../reporting-service/logger.js";
|
|
5
5
|
|
|
6
6
|
type PagingParams = {
|
|
7
7
|
limit?: number;
|
|
@@ -3,6 +3,33 @@ import DailyRotateFile from "winston-daily-rotate-file";
|
|
|
3
3
|
import path from "path";
|
|
4
4
|
|
|
5
5
|
const logDirectory = "logs";
|
|
6
|
+
const initialLogLevel = process.env.LOG_LEVEL || "info";
|
|
7
|
+
|
|
8
|
+
const LOGGER_ERROR_PREFIX = "[mm-erp-sdk logger]";
|
|
9
|
+
|
|
10
|
+
const serializeLoggerError = (error: unknown): string => {
|
|
11
|
+
if (error instanceof Error) {
|
|
12
|
+
return error.stack ?? error.message;
|
|
13
|
+
}
|
|
14
|
+
if (typeof error === "string") {
|
|
15
|
+
return error;
|
|
16
|
+
}
|
|
17
|
+
try {
|
|
18
|
+
return JSON.stringify(error);
|
|
19
|
+
} catch {
|
|
20
|
+
return String(error);
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
const handleLoggerError = (error: unknown) => {
|
|
25
|
+
const serialized = serializeLoggerError(error);
|
|
26
|
+
try {
|
|
27
|
+
// eslint-disable-next-line no-console
|
|
28
|
+
console.error(`${LOGGER_ERROR_PREFIX} transport error: ${serialized}`);
|
|
29
|
+
} catch {
|
|
30
|
+
/* ignore failures when reporting logger errors */
|
|
31
|
+
}
|
|
32
|
+
};
|
|
6
33
|
|
|
7
34
|
const MSG_MAX_LEN = 60;
|
|
8
35
|
const MSG_MAX_CHARS = 2048;
|
|
@@ -23,45 +50,8 @@ const truncateString = (str: string): string => {
|
|
|
23
50
|
return result;
|
|
24
51
|
};
|
|
25
52
|
|
|
26
|
-
/**
|
|
27
|
-
* Safe JSON serializer that handles circular references and extracts meaningful error data
|
|
28
|
-
*/
|
|
29
|
-
const safeStringify = (obj: any, indent: number = 2): string => {
|
|
30
|
-
const seen = new WeakSet();
|
|
31
|
-
|
|
32
|
-
return JSON.stringify(
|
|
33
|
-
obj,
|
|
34
|
-
(key, value) => {
|
|
35
|
-
// Handle Error objects specially
|
|
36
|
-
if (value instanceof Error) {
|
|
37
|
-
return {
|
|
38
|
-
message: value.message,
|
|
39
|
-
name: value.name,
|
|
40
|
-
stack: value.stack,
|
|
41
|
-
...(value.constructor.name === 'HTTPError' || value.constructor.name === 'AxiosError' ? {
|
|
42
|
-
status: (value as any).status,
|
|
43
|
-
code: (value as any).code,
|
|
44
|
-
data: (value as any).data,
|
|
45
|
-
} : {}),
|
|
46
|
-
};
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
// Handle circular references
|
|
50
|
-
if (typeof value === "object" && value !== null) {
|
|
51
|
-
if (seen.has(value)) {
|
|
52
|
-
return "[Circular]";
|
|
53
|
-
}
|
|
54
|
-
seen.add(value);
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
return value;
|
|
58
|
-
},
|
|
59
|
-
indent
|
|
60
|
-
);
|
|
61
|
-
};
|
|
62
|
-
|
|
63
53
|
const baseFormat = format.printf(({ timestamp, level, message, ...rest }) => {
|
|
64
|
-
let restString =
|
|
54
|
+
let restString = JSON.stringify(rest, undefined, 2);
|
|
65
55
|
restString = restString === "{}" ? "" : restString;
|
|
66
56
|
|
|
67
57
|
let formattedMessage: string;
|
|
@@ -97,25 +87,31 @@ const logFormat = format.combine(
|
|
|
97
87
|
baseFormat
|
|
98
88
|
);
|
|
99
89
|
|
|
90
|
+
const createConsoleTransport = () => {
|
|
91
|
+
const consoleTransport = new transports.Console({
|
|
92
|
+
format: format.combine(
|
|
93
|
+
format.timestamp(),
|
|
94
|
+
format.splat(),
|
|
95
|
+
baseFormat,
|
|
96
|
+
format.colorize({ all: true })
|
|
97
|
+
),
|
|
98
|
+
});
|
|
99
|
+
consoleTransport.on("error", handleLoggerError);
|
|
100
|
+
return consoleTransport;
|
|
101
|
+
};
|
|
102
|
+
|
|
100
103
|
// Create a basic logger with default configuration
|
|
101
104
|
const logger = createLogger({
|
|
102
|
-
level:
|
|
105
|
+
level: initialLogLevel,
|
|
103
106
|
format: logFormat,
|
|
104
|
-
transports: [
|
|
105
|
-
new transports.Console({
|
|
106
|
-
format: format.combine(
|
|
107
|
-
format.timestamp(),
|
|
108
|
-
format.splat(),
|
|
109
|
-
baseFormat,
|
|
110
|
-
format.colorize({ all: true })
|
|
111
|
-
),
|
|
112
|
-
}),
|
|
113
|
-
],
|
|
107
|
+
transports: [createConsoleTransport()],
|
|
114
108
|
});
|
|
115
109
|
|
|
110
|
+
logger.on("error", handleLoggerError);
|
|
111
|
+
|
|
116
112
|
// Helper function to create a file transport with shared configuration
|
|
117
113
|
const createFileTransport = (): DailyRotateFile => {
|
|
118
|
-
|
|
114
|
+
const transport = new DailyRotateFile({
|
|
119
115
|
filename: path.join(logDirectory, "%DATE%.log"),
|
|
120
116
|
datePattern: "YYYY-MM-DD",
|
|
121
117
|
zippedArchive: true,
|
|
@@ -123,6 +119,8 @@ const createFileTransport = (): DailyRotateFile => {
|
|
|
123
119
|
maxFiles: "14d",
|
|
124
120
|
format: logFormat,
|
|
125
121
|
});
|
|
122
|
+
transport.on("error", handleLoggerError);
|
|
123
|
+
return transport;
|
|
126
124
|
};
|
|
127
125
|
|
|
128
126
|
// Rotate mitigation helper: attaches rotate handler to transport and recursively attaches to replacements
|
|
@@ -136,35 +134,76 @@ function attachRotateMitigation(
|
|
|
136
134
|
if (isRefreshing) return;
|
|
137
135
|
isRefreshing = true;
|
|
138
136
|
let removalTimer: NodeJS.Timeout | null = null;
|
|
137
|
+
let next: DailyRotateFile | null = null;
|
|
139
138
|
|
|
140
|
-
|
|
141
|
-
const next = createFileTransport();
|
|
142
|
-
// When the new file is created, remove the old transport
|
|
143
|
-
next.on("new", () => {
|
|
139
|
+
const cleanupRefresh = () => {
|
|
144
140
|
if (removalTimer) {
|
|
145
141
|
clearTimeout(removalTimer);
|
|
146
142
|
removalTimer = null;
|
|
147
143
|
}
|
|
148
|
-
try {
|
|
149
|
-
logger.remove(transport);
|
|
150
|
-
} catch {}
|
|
151
144
|
isRefreshing = false;
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
145
|
+
};
|
|
146
|
+
|
|
147
|
+
try {
|
|
148
|
+
// Create replacement first to avoid any logging gap
|
|
149
|
+
next = createFileTransport();
|
|
150
|
+
// When the new file is created, remove the old transport
|
|
151
|
+
next.on("new", () => {
|
|
152
|
+
if (removalTimer) {
|
|
153
|
+
clearTimeout(removalTimer);
|
|
154
|
+
removalTimer = null;
|
|
155
|
+
}
|
|
156
|
+
try {
|
|
157
|
+
logger.remove(transport);
|
|
158
|
+
} catch (error) {
|
|
159
|
+
handleLoggerError(error);
|
|
160
|
+
}
|
|
161
|
+
cleanupRefresh();
|
|
162
|
+
});
|
|
163
|
+
attachRotateMitigation(next, opts);
|
|
159
164
|
try {
|
|
160
|
-
logger.
|
|
161
|
-
} catch {
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
+
logger.add(next);
|
|
166
|
+
} catch (error) {
|
|
167
|
+
handleLoggerError(error);
|
|
168
|
+
cleanupRefresh();
|
|
169
|
+
try {
|
|
170
|
+
logger.remove(next);
|
|
171
|
+
} catch {}
|
|
172
|
+
try {
|
|
173
|
+
if (typeof next.close === "function") {
|
|
174
|
+
next.close();
|
|
175
|
+
}
|
|
176
|
+
} catch {}
|
|
177
|
+
return;
|
|
178
|
+
}
|
|
165
179
|
|
|
166
|
-
|
|
167
|
-
|
|
180
|
+
// Fallback: if the "new" event doesn't fire, remove the old transport after a grace period
|
|
181
|
+
const REMOVAL_GRACE_MS = 30000;
|
|
182
|
+
removalTimer = setTimeout(() => {
|
|
183
|
+
try {
|
|
184
|
+
logger.remove(transport);
|
|
185
|
+
} catch (error) {
|
|
186
|
+
handleLoggerError(error);
|
|
187
|
+
}
|
|
188
|
+
cleanupRefresh();
|
|
189
|
+
}, REMOVAL_GRACE_MS);
|
|
190
|
+
|
|
191
|
+
// Keep console and other transports intact; do not silence or clear
|
|
192
|
+
logger.level = logLevel;
|
|
193
|
+
} catch (error) {
|
|
194
|
+
cleanupRefresh();
|
|
195
|
+
handleLoggerError(error);
|
|
196
|
+
if (next) {
|
|
197
|
+
try {
|
|
198
|
+
logger.remove(next);
|
|
199
|
+
} catch {}
|
|
200
|
+
try {
|
|
201
|
+
if (typeof next.close === "function") {
|
|
202
|
+
next.close();
|
|
203
|
+
}
|
|
204
|
+
} catch {}
|
|
205
|
+
}
|
|
206
|
+
}
|
|
168
207
|
});
|
|
169
208
|
}
|
|
170
209
|
|
|
@@ -194,16 +233,7 @@ export const configureLogger = (logLevel: string, nodeEnv: string) => {
|
|
|
194
233
|
|
|
195
234
|
// Add console transport in non-production environments
|
|
196
235
|
if (nodeEnv !== "production") {
|
|
197
|
-
logger.add(
|
|
198
|
-
new transports.Console({
|
|
199
|
-
format: format.combine(
|
|
200
|
-
format.timestamp(),
|
|
201
|
-
format.splat(),
|
|
202
|
-
baseFormat,
|
|
203
|
-
format.colorize({ all: true })
|
|
204
|
-
),
|
|
205
|
-
})
|
|
206
|
-
);
|
|
236
|
+
logger.add(createConsoleTransport());
|
|
207
237
|
}
|
|
208
238
|
|
|
209
239
|
// Set the log level
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { SqlServerService } from "./sql-server-service";
|
|
2
|
-
import { SqlServerHelper } from "./sql-server-helpers";
|
|
3
|
-
import { SQLInput } from "./types/sql-input-param";
|
|
1
|
+
import { SqlServerService } from "./sql-server-service.js";
|
|
2
|
+
import { SqlServerHelper } from "./sql-server-helpers.js";
|
|
3
|
+
import { SQLInput } from "./types/sql-input-param.js";
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* A class to manage interactions with SQL Server
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import sql from "mssql";
|
|
2
|
-
import { SQLInput } from "../types/sql-input-param";
|
|
3
|
-
import { SQLTransactionOperation } from "./sql-transaction-manager";
|
|
2
|
+
import { SQLInput } from "../types/sql-input-param.js";
|
|
3
|
+
import { SQLTransactionOperation } from "./sql-transaction-manager.js";
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* Insert a new labor ticket into the database.
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { SQLTransactionManager } from "./internal/sql-transaction-manager";
|
|
1
|
+
import { SQLTransactionManager } from "./internal/sql-transaction-manager.js";
|
|
2
2
|
import {
|
|
3
3
|
SQLLaborTicketInsertOperation,
|
|
4
4
|
SQLLaborTicketUpdateOperation,
|
|
5
|
-
} from "./internal/sql-labor-ticket-operations";
|
|
6
|
-
import { MMReceiveLaborTicket } from "../mm-api-service/types/receive-types";
|
|
7
|
-
import { SqlServerService } from "./sql-server-service";
|
|
8
|
-
import logger from "../reporting-service/logger";
|
|
9
|
-
import { SQLInput } from "./types/sql-input-param";
|
|
5
|
+
} from "./internal/sql-labor-ticket-operations.js";
|
|
6
|
+
import { MMReceiveLaborTicket } from "../mm-api-service/types/receive-types.js";
|
|
7
|
+
import { SqlServerService } from "./sql-server-service.js";
|
|
8
|
+
import logger from "../reporting-service/logger.js";
|
|
9
|
+
import { SQLInput } from "./types/sql-input-param.js";
|
|
10
10
|
|
|
11
11
|
export class SqlServerHelper {
|
|
12
12
|
/**
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import sql, { ConnectionPool, IRecordSet } from "mssql";
|
|
2
|
-
import { SQLServerConfigSchema } from "./internal/sql-server-config";
|
|
3
|
-
import logger from "../reporting-service/logger";
|
|
4
|
-
import { ERPResponse } from "../../types/erp-types";
|
|
5
|
-
import { SQLServerConfiguration } from "./configuration";
|
|
2
|
+
import { SQLServerConfigSchema } from "./internal/sql-server-config.js";
|
|
3
|
+
import logger from "../reporting-service/logger.js";
|
|
4
|
+
import { ERPResponse } from "../../types/erp-types.js";
|
|
5
|
+
import { SQLServerConfiguration } from "./configuration.js";
|
|
6
6
|
|
|
7
7
|
type PagingParams = {
|
|
8
8
|
limit?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { SQLiteCoordinator } from "./sqlite-coordinator";
|
|
1
|
+
export { SQLiteCoordinator } from "./sqlite-coordinator.js";
|
|
@@ -2,8 +2,8 @@ import {
|
|
|
2
2
|
acquireDatabaseLock,
|
|
3
3
|
releaseDatabaseLock,
|
|
4
4
|
getDatabaseLock,
|
|
5
|
-
} from "../../utils/local-data-store/database-lock";
|
|
6
|
-
import { logger } from "../reporting-service";
|
|
5
|
+
} from "../../utils/local-data-store/database-lock.js";
|
|
6
|
+
import { logger } from "../reporting-service/index.js";
|
|
7
7
|
|
|
8
8
|
export class SQLiteCoordinator {
|
|
9
9
|
private static readonly LOCK_TIMEOUT_MS = 30_000; // 30 seconds
|
package/src/types/index.ts
CHANGED
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
* This file re-exports all type definitions that are part of the public API.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
-
export type { IERPConnector } from "./erp-connector";
|
|
6
|
+
export type { IERPConnector } from "./erp-connector.js";
|
|
7
7
|
export type {
|
|
8
8
|
ERPObjType,
|
|
9
9
|
ERPPagination,
|
|
10
10
|
ERPResponse,
|
|
11
11
|
ERPObject,
|
|
12
|
-
} from "./erp-types";
|
|
12
|
+
} from "./erp-types.js";
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import logger from "../services/reporting-service/logger";
|
|
2
|
-
import { CoreConfiguration } from "../services/data-sync-service/configuration-manager";
|
|
3
|
-
import { SQLiteCoordinator } from "../services/sqlite-service";
|
|
4
|
-
import { getTimezoneOffsetAndPersist } from "./time-utils";
|
|
1
|
+
import logger from "../services/reporting-service/logger.js";
|
|
2
|
+
import { CoreConfiguration } from "../services/data-sync-service/configuration-manager.js";
|
|
3
|
+
import { SQLiteCoordinator } from "../services/sqlite-service/index.js";
|
|
4
|
+
import { getTimezoneOffsetAndPersist } from "./time-utils.js";
|
|
5
5
|
import knex from "knex";
|
|
6
|
-
import config from "../knexfile";
|
|
6
|
+
import config from "../knexfile.js";
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* Utility class to handle application initialization tasks
|