From 5db8d15857f2e85671393154da5e1c403f3e4e80 Mon Sep 17 00:00:00 2001 From: Bolaji Ayodeji Date: Tue, 25 Jan 2022 21:08:08 +0100 Subject: [PATCH] refactor: update image source and cleanup --- .env.template | 1 + .../WishlistButton/WishlistButton.tsx | 1 - framework/commerce/config.js | 1 + framework/commercelayer/data.json | 30 +- framework/commercelayer/next.config.js | 2 +- package-lock.json | 429 +++++++++++++++++- 6 files changed, 436 insertions(+), 28 deletions(-) diff --git a/.env.template b/.env.template index c0d1b97ba..5402b4d92 100644 --- a/.env.template +++ b/.env.template @@ -24,6 +24,7 @@ NEXT_PUBLIC_SALEOR_CHANNEL= NEXT_PUBLIC_COMMERCELAYER_CLIENT_ID= NEXT_PUBLIC_COMMERCELAYER_ENDPOINT= NEXT_PUBLIC_COMMERCELAYER_MARKET_SCOPE= + NEXT_PUBLIC_VENDURE_SHOP_API_URL= NEXT_PUBLIC_VENDURE_LOCAL_URL= diff --git a/components/wishlist/WishlistButton/WishlistButton.tsx b/components/wishlist/WishlistButton/WishlistButton.tsx index e04ca21be..7de2e7980 100644 --- a/components/wishlist/WishlistButton/WishlistButton.tsx +++ b/components/wishlist/WishlistButton/WishlistButton.tsx @@ -34,7 +34,6 @@ const WishlistButton: FC = ({ item.product_id === productId && item.variant_id === variant.id ) - const handleWishlistChange = async (e: any) => { e.preventDefault() diff --git a/framework/commerce/config.js b/framework/commerce/config.js index 1a48dc456..35bbb9235 100644 --- a/framework/commerce/config.js +++ b/framework/commerce/config.js @@ -18,6 +18,7 @@ const PROVIDERS = [ 'kibocommerce', 'spree', 'commercejs', + 'commercelayer' ] function getProviderName() { diff --git a/framework/commercelayer/data.json b/framework/commercelayer/data.json index a9167f864..c5b073d9f 100644 --- a/framework/commercelayer/data.json +++ b/framework/commercelayer/data.json @@ -11,19 +11,19 @@ "descriptionHtml": "

This relaxed long sleeve tee combines the best of both worlds, proving that cozy can also be chic. 65/35 polyester/viscose. Drop shoulder. Curved bottom hem.

", "images": [ { - "url": "/commercelayer_assets/SHIRTWLS000000FFFFFF_FLAT.png", + "url": "https://data.commercelayer.app/vercel-provider/SHIRTWLS000000FFFFFF_FLAT.png", "altText": "Black Women Long Sleeve Shirt", "width": 1000, "height": 1000 }, { - "url": "/commercelayer_assets/SHIRTWLS000000FFFFFF_01.png", + "url": "https://data.commercelayer.app/vercel-provider/SHIRTWLS000000FFFFFF_01.png", "altText": "Black Women Long Sleeve Shirt", "width": 1000, "height": 1000 }, { - "url": "/commercelayer_assets/SHIRTWLS000000FFFFFF_02.png", + "url": "https://data.commercelayer.app/vercel-provider/SHIRTWLS000000FFFFFF_02.png", "altText": "Black Women Long Sleeve Shirt", "width": 1000, "height": 1000 @@ -133,19 +133,19 @@ "descriptionHtml": "

Lightweight and durable, this mug is a must-have for every devoted camper. Use it for your favorite beverage or a hot meal, and attach it to your bag for easy access on a hike. Ready for your next camping trip?

", "images": [ { - "url": "/commercelayer_assets/EMUG12OZFFFFFF000000_FLAT.png", + "url": "https://data.commercelayer.app/vercel-provider/EMUG12OZFFFFFF000000_FLAT.png", "altText": "White Enamel Mug", "width": 1000, "height": 1000 }, { - "url": "/commercelayer_assets/EMUG12OZFFFFFF000000_01.png", + "url": "https://data.commercelayer.app/vercel-provider/EMUG12OZFFFFFF000000_01.png", "altText": "White Enamel Mug", "width": 1000, "height": 1000 }, { - "url": "/commercelayer_assets/EMUG12OZFFFFFF000000_02.png", + "url": "https://data.commercelayer.app/vercel-provider/EMUG12OZFFFFFF000000_02.png", "altText": "White Enamel Mug", "width": 1000, "height": 1000 @@ -201,25 +201,25 @@ "descriptionHtml": "

A visor is perfect for the days when you’re not in the mood for a cap, but you still want to protect your peepers from the blinding sun. Made of a quick-drying fabric, it’ll be right for sports activities or just a casual stroll around.

", "images": [ { - "url": "/commercelayer_assets/VFLEXFIT000000FFFFFF_FLAT.png", + "url": "https://data.commercelayer.app/vercel-provider/VFLEXFIT000000FFFFFF_FLAT.png", "altText": "Black Visor Flexfit", "width": 1000, "height": 1000 }, { - "url": "/commercelayer_assets/VFLEXFIT000000FFFFFF_01.png", + "url": "https://data.commercelayer.app/vercel-provider/VFLEXFIT000000FFFFFF_01.png", "altText": "Black Visor Flexfit", "width": 1000, "height": 1000 }, { - "url": "/commercelayer_assets/VFLEXFIT000000FFFFFF_02.png", + "url": "https://data.commercelayer.app/vercel-provider/VFLEXFIT000000FFFFFF_02.png", "altText": "Black Visor Flexfit", "width": 1000, "height": 1000 }, { - "url": "/commercelayer_assets/VFLEXFIT000000FFFFFF_03.png", + "url": "https://data.commercelayer.app/vercel-provider/VFLEXFIT000000FFFFFF_03.png", "altText": "Black Visor Flexfit", "width": 1000, "height": 1000 @@ -275,7 +275,7 @@ "descriptionHtml": "

Durable double-layer, washable cloth face mask. The center seam and elastic ear loops give the mask a close fit, and the treated fabric ensures that it will serve you well.

", "images": [ { - "url": "/commercelayer_assets/FACEMASK000000FFFFFF_FLAT.png", + "url": "https://data.commercelayer.app/vercel-provider/FACEMASK000000FFFFFF_FLAT.png", "altText": "Black Face Mask", "width": 1000, "height": 1000 @@ -331,7 +331,7 @@ "descriptionHtml": "

This relaxed long sleeve tee combines the best of both worlds, proving that cozy can also be chic. 65/35 polyester/viscose. Drop shoulder. Curved bottom hem.

", "images": [ { - "url": "/commercelayer_assets/SHIRTWLS9397A0000000_FLAT.png", + "url": "https://data.commercelayer.app/vercel-provider/SHIRTWLS9397A0000000_FLAT.png", "altText": "Gray Women Long Sleeve Shirt", "width": 1000, "height": 1000 @@ -441,7 +441,7 @@ "descriptionHtml": "

Durable double-layer, washable cloth face mask. The center seam and elastic ear loops give the mask a close fit, and the treated fabric ensures that it will serve you well.

", "images": [ { - "url": "/commercelayer_assets/FACEMASKFFFFFF000000_FLAT.png", + "url": "https://data.commercelayer.app/vercel-provider/FACEMASKFFFFFF000000_FLAT.png", "altText": "White Face Mask", "width": 1000, "height": 1000 @@ -497,7 +497,7 @@ "descriptionHtml": "

Soft double-layered customizable beanie. 95% polyester, 5% spandex. Regular fit. Accurately printed, cut, and hand-sewn.

", "images": [ { - "url": "/commercelayer_assets/BEANIEXXFFFFFF000000_FLAT.png", + "url": "https://data.commercelayer.app/vercel-provider/BEANIEXXFFFFFF000000_FLAT.png", "altText": "White Beanie", "width": 1000, "height": 1000 @@ -553,7 +553,7 @@ "descriptionHtml": "

The perfect spacious bag no matter the occasion. It’s great for packing exercise gear when heading to the gym, or throwing in necessities and going on an adventure.

", "images": [ { - "url": "/commercelayer_assets/DUFFLBAGFFFFFF000000_FLAT.png", + "url": "https://data.commercelayer.app/vercel-provider/DUFFLBAGFFFFFF000000_FLAT.png", "altText": "White Face Mask", "width": 1000, "height": 1000 diff --git a/framework/commercelayer/next.config.js b/framework/commercelayer/next.config.js index ce46b706f..ff5f44613 100644 --- a/framework/commercelayer/next.config.js +++ b/framework/commercelayer/next.config.js @@ -3,6 +3,6 @@ const commerce = require('./commerce.config.json') module.exports = { commerce, images: { - domains: ['localhost'], + domains: ['localhost', 'data.commercelayer.app'], }, } diff --git a/package-lock.json b/package-lock.json index f6f40b918..32647ed07 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,6 +10,8 @@ "license": "MIT", "dependencies": { "@chec/commerce.js": "^2.8.0", + "@commercelayer/js-auth": "^2.0.7", + "@commercelayer/js-sdk": "^4.1.3", "@react-spring/web": "^9.4.1", "@spree/storefront-api-v2-sdk": "^5.1.1", "@vercel/fetch": "^6.1.1", @@ -998,6 +1000,54 @@ "follow-redirects": "^1.14.0" } }, + "node_modules/@commercelayer/active-resource": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@commercelayer/active-resource/-/active-resource-1.0.2.tgz", + "integrity": "sha512-VHtudZmOyBmPhkeCZpX08U+c2vd5UbETWPNaGSNmcuQqudZpcvyNVDclJDwHaFV8DZ7IIBy4unTNh+5YIdjruA==", + "dependencies": { + "axios": "^0.21.1", + "es6-promise": "^4.1.1", + "pluralize-js": "^8.0.1", + "qs": "^6.5.0" + } + }, + "node_modules/@commercelayer/active-resource/node_modules/axios": { + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", + "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "dependencies": { + "follow-redirects": "^1.14.0" + } + }, + "node_modules/@commercelayer/js-auth": { + "version": "2.2.9", + "resolved": "https://registry.npmjs.org/@commercelayer/js-auth/-/js-auth-2.2.9.tgz", + "integrity": "sha512-G75o9fzZPzrU9evQ1RuBch3qg3uMgjLu28jkOth4RJd3Uc5NvbeuvEyGax4v0z56/zm0m9TQqkNzvPzXW4rwAA==", + "dependencies": { + "client-oauth2": "^4.3.3", + "tslib": "^2.3.1" + } + }, + "node_modules/@commercelayer/js-sdk": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/@commercelayer/js-sdk/-/js-sdk-4.1.4.tgz", + "integrity": "sha512-lFkbxr1VG33Yfah44Y4ki58SnCw2iqIfRqwaUHUahpWy7PcTn5ed0yIQh9vsIG++DJvoDbNTTbaxrftYFbf//A==", + "deprecated": "4.x.x is no longer supported, please use https://github.com/commercelayer/commercelayer-sdk", + "dependencies": { + "@commercelayer/active-resource": "^1.0.2", + "axios": "^0.21.1", + "lodash": "^4.17.21", + "lodash-es": "^4.17.21" + } + }, + "node_modules/@commercelayer/js-sdk/node_modules/axios": { + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", + "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "dependencies": { + "follow-redirects": "^1.14.0" + } + }, "node_modules/@endemolshinegroup/cosmiconfig-typescript-loader": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/@endemolshinegroup/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-3.0.2.tgz", @@ -2238,6 +2288,11 @@ } } }, + "node_modules/@servie/events": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@servie/events/-/events-1.0.0.tgz", + "integrity": "sha512-sBSO19KzdrJCM3gdx6eIxV8M9Gxfgg6iDQmH5TIAGaUu+X9VDdsINXJOnoiZ1Kx3TrHdH4bt5UVglkjsEGBcvw==" + }, "node_modules/@sindresorhus/is": { "version": "0.14.0", "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", @@ -2451,6 +2506,11 @@ "integrity": "sha512-EaCxbanVeyxDRTQBkdLb3Bvl/HK7PBK6UJjsSixB0iHKoWxE5uu2Q/DgtpOhPIojN0Zl1whvOd7PoHs2P0s5eA==", "dev": true }, + "node_modules/@types/tough-cookie": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-2.3.8.tgz", + "integrity": "sha512-7axfYN8SW9pWg78NgenHasSproWQee5rzyPVLC9HpaQSDgNArsnKJD88EaMfi4Pl48AyciO3agYCFqpHS1gLpg==" + }, "node_modules/@types/uuid": { "version": "8.3.1", "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.1.tgz", @@ -3216,6 +3276,11 @@ "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", "devOptional": true }, + "node_modules/byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/byte-length/-/byte-length-1.0.2.tgz", + "integrity": "sha512-ovBpjmsgd/teRmgcPh23d4gJvxDoXtAzEL9xTfMU8Yc2kqCDb7L9jAG0XHl1nzuGl+h3ebCIF1i62UFyA9V/2Q==" + }, "node_modules/cacheable-request": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", @@ -3499,6 +3564,18 @@ "node": ">= 10" } }, + "node_modules/client-oauth2": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/client-oauth2/-/client-oauth2-4.3.3.tgz", + "integrity": "sha512-k8AvUYJon0vv75ufoVo4nALYb/qwFFicO3I0+39C6xEdflqVtr+f9cy+0ZxAduoVSTfhP5DX2tY2XICAd5hy6Q==", + "dependencies": { + "popsicle": "^12.0.5", + "safe-buffer": "^5.2.0" + }, + "engines": { + "node": ">=4.2.0" + } + }, "node_modules/cliui": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", @@ -4116,6 +4193,11 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/es6-promise": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" + }, "node_modules/escalade": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", @@ -5547,6 +5629,14 @@ "loose-envify": "^1.0.0" } }, + "node_modules/ip-regex": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", + "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", + "engines": { + "node": ">=4" + } + }, "node_modules/is-absolute": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz", @@ -6737,6 +6827,11 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, + "node_modules/lodash-es": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" + }, "node_modules/lodash.camelcase": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", @@ -7019,8 +7114,15 @@ "node_modules/make-error": { "version": "1.3.6", "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "devOptional": true + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==" + }, + "node_modules/make-error-cause": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/make-error-cause/-/make-error-cause-2.3.0.tgz", + "integrity": "sha512-etgt+n4LlOkGSJbBTV9VROHA5R7ekIPS4vfh+bCAoJgRrJWdqJCBbpS3osRJ/HrT7R68MzMiY3L3sDJ/Fd8aBg==", + "dependencies": { + "make-error": "^1.3.5" + } }, "node_modules/map-cache": { "version": "0.2.2", @@ -7828,6 +7930,84 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, + "node_modules/pluralize-js": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/pluralize-js/-/pluralize-js-8.0.1.tgz", + "integrity": "sha512-BYdyDHr+quw2JcvZrWrJTXf+sPjuhGbl7dZPnDsSDqqwGOMlTc+Laqg6sDaspvoikuOs+KbedSEJra5B0LOZDA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/popsicle": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/popsicle/-/popsicle-12.1.0.tgz", + "integrity": "sha512-muNC/cIrWhfR6HqqhHazkxjob3eyECBe8uZYSQ/N5vixNAgssacVleerXnE8Are5fspR0a+d2qWaBR1g7RYlmw==", + "dependencies": { + "popsicle-content-encoding": "^1.0.0", + "popsicle-cookie-jar": "^1.0.0", + "popsicle-redirects": "^1.1.0", + "popsicle-transport-http": "^1.0.8", + "popsicle-transport-xhr": "^2.0.0", + "popsicle-user-agent": "^1.0.0", + "servie": "^4.3.3", + "throwback": "^4.1.0" + } + }, + "node_modules/popsicle-content-encoding": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/popsicle-content-encoding/-/popsicle-content-encoding-1.0.0.tgz", + "integrity": "sha512-4Df+vTfM8wCCJVTzPujiI6eOl3SiWQkcZg0AMrOkD1enMXsF3glIkFUZGvour1Sj7jOWCsNSEhBxpbbhclHhzw==", + "peerDependencies": { + "servie": "^4.0.0" + } + }, + "node_modules/popsicle-cookie-jar": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/popsicle-cookie-jar/-/popsicle-cookie-jar-1.0.0.tgz", + "integrity": "sha512-vrlOGvNVELko0+J8NpGC5lHWDGrk8LQJq9nwAMIVEVBfN1Lib3BLxAaLRGDTuUnvl45j5N9dT2H85PULz6IjjQ==", + "dependencies": { + "@types/tough-cookie": "^2.3.5", + "tough-cookie": "^3.0.1" + }, + "peerDependencies": { + "servie": "^4.0.0" + } + }, + "node_modules/popsicle-redirects": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/popsicle-redirects/-/popsicle-redirects-1.1.0.tgz", + "integrity": "sha512-XCpzVjVk7tty+IJnSdqWevmOr1n8HNDhL86v7mZ6T1JIIf2KGybxUk9mm7ZFOhWMkGB0e8XkacHip7BV8AQWQA==", + "peerDependencies": { + "servie": "^4.1.0" + } + }, + "node_modules/popsicle-transport-http": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/popsicle-transport-http/-/popsicle-transport-http-1.2.1.tgz", + "integrity": "sha512-i5r3IGHkGiBDm1oPFvOfEeSGWR0lQJcsdTqwvvDjXqcTHYJJi4iSi3ecXIttDiTBoBtRAFAE9nF91fspQr63FQ==", + "dependencies": { + "make-error-cause": "^2.2.0" + }, + "peerDependencies": { + "servie": "^4.2.0" + } + }, + "node_modules/popsicle-transport-xhr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/popsicle-transport-xhr/-/popsicle-transport-xhr-2.0.0.tgz", + "integrity": "sha512-5Sbud4Widngf1dodJE5cjEYXkzEUIl8CzyYRYR57t6vpy9a9KPGQX6KBKdPjmBZlR5A06pOBXuJnVr23l27rtA==", + "peerDependencies": { + "servie": "^4.2.0" + } + }, + "node_modules/popsicle-user-agent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/popsicle-user-agent/-/popsicle-user-agent-1.0.0.tgz", + "integrity": "sha512-epKaq3TTfTzXcxBxjpoKYMcTTcAX8Rykus6QZu77XNhJuRHSRxMd+JJrbX/3PFI0opFGSN0BabbAYCbGxbu0mA==", + "peerDependencies": { + "servie": "^4.0.0" + } + }, "node_modules/postcss": { "version": "8.4.5", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz", @@ -8389,6 +8569,11 @@ "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", "dev": true }, + "node_modules/psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" + }, "node_modules/pump": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", @@ -8403,7 +8588,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true, "engines": { "node": ">=6" } @@ -9056,6 +9240,16 @@ "upper-case-first": "^2.0.2" } }, + "node_modules/servie": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/servie/-/servie-4.3.3.tgz", + "integrity": "sha512-b0IrY3b1gVMsWvJppCf19g1p3JSnS0hQi6xu4Hi40CIhf0Lx8pQHcvBL+xunShpmOiQzg1NOia812NAWdSaShw==", + "dependencies": { + "@servie/events": "^1.0.0", + "byte-length": "^1.0.2", + "ts-expect": "^1.1.0" + } + }, "node_modules/set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", @@ -9632,6 +9826,11 @@ "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", "dev": true }, + "node_modules/throwback": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/throwback/-/throwback-4.1.0.tgz", + "integrity": "sha512-dLFe8bU8SeH0xeqeKL7BNo8XoPC/o91nz9/ooeplZPiso+DZukhoyZcSz9TFnUNScm+cA9qjU1m1853M6sPOng==" + }, "node_modules/title-case": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/title-case/-/title-case-3.0.3.tgz", @@ -9690,11 +9889,29 @@ "node": ">=6" } }, + "node_modules/tough-cookie": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-3.0.1.tgz", + "integrity": "sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg==", + "dependencies": { + "ip-regex": "^2.1.0", + "psl": "^1.1.28", + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/tr46": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=" }, + "node_modules/ts-expect": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/ts-expect/-/ts-expect-1.3.0.tgz", + "integrity": "sha512-e4g0EJtAjk64xgnFPD6kTBUtpnMVzDrMb12N1YZV0VvSlhnVT3SGxiYTLdGy8Q5cYHOIC/FAHmZ10eGrAguicQ==" + }, "node_modules/ts-log": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/ts-log/-/ts-log-2.2.4.tgz", @@ -9760,8 +9977,7 @@ "node_modules/tslib": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==", - "dev": true + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" }, "node_modules/tsutils": { "version": "3.21.0", @@ -10914,6 +11130,57 @@ } } }, + "@commercelayer/active-resource": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@commercelayer/active-resource/-/active-resource-1.0.2.tgz", + "integrity": "sha512-VHtudZmOyBmPhkeCZpX08U+c2vd5UbETWPNaGSNmcuQqudZpcvyNVDclJDwHaFV8DZ7IIBy4unTNh+5YIdjruA==", + "requires": { + "axios": "^0.21.1", + "es6-promise": "^4.1.1", + "pluralize-js": "^8.0.1", + "qs": "^6.5.0" + }, + "dependencies": { + "axios": { + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", + "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "requires": { + "follow-redirects": "^1.14.0" + } + } + } + }, + "@commercelayer/js-auth": { + "version": "2.2.9", + "resolved": "https://registry.npmjs.org/@commercelayer/js-auth/-/js-auth-2.2.9.tgz", + "integrity": "sha512-G75o9fzZPzrU9evQ1RuBch3qg3uMgjLu28jkOth4RJd3Uc5NvbeuvEyGax4v0z56/zm0m9TQqkNzvPzXW4rwAA==", + "requires": { + "client-oauth2": "^4.3.3", + "tslib": "^2.3.1" + } + }, + "@commercelayer/js-sdk": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/@commercelayer/js-sdk/-/js-sdk-4.1.4.tgz", + "integrity": "sha512-lFkbxr1VG33Yfah44Y4ki58SnCw2iqIfRqwaUHUahpWy7PcTn5ed0yIQh9vsIG++DJvoDbNTTbaxrftYFbf//A==", + "requires": { + "@commercelayer/active-resource": "^1.0.2", + "axios": "^0.21.1", + "lodash": "^4.17.21", + "lodash-es": "^4.17.21" + }, + "dependencies": { + "axios": { + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", + "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "requires": { + "follow-redirects": "^1.14.0" + } + } + } + }, "@endemolshinegroup/cosmiconfig-typescript-loader": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/@endemolshinegroup/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-3.0.2.tgz", @@ -11876,6 +12143,11 @@ "any-observable": "^0.3.0" } }, + "@servie/events": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@servie/events/-/events-1.0.0.tgz", + "integrity": "sha512-sBSO19KzdrJCM3gdx6eIxV8M9Gxfgg6iDQmH5TIAGaUu+X9VDdsINXJOnoiZ1Kx3TrHdH4bt5UVglkjsEGBcvw==" + }, "@sindresorhus/is": { "version": "0.14.0", "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", @@ -12065,6 +12337,11 @@ "integrity": "sha512-EaCxbanVeyxDRTQBkdLb3Bvl/HK7PBK6UJjsSixB0iHKoWxE5uu2Q/DgtpOhPIojN0Zl1whvOd7PoHs2P0s5eA==", "dev": true }, + "@types/tough-cookie": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-2.3.8.tgz", + "integrity": "sha512-7axfYN8SW9pWg78NgenHasSproWQee5rzyPVLC9HpaQSDgNArsnKJD88EaMfi4Pl48AyciO3agYCFqpHS1gLpg==" + }, "@types/uuid": { "version": "8.3.1", "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.1.tgz", @@ -12630,6 +12907,11 @@ "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", "devOptional": true }, + "byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/byte-length/-/byte-length-1.0.2.tgz", + "integrity": "sha512-ovBpjmsgd/teRmgcPh23d4gJvxDoXtAzEL9xTfMU8Yc2kqCDb7L9jAG0XHl1nzuGl+h3ebCIF1i62UFyA9V/2Q==" + }, "cacheable-request": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", @@ -12845,6 +13127,15 @@ "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", "dev": true }, + "client-oauth2": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/client-oauth2/-/client-oauth2-4.3.3.tgz", + "integrity": "sha512-k8AvUYJon0vv75ufoVo4nALYb/qwFFicO3I0+39C6xEdflqVtr+f9cy+0ZxAduoVSTfhP5DX2tY2XICAd5hy6Q==", + "requires": { + "popsicle": "^12.0.5", + "safe-buffer": "^5.2.0" + } + }, "cliui": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", @@ -13328,6 +13619,11 @@ "is-symbol": "^1.0.2" } }, + "es6-promise": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" + }, "escalade": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", @@ -14395,6 +14691,11 @@ "loose-envify": "^1.0.0" } }, + "ip-regex": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", + "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=" + }, "is-absolute": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz", @@ -15298,6 +15599,11 @@ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, + "lodash-es": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" + }, "lodash.camelcase": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", @@ -15537,8 +15843,15 @@ "make-error": { "version": "1.3.6", "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "devOptional": true + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==" + }, + "make-error-cause": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/make-error-cause/-/make-error-cause-2.3.0.tgz", + "integrity": "sha512-etgt+n4LlOkGSJbBTV9VROHA5R7ekIPS4vfh+bCAoJgRrJWdqJCBbpS3osRJ/HrT7R68MzMiY3L3sDJ/Fd8aBg==", + "requires": { + "make-error": "^1.3.5" + } }, "map-cache": { "version": "0.2.2", @@ -16112,6 +16425,67 @@ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==" }, + "pluralize-js": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/pluralize-js/-/pluralize-js-8.0.1.tgz", + "integrity": "sha512-BYdyDHr+quw2JcvZrWrJTXf+sPjuhGbl7dZPnDsSDqqwGOMlTc+Laqg6sDaspvoikuOs+KbedSEJra5B0LOZDA==" + }, + "popsicle": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/popsicle/-/popsicle-12.1.0.tgz", + "integrity": "sha512-muNC/cIrWhfR6HqqhHazkxjob3eyECBe8uZYSQ/N5vixNAgssacVleerXnE8Are5fspR0a+d2qWaBR1g7RYlmw==", + "requires": { + "popsicle-content-encoding": "^1.0.0", + "popsicle-cookie-jar": "^1.0.0", + "popsicle-redirects": "^1.1.0", + "popsicle-transport-http": "^1.0.8", + "popsicle-transport-xhr": "^2.0.0", + "popsicle-user-agent": "^1.0.0", + "servie": "^4.3.3", + "throwback": "^4.1.0" + } + }, + "popsicle-content-encoding": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/popsicle-content-encoding/-/popsicle-content-encoding-1.0.0.tgz", + "integrity": "sha512-4Df+vTfM8wCCJVTzPujiI6eOl3SiWQkcZg0AMrOkD1enMXsF3glIkFUZGvour1Sj7jOWCsNSEhBxpbbhclHhzw==", + "requires": {} + }, + "popsicle-cookie-jar": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/popsicle-cookie-jar/-/popsicle-cookie-jar-1.0.0.tgz", + "integrity": "sha512-vrlOGvNVELko0+J8NpGC5lHWDGrk8LQJq9nwAMIVEVBfN1Lib3BLxAaLRGDTuUnvl45j5N9dT2H85PULz6IjjQ==", + "requires": { + "@types/tough-cookie": "^2.3.5", + "tough-cookie": "^3.0.1" + } + }, + "popsicle-redirects": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/popsicle-redirects/-/popsicle-redirects-1.1.0.tgz", + "integrity": "sha512-XCpzVjVk7tty+IJnSdqWevmOr1n8HNDhL86v7mZ6T1JIIf2KGybxUk9mm7ZFOhWMkGB0e8XkacHip7BV8AQWQA==", + "requires": {} + }, + "popsicle-transport-http": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/popsicle-transport-http/-/popsicle-transport-http-1.2.1.tgz", + "integrity": "sha512-i5r3IGHkGiBDm1oPFvOfEeSGWR0lQJcsdTqwvvDjXqcTHYJJi4iSi3ecXIttDiTBoBtRAFAE9nF91fspQr63FQ==", + "requires": { + "make-error-cause": "^2.2.0" + } + }, + "popsicle-transport-xhr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/popsicle-transport-xhr/-/popsicle-transport-xhr-2.0.0.tgz", + "integrity": "sha512-5Sbud4Widngf1dodJE5cjEYXkzEUIl8CzyYRYR57t6vpy9a9KPGQX6KBKdPjmBZlR5A06pOBXuJnVr23l27rtA==", + "requires": {} + }, + "popsicle-user-agent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/popsicle-user-agent/-/popsicle-user-agent-1.0.0.tgz", + "integrity": "sha512-epKaq3TTfTzXcxBxjpoKYMcTTcAX8Rykus6QZu77XNhJuRHSRxMd+JJrbX/3PFI0opFGSN0BabbAYCbGxbu0mA==", + "requires": {} + }, "postcss": { "version": "8.4.5", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz", @@ -16478,6 +16852,11 @@ } } }, + "psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" + }, "pump": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", @@ -16491,8 +16870,7 @@ "punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" }, "qs": { "version": "6.10.1", @@ -16964,6 +17342,16 @@ "upper-case-first": "^2.0.2" } }, + "servie": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/servie/-/servie-4.3.3.tgz", + "integrity": "sha512-b0IrY3b1gVMsWvJppCf19g1p3JSnS0hQi6xu4Hi40CIhf0Lx8pQHcvBL+xunShpmOiQzg1NOia812NAWdSaShw==", + "requires": { + "@servie/events": "^1.0.0", + "byte-length": "^1.0.2", + "ts-expect": "^1.1.0" + } + }, "set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", @@ -17421,6 +17809,11 @@ "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", "dev": true }, + "throwback": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/throwback/-/throwback-4.1.0.tgz", + "integrity": "sha512-dLFe8bU8SeH0xeqeKL7BNo8XoPC/o91nz9/ooeplZPiso+DZukhoyZcSz9TFnUNScm+cA9qjU1m1853M6sPOng==" + }, "title-case": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/title-case/-/title-case-3.0.3.tgz", @@ -17464,11 +17857,26 @@ "integrity": "sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==", "dev": true }, + "tough-cookie": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-3.0.1.tgz", + "integrity": "sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg==", + "requires": { + "ip-regex": "^2.1.0", + "psl": "^1.1.28", + "punycode": "^2.1.1" + } + }, "tr46": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=" }, + "ts-expect": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/ts-expect/-/ts-expect-1.3.0.tgz", + "integrity": "sha512-e4g0EJtAjk64xgnFPD6kTBUtpnMVzDrMb12N1YZV0VvSlhnVT3SGxiYTLdGy8Q5cYHOIC/FAHmZ10eGrAguicQ==" + }, "ts-log": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/ts-log/-/ts-log-2.2.4.tgz", @@ -17523,8 +17931,7 @@ "tslib": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==", - "dev": true + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" }, "tsutils": { "version": "3.21.0",