diff --git a/src/__test__/notification-test.ts b/src/__test__/notification-test.ts index a8b9fd09da..dc630ae6e7 100644 --- a/src/__test__/notification-test.ts +++ b/src/__test__/notification-test.ts @@ -11,6 +11,7 @@ const link: Link = { }; const store: Store = { + currency: '', labels: { inStock: { container: 'test:container', diff --git a/src/notification/discord.ts b/src/notification/discord.ts index e0c7477994..5c46f1070f 100644 --- a/src/notification/discord.ts +++ b/src/notification/discord.ts @@ -37,7 +37,12 @@ export function sendDiscordMessage(link: Link, store: Store) { .setTimestamp(); embed.addField('Store', store.name, true); - if (link.price) embed.addField('Price', `$${link.price}`, true); + if (link.price) + embed.addField( + 'Price', + `${store.currency}${link.price}`, + true + ); embed.addField('Product Page', link.url); if (link.cartUrl) embed.addField('Add to Cart', link.cartUrl); embed.addField('Brand', link.brand, true); diff --git a/src/notification/notification.ts b/src/notification/notification.ts index ebb017a5ea..31de64ab6c 100644 --- a/src/notification/notification.ts +++ b/src/notification/notification.ts @@ -18,12 +18,12 @@ import {sendTwitchMessage} from './twitch'; export function sendNotification(link: Link, store: Store) { // Priority playSound(); + sendDiscordMessage(link, store); + sendDesktopNotification(link, store); sendEmail(link, store); sendSms(link, store); - sendDesktopNotification(link, store); // Non-priority adjustPhilipsHueLights(); - sendDiscordMessage(link, store); sendMqttMessage(link, store); sendPagerDutyNotification(link, store); sendPushbulletNotification(link, store); diff --git a/src/store/model/adorama.ts b/src/store/model/adorama.ts index 8053b63b32..ca68b40be1 100644 --- a/src/store/model/adorama.ts +++ b/src/store/model/adorama.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Adorama: Store = { + currency: '$', labels: { captcha: { container: 'body', diff --git a/src/store/model/alternate-nl.ts b/src/store/model/alternate-nl.ts index 20c9f7a7fa..753b008c65 100644 --- a/src/store/model/alternate-nl.ts +++ b/src/store/model/alternate-nl.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const AlternateNL: Store = { + currency: '€', labels: { inStock: { container: '.stockStatus', diff --git a/src/store/model/alternate.ts b/src/store/model/alternate.ts index b40a10cdef..f65949d18a 100644 --- a/src/store/model/alternate.ts +++ b/src/store/model/alternate.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Alternate: Store = { + currency: '€', labels: { inStock: { container: '.stockStatus', diff --git a/src/store/model/amazon-ca.ts b/src/store/model/amazon-ca.ts index e16d118f1c..6459002956 100644 --- a/src/store/model/amazon-ca.ts +++ b/src/store/model/amazon-ca.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const AmazonCa: Store = { + currency: '$', labels: { captcha: { container: 'body', diff --git a/src/store/model/amazon-de-warehouse.ts b/src/store/model/amazon-de-warehouse.ts index a7c61cddfa..331bb18161 100644 --- a/src/store/model/amazon-de-warehouse.ts +++ b/src/store/model/amazon-de-warehouse.ts @@ -2,6 +2,7 @@ import {Store} from './store'; export const AmazonDeWarehouse: Store = { backoffStatusCodes: [403, 429, 503], + currency: '€', labels: { captcha: { container: 'body', diff --git a/src/store/model/amazon-de.ts b/src/store/model/amazon-de.ts index 0dd90a7739..651562afc3 100644 --- a/src/store/model/amazon-de.ts +++ b/src/store/model/amazon-de.ts @@ -2,6 +2,7 @@ import {Store} from './store'; export const AmazonDe: Store = { backoffStatusCodes: [403, 429, 503], + currency: '€', labels: { captcha: { container: 'body', diff --git a/src/store/model/amazon-es.ts b/src/store/model/amazon-es.ts index 5a1ee033b4..76e54562d3 100644 --- a/src/store/model/amazon-es.ts +++ b/src/store/model/amazon-es.ts @@ -2,6 +2,7 @@ import {Store} from './store'; export const AmazonEs: Store = { backoffStatusCodes: [403, 429, 503], + currency: '€', labels: { captcha: { container: 'body', diff --git a/src/store/model/amazon-fr.ts b/src/store/model/amazon-fr.ts index e2ffd4e2a5..6d1f613141 100644 --- a/src/store/model/amazon-fr.ts +++ b/src/store/model/amazon-fr.ts @@ -2,6 +2,7 @@ import {Store} from './store'; export const AmazonFr: Store = { backoffStatusCodes: [403, 429, 503], + currency: '€', labels: { captcha: { container: 'body', diff --git a/src/store/model/amazon-it.ts b/src/store/model/amazon-it.ts index 119fefc39b..6723592454 100644 --- a/src/store/model/amazon-it.ts +++ b/src/store/model/amazon-it.ts @@ -2,6 +2,7 @@ import {Store} from './store'; export const AmazonIt: Store = { backoffStatusCodes: [403, 429, 503], + currency: '€', labels: { captcha: { container: 'body', diff --git a/src/store/model/amazon-nl.ts b/src/store/model/amazon-nl.ts index 2043c95dcb..3ab4f1f6e6 100644 --- a/src/store/model/amazon-nl.ts +++ b/src/store/model/amazon-nl.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const AmazonNl: Store = { + currency: '€', labels: { captcha: { container: 'body', diff --git a/src/store/model/amazon-uk.ts b/src/store/model/amazon-uk.ts index 35c0c4d799..f9cec4593a 100644 --- a/src/store/model/amazon-uk.ts +++ b/src/store/model/amazon-uk.ts @@ -4,6 +4,7 @@ import {parseCard} from './helpers/card'; export const AmazonUk: Store = { backoffStatusCodes: [403, 429, 503], + currency: '£', labels: { captcha: { container: 'body', diff --git a/src/store/model/amazon.ts b/src/store/model/amazon.ts index 41f9134bb0..d218e43869 100644 --- a/src/store/model/amazon.ts +++ b/src/store/model/amazon.ts @@ -2,6 +2,7 @@ import {Store} from './store'; export const Amazon: Store = { backoffStatusCodes: [403, 429, 503], + currency: '$', labels: { captcha: { container: 'body', diff --git a/src/store/model/amd-ca.ts b/src/store/model/amd-ca.ts index 62c06d0dad..aa98f173fc 100644 --- a/src/store/model/amd-ca.ts +++ b/src/store/model/amd-ca.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const AmdCa: Store = { + currency: '$', labels: { inStock: { container: '.btn-shopping-cart', diff --git a/src/store/model/amd-de.ts b/src/store/model/amd-de.ts index 139ac980b2..7be6e19f56 100644 --- a/src/store/model/amd-de.ts +++ b/src/store/model/amd-de.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const AmdDe: Store = { + currency: '€', labels: { inStock: { container: '.btn-shopping-cart', diff --git a/src/store/model/amd-it.ts b/src/store/model/amd-it.ts index fe162fab02..1567ca25b4 100644 --- a/src/store/model/amd-it.ts +++ b/src/store/model/amd-it.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const AmdIt: Store = { + currency: '€', labels: { inStock: { container: '.btn-shopping-cart', diff --git a/src/store/model/amd.ts b/src/store/model/amd.ts index 814b18d02b..d0620bc159 100644 --- a/src/store/model/amd.ts +++ b/src/store/model/amd.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Amd: Store = { + currency: '$', labels: { inStock: { container: '.btn-shopping-cart', diff --git a/src/store/model/antonline.ts b/src/store/model/antonline.ts index 7ef2c06576..4a53bfdd8a 100644 --- a/src/store/model/antonline.ts +++ b/src/store/model/antonline.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const AntOnline: Store = { + currency: '$', labels: { inStock: { container: '.uk-button', diff --git a/src/store/model/argos.ts b/src/store/model/argos.ts index e340dbbda4..8d7bcc2588 100644 --- a/src/store/model/argos.ts +++ b/src/store/model/argos.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Argos: Store = { + currency: '£', labels: { inStock: { container: 'button[data-test="add-to-trolley-button-button"', diff --git a/src/store/model/aria.ts b/src/store/model/aria.ts index a3156dd3ff..e73c9b7b35 100644 --- a/src/store/model/aria.ts +++ b/src/store/model/aria.ts @@ -2,6 +2,7 @@ import {Store} from './store'; import {getProductLinksBuilder} from './helpers/card'; export const Aria: Store = { + currency: '£', labels: { inStock: { container: '#addQuantity', diff --git a/src/store/model/arlt.ts b/src/store/model/arlt.ts index d47da286bc..b62f9cf1ec 100644 --- a/src/store/model/arlt.ts +++ b/src/store/model/arlt.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Arlt: Store = { + currency: '€', labels: { inStock: { container: '.articleDesc .shippingtext', diff --git a/src/store/model/asus-de.ts b/src/store/model/asus-de.ts index 9d092ac5ac..41d6ab265f 100644 --- a/src/store/model/asus-de.ts +++ b/src/store/model/asus-de.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const AsusDe: Store = { + currency: '€', labels: { inStock: { container: '.buybox--button', diff --git a/src/store/model/asus.ts b/src/store/model/asus.ts index 57337158de..d1418068d9 100644 --- a/src/store/model/asus.ts +++ b/src/store/model/asus.ts @@ -3,6 +3,7 @@ import fetch from 'node-fetch'; export const Asus: Store = { backoffStatusCodes: [403, 429, 503], + currency: '$', labels: { inStock: { container: '#item_add_cart', diff --git a/src/store/model/awd.ts b/src/store/model/awd.ts index b373a17fc1..0304dc7cc7 100644 --- a/src/store/model/awd.ts +++ b/src/store/model/awd.ts @@ -2,6 +2,7 @@ import {Store} from './store'; import {getProductLinksBuilder} from './helpers/card'; export const Awd: Store = { + currency: '£', labels: { inStock: { container: '.vs-stock .ty-qty-in-stock', diff --git a/src/store/model/azerty.ts b/src/store/model/azerty.ts index 1b07b54388..2d245ec097 100644 --- a/src/store/model/azerty.ts +++ b/src/store/model/azerty.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Azerty: Store = { + currency: '€', labels: { inStock: { container: '.orderdelay', diff --git a/src/store/model/bandh.ts b/src/store/model/bandh.ts index 6d30bd2060..2c832247e9 100644 --- a/src/store/model/bandh.ts +++ b/src/store/model/bandh.ts @@ -2,6 +2,7 @@ import {Store} from './store'; export const BAndH: Store = { backoffStatusCodes: [403, 429], + currency: '$', labels: { inStock: { container: 'div[data-selenium="addToCartSection"]', diff --git a/src/store/model/bestbuy-ca.ts b/src/store/model/bestbuy-ca.ts index 2028ad0894..dc34882c0b 100644 --- a/src/store/model/bestbuy-ca.ts +++ b/src/store/model/bestbuy-ca.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const BestBuyCa: Store = { + currency: '$', labels: { inStock: { container: '.addToCartContainer_2uzan', diff --git a/src/store/model/bestbuy.ts b/src/store/model/bestbuy.ts index 9d59ae6a1e..30dff77034 100644 --- a/src/store/model/bestbuy.ts +++ b/src/store/model/bestbuy.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const BestBuy: Store = { + currency: '$', labels: { inStock: { container: diff --git a/src/store/model/box.ts b/src/store/model/box.ts index 60866bec50..8c6e5b46d9 100644 --- a/src/store/model/box.ts +++ b/src/store/model/box.ts @@ -2,6 +2,7 @@ import {Store} from './store'; import {getProductLinksBuilder} from './helpers/card'; export const Box: Store = { + currency: '£', labels: { inStock: { container: '#divBuyButton', diff --git a/src/store/model/canadacomputers.ts b/src/store/model/canadacomputers.ts index 3c3543cc7a..71f68b1e35 100644 --- a/src/store/model/canadacomputers.ts +++ b/src/store/model/canadacomputers.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const CanadaComputers: Store = { + currency: '$', labels: { inStock: { container: 'div[class="pi-prod-availability"]', diff --git a/src/store/model/caseking.ts b/src/store/model/caseking.ts index a847facd50..b886f17527 100644 --- a/src/store/model/caseking.ts +++ b/src/store/model/caseking.ts @@ -2,6 +2,7 @@ import {Store} from './store'; export const Caseking: Store = { backoffStatusCodes: [403, 429], + currency: '€', labels: { inStock: { container: '.delivery_container', diff --git a/src/store/model/ccl.ts b/src/store/model/ccl.ts index 24da0c137d..d0a91d26a6 100644 --- a/src/store/model/ccl.ts +++ b/src/store/model/ccl.ts @@ -3,6 +3,7 @@ import {getProductLinksBuilder} from './helpers/card'; export const Ccl: Store = { backoffStatusCodes: [403, 429, 503], + currency: '£', labels: { inStock: { container: '#pnlAddToBasket', diff --git a/src/store/model/comet.ts b/src/store/model/comet.ts index 749f576a95..5ada944006 100644 --- a/src/store/model/comet.ts +++ b/src/store/model/comet.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Comet: Store = { + currency: '€', labels: { inStock: { container: '.caption', diff --git a/src/store/model/computeruniverse.ts b/src/store/model/computeruniverse.ts index 529ebc41d8..6f1bfe633b 100644 --- a/src/store/model/computeruniverse.ts +++ b/src/store/model/computeruniverse.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Computeruniverse: Store = { + currency: '€', labels: { inStock: { container: '.availability', diff --git a/src/store/model/coolblue.ts b/src/store/model/coolblue.ts index b748ca0651..983c6b7b3c 100644 --- a/src/store/model/coolblue.ts +++ b/src/store/model/coolblue.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Coolblue: Store = { + currency: '€', labels: { inStock: { container: '.product-order', diff --git a/src/store/model/coolmod.ts b/src/store/model/coolmod.ts index eaef15a565..ea1b5fc98a 100644 --- a/src/store/model/coolmod.ts +++ b/src/store/model/coolmod.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Coolmod: Store = { + currency: '€', labels: { inStock: { container: '.product-availability', diff --git a/src/store/model/corsair.ts b/src/store/model/corsair.ts index ce5c1f7dc8..0f19717bef 100644 --- a/src/store/model/corsair.ts +++ b/src/store/model/corsair.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Corsair: Store = { + currency: '$', labels: { inStock: { container: '.add_to_cart_form', diff --git a/src/store/model/currys.ts b/src/store/model/currys.ts index 34f5a31383..dedceb860a 100644 --- a/src/store/model/currys.ts +++ b/src/store/model/currys.ts @@ -2,6 +2,7 @@ import {Store} from './store'; import {getProductLinksBuilder} from './helpers/card'; export const Currys: Store = { + currency: '£', labels: { inStock: { container: '#product-actions button', diff --git a/src/store/model/cyberport.ts b/src/store/model/cyberport.ts index 3a739da7a0..eb28185088 100644 --- a/src/store/model/cyberport.ts +++ b/src/store/model/cyberport.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Cyberport: Store = { + currency: '€', labels: { inStock: { container: '.tooltipAvailabilityParent', diff --git a/src/store/model/ebgames.ts b/src/store/model/ebgames.ts index 9648291a12..d41516b979 100644 --- a/src/store/model/ebgames.ts +++ b/src/store/model/ebgames.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const EbGames: Store = { + currency: '$', labels: { maxPrice: { container: '.singleVariantText .prodPriceCont' diff --git a/src/store/model/ebuyer.ts b/src/store/model/ebuyer.ts index 41d9f88f09..ca39eaec0a 100644 --- a/src/store/model/ebuyer.ts +++ b/src/store/model/ebuyer.ts @@ -2,10 +2,11 @@ import {Store} from './store'; import {getProductLinksBuilder} from './helpers/card'; export const Ebuyer: Store = { + currency: '£', labels: { inStock: { container: '.purchase-info', - text: ['add to basket', 'in stock'] + text: ['add to basket', 'in stock', 'pre-order'] }, maxPrice: { container: '.purchase-info__price .price', diff --git a/src/store/model/elcorteingles.ts b/src/store/model/elcorteingles.ts index 80bc84fbc0..5858c6e164 100644 --- a/src/store/model/elcorteingles.ts +++ b/src/store/model/elcorteingles.ts @@ -2,6 +2,7 @@ import {Store} from './store'; export const Elcorteingles: Store = { backoffStatusCodes: [403, 429, 503], + currency: '€', labels: { // Captcha: { // container: 'body', diff --git a/src/store/model/eprice.ts b/src/store/model/eprice.ts index 4396b03c2b..85a145152e 100644 --- a/src/store/model/eprice.ts +++ b/src/store/model/eprice.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Eprice: Store = { + currency: '€', labels: { inStock: { container: '.topSideDx', diff --git a/src/store/model/euronics-de.ts b/src/store/model/euronics-de.ts index a462491be2..b0d06f4723 100644 --- a/src/store/model/euronics-de.ts +++ b/src/store/model/euronics-de.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const EuronicsDE: Store = { + currency: '€', labels: { inStock: { container: '.buy-btn--cart-text', diff --git a/src/store/model/euronics.ts b/src/store/model/euronics.ts index 3418fbfb47..54f71ff5c8 100644 --- a/src/store/model/euronics.ts +++ b/src/store/model/euronics.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Euronics: Store = { + currency: '€', labels: { inStock: { container: '.purchaseButtonsWidth', diff --git a/src/store/model/evga-eu.ts b/src/store/model/evga-eu.ts index b22a949084..10987cebb0 100644 --- a/src/store/model/evga-eu.ts +++ b/src/store/model/evga-eu.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const EvgaEu: Store = { + currency: '€', labels: { inStock: { container: '.product-buy-specs', diff --git a/src/store/model/evga.ts b/src/store/model/evga.ts index 87c3b3fb85..ce090df89b 100644 --- a/src/store/model/evga.ts +++ b/src/store/model/evga.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Evga: Store = { + currency: '$', labels: { inStock: { container: '.product-buy-specs', diff --git a/src/store/model/expert.ts b/src/store/model/expert.ts index 48e28ce91d..92ddc9f01a 100644 --- a/src/store/model/expert.ts +++ b/src/store/model/expert.ts @@ -2,6 +2,7 @@ import {Store} from './store'; export const Expert: Store = { backoffStatusCodes: [403, 429, 503], + currency: '€', labels: { inStock: [ { diff --git a/src/store/model/galaxus.ts b/src/store/model/galaxus.ts index 0bdcd81b39..01748863d7 100644 --- a/src/store/model/galaxus.ts +++ b/src/store/model/galaxus.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Galaxus: Store = { + currency: '€', labels: { inStock: { container: '#addToCartButton:enabled', diff --git a/src/store/model/game.ts b/src/store/model/game.ts index 35fc1cf628..22eaba7e7a 100644 --- a/src/store/model/game.ts +++ b/src/store/model/game.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Game: Store = { + currency: '£', labels: { inStock: { container: '.buyingOptions', diff --git a/src/store/model/gamestop-de.ts b/src/store/model/gamestop-de.ts index 31abcf38ab..cad257ab1c 100644 --- a/src/store/model/gamestop-de.ts +++ b/src/store/model/gamestop-de.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const GamestopDE: Store = { + currency: '€', labels: { inStock: [ { diff --git a/src/store/model/gamestop.ts b/src/store/model/gamestop.ts index cbef4d6dbe..67e8023e6b 100644 --- a/src/store/model/gamestop.ts +++ b/src/store/model/gamestop.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Gamestop: Store = { + currency: '$', labels: { inStock: [ { diff --git a/src/store/model/kabum.ts b/src/store/model/kabum.ts index 5b851f657a..00ff314fe1 100644 --- a/src/store/model/kabum.ts +++ b/src/store/model/kabum.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Kabum: Store = { + currency: 'R$', labels: { inStock: { container: '.botao-comprar', diff --git a/src/store/model/mediamarkt.ts b/src/store/model/mediamarkt.ts index d9bb1b15f7..a26cd6c443 100644 --- a/src/store/model/mediamarkt.ts +++ b/src/store/model/mediamarkt.ts @@ -2,6 +2,7 @@ import {Store} from './store'; export const Mediamarkt: Store = { backoffStatusCodes: [403, 429, 503], + currency: '€', labels: { captcha: { container: 'p', diff --git a/src/store/model/medimax.ts b/src/store/model/medimax.ts index 3b5a50eee0..107e90cc21 100644 --- a/src/store/model/medimax.ts +++ b/src/store/model/medimax.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Medimax: Store = { + currency: '€', labels: { inStock: [ { diff --git a/src/store/model/megekko.ts b/src/store/model/megekko.ts index 707f96c798..f3d98dc99d 100644 --- a/src/store/model/megekko.ts +++ b/src/store/model/megekko.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Megekko: Store = { + currency: '€', labels: { inStock: { container: '.product-order .text_green', diff --git a/src/store/model/memoryexpress.ts b/src/store/model/memoryexpress.ts index d0a7a8395d..d7bd60084a 100644 --- a/src/store/model/memoryexpress.ts +++ b/src/store/model/memoryexpress.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const MemoryExpress: Store = { + currency: '$', labels: { maxPrice: { container: diff --git a/src/store/model/microcenter.ts b/src/store/model/microcenter.ts index 6b7c710847..58f1d05cbe 100644 --- a/src/store/model/microcenter.ts +++ b/src/store/model/microcenter.ts @@ -209,6 +209,7 @@ for (const microCenterLocation of microCenterLocations) { } export const MicroCenter: Store = { + currency: '$', labels: { inStock: { container: '#cart-options', diff --git a/src/store/model/mindfactory.ts b/src/store/model/mindfactory.ts index 27239828e6..b42b819fea 100644 --- a/src/store/model/mindfactory.ts +++ b/src/store/model/mindfactory.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Mindfactory: Store = { + currency: '€', labels: { inStock: { container: '.pshipping', diff --git a/src/store/model/newegg-ca.ts b/src/store/model/newegg-ca.ts index dabe61e340..35ca7c374b 100644 --- a/src/store/model/newegg-ca.ts +++ b/src/store/model/newegg-ca.ts @@ -2,6 +2,7 @@ import {Store} from './store'; import fetch from 'node-fetch'; export const NeweggCa: Store = { + currency: '$', labels: { captcha: { container: 'body', diff --git a/src/store/model/newegg.ts b/src/store/model/newegg.ts index 4abd1a44ec..46a2b54d95 100644 --- a/src/store/model/newegg.ts +++ b/src/store/model/newegg.ts @@ -2,6 +2,7 @@ import {Store} from './store'; import fetch from 'node-fetch'; export const Newegg: Store = { + currency: '$', labels: { captcha: { container: 'body', diff --git a/src/store/model/notebooksbilliger.ts b/src/store/model/notebooksbilliger.ts index 2cfb2d189d..0a7f1b8d1a 100644 --- a/src/store/model/notebooksbilliger.ts +++ b/src/store/model/notebooksbilliger.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Notebooksbilliger: Store = { + currency: '€', labels: { inStock: { container: '.warehouse', diff --git a/src/store/model/novatech.ts b/src/store/model/novatech.ts index 5ba6f6ea85..af97c06562 100644 --- a/src/store/model/novatech.ts +++ b/src/store/model/novatech.ts @@ -2,6 +2,7 @@ import {Store} from './store'; import {getProductLinksBuilder} from './helpers/card'; export const Novatech: Store = { + currency: '£', labels: { inStock: { container: '.newspec-specprice', diff --git a/src/store/model/nvidia-api.ts b/src/store/model/nvidia-api.ts index 2d685edb36..0c6c1c805a 100644 --- a/src/store/model/nvidia-api.ts +++ b/src/store/model/nvidia-api.ts @@ -237,6 +237,7 @@ export const regionInfos = new Map([ ]); export const NvidiaApi: Store = { + currency: '', labels: { inStock: { container: 'body', diff --git a/src/store/model/nvidia.ts b/src/store/model/nvidia.ts index c31a2e90ae..0e791ee0f5 100644 --- a/src/store/model/nvidia.ts +++ b/src/store/model/nvidia.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Nvidia: Store = { + currency: '$', labels: { captcha: { container: 'body', diff --git a/src/store/model/officedepot.ts b/src/store/model/officedepot.ts index 6dc5a90068..a972d78c33 100644 --- a/src/store/model/officedepot.ts +++ b/src/store/model/officedepot.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const OfficeDepot: Store = { + currency: '$', labels: { captcha: { container: 'body', diff --git a/src/store/model/otto.ts b/src/store/model/otto.ts index 466d42178a..4622c392ce 100644 --- a/src/store/model/otto.ts +++ b/src/store/model/otto.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Otto: Store = { + currency: '€', labels: { inStock: [ { diff --git a/src/store/model/overclockers.ts b/src/store/model/overclockers.ts index 822cf2eca2..2b7e82ad77 100644 --- a/src/store/model/overclockers.ts +++ b/src/store/model/overclockers.ts @@ -2,6 +2,7 @@ import {Store} from './store'; import {getProductLinksBuilder} from './helpers/card'; export const Overclockers: Store = { + currency: '£', labels: { inStock: { container: '#detailbox', diff --git a/src/store/model/pccomponentes.ts b/src/store/model/pccomponentes.ts index 419e210ff2..d3203af3d2 100644 --- a/src/store/model/pccomponentes.ts +++ b/src/store/model/pccomponentes.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const PCComponentes: Store = { + currency: '€', labels: { inStock: { container: '#btnsWishAddBuy', diff --git a/src/store/model/playstation.ts b/src/store/model/playstation.ts index ec49952716..e4573f9d10 100644 --- a/src/store/model/playstation.ts +++ b/src/store/model/playstation.ts @@ -2,6 +2,7 @@ import {Store} from './store'; import fetch from 'node-fetch'; export const PlayStation: Store = { + currency: '$', labels: { inStock: [ { diff --git a/src/store/model/pny.ts b/src/store/model/pny.ts index 152e7c7d65..fabfeb5adb 100644 --- a/src/store/model/pny.ts +++ b/src/store/model/pny.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Pny: Store = { + currency: '$', labels: { inStock: { container: '#ctl01_lbtnAddToCart', diff --git a/src/store/model/proshop-de.ts b/src/store/model/proshop-de.ts index 5bc0c4929b..eef7bd5cf6 100644 --- a/src/store/model/proshop-de.ts +++ b/src/store/model/proshop-de.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const ProshopDE: Store = { + currency: '€', labels: { maxPrice: { container: diff --git a/src/store/model/proshop-dk.ts b/src/store/model/proshop-dk.ts index 361614a9b3..dd64da6c23 100644 --- a/src/store/model/proshop-dk.ts +++ b/src/store/model/proshop-dk.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const ProshopDK: Store = { + currency: 'kr.', labels: { inStock: { container: '.site-stock', diff --git a/src/store/model/saturn.ts b/src/store/model/saturn.ts index ce7d2a5ab9..3323ae08e9 100644 --- a/src/store/model/saturn.ts +++ b/src/store/model/saturn.ts @@ -2,6 +2,7 @@ import {Store} from './store'; export const Saturn: Store = { backoffStatusCodes: [403, 429, 503], + currency: '€', labels: { captcha: { container: 'p', diff --git a/src/store/model/scan.ts b/src/store/model/scan.ts index a7c7578bf3..21d8b191dc 100644 --- a/src/store/model/scan.ts +++ b/src/store/model/scan.ts @@ -2,6 +2,7 @@ import {Store} from './store'; import {getProductLinksBuilder} from './helpers/card'; export const Scan: Store = { + currency: '£', disableAdBlocker: true, labels: { captcha: [ @@ -29,7 +30,7 @@ export const Scan: Store = { model: 'test:model', series: 'test:series', url: - 'https://www.scan.co.uk/products/msi-geforce-rtx-2060-ventus-xs-oc-6gb-gddr6-vr-ready-graphics-card-1920-core-1710mhz-boost' + 'https://www.scan.co.uk/products/nvidia-shield-tv-media-streamer-tegra-x1plus-processor-8gb-storage-2gb-ram-4k-hdr-ready-ai-upscaling' }, { brand: 'sony', diff --git a/src/store/model/smythstoys.ts b/src/store/model/smythstoys.ts index b1d1ba4126..d8f37aac30 100644 --- a/src/store/model/smythstoys.ts +++ b/src/store/model/smythstoys.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const SmythsToys: Store = { + currency: '£', labels: { inStock: { container: '#addToCartButton', diff --git a/src/store/model/spielegrotte.ts b/src/store/model/spielegrotte.ts index 489c6ea563..d166d6d549 100644 --- a/src/store/model/spielegrotte.ts +++ b/src/store/model/spielegrotte.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Spielegrotte: Store = { + currency: '€', labels: { inStock: [ { diff --git a/src/store/model/store.ts b/src/store/model/store.ts index ad2bf92e42..203c833b5a 100644 --- a/src/store/model/store.ts +++ b/src/store/model/store.ts @@ -180,6 +180,7 @@ export type Store = { }; labels: Labels; name: string; + currency: '£' | '$' | '€' | 'R$' | 'kr.' | ''; setupAction?: (browser: Browser) => void; /** * The range of status codes which considered successful, i.e. without error diff --git a/src/store/model/target.ts b/src/store/model/target.ts index dafe4e7c97..1f285257cb 100644 --- a/src/store/model/target.ts +++ b/src/store/model/target.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Target: Store = { + currency: '$', labels: { inStock: [ { diff --git a/src/store/model/topachat.ts b/src/store/model/topachat.ts index 96de52e657..ac33e2da5a 100644 --- a/src/store/model/topachat.ts +++ b/src/store/model/topachat.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const TopAchat: Store = { + currency: '€', labels: { inStock: { container: 'input.cart.button[value="Ajouter au panier"]', diff --git a/src/store/model/toysrus.ts b/src/store/model/toysrus.ts index fe03544a0c..0ce43d3637 100644 --- a/src/store/model/toysrus.ts +++ b/src/store/model/toysrus.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const ToysRUs: Store = { + currency: '$', labels: { inStock: { container: 'li.b-product_status', diff --git a/src/store/model/unieuro.ts b/src/store/model/unieuro.ts index f1f7d86281..4368804b26 100644 --- a/src/store/model/unieuro.ts +++ b/src/store/model/unieuro.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Unieuro: Store = { + currency: '€', labels: { captcha: { container: 'body', diff --git a/src/store/model/very.ts b/src/store/model/very.ts index 09cd8f0200..4865cf6906 100644 --- a/src/store/model/very.ts +++ b/src/store/model/very.ts @@ -3,6 +3,7 @@ import {logger} from '../../logger'; import {parseCard} from './helpers/card'; export const Very: Store = { + currency: '£', labels: { inStock: { container: '.stockMessaging .indicator', diff --git a/src/store/model/vsgamers.ts b/src/store/model/vsgamers.ts index b9af726257..d7877d6b96 100644 --- a/src/store/model/vsgamers.ts +++ b/src/store/model/vsgamers.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const VsGamers: Store = { + currency: '€', labels: { inStock: { container: '#vs-product-sheet-dashboard', diff --git a/src/store/model/walmart-ca.ts b/src/store/model/walmart-ca.ts index b96d410dcd..5ef8decac5 100644 --- a/src/store/model/walmart-ca.ts +++ b/src/store/model/walmart-ca.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const WalmartCa: Store = { + currency: '$', labels: { inStock: { container: '[data-automation="cta-button"]', diff --git a/src/store/model/walmart.ts b/src/store/model/walmart.ts index 7ae94b74d5..e24dd871fd 100644 --- a/src/store/model/walmart.ts +++ b/src/store/model/walmart.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Walmart: Store = { + currency: '$', labels: { inStock: { container: diff --git a/src/store/model/wipoid.ts b/src/store/model/wipoid.ts index feb8bb1552..0214f49021 100644 --- a/src/store/model/wipoid.ts +++ b/src/store/model/wipoid.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Wipoid: Store = { + currency: '$', labels: { inStock: { container: '#add_to_cart', diff --git a/src/store/model/xbox.ts b/src/store/model/xbox.ts index 4f8e602ef1..198626b4c6 100644 --- a/src/store/model/xbox.ts +++ b/src/store/model/xbox.ts @@ -1,6 +1,7 @@ import {Store} from './store'; export const Xbox: Store = { + currency: '$', labels: { outOfStock: { container: diff --git a/src/store/model/zotac.ts b/src/store/model/zotac.ts index 7fc322098b..bb44750edc 100644 --- a/src/store/model/zotac.ts +++ b/src/store/model/zotac.ts @@ -2,6 +2,7 @@ import {Store} from './store'; export const Zotac: Store = { backoffStatusCodes: [403, 503], + currency: '$', labels: { inStock: { container: '.add-to-cart-wrapper',