diff --git a/README.md b/README.md index 68aa589447..b7ea5cb782 100644 --- a/README.md +++ b/README.md @@ -131,6 +131,7 @@ Here is a list of variables that you can use to customize your newly copied `.en | Stores | Environment variable | |:---:|:---:| | Adorama | `adorama`| +| Alternate (DE) | `alternate`| | Amazon | `amazon`| | Amazon (CA) | `amazon-ca`| | Amazon (DE) | `amazon-de`| @@ -148,9 +149,11 @@ Here is a list of variables that you can use to customize your newly copied `.en | EVGA | `evga`| | EVGA (EU) | `evga-eu`| | Gamestop | `gamestop`| +| Mediamarkt (DE) | `mediamarkt`| | Micro Center | `microcenter`| | Newegg | `newegg`| | Newegg (CA) | `newegg-ca`| +| Notebooksbilliger (DE) |`notebooksbilliger`| | Novatech | `novatech`| | Nvidia | `nvidia`| | Nvidia (API) | `nvidia-api`| diff --git a/src/store/model/alternate.ts b/src/store/model/alternate.ts new file mode 100644 index 0000000000..589e79d214 --- /dev/null +++ b/src/store/model/alternate.ts @@ -0,0 +1,168 @@ +import {Store} from './store'; + +export const Alternate: Store = { + labels: { + inStock: { + container: '.stockStatus', + text: ['auf lager'] + }, + outOfStock: { + container: '.stockStatus', + text: ['liefertermin unbekannt'] + } + }, + links: [ + { + brand: 'test:brand', + model: 'test:model', + series: 'test:series', + url: 'https://www.alternate.de/product/1516616' + }, + { + brand: 'gigabyte', + model: 'eagle oc', + series: '3080', + url: 'https://www.alternate.de/product/1672756' + }, + { + brand: 'msi', + model: 'ventus 3x oc', + series: '3080', + url: 'https://www.alternate.de/product/1672345' + }, + { + brand: 'asus', + model: 'tuf gaming', + series: '3080', + url: 'https://www.alternate.de/product/1672251' + }, + { + brand: 'gigabyte', + model: 'gaming oc', + series: '3080', + url: 'https://www.alternate.de/product/1672753' + }, + { + brand: 'msi', + model: 'gaming x trio', + series: '3080', + url: 'https://www.alternate.de/product/1672343' + }, + { + brand: 'asus', + model: 'tuf oc gaming', + series: '3080', + url: 'https://www.alternate.de/product/1672634' + }, + { + brand: 'asus', + model: 'rog strix oc gaming', + series: '3080', + url: 'https://www.alternate.de/product/1672867' + }, + { + brand: 'evga', + model: 'xc3 black gaming', + series: '3080', + url: 'https://www.alternate.de/product/1673512' + }, + { + brand: 'zotac', + model: 'trinity', + series: '3080', + url: 'https://www.alternate.de/product/1672612' + }, + { + brand: 'evga', + model: 'xc3 ultra gaming', + series: '3080', + url: 'https://www.alternate.de/product/1674164' + }, + { + brand: 'asus', + model: 'rog strix gaming', + series: '3080', + url: 'https://www.alternate.de/product/1672868' + }, + { + brand: 'palit', + model: 'gaming pro oc', + series: '3080', + url: 'https://www.alternate.de/product/1673431' + }, + { + brand: 'zotac', + model: 'trinity oc', + series: '3080', + url: 'https://www.alternate.de/product/1677989' + }, + { + brand: 'gigabyte', + model: 'vision oc', + series: '3080', + url: 'https://www.alternate.de/product/1681134' + }, + { + brand: 'evga', + model: 'xc3 gaming', + series: '3080', + url: 'https://www.alternate.de/product/1673520' + }, + { + brand: 'gainward', + model: 'phoenix gs', + series: '3080', + url: 'https://www.alternate.de/product/1673442' + }, + { + brand: 'inno3d', + model: 'ichill x3', + series: '3080', + url: 'https://www.alternate.de/product/1673136' + }, + { + brand: 'evga', + model: 'ftw3 ultra gaming', + series: '3080', + url: 'https://www.alternate.de/product/1673524' + }, + { + brand: 'gigabyte', + model: 'aorus master', + series: '3080', + url: 'https://www.alternate.de/product/1680168' + }, + { + brand: 'evga', + model: 'ftw3 gaming', + series: '3080', + url: 'https://www.alternate.de/product/1673517' + }, + { + brand: 'zotac', + model: 'amp holo', + series: '3080', + url: 'https://www.alternate.de/product/1677985' + }, + { + brand: 'zotac', + model: 'amp extreme holo', + series: '3080', + url: 'https://www.alternate.de/product/1677982' + }, + { + brand: 'inno3d', + model: 'twin x2 oc', + series: '3080', + url: 'https://www.alternate.de/product/1673137' + }, + { + brand: 'inno3d', + model: 'ichill x4', + series: '3080', + url: 'https://www.alternate.de/product/1673134' + } + ], + name: 'alternate' +}; + diff --git a/src/store/model/index.ts b/src/store/model/index.ts index 3668335c7f..76cba29014 100644 --- a/src/store/model/index.ts +++ b/src/store/model/index.ts @@ -1,4 +1,5 @@ import {Adorama} from './adorama'; +import {Alternate} from './alternate'; import {Amazon} from './amazon'; import {AmazonCa} from './amazon-ca'; import {AmazonDe} from './amazon-de'; @@ -17,9 +18,11 @@ import {Ebuyer} from './ebuyer'; import {Evga} from './evga'; import {EvgaEu} from './evga-eu'; import {Gamestop} from './gamestop'; +import {Mediamarkt} from './mediamarkt'; import {MicroCenter} from './microcenter'; import {Newegg} from './newegg'; import {NeweggCa} from './newegg-ca'; +import {Notebooksbilliger} from './notebooksbilliger'; import {Novatech} from './novatech'; import {Nvidia} from './nvidia'; import {NvidiaApi} from './nvidia-api'; @@ -35,6 +38,7 @@ import {logger} from '../../logger'; const masterList = new Map([ [Adorama.name, Adorama], + [Alternate.name, Alternate], [Amazon.name, Amazon], [AmazonCa.name, AmazonCa], [AmazonDe.name, AmazonDe], @@ -53,9 +57,11 @@ const masterList = new Map([ [Evga.name, Evga], [EvgaEu.name, EvgaEu], [Gamestop.name, Gamestop], + [Mediamarkt.name, Mediamarkt], [MicroCenter.name, MicroCenter], [Newegg.name, Newegg], [NeweggCa.name, NeweggCa], + [Notebooksbilliger.name, Notebooksbilliger], [Novatech.name, Novatech], [Nvidia.name, Nvidia], [NvidiaApi.name, NvidiaApi], diff --git a/src/store/model/mediamarkt.ts b/src/store/model/mediamarkt.ts new file mode 100644 index 0000000000..225c9c9fa1 --- /dev/null +++ b/src/store/model/mediamarkt.ts @@ -0,0 +1,120 @@ +import {Store} from './store'; + +export const Mediamarkt: Store = { + labels: { + inStock: { + container: '#root', + text: ['lieferung'] + }, + outOfStock: { + container: '#root', + text: ['dieser artikel ist aktuell nicht verfügbar.'] + } + }, + links: [ + { + brand: 'test:brand', + model: 'test:model', + series: 'test:series', + url: 'https://www.mediamarkt.de/de/product/-2621744.html' + }, + { + brand: 'asus', + model: 'tuf gaming', + series: '3080', + url: 'https://www.mediamarkt.de/de/product/-2681859.html' + }, + { + brand: 'asus', + model: 'tuf gaming oc', + series: '3080', + url: 'https://www.mediamarkt.de/de/product/-2681861.html' + }, + { + brand: 'asus', + model: 'strix gaming', + series: '3080', + url: 'https://www.mediamarkt.de/de/product/-2681869.html' + }, + { + brand: 'asus', + model: 'strix gaming oc', + series: '3080', + url: 'https://www.mediamarkt.de/de/product/-2681871.html' + }, + { + brand: 'zotac', + model: 'trinity', + series: '3080', + url: 'https://www.mediamarkt.de/de/product/-2683243.html' + }, + { + brand: 'msi', + model: 'gaming x trio', + series: '3080', + url: 'https://www.mediamarkt.de/de/product/-2683227.html' + }, + { + brand: 'msi', + model: 'ventus 3x oc', + series: '3080', + url: 'https://www.mediamarkt.de/de/product/-2683229.html' + }, + { + brand: 'inno3d', + model: 'ichill 4x', + series: '3080', + url: 'https://www.mediamarkt.de/de/product/-2684238.html' + }, + { + brand: 'inno3d', + model: 'ichill 3x', + series: '3080', + url: 'https://www.mediamarkt.de/de/product/-2684241.html' + }, + { + brand: 'gigabyte', + model: 'gaming oc', + series: '3080', + url: 'https://www.mediamarkt.de/de/product/-2683937.html' + }, + { + brand: 'gigabyte', + model: 'eagle oc', + series: '3080', + url: 'https://www.mediamarkt.de/de/product/-2683942.html' + }, + { + brand: 'zotac', + model: 'amp extreme holo', + series: '3080', + url: 'https://www.mediamarkt.de/de/product/-2689452.html' + }, + { + brand: 'zotac', + model: 'amp holo', + series: '3080', + url: 'https://www.mediamarkt.de/de/product/-2689452.html' + }, + { + brand: 'inno3d', + model: 'twin 2x oc', + series: '3080', + url: 'https://www.mediamarkt.de/de/product/-2689452.html' + }, + { + brand: 'gigabyte', + model: 'vision oc', + series: '3080', + url: 'https://www.mediamarkt.de/de/product/-2689452.html' + }, + { + brand: 'gigabyte', + model: 'aorus master', + series: '3080', + url: 'https://www.mediamarkt.de/de/product/-2689452.html' + } + ], + name: 'mediamarkt' +}; + diff --git a/src/store/model/notebooksbilliger.ts b/src/store/model/notebooksbilliger.ts new file mode 100644 index 0000000000..37951cf25f --- /dev/null +++ b/src/store/model/notebooksbilliger.ts @@ -0,0 +1,92 @@ +import {Store} from './store'; + +export const Notebooksbilliger: Store = { + labels: { + inStock: { + container: '.warehouse', + text: ['sofort ab lager'] + } + }, + links: [ + { + brand: 'test:brand', + model: 'test:model', + series: 'test:series', + url: 'https://www.notebooksbilliger.de/inno3d+geforce+rtx+2060+6gb+twin+x2+420215' + }, + { + brand: 'inno3d', + model: 'twin x2 oc', + series: '3080', + url: 'https://www.notebooksbilliger.de/inno3d+geforce+rtx+3080+twin+x2+oc+grafikkarte+679190' + }, + { + brand: 'palit', + model: 'gaming pro', + series: '3080', + url: 'https://www.notebooksbilliger.de/palit+geforce+rtx+3080+gamingpro+10gb+gddr6x+grafikkarte+677609' + }, + { + brand: 'pny', + model: 'xlr8 gaming revel expic-x', + series: '3080', + url: 'https://www.notebooksbilliger.de/pny+geforce+rtx+3080+10gb+xlr8+gaming+revel+epic+x+grafikkarte+677412' + }, + { + brand: 'gigabyte', + model: 'eagle oc', + series: '3080', + url: 'https://www.notebooksbilliger.de/gigabyte+geforce+rtx+3080+eagle+oc+10gb+gddr6x+grafikkarte+677501' + }, + { + brand: 'palit', + model: 'gaming pro oc', + series: '3080', + url: 'https://www.notebooksbilliger.de/palit+geforce+rtx+3080+gamingpro+oc+10gb+gddr6x+grafikkarte+677606' + }, + { + brand: 'pny', + model: 'xlr8 gaming', + series: '3080', + url: 'https://www.notebooksbilliger.de/pny+geforce+rtx+3080+xlr8+gaming+10gb+gddr6x+grafikkarte+677407' + }, + { + brand: 'gainward', + model: 'phoenix gs', + series: '3080', + url: 'https://www.notebooksbilliger.de/gainward+geforce+rtx+3080+phoenix+gs+10gb+gddr6x+grafikkarte+677618' + }, + { + brand: 'msi', + model: 'ventus 3x oc', + series: '3080', + url: 'https://www.notebooksbilliger.de/msi+geforce+rtx+3080+ventus+3x+10g+oc+grafikkarte+678549' + }, + { + brand: 'inno3d', + model: 'ichill x3', + series: '3080', + url: 'https://www.notebooksbilliger.de/inno3d+geforce+rtx+3080+ichill+x3+grafikkarte+678588' + }, + { + brand: 'msi', + model: 'gaming x trio', + series: '3080', + url: 'https://www.notebooksbilliger.de/msi+geforce+rtx+3080+gaming+x+trio+10g+grafikkarte+678527' + }, + { + brand: 'gigabyte', + model: 'gaming oc', + series: '3080', + url: 'https://www.notebooksbilliger.de/gigabyte+geforce+rtx+3080+gaming+oc+10gb+gddr6x+grafikkarte+677499' + }, + { + brand: 'asus', + model: 'rog strix', + series: '3080', + url: 'https://www.notebooksbilliger.de/asus+rog+strix+geforce+rtx+3080+10gb+gddr6x+grafikkarte+677363' + } + ], + name: 'notebooksbilliger' +}; + diff --git a/src/store/model/store.ts b/src/store/model/store.ts index e4a4988ed1..415af70855 100644 --- a/src/store/model/store.ts +++ b/src/store/model/store.ts @@ -13,7 +13,7 @@ export type Pricing = { export type Series = 'test:series' | '3070' | '3080' | '3090'; export type Link = { - brand: 'test:brand' | 'asus' | 'evga' | 'gigabyte' | 'inno3d' | 'kfa2' | 'palit' | 'pny' | 'msi' | 'nvidia' | 'zotac'; + brand: 'test:brand' | 'asus' | 'evga' | 'gainward' | 'gigabyte' | 'inno3d' | 'kfa2' | 'palit' | 'pny' | 'msi' | 'nvidia' | 'zotac'; series: Series; model: string; url: string;