@sommpicks/sommpicks-shopify 24.12.7 → 24.12.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/.eslintrc.js +26 -0
- package/dist/Logger.d.ts +1 -0
- package/dist/Logger.d.ts.map +1 -0
- package/dist/Logger.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js.map +1 -1
- package/dist/indexBuild.d.ts +1 -0
- package/dist/services/CacheWrapper.d.ts +1 -0
- package/dist/services/CacheWrapper.d.ts.map +1 -0
- package/dist/services/CacheWrapper.js.map +1 -1
- package/dist/services/CountryCodeService.d.ts +1 -0
- package/dist/services/CountryCodeService.d.ts.map +1 -0
- package/dist/services/CountryCodeService.js.map +1 -1
- package/dist/shopify/ShopifyAppService.d.ts +1 -0
- package/dist/shopify/ShopifyAppService.d.ts.map +1 -0
- package/dist/shopify/ShopifyAppService.js.map +1 -1
- package/dist/shopify/ShopifyAssetService.d.ts +1 -0
- package/dist/shopify/ShopifyAssetService.d.ts.map +1 -0
- package/dist/shopify/ShopifyAssetService.js.map +1 -1
- package/dist/shopify/ShopifyBillingService.d.ts +1 -0
- package/dist/shopify/ShopifyBillingService.d.ts.map +1 -0
- package/dist/shopify/ShopifyBillingService.js.map +1 -1
- package/dist/shopify/ShopifyCartTrasnformationService.d.ts +1 -0
- package/dist/shopify/ShopifyCartTrasnformationService.d.ts.map +1 -0
- package/dist/shopify/ShopifyCartTrasnformationService.js.map +1 -1
- package/dist/shopify/ShopifyCollectionService.d.ts +1 -0
- package/dist/shopify/ShopifyCollectionService.d.ts.map +1 -0
- package/dist/shopify/ShopifyCollectionService.js.map +1 -1
- package/dist/shopify/ShopifyCustomerService.d.ts +1 -0
- package/dist/shopify/ShopifyCustomerService.d.ts.map +1 -0
- package/dist/shopify/ShopifyCustomerService.js.map +1 -1
- package/dist/shopify/ShopifyDeliveryCustomisationService.d.ts +1 -0
- package/dist/shopify/ShopifyDeliveryCustomisationService.d.ts.map +1 -0
- package/dist/shopify/ShopifyDeliveryCustomisationService.js.map +1 -1
- package/dist/shopify/ShopifyDiscountService.d.ts +1 -0
- package/dist/shopify/ShopifyDiscountService.d.ts.map +1 -0
- package/dist/shopify/ShopifyDiscountService.js.map +1 -1
- package/dist/shopify/ShopifyDraftOrderService.d.ts +1 -0
- package/dist/shopify/ShopifyDraftOrderService.d.ts.map +1 -0
- package/dist/shopify/ShopifyDraftOrderService.js.map +1 -1
- package/dist/shopify/ShopifyFulfillmentService.d.ts +1 -0
- package/dist/shopify/ShopifyFulfillmentService.d.ts.map +1 -0
- package/dist/shopify/ShopifyFulfillmentService.js.map +1 -1
- package/dist/shopify/ShopifyFunctionsProductDiscountsService.d.ts +1 -0
- package/dist/shopify/ShopifyFunctionsProductDiscountsService.d.ts.map +1 -0
- package/dist/shopify/ShopifyFunctionsProductDiscountsService.js.map +1 -1
- package/dist/shopify/ShopifyInventoryService.d.ts +1 -0
- package/dist/shopify/ShopifyInventoryService.d.ts.map +1 -0
- package/dist/shopify/ShopifyInventoryService.js.map +1 -1
- package/dist/shopify/ShopifyLocationService.d.ts +1 -0
- package/dist/shopify/ShopifyLocationService.d.ts.map +1 -0
- package/dist/shopify/ShopifyLocationService.js.map +1 -1
- package/dist/shopify/ShopifyOrderRefundsService.d.ts +1 -0
- package/dist/shopify/ShopifyOrderRefundsService.d.ts.map +1 -0
- package/dist/shopify/ShopifyOrderRefundsService.js.map +1 -1
- package/dist/shopify/ShopifyOrderRiskService.d.ts +1 -0
- package/dist/shopify/ShopifyOrderRiskService.d.ts.map +1 -0
- package/dist/shopify/ShopifyOrderRiskService.js.map +1 -1
- package/dist/shopify/ShopifyOrderService.d.ts +1 -0
- package/dist/shopify/ShopifyOrderService.d.ts.map +1 -0
- package/dist/shopify/ShopifyOrderService.js.map +1 -1
- package/dist/shopify/ShopifyPageService.d.ts +1 -0
- package/dist/shopify/ShopifyPageService.d.ts.map +1 -0
- package/dist/shopify/ShopifyPageService.js.map +1 -1
- package/dist/shopify/ShopifyProductService.d.ts +1 -0
- package/dist/shopify/ShopifyProductService.d.ts.map +1 -0
- package/dist/shopify/ShopifyProductService.js.map +1 -1
- package/dist/shopify/ShopifyShippingZonesService.d.ts +1 -0
- package/dist/shopify/ShopifyShippingZonesService.d.ts.map +1 -0
- package/dist/shopify/ShopifyShippingZonesService.js.map +1 -1
- package/dist/shopify/ShopifyShopService.d.ts +1 -0
- package/dist/shopify/ShopifyShopService.d.ts.map +1 -0
- package/dist/shopify/ShopifyShopService.js.map +1 -1
- package/dist/shopify/ShopifyTemplateService.d.ts +1 -0
- package/dist/shopify/ShopifyTemplateService.d.ts.map +1 -0
- package/dist/shopify/ShopifyTemplateService.js.map +1 -1
- package/dist/shopify/ShopifyThemeService.d.ts +1 -0
- package/dist/shopify/ShopifyThemeService.d.ts.map +1 -0
- package/dist/shopify/ShopifyThemeService.js.map +1 -1
- package/dist/shopify/ShopifyUtils.d.ts +1 -0
- package/dist/shopify/ShopifyUtils.d.ts.map +1 -0
- package/dist/shopify/ShopifyUtils.js.map +1 -1
- package/dist/shopify/ShopifyWebhookService.d.ts +1 -0
- package/dist/shopify/ShopifyWebhookService.d.ts.map +1 -0
- package/dist/shopify/ShopifyWebhookService.js.map +1 -1
- package/dist/shopify/base/APIVersion.d.ts +1 -0
- package/dist/shopify/base/APIVersion.d.ts.map +1 -0
- package/dist/shopify/base/APIVersion.js +1 -1
- package/dist/shopify/base/APIVersion.js.map +1 -1
- package/dist/shopify/base/AbstractService.d.ts +1 -0
- package/dist/shopify/base/AbstractService.d.ts.map +1 -0
- package/dist/shopify/base/AbstractService.js.map +1 -1
- package/dist/shopify/base/ErrorHelper.d.ts +1 -0
- package/dist/shopify/base/ErrorHelper.d.ts.map +1 -0
- package/dist/shopify/base/ErrorHelper.js.map +1 -1
- package/dist/shopify/errors/InspiraShopifyCustomError.d.ts +1 -0
- package/dist/shopify/errors/InspiraShopifyCustomError.d.ts.map +1 -0
- package/dist/shopify/errors/InspiraShopifyCustomError.js.map +1 -1
- package/dist/shopify/errors/InspiraShopifyError.d.ts +1 -0
- package/dist/shopify/errors/InspiraShopifyError.d.ts.map +1 -0
- package/dist/shopify/errors/InspiraShopifyError.js.map +1 -1
- package/dist/shopify/errors/InspiraShopifyUnableToReserveInventoryError.d.ts +1 -0
- package/dist/shopify/errors/InspiraShopifyUnableToReserveInventoryError.d.ts.map +1 -0
- package/dist/shopify/errors/InspiraShopifyUnableToReserveInventoryError.js.map +1 -1
- package/dist/shopify/helpers/ShopifyProductServiceHelper.d.ts +1 -0
- package/dist/shopify/helpers/ShopifyProductServiceHelper.d.ts.map +1 -0
- package/dist/shopify/helpers/ShopifyProductServiceHelper.js.map +1 -1
- package/dist/shopify/product/ShopifyProductCountService.d.ts +1 -0
- package/dist/shopify/product/ShopifyProductCountService.d.ts.map +1 -0
- package/dist/shopify/product/ShopifyProductCountService.js.map +1 -1
- package/dist/shopify/product/ShopifyProductListService.d.ts +1 -0
- package/dist/shopify/product/ShopifyProductListService.d.ts.map +1 -0
- package/dist/shopify/product/ShopifyProductListService.js.map +1 -1
- package/dist/shopify/product/ShopifyProductMetafieldsService.d.ts +1 -0
- package/dist/shopify/product/ShopifyProductMetafieldsService.d.ts.map +1 -0
- package/dist/shopify/product/ShopifyProductMetafieldsService.js.map +1 -1
- package/dist/shopify/product/ShopifyProductPublicationsService.d.ts +1 -0
- package/dist/shopify/product/ShopifyProductPublicationsService.d.ts.map +1 -0
- package/dist/shopify/product/ShopifyProductPublicationsService.js.map +1 -1
- package/dist/shopify/product/ShopifyVariantService.d.ts +1 -0
- package/dist/shopify/product/ShopifyVariantService.d.ts.map +1 -0
- package/dist/shopify/product/ShopifyVariantService.js.map +1 -1
- package/dist/shopify/router/ShopifyMandatoryRouter.d.ts +1 -0
- package/dist/shopify/router/ShopifyMandatoryRouter.d.ts.map +1 -0
- package/dist/shopify/router/ShopifyMandatoryRouter.js.map +1 -1
- package/dist/shopify/router/ShopifyRouter.d.ts +1 -0
- package/dist/shopify/router/ShopifyRouter.d.ts.map +1 -0
- package/dist/shopify/router/ShopifyRouter.js +72 -1
- package/dist/shopify/router/ShopifyRouter.js.map +1 -1
- package/dist/shopify/router/ShopifyRouterBis.d.ts +1 -0
- package/dist/shopify/router/ShopifyRouterBis.d.ts.map +1 -0
- package/dist/shopify/router/ShopifyRouterBis.js.map +1 -1
- package/dist/shopify/router/ShopifyRouterBisBis.d.ts +1 -0
- package/dist/shopify/router/ShopifyRouterBisBis.d.ts.map +1 -0
- package/dist/shopify/router/ShopifyRouterBisBis.js.map +1 -1
- package/dist/shopify/router/ShopifyRouterBisBisBis.d.ts +1 -0
- package/dist/shopify/router/ShopifyRouterBisBisBis.d.ts.map +1 -0
- package/dist/shopify/router/ShopifyRouterBisBisBis.js.map +1 -1
- package/dist/shopify/router/ShopifyRouterBisBisBisBis.d.ts +1 -0
- package/dist/shopify/router/ShopifyRouterBisBisBisBis.d.ts.map +1 -0
- package/dist/shopify/router/ShopifyRouterBisBisBisBis.js.map +1 -1
- package/dist/shopify/router/WebhookSkipMiddleware.d.ts +1 -0
- package/dist/shopify/router/WebhookSkipMiddleware.d.ts.map +1 -0
- package/dist/shopify/router/WebhookSkipMiddleware.js.map +1 -1
- package/dist/shopify/router/services/CryptoService.d.ts +2 -0
- package/dist/shopify/router/services/CryptoService.d.ts.map +1 -0
- package/dist/shopify/router/services/CryptoService.js.map +1 -1
- package/dist/shopify/router/services/HmacValidator.d.ts +1 -0
- package/dist/shopify/router/services/HmacValidator.d.ts.map +1 -0
- package/dist/shopify/router/services/HmacValidator.js.map +1 -1
- package/dist/shopify/router/services/OauthService.d.ts +1 -0
- package/dist/shopify/router/services/OauthService.d.ts.map +1 -0
- package/dist/shopify/router/services/OauthService.js.map +1 -1
- package/dist/shopify/router/services/RestUtils.d.ts +1 -0
- package/dist/shopify/router/services/RestUtils.d.ts.map +1 -0
- package/dist/shopify/router/services/RestUtils.js.map +1 -1
- package/dist/shopify/router/services/rateLimiter/MemoryStores.d.ts +1 -0
- package/dist/shopify/router/services/rateLimiter/MemoryStores.d.ts.map +1 -0
- package/dist/shopify/router/services/rateLimiter/MemoryStores.js.map +1 -1
- package/dist/shopify/router/services/rateLimiter/StoreRateLimiter.d.ts +1 -0
- package/dist/shopify/router/services/rateLimiter/StoreRateLimiter.d.ts.map +1 -0
- package/dist/shopify/router/services/rateLimiter/StoreRateLimiter.js.map +1 -1
- package/dist/test/router/ShopifyRouter.test.d.ts +1 -0
- package/dist/test/router/ShopifyRouter.test.d.ts.map +1 -0
- package/dist/test/router/ShopifyRouter.test.js.map +1 -1
- package/dist/test/router/WebhookSkipMiddleware.test.d.ts +1 -0
- package/dist/test/router/WebhookSkipMiddleware.test.d.ts.map +1 -0
- package/dist/test/router/WebhookSkipMiddleware.test.js.map +1 -1
- package/dist/test/router/services/HmacValidator.test.d.ts +1 -0
- package/dist/test/router/services/HmacValidator.test.d.ts.map +1 -0
- package/dist/test/router/services/HmacValidator.test.js.map +1 -1
- package/dist/test/router/services/RestUtils.test.d.ts +1 -0
- package/dist/test/router/services/RestUtils.test.d.ts.map +1 -0
- package/dist/test/router/services/RestUtils.test.js.map +1 -1
- package/dist/test/router/services/rateLimiter/StoreRateLimiter.test.d.ts +1 -0
- package/dist/test/router/services/rateLimiter/StoreRateLimiter.test.d.ts.map +1 -0
- package/dist/test/router/services/rateLimiter/StoreRateLimiter.test.js.map +1 -1
- package/dist/test/services/CacheWrapper.test.d.ts +1 -0
- package/dist/test/services/CacheWrapper.test.d.ts.map +1 -0
- package/dist/test/services/CacheWrapper.test.js.map +1 -1
- package/dist/test/shopify/ShopifyOrderService.test.d.ts +1 -0
- package/dist/test/shopify/ShopifyOrderService.test.d.ts.map +1 -0
- package/dist/test/shopify/ShopifyOrderService.test.js.map +1 -1
- package/dist/test/shopify/ShopifyProductService.test.d.ts +1 -0
- package/dist/test/shopify/ShopifyProductService.test.d.ts.map +1 -0
- package/dist/test/shopify/ShopifyProductService.test.js.map +1 -1
- package/dist/test/shopify/ShopifyWebhookService.test.d.ts +1 -0
- package/dist/test/shopify/ShopifyWebhookService.test.d.ts.map +1 -0
- package/dist/test/shopify/ShopifyWebhookService.test.js.map +1 -1
- package/package.json +8 -1
- package/shopify/base/APIVersion.ts +2 -2
- package/shopify/router/ShopifyRouter.ts +72 -2
- package/tsconfig.json +2 -0
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
2
3
|
export declare class CryptoService {
|
|
3
4
|
generateHash(message: string | Buffer, secret: string): Buffer;
|
|
4
5
|
generateHashBase64(message: string | Buffer, secret: string): string;
|
|
5
6
|
checkHash(generatedHash: Buffer, hmacToCheck: string): boolean;
|
|
6
7
|
}
|
|
8
|
+
//# sourceMappingURL=CryptoService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CryptoService.d.ts","sourceRoot":"","sources":["../../../../shopify/router/services/CryptoService.ts"],"names":[],"mappings":";;AAEA,qBAAa,aAAa;IAEf,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAO9D,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAIpE,SAAS,CAAC,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO;CAUxE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CryptoService.js","sourceRoot":"","sources":["../../../../shopify/router/services/CryptoService.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AAEjC,MAAa,aAAa;IAEf,YAAY,CAAC,OAAwB,EAAE,MAAc;QACxD,OAAO,MAAM,CAAC,IAAI,CACd,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACjE,OAAO,CACV,CAAC;IACN,CAAC;IAEM,kBAAkB,CAAC,OAAwB,EAAE,MAAc;QAC9D,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAChF,CAAC;IAEM,SAAS,CAAC,aAAqB,EAAE,WAAmB;QACvD,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACvD,IAAI;YACA,UAAU,GAAG,MAAM,CAAC,eAAe,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;SACpE;QAAC,OAAO,CAAC,EAAE;YACR,UAAU,GAAG,KAAK,CAAC;SACtB;QACD,OAAO,UAAU,CAAC;IACtB,CAAC;CACJ;AAvBD,sCAuBC"}
|
|
1
|
+
{"version":3,"file":"CryptoService.js","sourceRoot":"","sources":["../../../../shopify/router/services/CryptoService.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AAEjC,MAAa,aAAa;IAEf,YAAY,CAAC,OAAwB,EAAE,MAAc;QACxD,OAAO,MAAM,CAAC,IAAI,CACd,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACjE,OAAO,CACV,CAAC;IACN,CAAC;IAEM,kBAAkB,CAAC,OAAwB,EAAE,MAAc;QAC9D,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAChF,CAAC;IAEM,SAAS,CAAC,aAAqB,EAAE,WAAmB;QACvD,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACvD,IAAI;YACA,UAAU,GAAG,MAAM,CAAC,eAAe,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;SACpE;QAAC,OAAO,CAAC,EAAE;YACR,UAAU,GAAG,KAAK,CAAC;SACtB;QACD,OAAO,UAAU,CAAC;IACtB,CAAC;CACJ;AAvBD,sCAuBC","sourcesContent":["import * as crypto from 'crypto';\n\nexport class CryptoService {\n\n public generateHash(message: string | Buffer, secret: string): Buffer {\n return Buffer.from(\n crypto.createHmac('sha256', secret).update(message).digest('hex'),\n 'utf-8'\n );\n }\n\n public generateHashBase64(message: string | Buffer, secret: string): string {\n return crypto.createHmac('sha256', secret).update(message).digest('base64');\n }\n\n public checkHash(generatedHash: Buffer, hmacToCheck: string): boolean {\n let hashEquals = false;\n const providedHmac = Buffer.from(hmacToCheck, 'utf-8');\n try {\n hashEquals = crypto.timingSafeEqual(generatedHash, providedHmac);\n } catch (e) {\n hashEquals = false;\n }\n return hashEquals;\n }\n}"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HmacValidator.d.ts","sourceRoot":"","sources":["../../../../shopify/router/services/HmacValidator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAGpD,MAAM,CAAC,OAAO,OAAO,aAAa;IAE9B,OAAO,CAAC,MAAM,CAAC,aAAa,CAAuB;IAEnD,OAAc,iBAAiB,EAAE,GAAG,CAMjC;IAEH,OAAc,OAAO,QAAS,OAAO,KAAG,MAAM,CAE5C;IAEF,OAAc,SAAS,QAAe,OAAO,aAAa,MAAM,KAAG,QAAQ,OAAO,CAAC,CAajF;CACL"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HmacValidator.js","sourceRoot":"","sources":["../../../../shopify/router/services/HmacValidator.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mCAAmC;AACnC,mDAAgD;AAIhD,MAAqB,aAAa;;AAAlC,gCA8BC;;AA5BkB,2BAAa,GAAG,IAAI,6BAAa,EAAE,CAAC;AAErC,+BAAiB,GAAQ,OAAO,CAAC,IAAI,CAAC;IAChD,IAAI,EAAE,KAAK;IACX,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,UAAU,GAAoB,EAAE,GAAmB,EAAE,GAAG;QAC3D,GAAW,CAAC,OAAO,GAAG,GAAG,CAAC;IAC/B,CAAC;CACJ,CAAC,CAAC;AAEW,qBAAO,GAAG,CAAC,GAAY,EAAU,EAAE;IAC7C,OAAQ,GAAG,CAAC,OAAO,CAAC,uBAAuB,CAAY,CAAC;AAC5D,CAAC,CAAC;AAEY,uBAAS,GAAG,CAAO,GAAY,EAAE,SAAiB,EAAoB,EAAE;IAClF,OAAO,IAAI,OAAO,CAAU,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;QAClD,IAAI;YACA,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACxC,IAAG,CAAC,IAAI,EAAE;gBACN,OAAO,CAAC,KAAK,CAAC,CAAC;aAClB;iBAAM;gBACH,MAAM,cAAc,GAAG,aAAa,CAAC,aAAa,CAAC,kBAAkB,CAAE,GAAW,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;gBACvG,MAAM,UAAU,GAAG,aAAa,CAAC,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;gBACpG,IAAI,CAAC,UAAU,EAAE;oBAAE,OAAO,CAAC,KAAK,CAAC,CAAC;iBAAE;qBAAM;oBAAE,OAAO,CAAC,IAAI,CAAC,CAAC;iBAAE;aAC/D;SACJ;QAAC,OAAM,GAAG,EAAE;YAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;SAAE;IACxC,CAAC,CAAA,CAAC,CAAC;AACP,CAAC,CAAA,CAAC"}
|
|
1
|
+
{"version":3,"file":"HmacValidator.js","sourceRoot":"","sources":["../../../../shopify/router/services/HmacValidator.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mCAAmC;AACnC,mDAAgD;AAIhD,MAAqB,aAAa;;AAAlC,gCA8BC;;AA5BkB,2BAAa,GAAG,IAAI,6BAAa,EAAE,CAAC;AAErC,+BAAiB,GAAQ,OAAO,CAAC,IAAI,CAAC;IAChD,IAAI,EAAE,KAAK;IACX,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,UAAU,GAAoB,EAAE,GAAmB,EAAE,GAAG;QAC3D,GAAW,CAAC,OAAO,GAAG,GAAG,CAAC;IAC/B,CAAC;CACJ,CAAC,CAAC;AAEW,qBAAO,GAAG,CAAC,GAAY,EAAU,EAAE;IAC7C,OAAQ,GAAG,CAAC,OAAO,CAAC,uBAAuB,CAAY,CAAC;AAC5D,CAAC,CAAC;AAEY,uBAAS,GAAG,CAAO,GAAY,EAAE,SAAiB,EAAoB,EAAE;IAClF,OAAO,IAAI,OAAO,CAAU,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;QAClD,IAAI;YACA,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACxC,IAAG,CAAC,IAAI,EAAE;gBACN,OAAO,CAAC,KAAK,CAAC,CAAC;aAClB;iBAAM;gBACH,MAAM,cAAc,GAAG,aAAa,CAAC,aAAa,CAAC,kBAAkB,CAAE,GAAW,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;gBACvG,MAAM,UAAU,GAAG,aAAa,CAAC,aAAa,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;gBACpG,IAAI,CAAC,UAAU,EAAE;oBAAE,OAAO,CAAC,KAAK,CAAC,CAAC;iBAAE;qBAAM;oBAAE,OAAO,CAAC,IAAI,CAAC,CAAC;iBAAE;aAC/D;SACJ;QAAC,OAAM,GAAG,EAAE;YAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;SAAE;IACxC,CAAC,CAAA,CAAC,CAAC;AACP,CAAC,CAAA,CAAC","sourcesContent":["import * as express from 'express';\nimport { CryptoService } from './CryptoService';\nimport { Request } from 'express-serve-static-core';\nimport { IncomingMessage, ServerResponse } from 'http';\n\nexport default class HmacValidator {\n\n private static cryptoService = new CryptoService();\n\n public static jsonWebhookParser: any = express.json({\n type: '*/*',\n limit: '50mb',\n verify: function (req: IncomingMessage, res: ServerResponse, buf): void {\n (req as any).rawBody = buf;\n }\n });\n\n public static getHmac = (req: Request): string => {\n return (req.headers['x-shopify-hmac-sha256'] as string);\n };\n\n public static checkHmac = async (req: Request, signature: string): Promise<boolean> => {\n return new Promise<boolean>(async (resolve, reject) => {\n try {\n const hmac = HmacValidator.getHmac(req);\n if(!hmac) {\n resolve(false);\n } else {\n const generated_hmac = HmacValidator.cryptoService.generateHashBase64((req as any).rawBody, signature);\n const hashEquals = HmacValidator.cryptoService.checkHash(Buffer.from(generated_hmac, 'utf8'), hmac);\n if (!hashEquals) { resolve(false); } else { resolve(true); }\n }\n } catch(err) { reject(Error(err)); }\n });\n };\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OauthService.d.ts","sourceRoot":"","sources":["../../../../shopify/router/services/OauthService.ts"],"names":[],"mappings":"AAGA,qBAAa,YAAY;WACP,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,EAAE,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAO,IAAI;CAY5L"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OauthService.js","sourceRoot":"","sources":["../../../../shopify/router/services/OauthService.ts"],"names":[],"mappings":";;;AAAA,iCAA0B;AAC1B,4CAAyC;AAEzC,MAAa,YAAY;IACd,MAAM,CAAC,YAAY,CAAC,IAAY,EAAE,MAAc,EAAE,OAAe,EAAE,IAAY,EAAE,eAAwC,EAAE,cAAuD;QACrL,MAAM,kBAAkB,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACrF,eAAM,CAAC,IAAI,CAAC,sCAAsC,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;QACxF,eAAK,CAAC,IAAI,CAAC,WAAW,IAAI,2BAA2B,EAAE,kBAAkB,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,gCAAgC,EAAE,yBAAyB,EAAE,2BAA2B,IAAI,6BAA6B,EAAE,EAAE,CAAC;aACjP,IAAI,CAAC,CAAC,mBAAmB,EAAE,EAAE;YAC1B,MAAM,WAAW,GAAG,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC;YAC1D,eAAe,CAAC,WAAW,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACf,eAAM,CAAC,KAAK,CAAC,kBAAkB,KAAK,CAAC,OAAO,QAAQ,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,KAAM,UAAU,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAAC;YACrL,cAAc,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAE,CAAC;QACjG,CAAC,CAAC,CAAC;IACX,CAAC;CACJ;AAbD,oCAaC"}
|
|
1
|
+
{"version":3,"file":"OauthService.js","sourceRoot":"","sources":["../../../../shopify/router/services/OauthService.ts"],"names":[],"mappings":";;;AAAA,iCAA0B;AAC1B,4CAAyC;AAEzC,MAAa,YAAY;IACd,MAAM,CAAC,YAAY,CAAC,IAAY,EAAE,MAAc,EAAE,OAAe,EAAE,IAAY,EAAE,eAAwC,EAAE,cAAuD;QACrL,MAAM,kBAAkB,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACrF,eAAM,CAAC,IAAI,CAAC,sCAAsC,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;QACxF,eAAK,CAAC,IAAI,CAAC,WAAW,IAAI,2BAA2B,EAAE,kBAAkB,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,gCAAgC,EAAE,yBAAyB,EAAE,2BAA2B,IAAI,6BAA6B,EAAE,EAAE,CAAC;aACjP,IAAI,CAAC,CAAC,mBAAmB,EAAE,EAAE;YAC1B,MAAM,WAAW,GAAG,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC;YAC1D,eAAe,CAAC,WAAW,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACf,eAAM,CAAC,KAAK,CAAC,kBAAkB,KAAK,CAAC,OAAO,QAAQ,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,KAAM,UAAU,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAAC;YACrL,cAAc,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAE,CAAC;QACjG,CAAC,CAAC,CAAC;IACX,CAAC;CACJ;AAbD,oCAaC","sourcesContent":["import axios from 'axios';\nimport { Logger } from '../../../Logger';\n\nexport class OauthService {\n public static getOathToken(shop: string, apiKey: string, sercret: string, code: string, successCallback: (token: string) => void, failureCalback: (code: string, error: string, ) => void){\n const accessTokenPayload = { client_id: apiKey, client_secret: sercret, code: code };\n Logger.info(`getOathToken - accessTokenPayload: ${JSON.stringify(accessTokenPayload)}`);\n axios.post(`https://${shop}/admin/oauth/access_token`, accessTokenPayload, { timeout: 30000, headers: { 'Content-Type': 'application/json;charset=UTF-8', 'Content-Security-Policy': `frame-ancestors https://${shop} https://admin.shopify.com;` } })\n .then((accessTokenResponse) => {\n const accessToken = accessTokenResponse.data.access_token;\n successCallback(accessToken);\n }).catch((error) => {\n Logger.error(`getOathToken - ${error.message} --- ${error.error ? error.error.error_description : error.error } --- ${error.response ? error.response.data : 'no response data'}`);\n failureCalback(error.statusCode, error.error ? error.error.error_description : error.error );\n });\n }\n}"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RestUtils.d.ts","sourceRoot":"","sources":["../../../../shopify/router/services/RestUtils.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,OAAO,SAAS;IAC1B,OAAc,yBAAyB,QAAS,GAAG,KAAG,MAAM,CAU1D;CACL"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RestUtils.js","sourceRoot":"","sources":["../../../../shopify/router/services/RestUtils.ts"],"names":[],"mappings":";;AAAA,MAAqB,SAAS;;AAA9B,4BAYC;AAXiB,mCAAyB,GAAG,CAAC,GAAQ,EAAU,EAAE;IAC3D,IAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO;QACnB,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IAEvD,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAElD,IAAG,CAAC,IAAI;QACJ,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;;QAExD,OAAO,IAAI,CAAC;AACpB,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"RestUtils.js","sourceRoot":"","sources":["../../../../shopify/router/services/RestUtils.ts"],"names":[],"mappings":";;AAAA,MAAqB,SAAS;;AAA9B,4BAYC;AAXiB,mCAAyB,GAAG,CAAC,GAAQ,EAAU,EAAE;IAC3D,IAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO;QACnB,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IAEvD,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAElD,IAAG,CAAC,IAAI;QACJ,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;;QAExD,OAAO,IAAI,CAAC;AACpB,CAAC,CAAC","sourcesContent":["export default class RestUtils {\n public static getShopFromRequestHeaders = (req: any): string => {\n if(!req || !req.headers)\n throw new Error('It is not a http request object');\n\n const shop = req.headers['x-shopify-shop-domain'];\n\n if(!shop) \n throw new Error('There is not shop in request header!');\n else \n return shop;\n };\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MemoryStores.d.ts","sourceRoot":"","sources":["../../../../../shopify/router/services/rateLimiter/MemoryStores.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,OAAO,OAAO,WAAW;IAMhB,OAAO,CAAC,QAAQ;IAJ5B,OAAO,CAAC,QAAQ,CAAe;IAC/B,OAAO,CAAC,IAAI,CAAM;IAClB,OAAO,CAAC,SAAS,CAAO;gBAEJ,QAAQ,EAAE,MAAM;IAQ7B,IAAI,QAAS,MAAM,MAAM,GAAG,KAAG,IAAI,CAOxC;IAEF,OAAO,CAAC,sBAAsB;IAMvB,SAAS,QAAS,MAAM,KAAG,IAAI,CAIpC;IAEK,QAAQ,QAAO,IAAI,CAGxB;IAEK,QAAQ,QAAS,MAAM,KAAG,IAAI,CAGnC;CACL"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemoryStores.js","sourceRoot":"","sources":["../../../../../shopify/router/services/rateLimiter/MemoryStores.ts"],"names":[],"mappings":";;AACA,MAAqB,WAAW;IAM5B,YAAoB,QAAgB;QAAhB,aAAQ,GAAR,QAAQ,CAAQ;QAH5B,SAAI,GAAG,EAAE,CAAC;QAWX,SAAI,GAAG,CAAC,GAAW,EAAE,EAAO,EAAQ,EAAE;YACzC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;gBAChB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;aACpB;iBAAM;gBACH,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;aACtB;YACD,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7C,CAAC,CAAC;QAQK,cAAS,GAAG,CAAC,GAAW,EAAQ,EAAE;YACrC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;gBAChB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;aACpB;QACL,CAAC,CAAC;QAEK,aAAQ,GAAG,GAAS,EAAE;YACzB,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;YACf,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAChE,CAAC,CAAC;QAEK,aAAQ,GAAG,CAAC,GAAW,EAAQ,EAAE;YACpC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACtB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC,CAAC;QApCE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC5D,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1D,IAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;YACpB,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;SACzB;IACL,CAAC;IAWO,sBAAsB,CAAC,QAAgB;QAC3C,MAAM,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC;QACrB,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,EAAE,GAAG,QAAQ,CAAC,CAAC;QAClD,OAAO,CAAC,CAAC;IACb,CAAC;CAiBJ;AA5CD,8BA4CC"}
|
|
1
|
+
{"version":3,"file":"MemoryStores.js","sourceRoot":"","sources":["../../../../../shopify/router/services/rateLimiter/MemoryStores.ts"],"names":[],"mappings":";;AACA,MAAqB,WAAW;IAM5B,YAAoB,QAAgB;QAAhB,aAAQ,GAAR,QAAQ,CAAQ;QAH5B,SAAI,GAAG,EAAE,CAAC;QAWX,SAAI,GAAG,CAAC,GAAW,EAAE,EAAO,EAAQ,EAAE;YACzC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;gBAChB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;aACpB;iBAAM;gBACH,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;aACtB;YACD,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7C,CAAC,CAAC;QAQK,cAAS,GAAG,CAAC,GAAW,EAAQ,EAAE;YACrC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;gBAChB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;aACpB;QACL,CAAC,CAAC;QAEK,aAAQ,GAAG,GAAS,EAAE;YACzB,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;YACf,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAChE,CAAC,CAAC;QAEK,aAAQ,GAAG,CAAC,GAAW,EAAQ,EAAE;YACpC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACtB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC,CAAC;QApCE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC5D,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1D,IAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;YACpB,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;SACzB;IACL,CAAC;IAWO,sBAAsB,CAAC,QAAgB;QAC3C,MAAM,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC;QACrB,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,EAAE,GAAG,QAAQ,CAAC,CAAC;QAClD,OAAO,CAAC,CAAC;IACb,CAAC;CAiBJ;AA5CD,8BA4CC","sourcesContent":["\nexport default class MemoryStore {\n\n private interval: NodeJS.Timer;\n private hits = {};\n private resetTime: Date;\n \n constructor(private windowMs: number) { \n this.resetTime = this.calculateNextResetTime(this.windowMs);\n this.interval = setInterval(this.resetAll, this.windowMs);\n if(this.interval.unref) {\n this.interval.unref();\n }\n }\n\n public incr = (key: string, cb: any): void => {\n if (this.hits[key]) {\n this.hits[key]++;\n } else {\n this.hits[key] = 1;\n }\n cb(null, this.hits[key], this.resetTime);\n };\n\n private calculateNextResetTime(windowMs: number): Date {\n const d = new Date();\n d.setMilliseconds(d.getMilliseconds() + windowMs);\n return d;\n }\n\n public decrement = (key: string): void => {\n if (this.hits[key]) {\n this.hits[key]--;\n }\n };\n\n public resetAll = (): void => {\n this.hits = {};\n this.resetTime = this.calculateNextResetTime(this.windowMs);\n };\n\n public resetKey = (key: string): void => {\n delete this.hits[key];\n delete this.resetTime[key];\n };\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StoreRateLimiter.d.ts","sourceRoot":"","sources":["../../../../../shopify/router/services/rateLimiter/StoreRateLimiter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAI5E,MAAM,CAAC,OAAO,OAAO,gBAAgB;IAEjC,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,GAAG,CAAa;IACxB,OAAO,CAAC,OAAO,CAAwD;IACvE,OAAO,CAAC,UAAU,CAAe;IACjC,OAAO,CAAC,KAAK,CAAc;gBAGf,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAMjD,OAAO,CAAC,YAAY,CAElB;IAEF,OAAO,CAAC,OAAO,CAEb;IAEK,YAAY,QAAS,OAAO,OAAO,QAAQ,QAAQ,YAAY,UAiBpE;CACL"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StoreRateLimiter.js","sourceRoot":"","sources":["../../../../../shopify/router/services/rateLimiter/StoreRateLimiter.ts"],"names":[],"mappings":";;AAEA,iDAAyC;AAEzC,MAAqB,gBAAgB;IASjC,YAAY,QAAgB,EAAE,WAAmB;QAPzC,aAAQ,GAAW,EAAE,GAAG,GAAG,CAAC;QAC5B,QAAG,GAAW,CAAC,CAAC;QAChB,YAAO,GAAW,4CAA4C,CAAC;QAC/D,eAAU,GAAW,GAAG,CAAC;QAUzB,iBAAY,GAAG,CAAC,GAAY,EAAU,EAAE;YAC5C,OAAO,GAAG,CAAC,OAAO,CAAC,uBAAuB,CAAW,CAAC;QAC1D,CAAC,CAAC;QAEM,YAAO,GAAG,CAAC,GAAY,EAAE,GAAa,EAAQ,EAAE;YACpD,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnD,CAAC,CAAC;QAEK,iBAAY,GAAG,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAE,EAAE;YAEtE,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YAEnC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,GAAQ,EAAE,OAAe,EAAE,SAAiB,EAAE,EAAE;gBAClE,IAAI,GAAG,EAAE;oBACL,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;iBACpB;gBAEA,GAAW,CAAC,SAAS,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,OAAO,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;gBAEjI,IAAI,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE;oBAChC,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;iBACjC;qBAAM;oBACH,IAAI,EAAE,CAAC;iBACV;YACL,CAAC,CAAC,CAAC;QACP,CAAC,CAAC;QA9BE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,GAAG,GAAG,WAAW,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,IAAI,sBAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChD,CAAC;CA4BJ;AAzCD,mCAyCC"}
|
|
1
|
+
{"version":3,"file":"StoreRateLimiter.js","sourceRoot":"","sources":["../../../../../shopify/router/services/rateLimiter/StoreRateLimiter.ts"],"names":[],"mappings":";;AAEA,iDAAyC;AAEzC,MAAqB,gBAAgB;IASjC,YAAY,QAAgB,EAAE,WAAmB;QAPzC,aAAQ,GAAW,EAAE,GAAG,GAAG,CAAC;QAC5B,QAAG,GAAW,CAAC,CAAC;QAChB,YAAO,GAAW,4CAA4C,CAAC;QAC/D,eAAU,GAAW,GAAG,CAAC;QAUzB,iBAAY,GAAG,CAAC,GAAY,EAAU,EAAE;YAC5C,OAAO,GAAG,CAAC,OAAO,CAAC,uBAAuB,CAAW,CAAC;QAC1D,CAAC,CAAC;QAEM,YAAO,GAAG,CAAC,GAAY,EAAE,GAAa,EAAQ,EAAE;YACpD,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnD,CAAC,CAAC;QAEK,iBAAY,GAAG,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAE,EAAE;YAEtE,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YAEnC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,GAAQ,EAAE,OAAe,EAAE,SAAiB,EAAE,EAAE;gBAClE,IAAI,GAAG,EAAE;oBACL,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;iBACpB;gBAEA,GAAW,CAAC,SAAS,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,OAAO,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;gBAEjI,IAAI,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE;oBAChC,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;iBACjC;qBAAM;oBACH,IAAI,EAAE,CAAC;iBACV;YACL,CAAC,CAAC,CAAC;QACP,CAAC,CAAC;QA9BE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,GAAG,GAAG,WAAW,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,IAAI,sBAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChD,CAAC;CA4BJ;AAzCD,mCAyCC","sourcesContent":["import { NextFunction, Request, Response } from 'express-serve-static-core';\n\nimport MemoryStore from './MemoryStores';\n\nexport default class StoreRateLimiter {\n\n private windowMs: number = 60 * 100;\n private max: number = 5;\n private message: string = 'Too many requests, please try again later.';\n private statusCode: number = 200;\n private store: MemoryStore;\n\n\n constructor(windowMs: number, maxRequests: number) {\n this.windowMs = windowMs;\n this.max = maxRequests;\n this.store = new MemoryStore(this.windowMs);\n }\n\n private keyGenerator = (req: Request): string => {\n return req.headers['x-shopify-shop-domain'] as string;\n };\n\n private handler = (req: Request, res: Response): void => {\n res.status(this.statusCode).send(this.message);\n };\n\n public rateReqLimit = (req: Request, res: Response, next: NextFunction) => {\n\n const key = this.keyGenerator(req);\n\n this.store.incr(key, (err: any, current: number, resetTime: number) => {\n if (err) {\n return next(err);\n }\n\n (req as any).rateLimit = { limit: this.max, current: current, remaining: Math.max(this.max - current, 0), resetTime: resetTime };\n\n if (this.max && current > this.max) {\n return this.handler(req, res);\n } else {\n next();\n }\n });\n };\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ShopifyRouter.test.d.ts","sourceRoot":"","sources":["../../../test/router/ShopifyRouter.test.ts"],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShopifyRouter.test.js","sourceRoot":"","sources":["../../../test/router/ShopifyRouter.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ShopifyRouter.test.js","sourceRoot":"","sources":["../../../test/router/ShopifyRouter.test.ts"],"names":[],"mappings":"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","sourcesContent":["import ShopifyRouter from '../../shopify/router/ShopifyRouter';\nimport { OauthService } from '../../shopify/router/services/OauthService';\nconst getScopes = () => { return 'read_orders'; };\n\ntest('install route returns 400 if no shop has been specified', () => {\n const callback = jest.fn();\n const shopifyRouter = new ShopifyRouter('secret', 'key', 'appBaseUrl', '', getScopes, callback);\n\n const req = { query: { shop: '' } };\n const res = { status: jest.fn(() => { return { send: res.send }; }), send: jest.fn(), locals: {} };\n\n shopifyRouter.installRoute(req, res);\n\n expect(res.status).toBeCalledWith(400);\n});\n\ntest('install route returns redirects to oauth url when shop is set', () => {\n const callback = jest.fn();\n const shopifyRouter = new ShopifyRouter('secret', 'key', 'appBaseUrl', '', getScopes, callback);\n\n const req = { query: { shop: 'myshop.shopify.com', host: 'host', session: 'some session' } };\n const res = { redirect: jest.fn(), cookie: jest.fn(), render: jest.fn(), locals: { scopes: 'read_orders'} };\n\n shopifyRouter.installRoute(req, res);\n\n expect(res.redirect).toBeCalledWith(expect.stringContaining('appBaseUrl/billing/created?host=host&shop=myshop.shopify.com&status=already_accepted'));\n});\n\ntest('callback route returns 400 when shop hmac or code are missing as query params', () => {\n const callback = jest.fn();\n const shopifyRouter = new ShopifyRouter('secret', 'key', 'appBaseUrl', '', getScopes, callback);\n\n const req = { query: { }, headers: { } };\n const res = { status: jest.fn(() => { return { send: res.send }; }), send: jest.fn() };\n\n shopifyRouter.callBackRoute(req, res);\n\n expect(res.status).toBeCalledWith(400);\n});\n\ntest('callback route get oauth token when everything is ok', () => {\n const callback = jest.fn();\n const shopifyRouter = new ShopifyRouter('secret', 'key', 'appBaseUrl', '', getScopes, callback);\n\n OauthService.getOathToken = jest.fn();\n (shopifyRouter as any).cryptoService.checkHash = jest.fn(() => true);\n (shopifyRouter as any).cryptoService.generateHash = jest.fn();\n\n const req = { query: { hmac: 'somehmac', code: 'somecode', shop: 'myshop.shopify.com' }, headers: { } };\n const res = { status: jest.fn(() => { return { send: res.send }; }), send: jest.fn() };\n\n shopifyRouter.callBackRoute(req, res);\n\n expect(OauthService.getOathToken).toBeCalled();\n});\n\ntest('callback route returns 401 when hmac is not correct', () => {\n const callback = jest.fn();\n const shopifyRouter = new ShopifyRouter( 'secret', 'key', 'appBaseUrl', '', getScopes, callback);\n\n OauthService.getOathToken = jest.fn();\n (shopifyRouter as any).cryptoService.checkHash = jest.fn(() => false);\n (shopifyRouter as any).cryptoService.generateHash = jest.fn();\n\n const req = { query: { hmac: 'somehmac', code: 'somecode', shop: 'myshop.shopify.com' }, headers: { } };\n const res = { status: jest.fn(() => { return { send: res.send }; }), send: jest.fn() };\n\n shopifyRouter.callBackRoute(req, res);\n\n expect(res.status).toBeCalledWith(401);\n});"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WebhookSkipMiddleware.test.d.ts","sourceRoot":"","sources":["../../../test/router/WebhookSkipMiddleware.test.ts"],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebhookSkipMiddleware.test.js","sourceRoot":"","sources":["../../../test/router/WebhookSkipMiddleware.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"WebhookSkipMiddleware.test.js","sourceRoot":"","sources":["../../../test/router/WebhookSkipMiddleware.test.ts"],"names":[],"mappings":"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","sourcesContent":["import WebhookSkipMiddleware from '../../shopify/router/WebhookSkipMiddleware';\nimport { Request } from 'express-serve-static-core';\n\ndescribe('WebhookSkipMiddleware for product should, ', () => {\n test('Not skip to process when product id is not in the list', () => {\n const status = jest.fn(() => {});\n const next = jest.fn();\n \n WebhookSkipMiddleware.addProductId(1234);\n WebhookSkipMiddleware.productSkipMiddleware( { body: { id: 2345} } as Request, { sendStatus: status } as any, next );\n \n expect(status).not.toHaveBeenCalled();\n expect(next).toHaveBeenCalled();\n });\n \n test('skip to process when product id is in the list', () => {\n const status = jest.fn(() => {});\n const next = jest.fn();\n \n WebhookSkipMiddleware.addProductId(1234);\n WebhookSkipMiddleware.addProductId(1224);\n WebhookSkipMiddleware.productSkipMiddleware({ body: { id: 1234} } as Request, { sendStatus: status } as any, next );\n \n expect(status).toHaveBeenCalledWith(200);\n expect(next).not.toHaveBeenCalled();\n });\n\n test('remove product id from the list after x time', async () => {\n const status = jest.fn(() => {});\n const next = jest.fn();\n WebhookSkipMiddleware.clearProductList();\n WebhookSkipMiddleware.awaitTime = 1000;\n WebhookSkipMiddleware.addProductId(1234);\n WebhookSkipMiddleware.addProductId(1224);\n await sleep(2000);\n WebhookSkipMiddleware.productSkipMiddleware({ body: { id: 1234 } } as Request, { sendStatus: status } as any, next );\n\n expect(status).not.toHaveBeenCalled();\n expect(next).toHaveBeenCalled();\n });\n});\n\ndescribe('WebhookSkipMiddleware for inventory should, ', () => {\n test('Not skip to process when product id is not in the list', () => {\n const status = jest.fn(() => {});\n const next = jest.fn();\n \n WebhookSkipMiddleware.addInventoryId(1234);\n WebhookSkipMiddleware.inventorySkipMiddleware( { body: { id: 2345} } as Request, { sendStatus: status } as any, next );\n \n expect(status).not.toHaveBeenCalled();\n expect(next).toHaveBeenCalled();\n });\n \n test('skip to process when product id is in the list', () => {\n const status = jest.fn(() => {});\n const next = jest.fn();\n \n WebhookSkipMiddleware.addInventoryId(1234);\n WebhookSkipMiddleware.addInventoryId(1224);\n WebhookSkipMiddleware.inventorySkipMiddleware({ body: { id: 1234} } as Request, { sendStatus: status } as any, next );\n \n expect(status).toHaveBeenCalledWith(200);\n expect(next).not.toHaveBeenCalled();\n });\n\n test('remove product id from the list after x time', async () => {\n const status = jest.fn(() => {});\n const next = jest.fn();\n WebhookSkipMiddleware.clearInventoryList();\n WebhookSkipMiddleware.awaitTime = 1000;\n WebhookSkipMiddleware.addInventoryId(1234);\n WebhookSkipMiddleware.addInventoryId(1224);\n await sleep(2000);\n WebhookSkipMiddleware.inventorySkipMiddleware({ body: { id: 1234 } } as Request, { sendStatus: status } as any, next );\n\n expect(status).not.toHaveBeenCalled();\n expect(next).toHaveBeenCalled();\n });\n});\n\nconst sleep = (time: number): Promise<void> => {\n return new Promise((resolve) => {\n setTimeout(() => { resolve(); }, time);\n });\n};\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HmacValidator.test.d.ts","sourceRoot":"","sources":["../../../../test/router/services/HmacValidator.test.ts"],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HmacValidator.test.js","sourceRoot":"","sources":["../../../../test/router/services/HmacValidator.test.ts"],"names":[],"mappings":";;AAAA,kFAA2E;AAC3E,kFAA+E;AAE/E,IAAI,CAAC,wCAAwC,EAAE,GAAG,EAAE;IAChD,MAAM,GAAG,GAAQ,EAAE,OAAO,EAAE,EAAE,uBAAuB,EAAE,MAAM,EAAE,EAAE,CAAC;IAClE,MAAM,IAAI,GAAG,uBAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACxC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC9B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,gDAAgD,EAAE,GAAG,EAAE;IACxD,MAAM,MAAM,GAAG,IAAI,6BAAa,EAAE,CAAC;IACnC,MAAM,cAAc,GAAG,MAAM,CAAC,kBAAkB,CAAC,sBAAsB,EAAE,WAAW,CAAC,CAAC;IACtF,MAAM,GAAG,GAAQ,EAAE,OAAO,EAAE,EAAE,uBAAuB,EAAE,cAAc,EAAE,EAAE,OAAO,EAAE,sBAAsB,EAAC,CAAC;IAE1G,MAAM,IAAI,GAAG,uBAAa,CAAC,SAAS,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAEvD,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,iDAAiD,EAAE,GAAG,EAAE;IACzD,MAAM,GAAG,GAAO,EAAE,OAAO,EAAE,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,EAAE,OAAO,EAAE,sBAAsB,EAAC,CAAC;IACjH,MAAM,IAAI,GAAG,uBAAa,CAAC,SAAS,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IACvD,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"HmacValidator.test.js","sourceRoot":"","sources":["../../../../test/router/services/HmacValidator.test.ts"],"names":[],"mappings":";;AAAA,kFAA2E;AAC3E,kFAA+E;AAE/E,IAAI,CAAC,wCAAwC,EAAE,GAAG,EAAE;IAChD,MAAM,GAAG,GAAQ,EAAE,OAAO,EAAE,EAAE,uBAAuB,EAAE,MAAM,EAAE,EAAE,CAAC;IAClE,MAAM,IAAI,GAAG,uBAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACxC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC9B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,gDAAgD,EAAE,GAAG,EAAE;IACxD,MAAM,MAAM,GAAG,IAAI,6BAAa,EAAE,CAAC;IACnC,MAAM,cAAc,GAAG,MAAM,CAAC,kBAAkB,CAAC,sBAAsB,EAAE,WAAW,CAAC,CAAC;IACtF,MAAM,GAAG,GAAQ,EAAE,OAAO,EAAE,EAAE,uBAAuB,EAAE,cAAc,EAAE,EAAE,OAAO,EAAE,sBAAsB,EAAC,CAAC;IAE1G,MAAM,IAAI,GAAG,uBAAa,CAAC,SAAS,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAEvD,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,iDAAiD,EAAE,GAAG,EAAE;IACzD,MAAM,GAAG,GAAO,EAAE,OAAO,EAAE,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,EAAE,OAAO,EAAE,sBAAsB,EAAC,CAAC;IACjH,MAAM,IAAI,GAAG,uBAAa,CAAC,SAAS,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IACvD,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAC","sourcesContent":["import HmacValidator from '../../../shopify/router/services/HmacValidator';\nimport { CryptoService } from '../../../shopify/router/services/CryptoService';\n\ntest('getHmac should get shopify Hmac header', () => {\n const req: any = { headers: { 'x-shopify-hmac-sha256': 'hmac' } };\n const hmac = HmacValidator.getHmac(req);\n expect(hmac).toBe('hmac');\n});\n\ntest('checkHmac resolve to true when hmac is correct', () => {\n const crypto = new CryptoService();\n const hmac_generated = crypto.generateHashBase64('someRaw=someRawValue', 'signature'); \n const req: any = { headers: { 'x-shopify-hmac-sha256': hmac_generated }, rawBody: 'someRaw=someRawValue'};\n\n const hmac = HmacValidator.checkHmac(req, 'signature');\n\n expect(hmac).toBeTruthy();\n});\n\ntest('checkHmac resolve to false when hmac is correct', () => {\n const req:any = { headers: { 'x-shopify-hmac-sha256': 'wrong_hmac_generated' }, rawBody: 'someRaw=someRawValue'};\n const hmac = HmacValidator.checkHmac(req, 'signature');\n expect(hmac).toBeTruthy();\n});\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RestUtils.test.d.ts","sourceRoot":"","sources":["../../../../test/router/services/RestUtils.test.ts"],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RestUtils.test.js","sourceRoot":"","sources":["../../../../test/router/services/RestUtils.test.ts"],"names":[],"mappings":";;AAAA,0EAAmE;AAEnE,IAAI,CAAC,sEAAsE,EAAE,GAAG,EAAE;IAC9E,MAAM,CAAC,mBAAS,CAAC,yBAAyB,CAAC,IAAI,CAAC,EAAC,OAAO,EAAE,EAAC,oBAAoB,EAAE,iBAAiB,EAAC,EAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC1H,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,qEAAqE,EAAE,GAAG,EAAE;IAC7E,MAAM,CAAC,mBAAS,CAAC,yBAAyB,CAAC,IAAI,CAAC,EAAC,OAAO,EAAE,EAAC,uBAAuB,EAAE,EAAE,EAAC,EAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9G,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,2DAA2D,EAAE,GAAG,EAAE;IACnE,MAAM,CAAC,mBAAS,CAAC,yBAAyB,CAAC,EAAC,OAAO,EAAE,EAAC,uBAAuB,EAAE,sBAAsB,EAAC,EAAC,CAAC,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;AAC3I,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"RestUtils.test.js","sourceRoot":"","sources":["../../../../test/router/services/RestUtils.test.ts"],"names":[],"mappings":";;AAAA,0EAAmE;AAEnE,IAAI,CAAC,sEAAsE,EAAE,GAAG,EAAE;IAC9E,MAAM,CAAC,mBAAS,CAAC,yBAAyB,CAAC,IAAI,CAAC,EAAC,OAAO,EAAE,EAAC,oBAAoB,EAAE,iBAAiB,EAAC,EAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC1H,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,qEAAqE,EAAE,GAAG,EAAE;IAC7E,MAAM,CAAC,mBAAS,CAAC,yBAAyB,CAAC,IAAI,CAAC,EAAC,OAAO,EAAE,EAAC,uBAAuB,EAAE,EAAE,EAAC,EAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9G,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,2DAA2D,EAAE,GAAG,EAAE;IACnE,MAAM,CAAC,mBAAS,CAAC,yBAAyB,CAAC,EAAC,OAAO,EAAE,EAAC,uBAAuB,EAAE,sBAAsB,EAAC,EAAC,CAAC,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;AAC3I,CAAC,CAAC,CAAC","sourcesContent":["import RestUtils from '../../../shopify/router/services/RestUtils';\n\ntest('getShopFromRequestHeaders throws error when not shop exist in header', () => {\n expect(RestUtils.getShopFromRequestHeaders.bind({headers: {'http-random-header': 'some randomness'}})).toThrow(Error);\n});\n\ntest('getShopFromRequestHeaders throws error when shop is empty in header', () => {\n expect(RestUtils.getShopFromRequestHeaders.bind({headers: {'x-shopify-shop-domain': ''}})).toThrow(Error);\n});\n\ntest('getShopFromRequestHeaders returns shop existing in header', () => {\n expect(RestUtils.getShopFromRequestHeaders({headers: {'x-shopify-shop-domain': 'myshop.myshopify.com'}})).toBe('myshop.myshopify.com');\n});"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StoreRateLimiter.test.d.ts","sourceRoot":"","sources":["../../../../../test/router/services/rateLimiter/StoreRateLimiter.test.ts"],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StoreRateLimiter.test.js","sourceRoot":"","sources":["../../../../../test/router/services/rateLimiter/StoreRateLimiter.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"StoreRateLimiter.test.js","sourceRoot":"","sources":["../../../../../test/router/services/rateLimiter/StoreRateLimiter.test.ts"],"names":[],"mappings":"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","sourcesContent":["import StoreRateLimiter from '../../../../shopify/router/services/rateLimiter/StoreRateLimiter';\n\nconst next = jest.fn();\n\nafterEach(() => {\n next.mockClear();\n});\n\ntest('Adds a hit for the store and calls next', (done) => {\n const storeLimiter = new StoreRateLimiter(1000, 1);\n const req: any = { headers: {'x-shopify-shop-domain': 'test.myshopify.com'} };\n const res: any = {};\n storeLimiter.rateReqLimit(req, res, next);\n setTimeout(()=> { \n expect((storeLimiter as any).store.hits['test.myshopify.com']).toBe(1);\n expect(next).toHaveBeenCalledTimes(1);\n done();\n }, 200);\n});\n\ntest('Does resturn response when too many requests', (done) => {\n const storeLimiter = new StoreRateLimiter(1000, 1);\n const req: any = { headers: {'x-shopify-shop-domain': 'test.myshopify.com'} };\n const send = jest.fn();\n const res: any = { status: jest.fn(() => { return { send: send};})};\n storeLimiter.rateReqLimit(req, res, next);\n storeLimiter.rateReqLimit(req, res, next);\n setTimeout(()=> { \n expect((storeLimiter as any).store.hits['test.myshopify.com']).toBe(2);\n expect(next).toHaveBeenCalledTimes(1);\n expect(send).toHaveBeenCalledWith('Too many requests, please try again later.');\n done();\n }, 200);\n});\n\ntest('Does reset all hits after window time', (done) => {\n const storeLimiter = new StoreRateLimiter(1000, 1);\n const req: any = { headers: {'x-shopify-shop-domain': 'test.myshopify.com'} };\n const req1: any = { headers: {'x-shopify-shop-domain': 'test4.myshopify.com'} };\n const res: any = { };\n storeLimiter.rateReqLimit(req, res, next);\n storeLimiter.rateReqLimit(req1, res, next);\n setTimeout(()=> { \n expect((storeLimiter as any).store.hits['test.myshopify.com']).toBe(1);\n expect((storeLimiter as any).store.hits['test4.myshopify.com']).toBe(1);\n done();\n }, 200);\n});\n\ntest('Does adds hits for different stores', (done) => {\n const storeLimiter = new StoreRateLimiter(1000, 1);\n const req: any = { headers: {'x-shopify-shop-domain': 'test.myshopify.com'} };\n const req1: any = { headers: {'x-shopify-shop-domain': 'test4.myshopify.com'} };\n const res: any = { };\n storeLimiter.rateReqLimit(req, res, next);\n storeLimiter.rateReqLimit(req1, res, next);\n setTimeout(()=> { \n expect((storeLimiter as any).store.hits['test.myshopify.com']).toBeUndefined();\n expect((storeLimiter as any).store.hits['test4.myshopify.com']).toBeUndefined();\n done();\n }, 1100);\n});\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CacheWrapper.test.d.ts","sourceRoot":"","sources":["../../../test/services/CacheWrapper.test.ts"],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CacheWrapper.test.js","sourceRoot":"","sources":["../../../test/services/CacheWrapper.test.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,8DAAuD;AAMvD,MAAM,qBAAqB,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,EAAU,EAAU,EAAE;IACzD,OAAO,EAAE,GAAG,OAAO,CAAC;AACxB,CAAC,CAAC,CAAC;AAEH,UAAU,CAAC,GAAE,EAAE;IACX,qBAAqB,CAAC,SAAS,EAAE,CAAC;AACtC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,gCAAgC,EAAE,GAAS,EAAE;IAC9C,MAAM,OAAO,GAAG,IAAI,sBAAY,CAAY,CAAC,EAAE,qBAAqB,CAAC,CAAC;IACtE,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,CAAC,qBAAqB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC,CAAA,CAAC,CAAC;AAEH,IAAI,CAAC,+DAA+D,EAAE,GAAS,EAAE;IAC7E,MAAM,OAAO,GAAG,IAAI,sBAAY,CAAY,CAAC,EAAE,qBAAqB,CAAC,CAAC;IACtE,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,CAAE,OAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9C,MAAM,CAAC,qBAAqB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC,CAAA,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"CacheWrapper.test.js","sourceRoot":"","sources":["../../../test/services/CacheWrapper.test.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,8DAAuD;AAMvD,MAAM,qBAAqB,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,EAAU,EAAU,EAAE;IACzD,OAAO,EAAE,GAAG,OAAO,CAAC;AACxB,CAAC,CAAC,CAAC;AAEH,UAAU,CAAC,GAAE,EAAE;IACX,qBAAqB,CAAC,SAAS,EAAE,CAAC;AACtC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,gCAAgC,EAAE,GAAS,EAAE;IAC9C,MAAM,OAAO,GAAG,IAAI,sBAAY,CAAY,CAAC,EAAE,qBAAqB,CAAC,CAAC;IACtE,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,CAAC,qBAAqB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC,CAAA,CAAC,CAAC;AAEH,IAAI,CAAC,+DAA+D,EAAE,GAAS,EAAE;IAC7E,MAAM,OAAO,GAAG,IAAI,sBAAY,CAAY,CAAC,EAAE,qBAAqB,CAAC,CAAC;IACtE,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,CAAE,OAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9C,MAAM,CAAC,qBAAqB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC,CAAA,CAAC,CAAC","sourcesContent":["import CacheWrapper from '../../services/CacheWrapper';\n\ninterface IResponse {\n test: string;\n}\n\nconst cacheableTestFunction = jest.fn((id: string): string => {\n return id + 'value';\n});\n\nbeforeEach(()=> {\n cacheableTestFunction.mockClear();\n});\n\ntest('gets from cache when key exist', async () => {\n const wrapper = new CacheWrapper<IResponse>(5, cacheableTestFunction);\n await wrapper.execute('key_1');\n await wrapper.execute('key_2');\n await wrapper.execute('key_1');\n expect(cacheableTestFunction).toHaveBeenCalledTimes(2);\n});\n\ntest('clears cache when there are more entries than configured size', async () => {\n const wrapper = new CacheWrapper<IResponse>(2, cacheableTestFunction);\n await wrapper.execute('key_1');\n await wrapper.execute('key_2');\n await wrapper.execute('key_1');\n expect((wrapper as any).records.size).toBe(2);\n expect(cacheableTestFunction).toHaveBeenCalledTimes(2);\n});"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ShopifyOrderService.test.d.ts","sourceRoot":"","sources":["../../../test/shopify/ShopifyOrderService.test.ts"],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShopifyOrderService.test.js","sourceRoot":"","sources":["../../../test/shopify/ShopifyOrderService.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ShopifyOrderService.test.js","sourceRoot":"","sources":["../../../test/shopify/ShopifyOrderService.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { ShopifyUtils } from '../../shopify/ShopifyUtils';\nimport { ShopifyOrderService } from '../../shopify/ShopifyOrderService';\n\n\ntest('Substract Shipping tax lines form Global tax lines', async () => {\n const mockAxiosInstance = {};\n\n ShopifyUtils.getAxiosInstance = (): any => mockAxiosInstance;\n\n const shopifyOrderService = new ShopifyOrderService(ShopifyUtils.getAxiosInstance('shop', 'token', 'key', null, null));\n const taxLines: ITaxLine[] = (shopifyOrderService as any).substractShippingFromGlobalTaxLines([{ price: '2.3', title: 'Ohio State Tax'}, { price: '0.61', title: 'Licking County Tax'}], [{ price: '1.72', title: 'Ohio State Tax'}, { price: '0.45', title: 'Licking County Tax'}]);\n\n expect(taxLines[0].price).toBe('0.58');\n expect(taxLines[1].price).toBe('0.16');\n});\n\ntest('createLineItemForOrderCalculation Should return line items', async () => {\n const mockAxiosInstance = {};\n\n ShopifyUtils.getAxiosInstance = (): any => mockAxiosInstance;\n\n const shopifyOrderService = new ShopifyOrderService(ShopifyUtils.getAxiosInstance('shop', 'token', 'key', null, null));\n const order = {'id':3833316147382,'admin_graphql_api_id':'gid://shopify/Order/3833316147382','app_id':1354745,'browser_ip':null,'buyer_accepts_marketing':false,'cancel_reason':null,'cancelled_at':null,'cart_token':null,'checkout_id':null,'checkout_token':null,'closed_at':null,'confirmed':true,'contact_email':'mike@alvio.online','created_at':'2021-06-15T10:30:43+01:00','currency':'USD','current_subtotal_price':'17.99','current_subtotal_price_set':{'shop_money':{'amount':'17.99','currency_code':'USD'},'presentment_money':{'amount':'17.99','currency_code':'USD'}},'current_total_discounts':'0.00','current_total_discounts_set':{'shop_money':{'amount':'0.00','currency_code':'USD'},'presentment_money':{'amount':'0.00','currency_code':'USD'}},'current_total_duties_set':null,'current_total_price':'23.97','current_total_price_set':{'shop_money':{'amount':'23.97','currency_code':'USD'},'presentment_money':{'amount':'23.97','currency_code':'USD'}},'current_total_tax':'1.08','current_total_tax_set':{'shop_money':{'amount':'1.08','currency_code':'USD'},'presentment_money':{'amount':'1.08','currency_code':'USD'}},'customer_locale':'en','device_id':null,'discount_codes':[],'email':'mike@alvio.online','financial_status':'paid','fulfillment_status':null,'gateway':'manual','landing_site':null,'landing_site_ref':null,'location_id':null,'name':'#1011','note':null,'note_attributes':[{'name':'Social CBD Infused Patch - 100mg to be fulfilled by','value':'Alvio USA Brand Store Demo, Order: #1014'}],'number':11,'order_number':1011,'order_status_url':'https://alvio-usa-store-multilocation-test.myshopify.com/57626886326/orders/ff2077653e24fa96f8ea8ad4ad348c87/authenticate?key=a0c6ccab6bcf12b8414cd07f51832bce','original_total_duties_set':null,'payment_gateway_names':['manual'],'phone':null,'presentment_currency':'USD','processed_at':'2021-06-15T10:30:43+01:00','processing_method':'manual','reference':null,'referring_site':null,'source_identifier':null,'source_name':'shopify_draft_order','source_url':null,'subtotal_price':'17.99','subtotal_price_set':{'shop_money':{'amount':'17.99','currency_code':'USD'},'presentment_money':{'amount':'17.99','currency_code':'USD'}},'tags':'Alvio USA Brand Store Demo, Supplier','tax_lines':[{'price':'1.08','rate':0.06,'title':'Idaho State Tax','price_set':{'shop_money':{'amount':'1.08','currency_code':'USD'},'presentment_money':{'amount':'1.08','currency_code':'USD'}}}],'taxes_included':false,'test':false,'token':'ff2077653e24fa96f8ea8ad4ad348c87','total_discounts':'0.00','total_discounts_set':{'shop_money':{'amount':'0.00','currency_code':'USD'},'presentment_money':{'amount':'0.00','currency_code':'USD'}},'total_line_items_price':'17.99','total_line_items_price_set':{'shop_money':{'amount':'17.99','currency_code':'USD'},'presentment_money':{'amount':'17.99','currency_code':'USD'}},'total_outstanding':'0.00','total_price':'23.97','total_price_set':{'shop_money':{'amount':'23.97','currency_code':'USD'},'presentment_money':{'amount':'23.97','currency_code':'USD'}},'total_price_usd':'23.97','total_shipping_price_set':{'shop_money':{'amount':'4.90','currency_code':'USD'},'presentment_money':{'amount':'4.90','currency_code':'USD'}},'total_tax':'1.08','total_tax_set':{'shop_money':{'amount':'1.08','currency_code':'USD'},'presentment_money':{'amount':'1.08','currency_code':'USD'}},'total_tip_received':'0.00','total_weight':21,'updated_at':'2021-06-15T10:30:56+01:00','user_id':74547429558,'billing_address':{'first_name':'mike','address1':'new test 2','phone':null,'city':'Idaho City','zip':'83631','province':'Idaho','country':'United States','last_name':'harding','address2':'','company':null,'latitude':43.9409512,'longitude':-115.776099,'name':'mike harding','country_code':'US','province_code':'ID'},'customer':{'id':5269776826550,'email':'mike@alvio.online','accepts_marketing':false,'created_at':'2021-06-11T11:56:37+01:00','updated_at':'2021-06-15T10:30:44+01:00','first_name':'Idaho ','last_name':'Oklahoma ','orders_count':6,'state':'disabled','total_spent':'143.16','last_order_id':3833316147382,'note':null,'verified_email':true,'multipass_identifier':null,'tax_exempt':false,'phone':null,'tags':'','last_order_name':'#1011','currency':'USD','accepts_marketing_updated_at':'2021-06-11T11:56:37+01:00','marketing_opt_in_level':null,'admin_graphql_api_id':'gid://shopify/Customer/5269776826550','default_address':{'id':6652095430838,'customer_id':5269776826550,'first_name':'mike','last_name':'harding','company':null,'address1':'new test 2','address2':'','city':'Idaho City','province':'Idaho','country':'United States','zip':'83631','phone':null,'name':'mike harding','province_code':'ID','country_code':'US','country_name':'United States','default':true}},'discount_applications':[],'fulfillments':[],'line_items':[{'id':9974946562230,'admin_graphql_api_id':'gid://shopify/LineItem/9974946562230','fulfillable_quantity':1,'fulfillment_service':'manual','fulfillment_status':null,'gift_card':false,'grams':22,'name':'Social CBD Infused Patch - 100mg','price':'17.99','price_set':{'shop_money':{'amount':'17.99','currency_code':'USD'},'presentment_money':{'amount':'17.99','currency_code':'USD'}},'product_exists':true,'product_id':6788510318774,'properties':[],'quantity':1,'requires_shipping':true,'sku':'SCL-PTCH-100','taxable':true,'title':'Social CBD Infused Patch - 100mg','total_discount':'0.00','total_discount_set':{'shop_money':{'amount':'0.00','currency_code':'USD'},'presentment_money':{'amount':'0.00','currency_code':'USD'}},'variant_id':39934048993462,'variant_inventory_management':null,'variant_title':null,'vendor':'Green Lanes','tax_lines':[{'price':'1.08','price_set':{'shop_money':{'amount':'1.08','currency_code':'USD'},'presentment_money':{'amount':'1.08','currency_code':'USD'}},'rate':0.06,'title':'Idaho State Tax'}],'duties':[],'discount_allocations':[]}],'refunds':[],'shipping_address':{'first_name':'mike','address1':'new test 2','phone':null,'city':'Idaho City','zip':'83631','province':'Idaho','country':'United States','last_name':'harding','address2':'','company':null,'latitude':43.9409512,'longitude':-115.776099,'name':'mike harding','country_code':'US','province_code':'ID'},'shipping_lines':[{'id':3260381233334,'carrier_identifier':null,'code':'Economy','delivery_category':null,'discounted_price':'4.90','discounted_price_set':{'shop_money':{'amount':'4.90','currency_code':'USD'},'presentment_money':{'amount':'4.90','currency_code':'USD'}},'phone':null,'price':'4.90','price_set':{'shop_money':{'amount':'4.90','currency_code':'USD'},'presentment_money':{'amount':'4.90','currency_code':'USD'}},'requested_fulfillment_service_id':null,'source':'shopify','title':'Economy','tax_lines':[],'discount_allocations':[]}]};\n const lineItems = shopifyOrderService.createLineItemForOrderCalculation(order.line_items, 'price');\n\n expect(lineItems[0].originalUnitPrice).toBe('17.99');\n expect(lineItems[0].title).toBe('Social CBD Infused Patch - 100mg');\n expect(lineItems[0].quantity).toBe(1);\n});"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ShopifyProductService.test.d.ts","sourceRoot":"","sources":["../../../test/shopify/ShopifyProductService.test.ts"],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShopifyProductService.test.js","sourceRoot":"","sources":["../../../test/shopify/ShopifyProductService.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ShopifyProductService.test.js","sourceRoot":"","sources":["../../../test/shopify/ShopifyProductService.test.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,6DAA0D;AAC1D,+EAA4E;AAG5E,IAAI,CAAC,gDAAgD,EAAE,GAAS,EAAE;IAC9D,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE;QAC1B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,CAAE,EAAE,EAAC,CAAC,CAAC,CAAC;IAClG,CAAC,CAAC,CAAC;IACH,MAAM,iBAAiB,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAE7C,2BAAY,CAAC,gBAAgB,GAAG,GAAQ,EAAE,CAAC,iBAAiB,CAAC;IAE7D,MAAM,qBAAqB,GAAG,IAAI,6CAAqB,CAAC,2BAAY,CAAC,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAE3H,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC5C,IAAI,MAAM,GAAG,KAAK,CAAC;IAEnB,IAAI;QACA,MAAM,qBAAqB,CAAC,UAAU,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC;KAC9E;IAAC,OAAM,CAAC,EAAE;QACP,MAAM,GAAG,IAAI,CAAC;KACjB;IACD,MAAM,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,CAAC;IAC5B,MAAM,CAAC,QAAQ,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;AAC9C,CAAC,CAAA,CAAC,CAAC;AAEH,IAAI,CAAC,qDAAqD,EAAE,GAAS,EAAE;IACnE,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;QACpC,KAAK,EAAG,CAAC;QACT,IAAG,KAAK,KAAK,CAAC,EAAC;YACX,MAAM,QAAQ,GAAG,qBAAqB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YAChD,QAAQ,CAAC,aAAa,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,wBAAwB,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,8BAA8B,EAAC,EAAC,CAAC;YACnK,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;SAC1E;aAAM,IAAI,KAAK,KAAK,CAAC,EAAE;YACpB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC1B,MAAM,QAAQ,GAAG,2BAA2B,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YACtD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;SAC1E;aAAM,IAAI,KAAK,KAAK,CAAC,EAAE;YACpB,MAAM,QAAQ,GAAG,qBAAqB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YAChD,QAAQ,CAAC,aAAa,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,wBAAwB,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,8BAA8B,EAAC,EAAC,CAAC;YACnK,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;SAC1E;aAAM,IAAI,KAAK,KAAK,CAAC,EAAE;YACpB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC1B,MAAM,QAAQ,GAAG,2BAA2B,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YACtD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;SAC1E;aAAM,IAAI,KAAK,KAAK,CAAC,EAAE;YACpB,MAAM,QAAQ,GAAG,qBAAqB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YAChD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;SAC1E;aAAM,IAAI,KAAK,KAAK,CAAC,EAAE;YACpB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC1B,MAAM,QAAQ,GAAG,2BAA2B,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YACtD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;SAC1E;aAAM,IAAI,KAAK,KAAK,CAAC,EAAE;YACpB,MAAM,QAAQ,GAAG,qBAAqB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YAChD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;SAC1E;aAAM,IAAI,KAAK,KAAK,CAAC,EAAE;YACpB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC1B,MAAM,QAAQ,GAAG,2BAA2B,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YACtD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;SAC1E;aAAO,IAAI,KAAK,KAAK,CAAC,EAAE;YACrB,MAAM,QAAQ,GAAG,qBAAqB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YAChD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;SAC1E;aAAM,IAAI,KAAK,KAAK,EAAE,EAAE;YACrB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC1B,MAAM,QAAQ,GAAG,2BAA2B,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YACtD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;SAC1E;aAAO,IAAI,KAAK,KAAK,EAAE,EAAE;YACtB,MAAM,QAAQ,GAAG,qBAAqB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YAChD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;SAC1E;aAAM,IAAI,KAAK,KAAK,EAAE,EAAE;YACrB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC1B,MAAM,QAAQ,GAAG,2BAA2B,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YACtD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;SAC1E;IACL,CAAC,CAAC,CAAC;IACH,MAAM,iBAAiB,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAE7C,2BAAY,CAAC,gBAAgB,GAAG,GAAQ,EAAE,CAAC,iBAAiB,CAAC;IAE7D,MAAM,qBAAqB,GAAG,IAAI,6CAAqB,CAAC,2BAAY,CAAC,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAE3H,MAAM,UAAU,GAAG,aAAa,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAE3C,MAAM,UAAU,GAAG,MAAM,qBAAqB,CAAC,UAAU,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC;IAE9F,MAAM,CAAC,QAAQ,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;IAC3C,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,8BAA8B,CAAC,CAAC;IAC7D,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,8BAA8B,CAAC,CAAC;AACjE,CAAC,CAAA,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,CAAC,GAAW,EAAE,SAAiB,EAAyB,EAAE;IAC5E,MAAM,UAAU,GAA0B,EAAE,CAAC;IAC7C,CAAE,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QAClC,UAAU,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,SAAS,GAAG,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;IACvI,CAAC,CAAC,CAAC;IACH,OAAO,UAAU,CAAC;AACtB,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAAC,GAAW,EAAE,SAAiB,EAAO,EAAE;IAClE,MAAM,kBAAkB,GAAG,EAAE,CAAC;IAC9B,CAAE,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QAClC,kBAAkB,CAAC,UAAU,SAAS,GAAG,CAAE,EAAE,CAAC,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IAC1E,CAAC,CAAC,CAAC;IACH,OAAO,kBAAkB,CAAC;AAC9B,CAAC,CAAC;AAEF,MAAM,2BAA2B,GAAG,CAAC,GAAW,EAAE,SAAiB,EAAO,EAAE;IACxE,MAAM,wBAAwB,GAAG,EAAE,CAAC;IACpC,CAAE,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QAClC,wBAAwB,CAAC,UAAU,SAAS,GAAG,CAAE,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,yBAAyB,SAAS,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC;IACzH,CAAC,CAAC,CAAC;IACH,OAAO,wBAAwB,CAAC;AACpC,CAAC,CAAC","sourcesContent":["import { ShopifyUtils } from '../../shopify/ShopifyUtils';\nimport { ShopifyProductService } from '../../shopify/ShopifyProductService';\n\n\ntest('Should throw an exception if a post call fails', async () => {\n const mockPost = jest.fn(() => {\n return new Promise((resolve) => resolve({ data: { errors: [{ message: 'errormessage' } ] }}));\n });\n const mockAxiosInstance = { post: mockPost };\n\n ShopifyUtils.getAxiosInstance = (): any => mockAxiosInstance;\n\n const shopifyProductService = new ShopifyProductService(ShopifyUtils.getAxiosInstance('shop', 'token', 'key', null, null));\n\n const metafields = getMetafields(123, 1234);\n let thrown = false;\n\n try { \n await shopifyProductService.metafields.addMetafieldForProducts(metafields);\n } catch(e) {\n thrown = true;\n }\n expect(thrown).toBeTruthy();\n expect(mockPost).toHaveBeenCalledTimes(1);\n});\n\ntest('Update the existing metafields of the sent products', async () => {\n let index = 0;\n const queries: string[] = [];\n const mockPost = jest.fn((url, query) => {\n index ++;\n if(index === 1){\n const response = getMetafieldsRepsonse(5, 1234);\n response['product1238'] = { metafield1: { value: 'value_diff', type: 'single_line_text_field', namespace: 'name', key: 'key', id: 'gid://shopify/Metafield/1211'}};\n return new Promise((resolve) => resolve({ data: { data: response } }));\n } else if (index === 2) {\n queries.push(query.query);\n const response = getMetafieldsUpdateRepsonse(5, 1234);\n return new Promise((resolve) => resolve({ data: { data: response } }));\n } else if (index === 3) {\n const response = getMetafieldsRepsonse(5, 1239);\n response['product1241'] = { metafield1: { value: 'value_diff', type: 'single_line_text_field', namespace: 'name', key: 'key', id: 'gid://shopify/Metafield/1291'}};\n return new Promise((resolve) => resolve({ data: { data: response } }));\n } else if (index === 4) {\n queries.push(query.query);\n const response = getMetafieldsUpdateRepsonse(5, 1239);\n return new Promise((resolve) => resolve({ data: { data: response } }));\n } else if (index === 5) {\n const response = getMetafieldsRepsonse(5, 1244);\n return new Promise((resolve) => resolve({ data: { data: response } }));\n } else if (index === 6) {\n queries.push(query.query);\n const response = getMetafieldsUpdateRepsonse(5, 1244);\n return new Promise((resolve) => resolve({ data: { data: response } }));\n } else if (index === 7) {\n const response = getMetafieldsRepsonse(5, 1249);\n return new Promise((resolve) => resolve({ data: { data: response } }));\n } else if (index === 8) {\n queries.push(query.query);\n const response = getMetafieldsUpdateRepsonse(5, 1249);\n return new Promise((resolve) => resolve({ data: { data: response } }));\n } else if (index === 9) {\n const response = getMetafieldsRepsonse(5, 1254);\n return new Promise((resolve) => resolve({ data: { data: response } }));\n } else if (index === 10) {\n queries.push(query.query);\n const response = getMetafieldsUpdateRepsonse(5, 1254);\n return new Promise((resolve) => resolve({ data: { data: response } }));\n } else if (index === 11) {\n const response = getMetafieldsRepsonse(3, 1259);\n return new Promise((resolve) => resolve({ data: { data: response } }));\n } else if (index === 12) {\n queries.push(query.query);\n const response = getMetafieldsUpdateRepsonse(3, 1259);\n return new Promise((resolve) => resolve({ data: { data: response } }));\n }\n });\n const mockAxiosInstance = { post: mockPost };\n\n ShopifyUtils.getAxiosInstance = (): any => mockAxiosInstance;\n\n const shopifyProductService = new ShopifyProductService(ShopifyUtils.getAxiosInstance('shop', 'token', 'key', null, null));\n\n const metafields = getMetafields(28, 1234);\n\n const productIds = await shopifyProductService.metafields.addMetafieldForProducts(metafields);\n \n expect(mockPost).toHaveBeenCalledTimes(12);\n expect(productIds.length).toBe(28);\n expect(productIds[0]).toBe(1234);\n expect(productIds[27]).toBe(1261);\n expect(queries[0]).toContain('gid://shopify/Metafield/1211');\n expect(queries[1]).toContain('gid://shopify/Metafield/1291');\n});\n\nconst getMetafields = (num: number, initialId: number): IMetafieldOfProduct[] => {\n const metafields: IMetafieldOfProduct[] = [];\n [ ...Array(num).keys()].forEach((i) => {\n metafields.push({ product_id: initialId + i, value: `value_${i}`, type: 'single_line_text_field', namespace: 'name', key: 'key' });\n });\n return metafields;\n};\n\nconst getMetafieldsRepsonse = (num: number, initialId: number): any => {\n const metafieldsResponse = {};\n [ ...Array(num).keys()].forEach((i) => {\n metafieldsResponse[`product${initialId + i }`] = { metafield1: null };\n });\n return metafieldsResponse;\n};\n\nconst getMetafieldsUpdateRepsonse = (num: number, initialId: number): any => {\n const metafieldsUpdateResponse = {};\n [ ...Array(num).keys()].forEach((i) => {\n metafieldsUpdateResponse[`product${initialId + i }`] = { product: { id: `gid://shopify/Product/${initialId + i}` } };\n });\n return metafieldsUpdateResponse;\n};\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ShopifyWebhookService.test.d.ts","sourceRoot":"","sources":["../../../test/shopify/ShopifyWebhookService.test.ts"],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShopifyWebhookService.test.js","sourceRoot":"","sources":["../../../test/shopify/ShopifyWebhookService.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ShopifyWebhookService.test.js","sourceRoot":"","sources":["../../../test/shopify/ShopifyWebhookService.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { Logger } from '../../Logger';\nimport { ShopifyUtils } from '../../shopify/ShopifyUtils';\nimport { ShopifyWebhookService } from '../../shopify/ShopifyWebhookService';\nimport InspiraShopifyError from '../../shopify/errors/InspiraShopifyError';\n\nbeforeEach(async() => {\n jest.clearAllMocks();\n Logger.info = console.log;\n Logger.error = console.error;\n});\n\ndescribe('deleteAll should,', () => {\n test('Delete all existing webhooks', async () => {\n const mockAxiosInstance = {\n get: jest.fn(() => {\n return new Promise<any>((resolve) => {\n resolve({\n data: {\n webhooks: [{ topic: 'orders/create', id: 1, address: 'some callaback url', format: 'json' },\n { topic: 'orders/delete', id: 2, address: 'some callaback url', format: 'json' }]\n }\n });\n });\n }),\n delete: jest.fn()\n };\n \n const shopifyWebhookService = new ShopifyWebhookService(mockAxiosInstance as any);\n await shopifyWebhookService.deleteAll();\n \n expect(mockAxiosInstance.get).toHaveBeenCalledWith('/webhooks.json');\n expect(mockAxiosInstance.delete).toHaveBeenCalledTimes(2);\n });\n});\n\ndescribe('create should,', () => {\n test('throw error when API fails', async () => {\n const mockAxiosInstance = {\n post: jest.fn().mockRejectedValue(new InspiraShopifyError({ message: 'API error'}))\n };\n\n const shopifyWebhookService = new ShopifyWebhookService(mockAxiosInstance as any);\n const createwebHookFunc = async () => { await shopifyWebhookService.create({ address: 'some_url', format: 'json', topic: 'collections/create' }); };\n expect(createwebHookFunc).rejects.toThrow('\\\\\"API error\\\\\"');\n\n });\n});\n\ndescribe('createStoreWebHooks should,', () => {\n test('create all webhooks when no webhooks are already in place', async () => {\n const mockAxiosInstance = {\n get: jest.fn().mockResolvedValue({ data: { webhooks: [] }}),\n post: jest.fn().mockResolvedValue({ data: { webhooks: { id: 121123 }}})\n };\n \n ShopifyUtils.getAxiosInstance = (): any => mockAxiosInstance;\n \n const shopifyWebhookService = new ShopifyWebhookService(mockAxiosInstance as any);\n await shopifyWebhookService.createStoreWebHooks('baseURL', ['collections/create', 'customers/delete', 'inventory_items/update']);\n\n expect(mockAxiosInstance.get).toHaveBeenCalledTimes(1);\n expect(mockAxiosInstance.post).toHaveBeenCalledTimes(3);\n expect(mockAxiosInstance.post).toHaveBeenCalledWith('/webhooks.json', { webhook: { address: 'baseURL/collections/create', format: 'json', topic: 'collections/create' } });\n expect(mockAxiosInstance.post).toHaveBeenCalledWith('/webhooks.json', { webhook: { address: 'baseURL/customers/delete', format: 'json', topic: 'customers/delete' } });\n expect(mockAxiosInstance.post).toHaveBeenCalledWith('/webhooks.json', { webhook: { address: 'baseURL/inventory_items/update', format: 'json', topic: 'inventory_items/update' } });\n });\n\n test('create only webhooks that are not already in place', async () => {\n const mockAxiosInstance = {\n get: jest.fn().mockResolvedValue({ data: { webhooks: [{ topic: 'customers/delete', id: 1, address: 'some callaback url', format: 'json' }] }}),\n post: jest.fn().mockResolvedValue({ data: { webhooks: { id: 121123 }}})\n };\n \n ShopifyUtils.getAxiosInstance = (): any => mockAxiosInstance;\n \n const shopifyWebhookService = new ShopifyWebhookService(mockAxiosInstance as any);\n await shopifyWebhookService.createStoreWebHooks('baseURL', ['collections/create', 'customers/delete', 'inventory_items/update']);\n\n expect(mockAxiosInstance.get).toHaveBeenCalledTimes(1);\n expect(mockAxiosInstance.post).toHaveBeenCalledTimes(2);\n expect(mockAxiosInstance.post).toHaveBeenCalledWith('/webhooks.json', { webhook: { address: 'baseURL/collections/create', format: 'json', topic: 'collections/create' } });\n expect(mockAxiosInstance.post).toHaveBeenCalledWith('/webhooks.json', { webhook: { address: 'baseURL/inventory_items/update', format: 'json', topic: 'inventory_items/update' } });\n });\n\n test('return error when a webhooks fail to be created', async () => {\n const mockAxiosInstance = {\n get: jest.fn().mockResolvedValue({ data: { webhooks: [] }}),\n post: jest.fn().mockRejectedValueOnce('API error').mockResolvedValue({ data: { webhooks: { id: 121123 }}})\n };\n \n ShopifyUtils.getAxiosInstance = (): any => mockAxiosInstance;\n \n const shopifyWebhookService = new ShopifyWebhookService(mockAxiosInstance as any);\n let error = '';\n try {\n await shopifyWebhookService.createStoreWebHooks('baseURL', ['collections/create', 'customers/delete', 'inventory_items/update']);\n } catch(e) {\n error = e.message;\n }\n\n expect(mockAxiosInstance.get).toHaveBeenCalledTimes(1);\n expect(mockAxiosInstance.post).toHaveBeenCalledTimes(3);\n expect(error).toBe('\"\\\\\"1 webhooks have not been created with errors \\\\\\\\\\\\\"API error\\\\\\\\\\\\\"\\\\\"\"');\n });\n});"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sommpicks/sommpicks-shopify",
|
|
3
|
-
"version": "24.12.
|
|
3
|
+
"version": "24.12.9",
|
|
4
4
|
"publishConfig": { "access": "restricted" },
|
|
5
5
|
"description": "Shopify REST API & GraphQL calls",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -44,6 +44,13 @@
|
|
|
44
44
|
"ts-jest": "^29.1.0",
|
|
45
45
|
"typescript": "^4.6.2"
|
|
46
46
|
},
|
|
47
|
+
"peerDependencies": {
|
|
48
|
+
"express": "^4.17.0",
|
|
49
|
+
"@types/express": "^4.17.0",
|
|
50
|
+
"@types/express-serve-static-core": "^4.17.0",
|
|
51
|
+
"@types/qs": "^6.9.0",
|
|
52
|
+
"axios": "^1.4.0"
|
|
53
|
+
},
|
|
47
54
|
"jest": {
|
|
48
55
|
"verbose": true,
|
|
49
56
|
"testURL": "http://localhost/",
|