@adtrackify/at-service-common 3.5.27 → 3.5.28
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/dist/cjs/__tests__/helpers/account-users-helper.spec.d.ts +1 -1
- package/dist/cjs/__tests__/helpers/account-users-helper.spec.js +220 -200
- package/dist/cjs/__tests__/helpers/account-users-helper.spec.js.map +1 -1
- package/dist/cjs/__tests__/identity-cache/identity-cache-db-service.spec.d.ts +1 -1
- package/dist/cjs/__tests__/identity-cache/identity-cache-db-service.spec.js +674 -674
- package/dist/cjs/__tests__/identity-cache/identity-cache-db-service.spec.js.map +1 -1
- package/dist/cjs/__tests__/identity-cache/trait-merging-and-staleness.spec.d.ts +1 -1
- package/dist/cjs/__tests__/identity-cache/trait-merging-and-staleness.spec.js +588 -586
- package/dist/cjs/__tests__/identity-cache/trait-merging-and-staleness.spec.js.map +1 -1
- package/dist/cjs/__tests__/libs/compress-decompress.spec.d.ts +1 -1
- package/dist/cjs/__tests__/libs/compress-decompress.spec.js +16 -16
- package/dist/cjs/__tests__/libs/compress-decompress.spec.js.map +1 -1
- package/dist/cjs/__tests__/libs/currency.spec.d.ts +1 -1
- package/dist/cjs/__tests__/libs/currency.spec.js +220 -220
- package/dist/cjs/__tests__/libs/currency.spec.js.map +1 -1
- package/dist/cjs/__tests__/libs/dates.spec.d.ts +1 -1
- package/dist/cjs/__tests__/libs/dates.spec.js +130 -132
- package/dist/cjs/__tests__/libs/dates.spec.js.map +1 -1
- package/dist/cjs/__tests__/libs/domain.spec.d.ts +1 -1
- package/dist/cjs/__tests__/libs/domain.spec.js +107 -107
- package/dist/cjs/__tests__/libs/numbers.spec.d.ts +1 -1
- package/dist/cjs/__tests__/libs/numbers.spec.js +261 -261
- package/dist/cjs/__tests__/s3-client/s3-client.spec.d.ts +1 -1
- package/dist/cjs/__tests__/s3-client/s3-client.spec.js +33 -26
- package/dist/cjs/__tests__/s3-client/s3-client.spec.js.map +1 -1
- package/dist/cjs/__tests__/shopify/shopify-graphql-transformer.spec.d.ts +1 -1
- package/dist/cjs/__tests__/shopify/shopify-graphql-transformer.spec.js +35 -35
- package/dist/cjs/__tests__/shopify/shopify-graphql-transformer.spec.js.map +1 -1
- package/dist/cjs/clients/generic/cognito-client.d.ts +23 -23
- package/dist/cjs/clients/generic/cognito-client.js +209 -209
- package/dist/cjs/clients/generic/cognito-client.js.map +1 -1
- package/dist/cjs/clients/generic/dynamodb-client.d.ts +17 -17
- package/dist/cjs/clients/generic/dynamodb-client.js +170 -170
- package/dist/cjs/clients/generic/dynamodb-client.js.map +1 -1
- package/dist/cjs/clients/generic/eventbridge-client.d.ts +14 -14
- package/dist/cjs/clients/generic/eventbridge-client.js +51 -49
- package/dist/cjs/clients/generic/eventbridge-client.js.map +1 -1
- package/dist/cjs/clients/generic/http-client.d.ts +14 -14
- package/dist/cjs/clients/generic/http-client.js +61 -61
- package/dist/cjs/clients/generic/http-client.js.map +1 -1
- package/dist/cjs/clients/generic/index.d.ts +10 -10
- package/dist/cjs/clients/generic/index.js +26 -26
- package/dist/cjs/clients/generic/lambda-invoke-client.d.ts +10 -10
- package/dist/cjs/clients/generic/lambda-invoke-client.js +35 -35
- package/dist/cjs/clients/generic/lambda-invoke-client.js.map +1 -1
- package/dist/cjs/clients/generic/location-client.d.ts +8 -8
- package/dist/cjs/clients/generic/location-client.js +31 -31
- package/dist/cjs/clients/generic/location-client.js.map +1 -1
- package/dist/cjs/clients/generic/redis-client.d.ts +18 -18
- package/dist/cjs/clients/generic/redis-client.js +128 -128
- package/dist/cjs/clients/generic/redis-client.js.map +1 -1
- package/dist/cjs/clients/generic/s3-client.d.ts +23 -23
- package/dist/cjs/clients/generic/s3-client.js +216 -198
- package/dist/cjs/clients/generic/s3-client.js.map +1 -1
- package/dist/cjs/clients/generic/singlestore-db-client.d.ts +14 -14
- package/dist/cjs/clients/generic/singlestore-db-client.js +67 -67
- package/dist/cjs/clients/generic/sqs-client.d.ts +20 -20
- package/dist/cjs/clients/generic/sqs-client.js +36 -36
- package/dist/cjs/clients/generic/sqs-client.js.map +1 -1
- package/dist/cjs/clients/index.d.ts +3 -3
- package/dist/cjs/clients/index.js +19 -19
- package/dist/cjs/clients/internal-api/accounts-client.d.ts +83 -83
- package/dist/cjs/clients/internal-api/accounts-client.js +129 -107
- package/dist/cjs/clients/internal-api/accounts-client.js.map +1 -1
- package/dist/cjs/clients/internal-api/cache-lambda-client.d.ts +25 -25
- package/dist/cjs/clients/internal-api/cache-lambda-client.js +87 -79
- package/dist/cjs/clients/internal-api/cache-lambda-client.js.map +1 -1
- package/dist/cjs/clients/internal-api/db-management-client.d.ts +18 -18
- package/dist/cjs/clients/internal-api/db-management-client.js +36 -36
- package/dist/cjs/clients/internal-api/destinations-client.d.ts +33 -27
- package/dist/cjs/clients/internal-api/destinations-client.js +72 -51
- package/dist/cjs/clients/internal-api/destinations-client.js.map +1 -1
- package/dist/cjs/clients/internal-api/event-collector-client.d.ts +20 -20
- package/dist/cjs/clients/internal-api/event-collector-client.js +36 -36
- package/dist/cjs/clients/internal-api/event-collector-client.js.map +1 -1
- package/dist/cjs/clients/internal-api/identity-client.d.ts +31 -31
- package/dist/cjs/clients/internal-api/identity-client.js +91 -83
- package/dist/cjs/clients/internal-api/identity-client.js.map +1 -1
- package/dist/cjs/clients/internal-api/index.d.ts +9 -9
- package/dist/cjs/clients/internal-api/index.js +25 -25
- package/dist/cjs/clients/internal-api/shopify-app-install-client.d.ts +37 -37
- package/dist/cjs/clients/internal-api/shopify-app-install-client.js +81 -73
- package/dist/cjs/clients/internal-api/shopify-app-install-client.js.map +1 -1
- package/dist/cjs/clients/internal-api/subscriptions-client.d.ts +26 -26
- package/dist/cjs/clients/internal-api/subscriptions-client.js +77 -73
- package/dist/cjs/clients/internal-api/subscriptions-client.js.map +1 -1
- package/dist/cjs/clients/internal-api/users-auth-client.d.ts +35 -35
- package/dist/cjs/clients/internal-api/users-auth-client.js +110 -110
- package/dist/cjs/clients/internal-api/users-auth-client.js.map +1 -1
- package/dist/cjs/clients/third-party/emailable-client.d.ts +7 -7
- package/dist/cjs/clients/third-party/emailable-client.js +25 -25
- package/dist/cjs/clients/third-party/emailable-client.js.map +1 -1
- package/dist/cjs/clients/third-party/exchange-rate-api-client.d.ts +17 -17
- package/dist/cjs/clients/third-party/exchange-rate-api-client.js +19 -19
- package/dist/cjs/clients/third-party/exchange-rate-api-client.js.map +1 -1
- package/dist/cjs/clients/third-party/index.d.ts +3 -3
- package/dist/cjs/clients/third-party/index.js +19 -19
- package/dist/cjs/clients/third-party/loops-client.d.ts +10 -10
- package/dist/cjs/clients/third-party/loops-client.js +30 -30
- package/dist/cjs/clients/third-party/shopify/graphql-product-queries.d.ts +2 -2
- package/dist/cjs/clients/third-party/shopify/graphql-product-queries.js +5 -5
- package/dist/cjs/clients/third-party/shopify/shopify-graphql-client.d.ts +9 -9
- package/dist/cjs/clients/third-party/shopify/shopify-graphql-client.js +115 -95
- package/dist/cjs/clients/third-party/shopify/shopify-graphql-client.js.map +1 -1
- package/dist/cjs/clients/third-party/shopify-client.d.ts +29 -29
- package/dist/cjs/clients/third-party/shopify-client.js +146 -144
- package/dist/cjs/clients/third-party/shopify-client.js.map +1 -1
- package/dist/cjs/helpers/account-users-helper.d.ts +2 -2
- package/dist/cjs/helpers/account-users-helper.js +22 -22
- package/dist/cjs/helpers/account-users-helper.js.map +1 -1
- package/dist/cjs/helpers/identity-cache-helper.d.ts +21 -21
- package/dist/cjs/helpers/identity-cache-helper.js +156 -157
- package/dist/cjs/helpers/identity-cache-helper.js.map +1 -1
- package/dist/cjs/helpers/index.d.ts +6 -6
- package/dist/cjs/helpers/index.js +22 -22
- package/dist/cjs/helpers/input-validation-helper.d.ts +3 -3
- package/dist/cjs/helpers/input-validation-helper.js +22 -22
- package/dist/cjs/helpers/logging-helper.d.ts +16 -16
- package/dist/cjs/helpers/logging-helper.js +84 -84
- package/dist/cjs/helpers/logging-helper.js.map +1 -1
- package/dist/cjs/helpers/response-helper.d.ts +18 -18
- package/dist/cjs/helpers/response-helper.js +43 -43
- package/dist/cjs/helpers/response-helper.js.map +1 -1
- package/dist/cjs/helpers/shopify-helper.d.ts +9 -9
- package/dist/cjs/helpers/shopify-helper.js +26 -28
- package/dist/cjs/helpers/shopify-helper.js.map +1 -1
- package/dist/cjs/index.d.ts +5 -5
- package/dist/cjs/index.js +21 -21
- package/dist/cjs/libs/click-id-parser.d.ts +23 -23
- package/dist/cjs/libs/click-id-parser.js +49 -49
- package/dist/cjs/libs/click-id-parser.js.map +1 -1
- package/dist/cjs/libs/compression.d.ts +2 -2
- package/dist/cjs/libs/compression.js +33 -33
- package/dist/cjs/libs/compression.js.map +1 -1
- package/dist/cjs/libs/cookie.d.ts +12 -12
- package/dist/cjs/libs/cookie.js +70 -68
- package/dist/cjs/libs/cookie.js.map +1 -1
- package/dist/cjs/libs/crypto.d.ts +3 -3
- package/dist/cjs/libs/crypto.js +20 -20
- package/dist/cjs/libs/csv.d.ts +2 -2
- package/dist/cjs/libs/csv.js +35 -35
- package/dist/cjs/libs/csv.js.map +1 -1
- package/dist/cjs/libs/currency.d.ts +1 -1
- package/dist/cjs/libs/currency.js +29 -24
- package/dist/cjs/libs/currency.js.map +1 -1
- package/dist/cjs/libs/dates.d.ts +12 -12
- package/dist/cjs/libs/dates.js +96 -96
- package/dist/cjs/libs/dates.js.map +1 -1
- package/dist/cjs/libs/domain.d.ts +2 -2
- package/dist/cjs/libs/domain.js +38 -38
- package/dist/cjs/libs/emails.d.ts +6 -6
- package/dist/cjs/libs/emails.js +122 -122
- package/dist/cjs/libs/emails.js.map +1 -1
- package/dist/cjs/libs/http-error.d.ts +21 -21
- package/dist/cjs/libs/http-error.js +63 -59
- package/dist/cjs/libs/http-error.js.map +1 -1
- package/dist/cjs/libs/http-status-codes.d.ts +58 -58
- package/dist/cjs/libs/http-status-codes.js +62 -62
- package/dist/cjs/libs/index.d.ts +17 -17
- package/dist/cjs/libs/index.js +33 -33
- package/dist/cjs/libs/numbers.d.ts +1 -1
- package/dist/cjs/libs/numbers.js +15 -15
- package/dist/cjs/libs/referrer-parser/index.d.ts +2 -2
- package/dist/cjs/libs/referrer-parser/index.js +18 -18
- package/dist/cjs/libs/referrer-parser/referrer-data.d.ts +9 -9
- package/dist/cjs/libs/referrer-parser/referrer-data.js +3307 -4712
- package/dist/cjs/libs/referrer-parser/referrer-data.js.map +1 -1
- package/dist/cjs/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
- package/dist/cjs/libs/referrer-parser/referrer-parser-util.js +131 -128
- package/dist/cjs/libs/referrer-parser/referrer-parser-util.js.map +1 -1
- package/dist/cjs/libs/strings.d.ts +3 -3
- package/dist/cjs/libs/strings.js +46 -46
- package/dist/cjs/libs/strings.js.map +1 -1
- package/dist/cjs/libs/traits.d.ts +6 -6
- package/dist/cjs/libs/traits.js +65 -65
- package/dist/cjs/libs/traits.js.map +1 -1
- package/dist/cjs/libs/url.d.ts +1 -1
- package/dist/cjs/libs/url.js +13 -13
- package/dist/cjs/libs/url.js.map +1 -1
- package/dist/cjs/services/cache/generic-cached-object.d.ts +5 -5
- package/dist/cjs/services/cache/generic-cached-object.js +2 -2
- package/dist/cjs/services/cache/index.d.ts +1 -1
- package/dist/cjs/services/cache/index.js +17 -17
- package/dist/cjs/services/cache/product-cache-service.d.ts +21 -21
- package/dist/cjs/services/cache/product-cache-service.js +76 -68
- package/dist/cjs/services/cache/product-cache-service.js.map +1 -1
- package/dist/cjs/services/currency-exchange-rate-lookup-service.d.ts +11 -11
- package/dist/cjs/services/currency-exchange-rate-lookup-service.js +66 -50
- package/dist/cjs/services/currency-exchange-rate-lookup-service.js.map +1 -1
- package/dist/cjs/services/db/currency-exchange-rates-db-service.d.ts +21 -21
- package/dist/cjs/services/db/currency-exchange-rates-db-service.js +39 -39
- package/dist/cjs/services/db/currency-exchange-rates-db-service.js.map +1 -1
- package/dist/cjs/services/db/destinations-db-service.d.ts +12 -11
- package/dist/cjs/services/db/destinations-db-service.js +76 -64
- package/dist/cjs/services/db/destinations-db-service.js.map +1 -1
- package/dist/cjs/services/db/identity-cache-db-service.d.ts +28 -28
- package/dist/cjs/services/db/identity-cache-db-service.js +320 -278
- package/dist/cjs/services/db/identity-cache-db-service.js.map +1 -1
- package/dist/cjs/services/db/index.d.ts +9 -9
- package/dist/cjs/services/db/index.js +25 -25
- package/dist/cjs/services/db/log-events-db-service.d.ts +11 -11
- package/dist/cjs/services/db/log-events-db-service.js +181 -172
- package/dist/cjs/services/db/log-events-db-service.js.map +1 -1
- package/dist/cjs/services/db/purchasable-contacts-db-service.d.ts +9 -9
- package/dist/cjs/services/db/purchasable-contacts-db-service.js +43 -43
- package/dist/cjs/services/db/purchasable-contacts-db-service.js.map +1 -1
- package/dist/cjs/services/db/purchased-contacts-db-service.d.ts +17 -17
- package/dist/cjs/services/db/purchased-contacts-db-service.js +143 -143
- package/dist/cjs/services/db/purchased-contacts-db-service.js.map +1 -1
- package/dist/cjs/services/db/shopify-app-installs-db-service.d.ts +7 -7
- package/dist/cjs/services/db/shopify-app-installs-db-service.js +47 -47
- package/dist/cjs/services/db/shopify-app-installs-db-service.js.map +1 -1
- package/dist/cjs/services/db/shopify-products-cache-db-service.d.ts +16 -16
- package/dist/cjs/services/db/shopify-products-cache-db-service.js +73 -65
- package/dist/cjs/services/db/shopify-products-cache-db-service.js.map +1 -1
- package/dist/cjs/services/db/tracking-events-db-service.d.ts +20 -20
- package/dist/cjs/services/db/tracking-events-db-service.js +165 -162
- package/dist/cjs/services/db/tracking-events-db-service.js.map +1 -1
- package/dist/cjs/services/eventbridge-integration-service.d.ts +9 -9
- package/dist/cjs/services/eventbridge-integration-service.js +28 -28
- package/dist/cjs/services/eventbridge-integration-service.js.map +1 -1
- package/dist/cjs/services/events/index.d.ts +3 -3
- package/dist/cjs/services/events/index.js +19 -19
- package/dist/cjs/services/events/log-event-service.d.ts +9 -9
- package/dist/cjs/services/events/log-event-service.js +56 -56
- package/dist/cjs/services/events/log-event-service.js.map +1 -1
- package/dist/cjs/services/events/metric-event-service.d.ts +9 -9
- package/dist/cjs/services/events/metric-event-service.js +49 -49
- package/dist/cjs/services/events/metric-event-service.js.map +1 -1
- package/dist/cjs/services/events/tracking-event-sqs-service.d.ts +8 -8
- package/dist/cjs/services/events/tracking-event-sqs-service.js +34 -29
- package/dist/cjs/services/events/tracking-event-sqs-service.js.map +1 -1
- package/dist/cjs/services/generic-cache-service.d.ts +7 -7
- package/dist/cjs/services/generic-cache-service.js +33 -33
- package/dist/cjs/services/generic-cache-service.js.map +1 -1
- package/dist/cjs/services/index.d.ts +8 -8
- package/dist/cjs/services/index.js +24 -24
- package/dist/cjs/services/ipdata-lookup-service.d.ts +19 -19
- package/dist/cjs/services/ipdata-lookup-service.js +77 -77
- package/dist/cjs/services/ipdata-lookup-service.js.map +1 -1
- package/dist/cjs/services/shopify/index.d.ts +3 -3
- package/dist/cjs/services/shopify/index.js +19 -19
- package/dist/cjs/services/shopify/products/index.d.ts +1 -1
- package/dist/cjs/services/shopify/products/index.js +17 -17
- package/dist/cjs/services/shopify/products/shopify-products-serviceV2.d.ts +17 -17
- package/dist/cjs/services/shopify/products/shopify-products-serviceV2.js +114 -103
- package/dist/cjs/services/shopify/products/shopify-products-serviceV2.js.map +1 -1
- package/dist/cjs/services/shopify/shopify-graphql-transformer.d.ts +9 -9
- package/dist/cjs/services/shopify/shopify-graphql-transformer.js +141 -137
- package/dist/cjs/services/shopify/shopify-graphql-transformer.js.map +1 -1
- package/dist/cjs/services/shopify/types/index.d.ts +1 -1
- package/dist/cjs/services/shopify/types/index.js +17 -17
- package/dist/cjs/services/shopify/types/product.d.ts +115 -115
- package/dist/cjs/services/shopify/types/product.js +9 -9
- package/dist/cjs/services/shopify/types/product.js.map +1 -1
- package/dist/cjs/types/api-response.d.ts +6 -6
- package/dist/cjs/types/api-response.js +2 -2
- package/dist/cjs/types/index.d.ts +2 -2
- package/dist/cjs/types/index.js +18 -18
- package/dist/cjs/types/internal-events/event-detail-types.d.ts +20 -20
- package/dist/cjs/types/internal-events/event-detail-types.js +27 -27
- package/dist/cjs/types/internal-events/index.d.ts +1 -1
- package/dist/cjs/types/internal-events/index.js +17 -17
- package/dist/cjs/types/shopify-graphql-types/admin.generated.d.ts +105 -105
- package/dist/cjs/types/shopify-graphql-types/admin.generated.js +2 -2
- package/dist/cjs/types/shopify-graphql-types/admin.types.d.ts +26289 -26289
- package/dist/cjs/types/shopify-graphql-types/admin.types.js +5311 -5311
- package/dist/cjs/types/shopify-graphql-types/index.d.ts +2 -2
- package/dist/cjs/types/shopify-graphql-types/index.js +18 -18
- package/dist/cjs/types/shopify-graphql-types/index.js.map +1 -1
- package/dist/esm/__tests__/helpers/account-users-helper.spec.d.ts +1 -1
- package/dist/esm/__tests__/helpers/account-users-helper.spec.js +218 -198
- package/dist/esm/__tests__/helpers/account-users-helper.spec.js.map +1 -1
- package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.d.ts +1 -1
- package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.js +672 -672
- package/dist/esm/__tests__/identity-cache/identity-cache-db-service.spec.js.map +1 -1
- package/dist/esm/__tests__/identity-cache/trait-merging-and-staleness.spec.d.ts +1 -1
- package/dist/esm/__tests__/identity-cache/trait-merging-and-staleness.spec.js +586 -584
- package/dist/esm/__tests__/identity-cache/trait-merging-and-staleness.spec.js.map +1 -1
- package/dist/esm/__tests__/libs/compress-decompress.spec.d.ts +1 -1
- package/dist/esm/__tests__/libs/compress-decompress.spec.js +14 -14
- package/dist/esm/__tests__/libs/compress-decompress.spec.js.map +1 -1
- package/dist/esm/__tests__/libs/currency.spec.d.ts +1 -1
- package/dist/esm/__tests__/libs/currency.spec.js +218 -218
- package/dist/esm/__tests__/libs/currency.spec.js.map +1 -1
- package/dist/esm/__tests__/libs/dates.spec.d.ts +1 -1
- package/dist/esm/__tests__/libs/dates.spec.js +128 -130
- package/dist/esm/__tests__/libs/dates.spec.js.map +1 -1
- package/dist/esm/__tests__/libs/domain.spec.d.ts +1 -1
- package/dist/esm/__tests__/libs/domain.spec.js +105 -105
- package/dist/esm/__tests__/libs/numbers.spec.d.ts +1 -1
- package/dist/esm/__tests__/libs/numbers.spec.js +259 -259
- package/dist/esm/__tests__/s3-client/s3-client.spec.d.ts +1 -1
- package/dist/esm/__tests__/s3-client/s3-client.spec.js +31 -24
- package/dist/esm/__tests__/s3-client/s3-client.spec.js.map +1 -1
- package/dist/esm/__tests__/shopify/shopify-graphql-transformer.spec.d.ts +1 -1
- package/dist/esm/__tests__/shopify/shopify-graphql-transformer.spec.js +33 -33
- package/dist/esm/__tests__/shopify/shopify-graphql-transformer.spec.js.map +1 -1
- package/dist/esm/clients/generic/cognito-client.d.ts +23 -23
- package/dist/esm/clients/generic/cognito-client.js +204 -204
- package/dist/esm/clients/generic/cognito-client.js.map +1 -1
- package/dist/esm/clients/generic/dynamodb-client.d.ts +17 -17
- package/dist/esm/clients/generic/dynamodb-client.js +166 -166
- package/dist/esm/clients/generic/dynamodb-client.js.map +1 -1
- package/dist/esm/clients/generic/eventbridge-client.d.ts +14 -14
- package/dist/esm/clients/generic/eventbridge-client.js +47 -45
- package/dist/esm/clients/generic/eventbridge-client.js.map +1 -1
- package/dist/esm/clients/generic/http-client.d.ts +14 -14
- package/dist/esm/clients/generic/http-client.js +53 -53
- package/dist/esm/clients/generic/http-client.js.map +1 -1
- package/dist/esm/clients/generic/index.d.ts +10 -10
- package/dist/esm/clients/generic/index.js +10 -10
- package/dist/esm/clients/generic/lambda-invoke-client.d.ts +10 -10
- package/dist/esm/clients/generic/lambda-invoke-client.js +31 -31
- package/dist/esm/clients/generic/lambda-invoke-client.js.map +1 -1
- package/dist/esm/clients/generic/location-client.d.ts +8 -8
- package/dist/esm/clients/generic/location-client.js +27 -27
- package/dist/esm/clients/generic/location-client.js.map +1 -1
- package/dist/esm/clients/generic/redis-client.d.ts +18 -18
- package/dist/esm/clients/generic/redis-client.js +121 -121
- package/dist/esm/clients/generic/redis-client.js.map +1 -1
- package/dist/esm/clients/generic/s3-client.d.ts +23 -23
- package/dist/esm/clients/generic/s3-client.js +209 -191
- package/dist/esm/clients/generic/s3-client.js.map +1 -1
- package/dist/esm/clients/generic/singlestore-db-client.d.ts +14 -14
- package/dist/esm/clients/generic/singlestore-db-client.js +40 -40
- package/dist/esm/clients/generic/sqs-client.d.ts +20 -20
- package/dist/esm/clients/generic/sqs-client.js +32 -32
- package/dist/esm/clients/generic/sqs-client.js.map +1 -1
- package/dist/esm/clients/index.d.ts +3 -3
- package/dist/esm/clients/index.js +3 -3
- package/dist/esm/clients/internal-api/accounts-client.d.ts +83 -83
- package/dist/esm/clients/internal-api/accounts-client.js +125 -103
- package/dist/esm/clients/internal-api/accounts-client.js.map +1 -1
- package/dist/esm/clients/internal-api/cache-lambda-client.d.ts +25 -25
- package/dist/esm/clients/internal-api/cache-lambda-client.js +83 -75
- package/dist/esm/clients/internal-api/cache-lambda-client.js.map +1 -1
- package/dist/esm/clients/internal-api/db-management-client.d.ts +18 -18
- package/dist/esm/clients/internal-api/db-management-client.js +32 -32
- package/dist/esm/clients/internal-api/destinations-client.d.ts +33 -27
- package/dist/esm/clients/internal-api/destinations-client.js +68 -47
- package/dist/esm/clients/internal-api/destinations-client.js.map +1 -1
- package/dist/esm/clients/internal-api/event-collector-client.d.ts +20 -20
- package/dist/esm/clients/internal-api/event-collector-client.js +32 -32
- package/dist/esm/clients/internal-api/event-collector-client.js.map +1 -1
- package/dist/esm/clients/internal-api/identity-client.d.ts +31 -31
- package/dist/esm/clients/internal-api/identity-client.js +87 -79
- package/dist/esm/clients/internal-api/identity-client.js.map +1 -1
- package/dist/esm/clients/internal-api/index.d.ts +9 -9
- package/dist/esm/clients/internal-api/index.js +9 -9
- package/dist/esm/clients/internal-api/shopify-app-install-client.d.ts +37 -37
- package/dist/esm/clients/internal-api/shopify-app-install-client.js +77 -69
- package/dist/esm/clients/internal-api/shopify-app-install-client.js.map +1 -1
- package/dist/esm/clients/internal-api/subscriptions-client.d.ts +26 -26
- package/dist/esm/clients/internal-api/subscriptions-client.js +73 -69
- package/dist/esm/clients/internal-api/subscriptions-client.js.map +1 -1
- package/dist/esm/clients/internal-api/users-auth-client.d.ts +35 -35
- package/dist/esm/clients/internal-api/users-auth-client.js +106 -106
- package/dist/esm/clients/internal-api/users-auth-client.js.map +1 -1
- package/dist/esm/clients/third-party/emailable-client.d.ts +7 -7
- package/dist/esm/clients/third-party/emailable-client.js +21 -21
- package/dist/esm/clients/third-party/emailable-client.js.map +1 -1
- package/dist/esm/clients/third-party/exchange-rate-api-client.d.ts +17 -17
- package/dist/esm/clients/third-party/exchange-rate-api-client.js +15 -15
- package/dist/esm/clients/third-party/exchange-rate-api-client.js.map +1 -1
- package/dist/esm/clients/third-party/index.d.ts +3 -3
- package/dist/esm/clients/third-party/index.js +3 -3
- package/dist/esm/clients/third-party/loops-client.d.ts +10 -10
- package/dist/esm/clients/third-party/loops-client.js +26 -26
- package/dist/esm/clients/third-party/shopify/graphql-product-queries.d.ts +2 -2
- package/dist/esm/clients/third-party/shopify/graphql-product-queries.js +2 -2
- package/dist/esm/clients/third-party/shopify/shopify-graphql-client.d.ts +9 -9
- package/dist/esm/clients/third-party/shopify/shopify-graphql-client.js +111 -91
- package/dist/esm/clients/third-party/shopify/shopify-graphql-client.js.map +1 -1
- package/dist/esm/clients/third-party/shopify-client.d.ts +29 -29
- package/dist/esm/clients/third-party/shopify-client.js +142 -140
- package/dist/esm/clients/third-party/shopify-client.js.map +1 -1
- package/dist/esm/helpers/account-users-helper.d.ts +2 -2
- package/dist/esm/helpers/account-users-helper.js +18 -18
- package/dist/esm/helpers/account-users-helper.js.map +1 -1
- package/dist/esm/helpers/identity-cache-helper.d.ts +21 -21
- package/dist/esm/helpers/identity-cache-helper.js +151 -152
- package/dist/esm/helpers/identity-cache-helper.js.map +1 -1
- package/dist/esm/helpers/index.d.ts +6 -6
- package/dist/esm/helpers/index.js +6 -6
- package/dist/esm/helpers/input-validation-helper.d.ts +3 -3
- package/dist/esm/helpers/input-validation-helper.js +18 -18
- package/dist/esm/helpers/logging-helper.d.ts +16 -16
- package/dist/esm/helpers/logging-helper.js +56 -56
- package/dist/esm/helpers/logging-helper.js.map +1 -1
- package/dist/esm/helpers/response-helper.d.ts +18 -18
- package/dist/esm/helpers/response-helper.js +37 -37
- package/dist/esm/helpers/response-helper.js.map +1 -1
- package/dist/esm/helpers/shopify-helper.d.ts +9 -9
- package/dist/esm/helpers/shopify-helper.js +21 -23
- package/dist/esm/helpers/shopify-helper.js.map +1 -1
- package/dist/esm/index.d.ts +5 -5
- package/dist/esm/index.js +5 -5
- package/dist/esm/libs/click-id-parser.d.ts +23 -23
- package/dist/esm/libs/click-id-parser.js +45 -45
- package/dist/esm/libs/click-id-parser.js.map +1 -1
- package/dist/esm/libs/compression.d.ts +2 -2
- package/dist/esm/libs/compression.js +25 -25
- package/dist/esm/libs/compression.js.map +1 -1
- package/dist/esm/libs/cookie.d.ts +12 -12
- package/dist/esm/libs/cookie.js +64 -62
- package/dist/esm/libs/cookie.js.map +1 -1
- package/dist/esm/libs/crypto.d.ts +3 -3
- package/dist/esm/libs/crypto.js +11 -11
- package/dist/esm/libs/csv.d.ts +2 -2
- package/dist/esm/libs/csv.js +30 -30
- package/dist/esm/libs/csv.js.map +1 -1
- package/dist/esm/libs/currency.d.ts +1 -1
- package/dist/esm/libs/currency.js +22 -17
- package/dist/esm/libs/currency.js.map +1 -1
- package/dist/esm/libs/dates.d.ts +12 -12
- package/dist/esm/libs/dates.js +83 -83
- package/dist/esm/libs/dates.js.map +1 -1
- package/dist/esm/libs/domain.d.ts +2 -2
- package/dist/esm/libs/domain.js +33 -33
- package/dist/esm/libs/emails.d.ts +6 -6
- package/dist/esm/libs/emails.js +115 -115
- package/dist/esm/libs/emails.js.map +1 -1
- package/dist/esm/libs/http-error.d.ts +21 -21
- package/dist/esm/libs/http-error.js +59 -55
- package/dist/esm/libs/http-error.js.map +1 -1
- package/dist/esm/libs/http-status-codes.d.ts +58 -58
- package/dist/esm/libs/http-status-codes.js +59 -59
- package/dist/esm/libs/index.d.ts +17 -17
- package/dist/esm/libs/index.js +17 -17
- package/dist/esm/libs/numbers.d.ts +1 -1
- package/dist/esm/libs/numbers.js +11 -11
- package/dist/esm/libs/referrer-parser/index.d.ts +2 -2
- package/dist/esm/libs/referrer-parser/index.js +2 -2
- package/dist/esm/libs/referrer-parser/referrer-data.d.ts +9 -9
- package/dist/esm/libs/referrer-parser/referrer-data.js +3304 -4709
- package/dist/esm/libs/referrer-parser/referrer-data.js.map +1 -1
- package/dist/esm/libs/referrer-parser/referrer-parser-util.d.ts +20 -20
- package/dist/esm/libs/referrer-parser/referrer-parser-util.js +124 -121
- package/dist/esm/libs/referrer-parser/referrer-parser-util.js.map +1 -1
- package/dist/esm/libs/strings.d.ts +3 -3
- package/dist/esm/libs/strings.js +40 -40
- package/dist/esm/libs/strings.js.map +1 -1
- package/dist/esm/libs/traits.d.ts +6 -6
- package/dist/esm/libs/traits.js +54 -54
- package/dist/esm/libs/traits.js.map +1 -1
- package/dist/esm/libs/url.d.ts +1 -1
- package/dist/esm/libs/url.js +9 -9
- package/dist/esm/libs/url.js.map +1 -1
- package/dist/esm/services/cache/generic-cached-object.d.ts +5 -5
- package/dist/esm/services/cache/generic-cached-object.js +1 -1
- package/dist/esm/services/cache/index.d.ts +1 -1
- package/dist/esm/services/cache/index.js +1 -1
- package/dist/esm/services/cache/product-cache-service.d.ts +21 -21
- package/dist/esm/services/cache/product-cache-service.js +68 -60
- package/dist/esm/services/cache/product-cache-service.js.map +1 -1
- package/dist/esm/services/currency-exchange-rate-lookup-service.d.ts +11 -11
- package/dist/esm/services/currency-exchange-rate-lookup-service.js +62 -46
- package/dist/esm/services/currency-exchange-rate-lookup-service.js.map +1 -1
- package/dist/esm/services/db/currency-exchange-rates-db-service.d.ts +21 -21
- package/dist/esm/services/db/currency-exchange-rates-db-service.js +35 -35
- package/dist/esm/services/db/currency-exchange-rates-db-service.js.map +1 -1
- package/dist/esm/services/db/destinations-db-service.d.ts +12 -11
- package/dist/esm/services/db/destinations-db-service.js +72 -60
- package/dist/esm/services/db/destinations-db-service.js.map +1 -1
- package/dist/esm/services/db/identity-cache-db-service.d.ts +28 -28
- package/dist/esm/services/db/identity-cache-db-service.js +313 -271
- package/dist/esm/services/db/identity-cache-db-service.js.map +1 -1
- package/dist/esm/services/db/index.d.ts +9 -9
- package/dist/esm/services/db/index.js +9 -9
- package/dist/esm/services/db/log-events-db-service.d.ts +11 -11
- package/dist/esm/services/db/log-events-db-service.js +177 -168
- package/dist/esm/services/db/log-events-db-service.js.map +1 -1
- package/dist/esm/services/db/purchasable-contacts-db-service.d.ts +9 -9
- package/dist/esm/services/db/purchasable-contacts-db-service.js +39 -39
- package/dist/esm/services/db/purchasable-contacts-db-service.js.map +1 -1
- package/dist/esm/services/db/purchased-contacts-db-service.d.ts +17 -17
- package/dist/esm/services/db/purchased-contacts-db-service.js +139 -139
- package/dist/esm/services/db/purchased-contacts-db-service.js.map +1 -1
- package/dist/esm/services/db/shopify-app-installs-db-service.d.ts +7 -7
- package/dist/esm/services/db/shopify-app-installs-db-service.js +43 -43
- package/dist/esm/services/db/shopify-app-installs-db-service.js.map +1 -1
- package/dist/esm/services/db/shopify-products-cache-db-service.d.ts +16 -16
- package/dist/esm/services/db/shopify-products-cache-db-service.js +66 -58
- package/dist/esm/services/db/shopify-products-cache-db-service.js.map +1 -1
- package/dist/esm/services/db/tracking-events-db-service.d.ts +20 -20
- package/dist/esm/services/db/tracking-events-db-service.js +161 -158
- package/dist/esm/services/db/tracking-events-db-service.js.map +1 -1
- package/dist/esm/services/eventbridge-integration-service.d.ts +9 -9
- package/dist/esm/services/eventbridge-integration-service.js +24 -24
- package/dist/esm/services/eventbridge-integration-service.js.map +1 -1
- package/dist/esm/services/events/index.d.ts +3 -3
- package/dist/esm/services/events/index.js +3 -3
- package/dist/esm/services/events/log-event-service.d.ts +9 -9
- package/dist/esm/services/events/log-event-service.js +52 -52
- package/dist/esm/services/events/log-event-service.js.map +1 -1
- package/dist/esm/services/events/metric-event-service.d.ts +9 -9
- package/dist/esm/services/events/metric-event-service.js +45 -45
- package/dist/esm/services/events/metric-event-service.js.map +1 -1
- package/dist/esm/services/events/tracking-event-sqs-service.d.ts +8 -8
- package/dist/esm/services/events/tracking-event-sqs-service.js +30 -25
- package/dist/esm/services/events/tracking-event-sqs-service.js.map +1 -1
- package/dist/esm/services/generic-cache-service.d.ts +7 -7
- package/dist/esm/services/generic-cache-service.js +29 -29
- package/dist/esm/services/generic-cache-service.js.map +1 -1
- package/dist/esm/services/index.d.ts +8 -8
- package/dist/esm/services/index.js +8 -8
- package/dist/esm/services/ipdata-lookup-service.d.ts +19 -19
- package/dist/esm/services/ipdata-lookup-service.js +73 -73
- package/dist/esm/services/ipdata-lookup-service.js.map +1 -1
- package/dist/esm/services/shopify/index.d.ts +3 -3
- package/dist/esm/services/shopify/index.js +3 -3
- package/dist/esm/services/shopify/products/index.d.ts +1 -1
- package/dist/esm/services/shopify/products/index.js +1 -1
- package/dist/esm/services/shopify/products/shopify-products-serviceV2.d.ts +17 -17
- package/dist/esm/services/shopify/products/shopify-products-serviceV2.js +110 -99
- package/dist/esm/services/shopify/products/shopify-products-serviceV2.js.map +1 -1
- package/dist/esm/services/shopify/shopify-graphql-transformer.d.ts +9 -9
- package/dist/esm/services/shopify/shopify-graphql-transformer.js +138 -134
- package/dist/esm/services/shopify/shopify-graphql-transformer.js.map +1 -1
- package/dist/esm/services/shopify/types/index.d.ts +1 -1
- package/dist/esm/services/shopify/types/index.js +1 -1
- package/dist/esm/services/shopify/types/product.d.ts +115 -115
- package/dist/esm/services/shopify/types/product.js +6 -6
- package/dist/esm/services/shopify/types/product.js.map +1 -1
- package/dist/esm/types/api-response.d.ts +6 -6
- package/dist/esm/types/api-response.js +1 -1
- package/dist/esm/types/index.d.ts +2 -2
- package/dist/esm/types/index.js +2 -2
- package/dist/esm/types/internal-events/event-detail-types.d.ts +20 -20
- package/dist/esm/types/internal-events/event-detail-types.js +24 -24
- package/dist/esm/types/internal-events/index.d.ts +1 -1
- package/dist/esm/types/internal-events/index.js +1 -1
- package/dist/esm/types/shopify-graphql-types/admin.generated.d.ts +105 -105
- package/dist/esm/types/shopify-graphql-types/admin.generated.js +1 -1
- package/dist/esm/types/shopify-graphql-types/admin.types.d.ts +26289 -26289
- package/dist/esm/types/shopify-graphql-types/admin.types.js +5299 -5299
- package/dist/esm/types/shopify-graphql-types/index.d.ts +2 -2
- package/dist/esm/types/shopify-graphql-types/index.js +2 -2
- package/dist/esm/types/shopify-graphql-types/index.js.map +1 -1
- package/package.json +3 -3
|
@@ -1,167 +1,167 @@
|
|
|
1
|
-
import { DynamoDBClient } from '@aws-sdk/client-dynamodb';
|
|
2
|
-
import { DynamoDBDocument } from '@aws-sdk/lib-dynamodb';
|
|
3
|
-
import { HttpStatusCodes, Logger } from '../../index.js';
|
|
4
|
-
const marshallOptions = {
|
|
5
|
-
convertEmptyValues: false,
|
|
6
|
-
removeUndefinedValues: true,
|
|
7
|
-
convertClassInstanceToMap: true
|
|
8
|
-
};
|
|
9
|
-
const unmarshallOptions = {
|
|
10
|
-
wrapNumbers: false,
|
|
11
|
-
};
|
|
12
|
-
const translateConfig = { marshallOptions, unmarshallOptions };
|
|
13
|
-
const ddbClient = new DynamoDBClient({});
|
|
14
|
-
const client = DynamoDBDocument.from(ddbClient, translateConfig);
|
|
15
|
-
export class DynamoDbClient {
|
|
16
|
-
static safeGet = async (tableName, keyName, keyValue) => {
|
|
17
|
-
try {
|
|
18
|
-
const params = {
|
|
19
|
-
TableName: tableName,
|
|
20
|
-
Key: {
|
|
21
|
-
[keyName]: keyValue
|
|
22
|
-
}
|
|
23
|
-
};
|
|
24
|
-
const res = await client.get(params);
|
|
25
|
-
return res?.Item ?? null;
|
|
26
|
-
}
|
|
27
|
-
catch (e) {
|
|
28
|
-
Logger.error(e, { message: 'Dynamo Client Get Failed', tableName, keyName, keyValue });
|
|
29
|
-
return null;
|
|
30
|
-
}
|
|
31
|
-
};
|
|
32
|
-
static safePut = async (tableName, data) => {
|
|
33
|
-
try {
|
|
34
|
-
const params = {
|
|
35
|
-
TableName: tableName,
|
|
36
|
-
Item: data
|
|
37
|
-
};
|
|
38
|
-
const res = await client.put(params);
|
|
39
|
-
return res;
|
|
40
|
-
}
|
|
41
|
-
catch (e) {
|
|
42
|
-
Logger.error(e, { message: 'Dynamo failed simplePut', tableName, data });
|
|
43
|
-
return null;
|
|
44
|
-
}
|
|
45
|
-
};
|
|
46
|
-
static safeDelete = async (tableName, keyName, keyValue) => {
|
|
47
|
-
try {
|
|
48
|
-
const params = {
|
|
49
|
-
TableName: tableName,
|
|
50
|
-
Key: {
|
|
51
|
-
[keyName]: keyValue
|
|
52
|
-
}
|
|
53
|
-
};
|
|
54
|
-
const res = await client.delete(params);
|
|
55
|
-
return res;
|
|
56
|
-
}
|
|
57
|
-
catch (e) {
|
|
58
|
-
Logger.error(e, { message: 'Dynamo failed safeDelete' });
|
|
59
|
-
return null;
|
|
60
|
-
}
|
|
61
|
-
};
|
|
62
|
-
static safeQueryByGSI = async (tableName, gsiName, keyName, keyValue) => {
|
|
63
|
-
const query = {
|
|
64
|
-
TableName: tableName,
|
|
65
|
-
IndexName: gsiName,
|
|
66
|
-
KeyConditionExpression: `${keyName} = :value`,
|
|
67
|
-
ExpressionAttributeValues: {
|
|
68
|
-
':value': keyValue
|
|
69
|
-
}
|
|
70
|
-
};
|
|
71
|
-
const results = await DynamoDbClient.queryAll(query);
|
|
72
|
-
return results;
|
|
73
|
-
};
|
|
74
|
-
static safeBatchGet = async (tableName, keys) => {
|
|
75
|
-
try {
|
|
76
|
-
if (keys.length === 0) {
|
|
77
|
-
return [];
|
|
78
|
-
}
|
|
79
|
-
const params = {
|
|
80
|
-
RequestItems: {}
|
|
81
|
-
};
|
|
82
|
-
params.RequestItems[tableName] = {
|
|
83
|
-
Keys: keys
|
|
84
|
-
};
|
|
85
|
-
const res = await client.batchGet(params);
|
|
86
|
-
if (res?.Responses?.[tableName]) {
|
|
87
|
-
return res?.Responses?.[tableName];
|
|
88
|
-
}
|
|
89
|
-
return [];
|
|
90
|
-
}
|
|
91
|
-
catch (e) {
|
|
92
|
-
Logger.error(e, { message: 'Dynamo failed safeBatchGet' });
|
|
93
|
-
return [];
|
|
94
|
-
}
|
|
95
|
-
};
|
|
96
|
-
static safeBatchPut = async (tableName, items) => {
|
|
97
|
-
try {
|
|
98
|
-
const params = {
|
|
99
|
-
RequestItems: {}
|
|
100
|
-
};
|
|
101
|
-
params.RequestItems[tableName] = items.map((item) => {
|
|
102
|
-
return {
|
|
103
|
-
PutRequest: {
|
|
104
|
-
Item: item
|
|
105
|
-
}
|
|
106
|
-
};
|
|
107
|
-
});
|
|
108
|
-
const res = await client.batchWrite(params);
|
|
109
|
-
if (res?.$metadata?.httpStatusCode === HttpStatusCodes.OK) {
|
|
110
|
-
return res;
|
|
111
|
-
}
|
|
112
|
-
return null;
|
|
113
|
-
}
|
|
114
|
-
catch (e) {
|
|
115
|
-
Logger.error(e, { message: 'Dynamo failed safeBatchPut' });
|
|
116
|
-
return null;
|
|
117
|
-
}
|
|
118
|
-
};
|
|
119
|
-
static queryAll = async (params) => {
|
|
120
|
-
try {
|
|
121
|
-
let currentResult, exclusiveStartKey;
|
|
122
|
-
let accumulatedResults = [];
|
|
123
|
-
do {
|
|
124
|
-
params.ExclusiveStartKey = exclusiveStartKey;
|
|
125
|
-
params.Limit = 200;
|
|
126
|
-
currentResult = await client.query(params);
|
|
127
|
-
if (currentResult.Items) {
|
|
128
|
-
exclusiveStartKey = currentResult.LastEvaluatedKey;
|
|
129
|
-
accumulatedResults = [...accumulatedResults, ...currentResult.Items];
|
|
130
|
-
}
|
|
131
|
-
} while (currentResult.Items && currentResult.Items.length > 0 && currentResult.LastEvaluatedKey);
|
|
132
|
-
return accumulatedResults;
|
|
133
|
-
}
|
|
134
|
-
catch (e) {
|
|
135
|
-
Logger.error(e, { message: 'Dynamo failed queryAll' });
|
|
136
|
-
return null;
|
|
137
|
-
}
|
|
138
|
-
};
|
|
139
|
-
static scanAll = async (params) => {
|
|
140
|
-
try {
|
|
141
|
-
let currentResult, exclusiveStartKey;
|
|
142
|
-
let accumulatedResults = [];
|
|
143
|
-
do {
|
|
144
|
-
params.ExclusiveStartKey = exclusiveStartKey;
|
|
145
|
-
params.Limit = 200;
|
|
146
|
-
currentResult = await client.scan(params);
|
|
147
|
-
if (currentResult.Items) {
|
|
148
|
-
exclusiveStartKey = currentResult.LastEvaluatedKey;
|
|
149
|
-
accumulatedResults = [...accumulatedResults, ...currentResult.Items];
|
|
150
|
-
}
|
|
151
|
-
} while (currentResult.Items && currentResult.Items.length > 0 && currentResult.LastEvaluatedKey);
|
|
152
|
-
return accumulatedResults;
|
|
153
|
-
}
|
|
154
|
-
catch (e) {
|
|
155
|
-
Logger.error(e, { message: 'Dynamo failed scanAll' });
|
|
156
|
-
return null;
|
|
157
|
-
}
|
|
158
|
-
};
|
|
159
|
-
static batchGet = (params) => client.batchGet(params);
|
|
160
|
-
static get = (params) => client.get(params);
|
|
161
|
-
static put = (params) => client.put(params);
|
|
162
|
-
static query = (params) => client.query(params);
|
|
163
|
-
static scan = (params) => client.scan(params);
|
|
164
|
-
static update = (params) => client.update(params);
|
|
165
|
-
static delete = (params) => client.delete(params);
|
|
166
|
-
}
|
|
1
|
+
import { DynamoDBClient } from '@aws-sdk/client-dynamodb';
|
|
2
|
+
import { DynamoDBDocument } from '@aws-sdk/lib-dynamodb';
|
|
3
|
+
import { HttpStatusCodes, Logger } from '../../index.js';
|
|
4
|
+
const marshallOptions = {
|
|
5
|
+
convertEmptyValues: false,
|
|
6
|
+
removeUndefinedValues: true,
|
|
7
|
+
convertClassInstanceToMap: true,
|
|
8
|
+
};
|
|
9
|
+
const unmarshallOptions = {
|
|
10
|
+
wrapNumbers: false,
|
|
11
|
+
};
|
|
12
|
+
const translateConfig = { marshallOptions, unmarshallOptions };
|
|
13
|
+
const ddbClient = new DynamoDBClient({});
|
|
14
|
+
const client = DynamoDBDocument.from(ddbClient, translateConfig);
|
|
15
|
+
export class DynamoDbClient {
|
|
16
|
+
static safeGet = async (tableName, keyName, keyValue) => {
|
|
17
|
+
try {
|
|
18
|
+
const params = {
|
|
19
|
+
TableName: tableName,
|
|
20
|
+
Key: {
|
|
21
|
+
[keyName]: keyValue,
|
|
22
|
+
},
|
|
23
|
+
};
|
|
24
|
+
const res = await client.get(params);
|
|
25
|
+
return res?.Item ?? null;
|
|
26
|
+
}
|
|
27
|
+
catch (e) {
|
|
28
|
+
Logger.error(e, { message: 'Dynamo Client Get Failed', tableName, keyName, keyValue });
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
static safePut = async (tableName, data) => {
|
|
33
|
+
try {
|
|
34
|
+
const params = {
|
|
35
|
+
TableName: tableName,
|
|
36
|
+
Item: data,
|
|
37
|
+
};
|
|
38
|
+
const res = await client.put(params);
|
|
39
|
+
return res;
|
|
40
|
+
}
|
|
41
|
+
catch (e) {
|
|
42
|
+
Logger.error(e, { message: 'Dynamo failed simplePut', tableName, data });
|
|
43
|
+
return null;
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
static safeDelete = async (tableName, keyName, keyValue) => {
|
|
47
|
+
try {
|
|
48
|
+
const params = {
|
|
49
|
+
TableName: tableName,
|
|
50
|
+
Key: {
|
|
51
|
+
[keyName]: keyValue,
|
|
52
|
+
},
|
|
53
|
+
};
|
|
54
|
+
const res = await client.delete(params);
|
|
55
|
+
return res;
|
|
56
|
+
}
|
|
57
|
+
catch (e) {
|
|
58
|
+
Logger.error(e, { message: 'Dynamo failed safeDelete' });
|
|
59
|
+
return null;
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
static safeQueryByGSI = async (tableName, gsiName, keyName, keyValue) => {
|
|
63
|
+
const query = {
|
|
64
|
+
TableName: tableName,
|
|
65
|
+
IndexName: gsiName,
|
|
66
|
+
KeyConditionExpression: `${keyName} = :value`,
|
|
67
|
+
ExpressionAttributeValues: {
|
|
68
|
+
':value': keyValue,
|
|
69
|
+
},
|
|
70
|
+
};
|
|
71
|
+
const results = await DynamoDbClient.queryAll(query);
|
|
72
|
+
return results;
|
|
73
|
+
};
|
|
74
|
+
static safeBatchGet = async (tableName, keys) => {
|
|
75
|
+
try {
|
|
76
|
+
if (keys.length === 0) {
|
|
77
|
+
return [];
|
|
78
|
+
}
|
|
79
|
+
const params = {
|
|
80
|
+
RequestItems: {},
|
|
81
|
+
};
|
|
82
|
+
params.RequestItems[tableName] = {
|
|
83
|
+
Keys: keys,
|
|
84
|
+
};
|
|
85
|
+
const res = await client.batchGet(params);
|
|
86
|
+
if (res?.Responses?.[tableName]) {
|
|
87
|
+
return res?.Responses?.[tableName];
|
|
88
|
+
}
|
|
89
|
+
return [];
|
|
90
|
+
}
|
|
91
|
+
catch (e) {
|
|
92
|
+
Logger.error(e, { message: 'Dynamo failed safeBatchGet' });
|
|
93
|
+
return [];
|
|
94
|
+
}
|
|
95
|
+
};
|
|
96
|
+
static safeBatchPut = async (tableName, items) => {
|
|
97
|
+
try {
|
|
98
|
+
const params = {
|
|
99
|
+
RequestItems: {},
|
|
100
|
+
};
|
|
101
|
+
params.RequestItems[tableName] = items.map((item) => {
|
|
102
|
+
return {
|
|
103
|
+
PutRequest: {
|
|
104
|
+
Item: item,
|
|
105
|
+
},
|
|
106
|
+
};
|
|
107
|
+
});
|
|
108
|
+
const res = await client.batchWrite(params);
|
|
109
|
+
if (res?.$metadata?.httpStatusCode === HttpStatusCodes.OK) {
|
|
110
|
+
return res;
|
|
111
|
+
}
|
|
112
|
+
return null;
|
|
113
|
+
}
|
|
114
|
+
catch (e) {
|
|
115
|
+
Logger.error(e, { message: 'Dynamo failed safeBatchPut' });
|
|
116
|
+
return null;
|
|
117
|
+
}
|
|
118
|
+
};
|
|
119
|
+
static queryAll = async (params) => {
|
|
120
|
+
try {
|
|
121
|
+
let currentResult, exclusiveStartKey;
|
|
122
|
+
let accumulatedResults = [];
|
|
123
|
+
do {
|
|
124
|
+
params.ExclusiveStartKey = exclusiveStartKey;
|
|
125
|
+
params.Limit = 200;
|
|
126
|
+
currentResult = await client.query(params);
|
|
127
|
+
if (currentResult.Items) {
|
|
128
|
+
exclusiveStartKey = currentResult.LastEvaluatedKey;
|
|
129
|
+
accumulatedResults = [...accumulatedResults, ...currentResult.Items];
|
|
130
|
+
}
|
|
131
|
+
} while (currentResult.Items && currentResult.Items.length > 0 && currentResult.LastEvaluatedKey);
|
|
132
|
+
return accumulatedResults;
|
|
133
|
+
}
|
|
134
|
+
catch (e) {
|
|
135
|
+
Logger.error(e, { message: 'Dynamo failed queryAll' });
|
|
136
|
+
return null;
|
|
137
|
+
}
|
|
138
|
+
};
|
|
139
|
+
static scanAll = async (params) => {
|
|
140
|
+
try {
|
|
141
|
+
let currentResult, exclusiveStartKey;
|
|
142
|
+
let accumulatedResults = [];
|
|
143
|
+
do {
|
|
144
|
+
params.ExclusiveStartKey = exclusiveStartKey;
|
|
145
|
+
params.Limit = 200;
|
|
146
|
+
currentResult = await client.scan(params);
|
|
147
|
+
if (currentResult.Items) {
|
|
148
|
+
exclusiveStartKey = currentResult.LastEvaluatedKey;
|
|
149
|
+
accumulatedResults = [...accumulatedResults, ...currentResult.Items];
|
|
150
|
+
}
|
|
151
|
+
} while (currentResult.Items && currentResult.Items.length > 0 && currentResult.LastEvaluatedKey);
|
|
152
|
+
return accumulatedResults;
|
|
153
|
+
}
|
|
154
|
+
catch (e) {
|
|
155
|
+
Logger.error(e, { message: 'Dynamo failed scanAll' });
|
|
156
|
+
return null;
|
|
157
|
+
}
|
|
158
|
+
};
|
|
159
|
+
static batchGet = (params) => client.batchGet(params);
|
|
160
|
+
static get = (params) => client.get(params);
|
|
161
|
+
static put = (params) => client.put(params);
|
|
162
|
+
static query = (params) => client.query(params);
|
|
163
|
+
static scan = (params) => client.scan(params);
|
|
164
|
+
static update = (params) => client.update(params);
|
|
165
|
+
static delete = (params) => client.delete(params);
|
|
166
|
+
}
|
|
167
167
|
//# sourceMappingURL=dynamodb-client.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynamodb-client.js","sourceRoot":"","sources":["../../../../src/clients/generic/dynamodb-client.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"dynamodb-client.js","sourceRoot":"","sources":["../../../../src/clients/generic/dynamodb-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { EventBridgeClient as EventBridge } from '@aws-sdk/client-eventbridge';
|
|
2
|
-
export declare class EventBridgeClient {
|
|
3
|
-
eventBridge: EventBridge;
|
|
4
|
-
EVENT_BUS_NAME: string;
|
|
5
|
-
constructor(eventBusName: string);
|
|
6
|
-
buildAndSendEvent: (eventSource: string, eventType: string, eventData: any) => Promise<import("@aws-sdk/client-eventbridge").PutEventsCommandOutput>;
|
|
7
|
-
buildEvent: (eventType: string, eventData: any, eventId?: string, eventTime?: string) => {
|
|
8
|
-
eventId: string;
|
|
9
|
-
eventType: string;
|
|
10
|
-
eventTime: string;
|
|
11
|
-
eventData: any;
|
|
12
|
-
};
|
|
13
|
-
putEvent: (source: string, detailType: string, data: any, headers?: any) => Promise<import("@aws-sdk/client-eventbridge").PutEventsCommandOutput>;
|
|
14
|
-
}
|
|
1
|
+
import { EventBridgeClient as EventBridge } from '@aws-sdk/client-eventbridge';
|
|
2
|
+
export declare class EventBridgeClient {
|
|
3
|
+
eventBridge: EventBridge;
|
|
4
|
+
EVENT_BUS_NAME: string;
|
|
5
|
+
constructor(eventBusName: string);
|
|
6
|
+
buildAndSendEvent: (eventSource: string, eventType: string, eventData: any) => Promise<import("@aws-sdk/client-eventbridge").PutEventsCommandOutput>;
|
|
7
|
+
buildEvent: (eventType: string, eventData: any, eventId?: string, eventTime?: string) => {
|
|
8
|
+
eventId: string;
|
|
9
|
+
eventType: string;
|
|
10
|
+
eventTime: string;
|
|
11
|
+
eventData: any;
|
|
12
|
+
};
|
|
13
|
+
putEvent: (source: string, detailType: string, data: any, headers?: any) => Promise<import("@aws-sdk/client-eventbridge").PutEventsCommandOutput>;
|
|
14
|
+
}
|
|
@@ -1,46 +1,48 @@
|
|
|
1
|
-
import { EventBridgeClient as EventBridge, PutEventsCommand } from '@aws-sdk/client-eventbridge';
|
|
2
|
-
import { v4 as uuidv4 } from 'uuid';
|
|
3
|
-
import { getCurrentTimestamp } from '../../libs/dates.js';
|
|
4
|
-
import { Logger } from '../../index.js';
|
|
5
|
-
export class EventBridgeClient {
|
|
6
|
-
eventBridge;
|
|
7
|
-
EVENT_BUS_NAME;
|
|
8
|
-
constructor(eventBusName) {
|
|
9
|
-
this.eventBridge = new EventBridge({});
|
|
10
|
-
this.EVENT_BUS_NAME = eventBusName;
|
|
11
|
-
}
|
|
12
|
-
buildAndSendEvent = async (eventSource, eventType, eventData) => {
|
|
13
|
-
const event = this.buildEvent(eventType, eventData);
|
|
14
|
-
return await this.putEvent(eventSource, eventType, event);
|
|
15
|
-
};
|
|
16
|
-
buildEvent = (eventType, eventData, eventId = uuidv4(), eventTime = getCurrentTimestamp()) => {
|
|
17
|
-
return {
|
|
18
|
-
eventId,
|
|
19
|
-
eventType,
|
|
20
|
-
eventTime,
|
|
21
|
-
eventData
|
|
22
|
-
};
|
|
23
|
-
};
|
|
24
|
-
putEvent = async (source, detailType, data, headers = null) => {
|
|
25
|
-
const params = {
|
|
26
|
-
Entries: [
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
1
|
+
import { EventBridgeClient as EventBridge, PutEventsCommand } from '@aws-sdk/client-eventbridge';
|
|
2
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
3
|
+
import { getCurrentTimestamp } from '../../libs/dates.js';
|
|
4
|
+
import { Logger } from '../../index.js';
|
|
5
|
+
export class EventBridgeClient {
|
|
6
|
+
eventBridge;
|
|
7
|
+
EVENT_BUS_NAME;
|
|
8
|
+
constructor(eventBusName) {
|
|
9
|
+
this.eventBridge = new EventBridge({});
|
|
10
|
+
this.EVENT_BUS_NAME = eventBusName;
|
|
11
|
+
}
|
|
12
|
+
buildAndSendEvent = async (eventSource, eventType, eventData) => {
|
|
13
|
+
const event = this.buildEvent(eventType, eventData);
|
|
14
|
+
return await this.putEvent(eventSource, eventType, event);
|
|
15
|
+
};
|
|
16
|
+
buildEvent = (eventType, eventData, eventId = uuidv4(), eventTime = getCurrentTimestamp()) => {
|
|
17
|
+
return {
|
|
18
|
+
eventId,
|
|
19
|
+
eventType,
|
|
20
|
+
eventTime,
|
|
21
|
+
eventData,
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
putEvent = async (source, detailType, data, headers = null) => {
|
|
25
|
+
const params = {
|
|
26
|
+
Entries: [
|
|
27
|
+
{
|
|
28
|
+
Detail: JSON.stringify({ headers, data }),
|
|
29
|
+
DetailType: detailType,
|
|
30
|
+
EventBusName: this.EVENT_BUS_NAME,
|
|
31
|
+
Source: source,
|
|
32
|
+
Time: new Date(),
|
|
33
|
+
},
|
|
34
|
+
],
|
|
35
|
+
};
|
|
36
|
+
const putEventscommand = new PutEventsCommand(params);
|
|
37
|
+
const response = await this.eventBridge.send(putEventscommand);
|
|
38
|
+
Logger.debug('EventBus Event Published', {
|
|
39
|
+
eventBusName: this.EVENT_BUS_NAME,
|
|
40
|
+
eventSource: source,
|
|
41
|
+
eventType: detailType,
|
|
42
|
+
event: data,
|
|
43
|
+
response,
|
|
44
|
+
});
|
|
45
|
+
return response;
|
|
46
|
+
};
|
|
47
|
+
}
|
|
46
48
|
//# sourceMappingURL=eventbridge-client.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eventbridge-client.js","sourceRoot":"","sources":["../../../../src/clients/generic/eventbridge-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,IAAI,WAAW,EAAE,gBAAgB,EAAyB,MAAM,6BAA6B,CAAC;AACxH,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAExC,MAAM,OAAO,iBAAiB;IACrB,WAAW,CAAc;IACzB,cAAc,CAAS;IAE9B,
|
|
1
|
+
{"version":3,"file":"eventbridge-client.js","sourceRoot":"","sources":["../../../../src/clients/generic/eventbridge-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,IAAI,WAAW,EAAE,gBAAgB,EAAyB,MAAM,6BAA6B,CAAC;AACxH,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAExC,MAAM,OAAO,iBAAiB;IACrB,WAAW,CAAc;IACzB,cAAc,CAAS;IAE9B,YAAY,YAAoB;QAC9B,IAAI,CAAC,WAAW,GAAG,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC;QACvC,IAAI,CAAC,cAAc,GAAG,YAAY,CAAC;IACrC,CAAC;IAEM,iBAAiB,GAAG,KAAK,EAAE,WAAmB,EAAE,SAAiB,EAAE,SAAc,EAAE,EAAE;QAC1F,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACpD,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC5D,CAAC,CAAC;IAEK,UAAU,GAAG,CAClB,SAAiB,EACjB,SAAc,EACd,UAAkB,MAAM,EAAE,EAC1B,YAAoB,mBAAmB,EAAE,EACzC,EAAE;QACF,OAAO;YACL,OAAO;YACP,SAAS;YACT,SAAS;YACT,SAAS;SACV,CAAC;IACJ,CAAC,CAAC;IAEK,QAAQ,GAAG,KAAK,EAAE,MAAc,EAAE,UAAkB,EAAE,IAAS,EAAE,UAAe,IAAI,EAAE,EAAE;QAC7F,MAAM,MAAM,GAA0B;YACpC,OAAO,EAAE;gBACP;oBACE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;oBACzC,UAAU,EAAE,UAAU;oBACtB,YAAY,EAAE,IAAI,CAAC,cAAc;oBACjC,MAAM,EAAE,MAAM;oBACd,IAAI,EAAE,IAAI,IAAI,EAAE;iBACjB;aACF;SACF,CAAC;QACF,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACtD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC/D,MAAM,CAAC,KAAK,CAAC,0BAA0B,EAAE;YACvC,YAAY,EAAE,IAAI,CAAC,cAAc;YACjC,WAAW,EAAE,MAAM;YACnB,SAAS,EAAE,UAAU;YACrB,KAAK,EAAE,IAAI;YACX,QAAQ;SACT,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;CACH"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { AxiosInstance, AxiosRequestConfig, CreateAxiosDefaults } from 'axios';
|
|
2
|
-
import { ApiResponse } from '../../types/api-response.js';
|
|
3
|
-
export declare class GenericHttpClient {
|
|
4
|
-
_axiosService: AxiosInstance;
|
|
5
|
-
constructor(config?: CreateAxiosDefaults);
|
|
6
|
-
instance: () => AxiosInstance;
|
|
7
|
-
get: (url: string, config?: AxiosRequestConfig) => Promise<ApiResponse<any>>;
|
|
8
|
-
post: (url: string, data?: any, config?: AxiosRequestConfig) => Promise<ApiResponse<any>>;
|
|
9
|
-
delete: (url: string, config?: AxiosRequestConfig) => Promise<ApiResponse<any>>;
|
|
10
|
-
put: (url: string, data?: any, config?: AxiosRequestConfig) => Promise<ApiResponse<any>>;
|
|
11
|
-
patch: (url: string, data?: any, config?: AxiosRequestConfig) => Promise<ApiResponse<any>>;
|
|
12
|
-
setBaseUrl: (url: string) => boolean;
|
|
13
|
-
}
|
|
14
|
-
export declare const axiosHttpService: (config?: CreateAxiosDefaults) => GenericHttpClient;
|
|
1
|
+
import { AxiosInstance, AxiosRequestConfig, CreateAxiosDefaults } from 'axios';
|
|
2
|
+
import { ApiResponse } from '../../types/api-response.js';
|
|
3
|
+
export declare class GenericHttpClient {
|
|
4
|
+
_axiosService: AxiosInstance;
|
|
5
|
+
constructor(config?: CreateAxiosDefaults);
|
|
6
|
+
instance: () => AxiosInstance;
|
|
7
|
+
get: (url: string, config?: AxiosRequestConfig) => Promise<ApiResponse<any>>;
|
|
8
|
+
post: (url: string, data?: any, config?: AxiosRequestConfig) => Promise<ApiResponse<any>>;
|
|
9
|
+
delete: (url: string, config?: AxiosRequestConfig) => Promise<ApiResponse<any>>;
|
|
10
|
+
put: (url: string, data?: any, config?: AxiosRequestConfig) => Promise<ApiResponse<any>>;
|
|
11
|
+
patch: (url: string, data?: any, config?: AxiosRequestConfig) => Promise<ApiResponse<any>>;
|
|
12
|
+
setBaseUrl: (url: string) => boolean;
|
|
13
|
+
}
|
|
14
|
+
export declare const axiosHttpService: (config?: CreateAxiosDefaults) => GenericHttpClient;
|
|
@@ -1,54 +1,54 @@
|
|
|
1
|
-
import axios from 'axios';
|
|
2
|
-
import https from 'https';
|
|
3
|
-
import log from 'lambda-log';
|
|
4
|
-
const httpResponse = (res = {}) => {
|
|
5
|
-
return {
|
|
6
|
-
headers: res?.headers || {},
|
|
7
|
-
data: res?.data || {},
|
|
8
|
-
status: res?.status || 0,
|
|
9
|
-
};
|
|
10
|
-
};
|
|
11
|
-
const handleAxiosError = (error) => {
|
|
12
|
-
if (error.response) {
|
|
13
|
-
log.error('Axios Received Failure Response', {
|
|
14
|
-
headers: error?.response?.headers,
|
|
15
|
-
data: error?.response?.data,
|
|
16
|
-
status: error?.response?.status
|
|
17
|
-
});
|
|
18
|
-
return {
|
|
19
|
-
headers: error?.response?.headers,
|
|
20
|
-
data: error?.response?.data,
|
|
21
|
-
status: error?.response?.status
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
else if (error.request) {
|
|
25
|
-
log.error('Axios unknown failure - no response received', { error });
|
|
26
|
-
return {
|
|
27
|
-
headers: error?.response?.headers || {},
|
|
28
|
-
status: 500,
|
|
29
|
-
data: { message: 'axios unknown failure, no response received', error }
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
else {
|
|
33
|
-
throw error;
|
|
34
|
-
}
|
|
35
|
-
};
|
|
36
|
-
export class GenericHttpClient {
|
|
37
|
-
_axiosService;
|
|
38
|
-
constructor(config = {}) {
|
|
39
|
-
config.adapter = 'http';
|
|
40
|
-
config.httpsAgent = new https.Agent({ keepAlive: true });
|
|
41
|
-
this._axiosService = axios.create(config);
|
|
42
|
-
}
|
|
43
|
-
instance = () => this._axiosService;
|
|
44
|
-
get = (url, config) => this._axiosService.get(url, config).then(httpResponse, handleAxiosError);
|
|
45
|
-
post = (url, data, config) => this._axiosService.post(url, data, config).then(httpResponse, handleAxiosError);
|
|
46
|
-
delete = (url, config) => this._axiosService.delete(url, config).then(httpResponse, handleAxiosError);
|
|
47
|
-
put = (url, data, config) => this._axiosService.put(url, data, config).then(httpResponse, handleAxiosError);
|
|
48
|
-
patch = (url, data, config) => this._axiosService.patch(url, data, config).then(httpResponse, handleAxiosError);
|
|
49
|
-
setBaseUrl = (url) => !!(this._axiosService.defaults.baseURL = url);
|
|
50
|
-
}
|
|
51
|
-
export const axiosHttpService = (config = {}) => {
|
|
52
|
-
return new GenericHttpClient(config);
|
|
53
|
-
};
|
|
1
|
+
import axios from 'axios';
|
|
2
|
+
import https from 'https';
|
|
3
|
+
import log from 'lambda-log';
|
|
4
|
+
const httpResponse = (res = {}) => {
|
|
5
|
+
return {
|
|
6
|
+
headers: res?.headers || {},
|
|
7
|
+
data: res?.data || {},
|
|
8
|
+
status: res?.status || 0,
|
|
9
|
+
};
|
|
10
|
+
};
|
|
11
|
+
const handleAxiosError = (error) => {
|
|
12
|
+
if (error.response) {
|
|
13
|
+
log.error('Axios Received Failure Response', {
|
|
14
|
+
headers: error?.response?.headers,
|
|
15
|
+
data: error?.response?.data,
|
|
16
|
+
status: error?.response?.status,
|
|
17
|
+
});
|
|
18
|
+
return {
|
|
19
|
+
headers: error?.response?.headers,
|
|
20
|
+
data: error?.response?.data,
|
|
21
|
+
status: error?.response?.status,
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
else if (error.request) {
|
|
25
|
+
log.error('Axios unknown failure - no response received', { error });
|
|
26
|
+
return {
|
|
27
|
+
headers: error?.response?.headers || {},
|
|
28
|
+
status: 500,
|
|
29
|
+
data: { message: 'axios unknown failure, no response received', error },
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
throw error;
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
export class GenericHttpClient {
|
|
37
|
+
_axiosService;
|
|
38
|
+
constructor(config = {}) {
|
|
39
|
+
config.adapter = 'http';
|
|
40
|
+
config.httpsAgent = new https.Agent({ keepAlive: true });
|
|
41
|
+
this._axiosService = axios.create(config);
|
|
42
|
+
}
|
|
43
|
+
instance = () => this._axiosService;
|
|
44
|
+
get = (url, config) => this._axiosService.get(url, config).then(httpResponse, handleAxiosError);
|
|
45
|
+
post = (url, data, config) => this._axiosService.post(url, data, config).then(httpResponse, handleAxiosError);
|
|
46
|
+
delete = (url, config) => this._axiosService.delete(url, config).then(httpResponse, handleAxiosError);
|
|
47
|
+
put = (url, data, config) => this._axiosService.put(url, data, config).then(httpResponse, handleAxiosError);
|
|
48
|
+
patch = (url, data, config) => this._axiosService.patch(url, data, config).then(httpResponse, handleAxiosError);
|
|
49
|
+
setBaseUrl = (url) => !!(this._axiosService.defaults.baseURL = url);
|
|
50
|
+
}
|
|
51
|
+
export const axiosHttpService = (config = {}) => {
|
|
52
|
+
return new GenericHttpClient(config);
|
|
53
|
+
};
|
|
54
54
|
//# sourceMappingURL=http-client.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../../../src/clients/generic/http-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAiE,MAAM,OAAO,CAAC;AACtF,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,YAAY,CAAC;AAG7B,MAAM,YAAY,GAAG,CAAC,MAAW,EAAE,EAAoB,EAAE;IACvD,OAAO;QACL,OAAO,EAAE,GAAG,EAAE,OAAO,IAAI,EAAE;QAC3B,IAAI,EAAE,GAAG,EAAE,IAAI,IAAI,EAAE;QACrB,MAAM,EAAE,GAAG,EAAE,MAAM,IAAI,CAAC;KACzB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,KAAU,EAAoB,EAAE;IACxD,IAAI,KAAK,CAAC,QAAQ,EAAE;QAClB,GAAG,CAAC,KAAK,CAAC,iCAAiC,
|
|
1
|
+
{"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../../../src/clients/generic/http-client.ts"],"names":[],"mappings":"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"}
|