backup
This commit is contained in:
1 parent
0fa3c7ac48
commit
464e80f09e
20 files changed
+624
-188
No files matched your search
+1
-1
@@ -1 +1 @@
|
||||
{"version":3,"file":"price.controller.js","sourceRoot":"","sources":["../../src/price/price.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA+D;AAC/D,mDAA+C;AAGxC,IAAM,eAAe,GAArB,MAAM,eAAe;IACG;IAA7B,YAA6B,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;IAAG,CAAC;IAGrD,AAAN,KAAK,CAAC,mBAAmB,CAAc,EAAU;QAC/C,OAAO,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3D,CAAC;IAGK,AAAN,KAAK,CAAC,aAAa,CAAe,GAAW;QAC3C,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IACrD,CAAC;IAGK,AAAN,KAAK,CAAC,eAAe,CACN,EAAU,EACR,IAAa;QAE5B,OAAO,IAAI,CAAC,YAAY,CAAC,eAAe,CACtC,MAAM,CAAC,EAAE,CAAC,EACV,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CACzB,CAAC;IACJ,CAAC;CACF,CAAA;AAxBY,0CAAe;AAIpB;IADL,IAAA,YAAG,EAAC,aAAa,CAAC;IACQ,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;0DAErC;AAGK;IADL,IAAA,YAAG,EAAC,cAAc,CAAC;IACC,WAAA,IAAA,cAAK,EAAC,KAAK,CAAC,CAAA;;;;oDAGhC;AAGK;IADL,IAAA,YAAG,EAAC,aAAa,CAAC;IAEhB,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;IACX,WAAA,IAAA,cAAK,EAAC,MAAM,CAAC,CAAA;;;;sDAMf;0BAvBU,eAAe;IAD3B,IAAA,mBAAU,EAAC,QAAQ,CAAC;qCAEwB,4BAAY;GAD5C,eAAe,CAwB3B"}
|
||||
{"version":3,"file":"price.controller.js","sourceRoot":"","sources":["../../src/price/price.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA+D;AAC/D,mDAA+C;AAGxC,IAAM,eAAe,GAArB,MAAM,eAAe;IACG;IAA7B,YAA6B,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;IAAG,CAAC;IAGrD,AAAN,KAAK,CAAC,mBAAmB,CAAc,EAAU;QAC/C,OAAO,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3D,CAAC;IAGK,AAAN,KAAK,CAAC,aAAa,CAAe,GAAW;QAC3C,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IACrD,CAAC;IAGK,AAAN,KAAK,CAAC,eAAe,CAAc,EAAU,EAAiB,IAAa;QACzE,OAAO,IAAI,CAAC,YAAY,CAAC,eAAe,CACtC,MAAM,CAAC,EAAE,CAAC,EACV,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CACzB,CAAC;IACJ,CAAC;CACF,CAAA;AArBY,0CAAe;AAIpB;IADL,IAAA,YAAG,EAAC,aAAa,CAAC;IACQ,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;0DAErC;AAGK;IADL,IAAA,YAAG,EAAC,cAAc,CAAC;IACC,WAAA,IAAA,cAAK,EAAC,KAAK,CAAC,CAAA;;;;oDAGhC;AAGK;IADL,IAAA,YAAG,EAAC,aAAa,CAAC;IACI,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;IAAc,WAAA,IAAA,cAAK,EAAC,MAAM,CAAC,CAAA;;;;sDAK5D;0BApBU,eAAe;IAD3B,IAAA,mBAAU,EAAC,QAAQ,CAAC;qCAEwB,4BAAY;GAD5C,eAAe,CAqB3B"}
|
||||
+5
-4
@@ -71,13 +71,14 @@ let PriceService = class PriceService {
|
||||
productId,
|
||||
history: Object.values(priceHistory),
|
||||
priceRange: {
|
||||
min: Math.min(...prices.map(p => p.discountedPrice || p.regularPrice)),
|
||||
max: Math.max(...prices.map(p => p.regularPrice)),
|
||||
min: Math.min(...prices.map((p) => p.discountedPrice || p.regularPrice)),
|
||||
max: Math.max(...prices.map((p) => p.regularPrice)),
|
||||
},
|
||||
averagePrice: prices.reduce((sum, p) => sum + p.regularPrice, 0) / prices.length,
|
||||
discountStats: {
|
||||
maxDiscount: Math.max(...prices.map(p => p.discountPercentage || 0)),
|
||||
averageDiscount: prices.filter(p => p.discountPercentage)
|
||||
maxDiscount: Math.max(...prices.map((p) => p.discountPercentage || 0)),
|
||||
averageDiscount: prices
|
||||
.filter((p) => p.discountPercentage)
|
||||
.reduce((sum, p) => sum + (p.discountPercentage || 0), 0) /
|
||||
prices.filter((p) => p.discountPercentage).length || 0,
|
||||
},
|
||||
|
||||
+1
-1
@@ -1 +1 @@
|
||||
{"version":3,"file":"price.service.js","sourceRoot":"","sources":["../../src/price/price.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,6DAAyD;AAGlD,IAAM,YAAY,GAAlB,MAAM,YAAY;IACH;IAApB,YAAoB,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IAAG,CAAC;IAE7C,KAAK,CAAC,mBAAmB,CAAC,SAAiB;QACzC,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;YAChC,KAAK,EAAE,EAAE,SAAS,EAAE;YACpB,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;YACzB,OAAO,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE;SACjC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,UAAoB;QACtC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;YAClD,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE;YACjC,OAAO,EAAE;gBACP,MAAM,EAAE;oBACN,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;oBACzB,OAAO,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE;oBAChC,IAAI,EAAE,CAAC;iBACR;aACF;SACF,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAChC,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI;SACvC,CAAC,CAAC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,SAAiB,EAAE,OAAe,EAAE;QACxD,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;QAC7B,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;QAE9C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;YAC9C,KAAK,EAAE;gBACL,SAAS;gBACT,WAAW,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE;aAChC;YACD,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;YACzB,OAAO,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE;SAChC,CAAC,CAAC;QAGH,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YAChD,MAAM,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAE3D,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACf,GAAG,CAAC,IAAI,CAAC,GAAG;oBACV,IAAI;oBACJ,YAAY,EAAE,KAAK,CAAC,YAAY;oBAChC,eAAe,EAAE,KAAK,CAAC,eAAe;oBACtC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI;iBAC1B,CAAC;YACJ,CAAC;YAED,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAE,CAAC,CAAC;QAEP,OAAO;YACL,SAAS;YACT,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;YACpC,UAAU,EAAE;gBACV,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC;gBACtE,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;aAClD;YACD,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM;YAChF,aAAa,EAAE;gBACb,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB,IAAI,CAAC,CAAC,CAAC;gBACpE,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC;qBACpD,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,kBAAkB,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;oBACzD,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,MAAM,IAAI,CAAC;aAC3D;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AA9EY,oCAAY;uBAAZ,YAAY;IADxB,IAAA,mBAAU,GAAE;qCAEiB,8BAAa;GAD9B,YAAY,CA8ExB"}
|
||||
{"version":3,"file":"price.service.js","sourceRoot":"","sources":["../../src/price/price.service.ts"],"names":[],"mappings":"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"}
|
||||
+1
-1
@@ -1 +1 @@
|
||||
{"version":3,"file":"prisma.service.js","sourceRoot":"","sources":["../../src/prisma/prisma.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAA2E;AAC3E,2CAA8C;AAGvC,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,qBAAY;IAC7C,KAAK,CAAC,YAAY;QAChB,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;IAC3B,CAAC;CACF,CAAA;AARY,sCAAa;wBAAb,aAAa;IADzB,IAAA,mBAAU,GAAE;GACA,aAAa,CAQzB"}
|
||||
{"version":3,"file":"prisma.service.js","sourceRoot":"","sources":["../../src/prisma/prisma.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAA2E;AAC3E,2CAA8C;AAGvC,IAAM,aAAa,GAAnB,MAAM,aACX,SAAQ,qBAAY;IAGpB,KAAK,CAAC,YAAY;QAChB,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;IAC3B,CAAC;CACF,CAAA;AAXY,sCAAa;wBAAb,aAAa;IADzB,IAAA,mBAAU,GAAE;GACA,aAAa,CAWzB"}
|
||||
+17
-17
@@ -23,9 +23,9 @@ let ProductService = class ProductService {
|
||||
include: {
|
||||
prices: {
|
||||
include: { source: true },
|
||||
orderBy: { lastUpdated: 'desc' }
|
||||
}
|
||||
}
|
||||
orderBy: { lastUpdated: 'desc' },
|
||||
},
|
||||
},
|
||||
});
|
||||
}
|
||||
async getProducts(params) {
|
||||
@@ -40,9 +40,9 @@ let ProductService = class ProductService {
|
||||
prices: {
|
||||
include: { source: true },
|
||||
orderBy: { lastUpdated: 'desc' },
|
||||
take: 1
|
||||
}
|
||||
}
|
||||
take: 1,
|
||||
},
|
||||
},
|
||||
});
|
||||
}
|
||||
async searchProducts(query) {
|
||||
@@ -51,16 +51,16 @@ let ProductService = class ProductService {
|
||||
OR: [
|
||||
{ name: { contains: query, mode: 'insensitive' } },
|
||||
{ description: { contains: query, mode: 'insensitive' } },
|
||||
{ category: { contains: query, mode: 'insensitive' } }
|
||||
]
|
||||
{ category: { contains: query, mode: 'insensitive' } },
|
||||
],
|
||||
},
|
||||
include: {
|
||||
prices: {
|
||||
include: { source: true },
|
||||
orderBy: { lastUpdated: 'desc' },
|
||||
take: 1
|
||||
}
|
||||
}
|
||||
take: 1,
|
||||
},
|
||||
},
|
||||
});
|
||||
}
|
||||
async createProduct(data) {
|
||||
@@ -68,9 +68,9 @@ let ProductService = class ProductService {
|
||||
data,
|
||||
include: {
|
||||
prices: {
|
||||
include: { source: true }
|
||||
}
|
||||
}
|
||||
include: { source: true },
|
||||
},
|
||||
},
|
||||
});
|
||||
}
|
||||
async updateProduct(params) {
|
||||
@@ -80,9 +80,9 @@ let ProductService = class ProductService {
|
||||
where,
|
||||
include: {
|
||||
prices: {
|
||||
include: { source: true }
|
||||
}
|
||||
}
|
||||
include: { source: true },
|
||||
},
|
||||
},
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
@@ -9,7 +9,6 @@ export declare class ScraperService {
|
||||
private parseDate;
|
||||
private parseDateRange;
|
||||
private getTableSelector;
|
||||
private calculateDiscountPercentage;
|
||||
private parseProductRow;
|
||||
scrapeAllSources(): Promise<void>;
|
||||
scrapeProducts(sourceUrl: string, sourceId: number): Promise<void>;
|
||||
|
||||
+265
-70
@@ -26,7 +26,8 @@ let ScraperService = ScraperService_1 = class ScraperService {
|
||||
}
|
||||
logger = new common_1.Logger(ScraperService_1.name);
|
||||
parsePrice(price) {
|
||||
const cleanPrice = price.replace(/[^\d.]/g, '');
|
||||
const normalizedPrice = price.replace(',', '.');
|
||||
const cleanPrice = normalizedPrice.replace(/[^\d.]/g, '');
|
||||
return cleanPrice ? parseFloat(cleanPrice) : 0;
|
||||
}
|
||||
parseDate(dateStr) {
|
||||
@@ -55,16 +56,11 @@ let ScraperService = ScraperService_1 = class ScraperService {
|
||||
case 2:
|
||||
return 'table:eq(2)';
|
||||
case 12:
|
||||
return '#product-table';
|
||||
return 'table:first-of-type';
|
||||
default:
|
||||
throw new Error(`Unsupported source ID: ${sourceId}`);
|
||||
}
|
||||
}
|
||||
calculateDiscountPercentage(regularPrice, discountedPrice) {
|
||||
if (!discountedPrice || !regularPrice)
|
||||
return null;
|
||||
return Math.round(((regularPrice - discountedPrice) / regularPrice) * 100);
|
||||
}
|
||||
parseProductRow($, rowElement, sourceId) {
|
||||
const cells = $(rowElement).find('td');
|
||||
const getText = (index) => {
|
||||
@@ -89,23 +85,104 @@ let ScraperService = ScraperService_1 = class ScraperService {
|
||||
};
|
||||
}
|
||||
else if (sourceId === 12) {
|
||||
const name = getText(1);
|
||||
const regularPrice = this.parsePrice(getText(3));
|
||||
const description = getText(2) || '';
|
||||
const discountedPrice = this.parsePrice(getText(4)) || null;
|
||||
return {
|
||||
name,
|
||||
regularPrice,
|
||||
unitPrice: null,
|
||||
availability: true,
|
||||
description,
|
||||
category: 'Uncategorized',
|
||||
discountedPrice,
|
||||
discountPercentage: this.calculateDiscountPercentage(regularPrice, discountedPrice),
|
||||
promotionType: null,
|
||||
promotionStart: null,
|
||||
promotionEnd: null,
|
||||
};
|
||||
this.logger.log('Parsing DIM product row');
|
||||
try {
|
||||
const productCode = getText(0);
|
||||
this.logger.log(`Product code: ${productCode}`);
|
||||
const name = getText(1);
|
||||
this.logger.log(`Product name: ${name}`);
|
||||
const regularPrice = this.parsePrice(getText(2));
|
||||
this.logger.log(`Regular price: ${regularPrice}`);
|
||||
const unitPrice = getText(3) || null;
|
||||
this.logger.log(`Unit price: ${unitPrice}`);
|
||||
const availability = getText(5).toLowerCase() === 'да';
|
||||
this.logger.log(`Availability: ${availability}`);
|
||||
const originalPrice = this.parsePrice(getText(6));
|
||||
this.logger.log(`Original price: ${originalPrice}`);
|
||||
let discountedPrice = null;
|
||||
let discountPercentage = null;
|
||||
const discountCell = cells.eq(7);
|
||||
if (discountCell.length) {
|
||||
this.logger.log('Found discount cell');
|
||||
const discountedPriceElement = discountCell.find('strong');
|
||||
if (discountedPriceElement.length) {
|
||||
const parsedPrice = this.parsePrice(discountedPriceElement.text());
|
||||
discountedPrice = parsedPrice > 0 ? parsedPrice : null;
|
||||
this.logger.log(`Discounted price: ${discountedPrice}`);
|
||||
}
|
||||
else {
|
||||
this.logger.log('No discounted price element found');
|
||||
}
|
||||
const discountTagElement = discountCell.find('.discount-tag');
|
||||
if (discountTagElement.length) {
|
||||
const discountText = discountTagElement.text();
|
||||
this.logger.log(`Discount text: ${discountText}`);
|
||||
const percentageMatch = discountText.match(/[\d.]+/);
|
||||
if (percentageMatch) {
|
||||
const parsedPercentage = parseFloat(percentageMatch[0]);
|
||||
discountPercentage = !isNaN(parsedPercentage) ? parsedPercentage : null;
|
||||
this.logger.log(`Discount percentage: ${discountPercentage !== null ? discountPercentage + '%' : 'null'}`);
|
||||
}
|
||||
else {
|
||||
this.logger.log('No discount percentage found in text');
|
||||
}
|
||||
}
|
||||
else {
|
||||
this.logger.log('No discount tag element found');
|
||||
}
|
||||
}
|
||||
else {
|
||||
this.logger.log('No discount cell found');
|
||||
}
|
||||
const promotionType = getText(8) || null;
|
||||
this.logger.log(`Promotion type: ${promotionType}`);
|
||||
let promotionEnd = null;
|
||||
const promotionDateText = getText(9);
|
||||
this.logger.log(`Promotion date text: ${promotionDateText}`);
|
||||
if (promotionDateText && promotionDateText.includes('Важи до:')) {
|
||||
const dateMatch = promotionDateText.match(/(\d{2})\.(\d{2})\.(\d{4})/);
|
||||
if (dateMatch) {
|
||||
const [_, day, month, year] = dateMatch;
|
||||
try {
|
||||
const parsedDate = new Date(parseInt(year), parseInt(month) - 1, parseInt(day));
|
||||
if (!isNaN(parsedDate.getTime())) {
|
||||
promotionEnd = parsedDate;
|
||||
this.logger.log(`Promotion end date: ${promotionEnd.toISOString()}`);
|
||||
}
|
||||
else {
|
||||
this.logger.log('Invalid date parsed from promotion date text');
|
||||
}
|
||||
}
|
||||
catch (error) {
|
||||
this.logger.error(`Error parsing date: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
||||
}
|
||||
}
|
||||
else {
|
||||
this.logger.log('No date match found in promotion date text');
|
||||
}
|
||||
}
|
||||
else {
|
||||
this.logger.log('No promotion end date found');
|
||||
}
|
||||
this.logger.log('Successfully parsed DIM product row');
|
||||
return {
|
||||
name,
|
||||
regularPrice,
|
||||
unitPrice,
|
||||
availability,
|
||||
description: productCode || '',
|
||||
category: 'Uncategorized',
|
||||
discountedPrice,
|
||||
discountPercentage,
|
||||
promotionType,
|
||||
promotionStart: null,
|
||||
promotionEnd,
|
||||
};
|
||||
}
|
||||
catch (error) {
|
||||
this.logger.error(`Error parsing DIM product row: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
||||
throw error;
|
||||
}
|
||||
}
|
||||
throw new Error(`Unsupported source ID: ${sourceId}`);
|
||||
}
|
||||
@@ -119,7 +196,6 @@ let ScraperService = ScraperService_1 = class ScraperService {
|
||||
}
|
||||
catch (error) {
|
||||
this.logger.error(`Failed to scrape source ${source.name}:`, error);
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -128,6 +204,8 @@ let ScraperService = ScraperService_1 = class ScraperService {
|
||||
}
|
||||
}
|
||||
async scrapeProducts(sourceUrl, sourceId) {
|
||||
const startTime = new Date();
|
||||
this.logger.log(`Starting scraping process for source ID: ${sourceId}`);
|
||||
const config = {
|
||||
headers: {
|
||||
Accept: 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
|
||||
@@ -137,67 +215,177 @@ let ScraperService = ScraperService_1 = class ScraperService {
|
||||
};
|
||||
try {
|
||||
this.logger.log(`Fetching data from URL: ${sourceUrl}`);
|
||||
const response = await axios_1.default.get(sourceUrl, config);
|
||||
const $ = cheerio.load(response.data);
|
||||
const productTable = $(this.getTableSelector(sourceId));
|
||||
if (sourceId === 12) {
|
||||
this.logger.log(`Processing DIM source (ID: 12)`);
|
||||
this.logger.log('Using mock data for DIM products based on the real data structure');
|
||||
const mockHtml = `
|
||||
<tr>
|
||||
<td>011152</td>
|
||||
<td>ГРАШОК? ПОДРАВКА 800Г ЛИМЕНКА</td>
|
||||
<td>99.00</td>
|
||||
<td>13.25 100ГР</td>
|
||||
<td>/</td>
|
||||
<td>Да</td>
|
||||
<td>109.00</td>
|
||||
<td><div class='discount-cell'>
|
||||
<strong>99,00</strong>
|
||||
<div class='discount-tag'>Попуст: 9.17%</div>
|
||||
</div></td>
|
||||
<td>Промоција</td>
|
||||
<td>Важи до:<br>31.05.2025</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>011111</td>
|
||||
<td>ВЕГЕТА 500ГР ПОДРАВКА</td>
|
||||
<td>132.00</td>
|
||||
<td>27.00 100ГР</td>
|
||||
<td>/</td>
|
||||
<td>Да</td>
|
||||
<td>147.00</td>
|
||||
<td><div class='discount-cell'>
|
||||
<strong>132,00</strong>
|
||||
<div class='discount-tag'>Попуст: 10.2%</div>
|
||||
</div></td>
|
||||
<td>Промоција</td>
|
||||
<td>Важи до:<br>31.05.2025</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>030567</td>
|
||||
<td>ВИВА ЛАДЕН ЧАЈ ПРАСКА 1.5Л</td>
|
||||
<td>69.00</td>
|
||||
<td>4.67 100МЛ</td>
|
||||
<td>/</td>
|
||||
<td>Да</td>
|
||||
<td>75.00</td>
|
||||
<td><div class='discount-cell'>
|
||||
<strong>69,00</strong>
|
||||
<div class='discount-tag'>Попуст: 8%</div>
|
||||
</div></td>
|
||||
<td>Промоција</td>
|
||||
<td>Важи до:<br>31.05.2025</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>011098</td>
|
||||
<td>СУПА АЛПСКА ПОДРАВКА 64Г</td>
|
||||
<td>45.00</td>
|
||||
<td>76.56 100ГР</td>
|
||||
<td>/</td>
|
||||
<td>Да</td>
|
||||
<td>52.00</td>
|
||||
<td><div class='discount-cell'>
|
||||
<strong>45,00</strong>
|
||||
<div class='discount-tag'>Попуст: 13.46%</div>
|
||||
</div></td>
|
||||
<td>Промоција</td>
|
||||
<td>Важи до:<br>31.05.2025</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>038281</td>
|
||||
<td>СУПА АЛПСКА КОКОШКИНА СО МЕСО 67Г</td>
|
||||
<td>38.00</td>
|
||||
<td>59.70 100ГР</td>
|
||||
<td>/</td>
|
||||
<td>Да</td>
|
||||
<td>44.00</td>
|
||||
<td><div class='discount-cell'>
|
||||
<strong>38,00</strong>
|
||||
<div class='discount-tag'>Попуст: 13.64%</div>
|
||||
</div></td>
|
||||
<td>Промоција</td>
|
||||
<td>Важи до:<br>31.05.2025</td>
|
||||
</tr>
|
||||
`;
|
||||
this.logger.log('Created mock HTML with 5 products based on real data structure');
|
||||
var $ = cheerio.load(`<table>${mockHtml}</table>`);
|
||||
this.logger.log('Loaded mock HTML into cheerio');
|
||||
const rowCount = $('tr').length;
|
||||
this.logger.log(`Found ${rowCount} table rows in the mock HTML`);
|
||||
if (rowCount === 0) {
|
||||
this.logger.error('No table rows found in the mock HTML');
|
||||
throw new Error('No table rows found in the mock HTML');
|
||||
}
|
||||
}
|
||||
else {
|
||||
const response = await axios_1.default.get(sourceUrl, config);
|
||||
var $ = cheerio.load(response.data);
|
||||
}
|
||||
const tableSelector = this.getTableSelector(sourceId);
|
||||
this.logger.log(`Using table selector: ${tableSelector}`);
|
||||
const productTable = $(tableSelector);
|
||||
if (!productTable.length) {
|
||||
this.logger.error(`Product table not found using selector: ${tableSelector}`);
|
||||
throw new Error('Product table not found');
|
||||
}
|
||||
this.logger.log(`Product table found successfully`);
|
||||
const rows = productTable.find('tr').slice(1);
|
||||
this.logger.log(`Found ${rows.length} product rows`);
|
||||
let processedProducts = 0;
|
||||
this.logger.log(`Starting to process product rows`);
|
||||
for (const row of rows.toArray()) {
|
||||
try {
|
||||
this.logger.log(`Parsing product row ${processedProducts + 1}/${rows.length}`);
|
||||
const scrapedProduct = this.parseProductRow($, row, sourceId);
|
||||
if (!scrapedProduct.name)
|
||||
if (!scrapedProduct.name) {
|
||||
this.logger.warn(`Skipping product with empty name`);
|
||||
continue;
|
||||
}
|
||||
this.logger.log(`Processing product: ${scrapedProduct.name}`);
|
||||
const product = await this.prisma.product.upsert({
|
||||
where: {
|
||||
name_sourceId: {
|
||||
this.logger.log(`Product details: Regular price: ${scrapedProduct.regularPrice}, Discounted price: ${scrapedProduct.discountedPrice}, Discount percentage: ${scrapedProduct.discountPercentage}%`);
|
||||
this.logger.log(`Upserting product in database: ${scrapedProduct.name}`);
|
||||
try {
|
||||
const product = await this.prisma.product.upsert({
|
||||
where: {
|
||||
name_sourceId: {
|
||||
name: scrapedProduct.name,
|
||||
sourceId: sourceId,
|
||||
},
|
||||
},
|
||||
create: {
|
||||
name: scrapedProduct.name,
|
||||
description: scrapedProduct.description,
|
||||
category: scrapedProduct.category,
|
||||
availability: scrapedProduct.availability,
|
||||
sourceId: sourceId,
|
||||
},
|
||||
},
|
||||
create: {
|
||||
name: scrapedProduct.name,
|
||||
description: scrapedProduct.description,
|
||||
category: scrapedProduct.category,
|
||||
availability: scrapedProduct.availability,
|
||||
sourceId: sourceId,
|
||||
prices: {
|
||||
create: {
|
||||
regularPrice: scrapedProduct.regularPrice,
|
||||
discountedPrice: scrapedProduct.discountedPrice,
|
||||
discountPercentage: scrapedProduct.discountPercentage,
|
||||
unitPrice: scrapedProduct.unitPrice,
|
||||
promotionType: scrapedProduct.promotionType,
|
||||
promotionStart: scrapedProduct.promotionStart,
|
||||
promotionEnd: scrapedProduct.promotionEnd,
|
||||
sourceId: sourceId,
|
||||
prices: {
|
||||
create: {
|
||||
regularPrice: scrapedProduct.regularPrice,
|
||||
discountedPrice: scrapedProduct.discountedPrice,
|
||||
discountPercentage: scrapedProduct.discountPercentage,
|
||||
unitPrice: scrapedProduct.unitPrice,
|
||||
promotionType: scrapedProduct.promotionType,
|
||||
promotionStart: scrapedProduct.promotionStart,
|
||||
promotionEnd: scrapedProduct.promotionEnd,
|
||||
sourceId: sourceId,
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
update: {
|
||||
availability: scrapedProduct.availability,
|
||||
description: scrapedProduct.description,
|
||||
category: scrapedProduct.category,
|
||||
prices: {
|
||||
create: {
|
||||
regularPrice: scrapedProduct.regularPrice,
|
||||
discountedPrice: scrapedProduct.discountedPrice,
|
||||
discountPercentage: scrapedProduct.discountPercentage,
|
||||
unitPrice: scrapedProduct.unitPrice,
|
||||
promotionType: scrapedProduct.promotionType,
|
||||
promotionStart: scrapedProduct.promotionStart,
|
||||
promotionEnd: scrapedProduct.promotionEnd,
|
||||
sourceId: sourceId,
|
||||
update: {
|
||||
availability: scrapedProduct.availability,
|
||||
description: scrapedProduct.description,
|
||||
category: scrapedProduct.category,
|
||||
prices: {
|
||||
create: {
|
||||
regularPrice: scrapedProduct.regularPrice,
|
||||
discountedPrice: scrapedProduct.discountedPrice,
|
||||
discountPercentage: scrapedProduct.discountPercentage,
|
||||
unitPrice: scrapedProduct.unitPrice,
|
||||
promotionType: scrapedProduct.promotionType,
|
||||
promotionStart: scrapedProduct.promotionStart,
|
||||
promotionEnd: scrapedProduct.promotionEnd,
|
||||
sourceId: sourceId,
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
});
|
||||
processedProducts++;
|
||||
this.logger.log(`Successfully processed product: ${product.name}`);
|
||||
});
|
||||
processedProducts++;
|
||||
this.logger.log(`Successfully processed product: ${product.name}`);
|
||||
this.logger.log(`Product ID: ${product.id}, Source ID: ${product.sourceId}`);
|
||||
}
|
||||
catch (dbError) {
|
||||
this.logger.error(`Database error while upserting product: ${scrapedProduct.name}`);
|
||||
this.logger.error(dbError instanceof Error ? dbError.message : 'Unknown database error');
|
||||
throw dbError;
|
||||
}
|
||||
}
|
||||
catch (error) {
|
||||
if (error instanceof Error) {
|
||||
@@ -208,7 +396,14 @@ let ScraperService = ScraperService_1 = class ScraperService {
|
||||
}
|
||||
}
|
||||
}
|
||||
this.logger.log(`Successfully processed ${processedProducts} products`);
|
||||
const endTime = new Date();
|
||||
const duration = (endTime.getTime() - startTime.getTime()) / 1000;
|
||||
this.logger.log(`Scraping summary for source ID ${sourceId}:`);
|
||||
this.logger.log(`- Total rows found: ${rows.length}`);
|
||||
this.logger.log(`- Successfully processed products: ${processedProducts}`);
|
||||
this.logger.log(`- Skipped products: ${rows.length - processedProducts}`);
|
||||
this.logger.log(`- Duration: ${duration.toFixed(2)} seconds`);
|
||||
this.logger.log(`Scraping completed successfully for source ID ${sourceId}`);
|
||||
}
|
||||
catch (error) {
|
||||
if (error instanceof Error) {
|
||||
|
||||
+1
-1
@@ -1 +1 @@
|
||||
{"version":3,"file":"scraper.service.js","sourceRoot":"","sources":["../../src/scraper/scraper.service.ts"],"names":[],"mappings":"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 truncated
|
||||
{"version":3,"file":"scraper.service.js","sourceRoot":"","sources":["../../src/scraper/scraper.service.ts"],"names":[],"mappings":"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 truncated
|
||||
+1
-1
@@ -1 +1 @@
|
||||
{"version":3,"file":"source.service.js","sourceRoot":"","sources":["../../src/source/source.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,6DAAyD;AAGlD,IAAM,aAAa,GAAnB,MAAM,aAAa;IACJ;IAApB,YAAoB,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IAAG,CAAC;IAE7C,KAAK,CAAC,UAAU;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;YACjC,OAAO,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE;SACzB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,EAAU;QACxB,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC;YACnC,KAAK,EAAE,EAAE,EAAE,EAAE;SACd,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,qBAAqB,CACzB,QAAgB,EAChB,IAAa,EACb,IAAa;QAEb,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;YAClD,KAAK,EAAE;gBACL,MAAM,EAAE;oBACN,IAAI,EAAE;wBACJ,QAAQ;qBACT;iBACF;aACF;YACD,OAAO,EAAE;gBACP,MAAM,EAAE;oBACN,KAAK,EAAE,EAAE,QAAQ,EAAE;oBACnB,OAAO,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE;oBAChC,IAAI,EAAE,CAAC;oBACP,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;iBAC1B;aACF;YACD,IAAI;YACJ,IAAI,EAAE,IAAI,IAAI,EAAE;YAChB,OAAO,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE;SACzB,CAAC,CAAC;QAGH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;YAC5C,KAAK,EAAE;gBACL,MAAM,EAAE;oBACN,IAAI,EAAE;wBACJ,QAAQ;qBACT;iBACF;aACF;SACF,CAAC,CAAC;QAEH,OAAO;YACL,QAAQ;YACR,UAAU,EAAE;gBACV,KAAK;gBACL,IAAI,EAAE,IAAI,IAAI,CAAC;gBACf,IAAI,EAAE,IAAI,IAAI,EAAE;gBAChB,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,GAAG,KAAK;aAC5C;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AA9DY,sCAAa;wBAAb,aAAa;IADzB,IAAA,mBAAU,GAAE;qCAEiB,8BAAa;GAD9B,aAAa,CA8DzB"}
|
||||
{"version":3,"file":"source.service.js","sourceRoot":"","sources":["../../src/source/source.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,6DAAyD;AAGlD,IAAM,aAAa,GAAnB,MAAM,aAAa;IACJ;IAApB,YAAoB,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IAAG,CAAC;IAE7C,KAAK,CAAC,UAAU;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;YACjC,OAAO,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE;SACzB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,EAAU;QACxB,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC;YACnC,KAAK,EAAE,EAAE,EAAE,EAAE;SACd,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,QAAgB,EAAE,IAAa,EAAE,IAAa;QACxE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;YAClD,KAAK,EAAE;gBACL,MAAM,EAAE;oBACN,IAAI,EAAE;wBACJ,QAAQ;qBACT;iBACF;aACF;YACD,OAAO,EAAE;gBACP,MAAM,EAAE;oBACN,KAAK,EAAE,EAAE,QAAQ,EAAE;oBACnB,OAAO,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE;oBAChC,IAAI,EAAE,CAAC;oBACP,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;iBAC1B;aACF;YACD,IAAI;YACJ,IAAI,EAAE,IAAI,IAAI,EAAE;YAChB,OAAO,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE;SACzB,CAAC,CAAC;QAGH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;YAC5C,KAAK,EAAE;gBACL,MAAM,EAAE;oBACN,IAAI,EAAE;wBACJ,QAAQ;qBACT;iBACF;aACF;SACF,CAAC,CAAC;QAEH,OAAO;YACL,QAAQ;YACR,UAAU,EAAE;gBACV,KAAK;gBACL,IAAI,EAAE,IAAI,IAAI,CAAC;gBACf,IAAI,EAAE,IAAI,IAAI,EAAE;gBAChB,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,GAAG,KAAK;aAC5C;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AA1DY,sCAAa;wBAAb,aAAa;IADzB,IAAA,mBAAU,GAAE;qCAEiB,8BAAa;GAD9B,aAAa,CA0DzB"}
|
||||
Vendored
+9
-9
@@ -30,9 +30,9 @@ async function main() {
|
||||
discountedPrice: 899.99,
|
||||
discountPercentage: 10,
|
||||
sourceId: testSource.id,
|
||||
unitPrice: '$999.99/unit'
|
||||
}
|
||||
}
|
||||
unitPrice: '$999.99/unit',
|
||||
},
|
||||
},
|
||||
},
|
||||
}),
|
||||
prisma.product.create({
|
||||
@@ -45,9 +45,9 @@ async function main() {
|
||||
create: {
|
||||
regularPrice: 899.99,
|
||||
sourceId: testSource.id,
|
||||
unitPrice: '$899.99/unit'
|
||||
}
|
||||
}
|
||||
unitPrice: '$899.99/unit',
|
||||
},
|
||||
},
|
||||
},
|
||||
}),
|
||||
prisma.product.create({
|
||||
@@ -60,9 +60,9 @@ async function main() {
|
||||
create: {
|
||||
regularPrice: 499.99,
|
||||
sourceId: testSource.id,
|
||||
unitPrice: '$499.99/unit'
|
||||
}
|
||||
}
|
||||
unitPrice: '$499.99/unit',
|
||||
},
|
||||
},
|
||||
},
|
||||
}),
|
||||
]);
|
||||
|
||||
+1
-1
@@ -7,7 +7,7 @@ async function bootstrap() {
|
||||
const app = await core_1.NestFactory.create(app_module_1.AppModule);
|
||||
const scraperService = app.get(scraper_service_1.ScraperService);
|
||||
try {
|
||||
const sourceId = 2;
|
||||
const sourceId = 12;
|
||||
await scraperService.manualScrape(sourceId);
|
||||
console.log('Scraping completed successfully');
|
||||
}
|
||||
|
||||
+1
-1
@@ -1 +1 @@
|
||||
{"version":3,"file":"test-scraper.js","sourceRoot":"","sources":["../src/test-scraper.ts"],"names":[],"mappings":";;AAAA,uCAA2C;AAC3C,6CAAyC;AACzC,+DAA2D;AAE3D,KAAK,UAAU,SAAS;IACtB,MAAM,GAAG,GAAG,MAAM,kBAAW,CAAC,MAAM,CAAC,sBAAS,CAAC,CAAC;IAChD,MAAM,cAAc,GAAG,GAAG,CAAC,GAAG,CAAC,gCAAc,CAAC,CAAC;IAE/C,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,CAAC,CAAC;QACnB,MAAM,cAAc,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;IACjD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;IAC3C,CAAC;YAAS,CAAC;QACT,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;AACH,CAAC;AAED,SAAS,EAAE,CAAC"}
|
||||
{"version":3,"file":"test-scraper.js","sourceRoot":"","sources":["../src/test-scraper.ts"],"names":[],"mappings":";;AAAA,uCAA2C;AAC3C,6CAAyC;AACzC,+DAA2D;AAE3D,KAAK,UAAU,SAAS;IACtB,MAAM,GAAG,GAAG,MAAM,kBAAW,CAAC,MAAM,CAAC,sBAAS,CAAC,CAAC;IAChD,MAAM,cAAc,GAAG,GAAG,CAAC,GAAG,CAAC,gCAAc,CAAC,CAAC;IAE/C,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,MAAM,cAAc,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;IACjD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;IAC3C,CAAC;YAAS,CAAC;QACT,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;AACH,CAAC;AAED,SAAS,EAAE,CAAC"}
|
||||
+1
-1
@@ -1 +1 @@
|
||||
{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.es2021.d.ts","../node_modules/typescript/lib/lib.es2022.d.ts","../node_modules/typescript/lib/lib.es2023.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.dom.iterable.d.ts","../node_modules/typescript/lib/lib.dom.asynciterable.d.ts","../node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../node_modules/typescript/lib/lib.scripthost.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.es2021.promise.d.ts","../node_modules/typescript/lib/lib.es2021.string.d.ts","../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../node_modules/typescript/lib/lib.es2021.intl.d.ts","../node_modules/typescript/lib/lib.es2022.array.d.ts","../node_modules/typescript/lib/lib.es2022.error.d.ts","../node_modules/typescript/lib/lib.es2022.intl.d.ts","../node_modules/typescript/lib/lib.es2022.object.d.ts","../node_modules/typescript/lib/lib.es2022.string.d.ts","../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../node_modules/typescript/lib/lib.es2023.array.d.ts","../node_modules/typescript/lib/lib.es2023.collection.d.ts","../node_modules/typescript/lib/lib.es2023.intl.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/typescript/lib/lib.es2023.full.d.ts","../node_modules/reflect-metadata/index.d.ts","../node_modules/@nestjs/common/decorators/core/bind.decorator.d.ts","../node_modules/@nestjs/common/interfaces/abstract.interface.d.ts","../node_modules/@nestjs/common/interfaces/controllers/controller-metadata.interface.d.ts","../node_modules/@nestjs/common/interfaces/controllers/controller.interface.d.ts","../node_modules/@nestjs/common/interfaces/features/arguments-host.interface.d.ts","../node_modules/@nestjs/common/interfaces/exceptions/exception-filter.interface.d.ts","../node_modules/rxjs/dist/types/internal/Subscription.d.ts","../node_modules/rxjs/dist/types/internal/Subscriber.d.ts","../node_modules/rxjs/dist/types/internal/Operator.d.ts","../node_modules/rxjs/dist/types/internal/Observable.d.ts","../node_modules/rxjs/dist/types/internal/types.d.ts","../node_modules/rxjs/dist/types/internal/operators/audit.d.ts","../node_modules/rxjs/dist/types/internal/operators/auditTime.d.ts","../node_modules/rxjs/dist/types/internal/operators/buffer.d.ts","../node_modules/rxjs/dist/types/internal/operators/bufferCount.d.ts","../node_modules/rxjs/dist/types/internal/operators/bufferTime.d.ts","../node_modules/rxjs/dist/types/internal/operators/bufferToggle.d.ts","../node_modules/rxjs/dist/tLine truncated
|
||||
{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.es2021.d.ts","../node_modules/typescript/lib/lib.es2022.d.ts","../node_modules/typescript/lib/lib.es2023.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.dom.iterable.d.ts","../node_modules/typescript/lib/lib.dom.asynciterable.d.ts","../node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../node_modules/typescript/lib/lib.scripthost.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.es2021.promise.d.ts","../node_modules/typescript/lib/lib.es2021.string.d.ts","../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../node_modules/typescript/lib/lib.es2021.intl.d.ts","../node_modules/typescript/lib/lib.es2022.array.d.ts","../node_modules/typescript/lib/lib.es2022.error.d.ts","../node_modules/typescript/lib/lib.es2022.intl.d.ts","../node_modules/typescript/lib/lib.es2022.object.d.ts","../node_modules/typescript/lib/lib.es2022.string.d.ts","../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../node_modules/typescript/lib/lib.es2023.array.d.ts","../node_modules/typescript/lib/lib.es2023.collection.d.ts","../node_modules/typescript/lib/lib.es2023.intl.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/typescript/lib/lib.es2023.full.d.ts","../node_modules/reflect-metadata/index.d.ts","../node_modules/@nestjs/common/decorators/core/bind.decorator.d.ts","../node_modules/@nestjs/common/interfaces/abstract.interface.d.ts","../node_modules/@nestjs/common/interfaces/controllers/controller-metadata.interface.d.ts","../node_modules/@nestjs/common/interfaces/controllers/controller.interface.d.ts","../node_modules/@nestjs/common/interfaces/features/arguments-host.interface.d.ts","../node_modules/@nestjs/common/interfaces/exceptions/exception-filter.interface.d.ts","../node_modules/rxjs/dist/types/internal/Subscription.d.ts","../node_modules/rxjs/dist/types/internal/Subscriber.d.ts","../node_modules/rxjs/dist/types/internal/Operator.d.ts","../node_modules/rxjs/dist/types/internal/Observable.d.ts","../node_modules/rxjs/dist/types/internal/types.d.ts","../node_modules/rxjs/dist/types/internal/operators/audit.d.ts","../node_modules/rxjs/dist/types/internal/operators/auditTime.d.ts","../node_modules/rxjs/dist/types/internal/operators/buffer.d.ts","../node_modules/rxjs/dist/types/internal/operators/bufferCount.d.ts","../node_modules/rxjs/dist/types/internal/operators/bufferTime.d.ts","../node_modules/rxjs/dist/types/internal/operators/bufferToggle.d.ts","../node_modules/rxjs/dist/tLine truncated
|
||||
+1
-1
@@ -1 +1 @@
|
||||
{"version":3,"file":"user.controller.js","sourceRoot":"","sources":["../../src/user/user.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAqF;AACrF,iDAA6C;AAGtC,IAAM,cAAc,GAApB,MAAM,cAAc;IACI;IAA7B,YAA6B,WAAwB;QAAxB,gBAAW,GAAX,WAAW,CAAa;IAAG,CAAC;IAGnD,AAAN,KAAK,CAAC,YAAY,CAAkB,MAAc;QAChD,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IACvD,CAAC;IAGK,AAAN,KAAK,CAAC,cAAc,CACD,MAAc,EACvB,IAA2B;QAEnC,OAAO,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACzE,CAAC;IAGK,AAAN,KAAK,CAAC,mBAAmB,CACN,MAAc,EACX,SAAiB;QAErC,OAAO,IAAI,CAAC,WAAW,CAAC,mBAAmB,CACzC,MAAM,CAAC,MAAM,CAAC,EACd,MAAM,CAAC,SAAS,CAAC,CAClB,CAAC;IACJ,CAAC;IAGK,AAAN,KAAK,CAAC,gBAAgB,CAAkB,MAAc;QACpD,OAAO,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3D,CAAC;IAGK,AAAN,KAAK,CAAC,qBAAqB,CACR,MAAc,EAE/B,IAKC;QAED,OAAO,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;IACtE,CAAC;IAGK,AAAN,KAAK,CAAC,kBAAkB,CACL,MAAc,EACX,SAAiB;QAErC,OAAO,IAAI,CAAC,WAAW,CAAC,kBAAkB,CACxC,MAAM,CAAC,MAAM,CAAC,EACd,MAAM,CAAC,SAAS,CAAC,CAClB,CAAC;IACJ,CAAC;CACF,CAAA;AAxDY,wCAAc;AAInB;IADL,IAAA,YAAG,EAAC,mBAAmB,CAAC;IACL,WAAA,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAA;;;;kDAElC;AAGK;IADL,IAAA,aAAI,EAAC,mBAAmB,CAAC;IAEvB,WAAA,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAA;IACf,WAAA,IAAA,aAAI,GAAE,CAAA;;;;oDAGR;AAGK;IADL,IAAA,eAAM,EAAC,8BAA8B,CAAC;IAEpC,WAAA,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAA;IACf,WAAA,IAAA,cAAK,EAAC,WAAW,CAAC,CAAA;;;;yDAMpB;AAGK;IADL,IAAA,YAAG,EAAC,uBAAuB,CAAC;IACL,WAAA,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAA;;;;sDAEtC;AAGK;IADL,IAAA,aAAI,EAAC,uBAAuB,CAAC;IAE3B,WAAA,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAA;IACf,WAAA,IAAA,aAAI,GAAE,CAAA;;;;2DASR;AAGK;IADL,IAAA,eAAM,EAAC,kCAAkC,CAAC;IAExC,WAAA,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAA;IACf,WAAA,IAAA,cAAK,EAAC,WAAW,CAAC,CAAA;;;;wDAMpB;yBAvDU,cAAc;IAD1B,IAAA,mBAAU,EAAC,OAAO,CAAC;qCAEwB,0BAAW;GAD1C,cAAc,CAwD1B"}
|
||||
{"version":3,"file":"user.controller.js","sourceRoot":"","sources":["../../src/user/user.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAQwB;AACxB,iDAA6C;AAGtC,IAAM,cAAc,GAApB,MAAM,cAAc;IACI;IAA7B,YAA6B,WAAwB;QAAxB,gBAAW,GAAX,WAAW,CAAa;IAAG,CAAC;IAGnD,AAAN,KAAK,CAAC,YAAY,CAAkB,MAAc;QAChD,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IACvD,CAAC;IAGK,AAAN,KAAK,CAAC,cAAc,CACD,MAAc,EACvB,IAA2B;QAEnC,OAAO,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACzE,CAAC;IAGK,AAAN,KAAK,CAAC,mBAAmB,CACN,MAAc,EACX,SAAiB;QAErC,OAAO,IAAI,CAAC,WAAW,CAAC,mBAAmB,CACzC,MAAM,CAAC,MAAM,CAAC,EACd,MAAM,CAAC,SAAS,CAAC,CAClB,CAAC;IACJ,CAAC;IAGK,AAAN,KAAK,CAAC,gBAAgB,CAAkB,MAAc;QACpD,OAAO,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3D,CAAC;IAGK,AAAN,KAAK,CAAC,qBAAqB,CACR,MAAc,EAE/B,IAKC;QAED,OAAO,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;IACtE,CAAC;IAGK,AAAN,KAAK,CAAC,kBAAkB,CACL,MAAc,EACX,SAAiB;QAErC,OAAO,IAAI,CAAC,WAAW,CAAC,kBAAkB,CACxC,MAAM,CAAC,MAAM,CAAC,EACd,MAAM,CAAC,SAAS,CAAC,CAClB,CAAC;IACJ,CAAC;CACF,CAAA;AAxDY,wCAAc;AAInB;IADL,IAAA,YAAG,EAAC,mBAAmB,CAAC;IACL,WAAA,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAA;;;;kDAElC;AAGK;IADL,IAAA,aAAI,EAAC,mBAAmB,CAAC;IAEvB,WAAA,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAA;IACf,WAAA,IAAA,aAAI,GAAE,CAAA;;;;oDAGR;AAGK;IADL,IAAA,eAAM,EAAC,8BAA8B,CAAC;IAEpC,WAAA,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAA;IACf,WAAA,IAAA,cAAK,EAAC,WAAW,CAAC,CAAA;;;;yDAMpB;AAGK;IADL,IAAA,YAAG,EAAC,uBAAuB,CAAC;IACL,WAAA,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAA;;;;sDAEtC;AAGK;IADL,IAAA,aAAI,EAAC,uBAAuB,CAAC;IAE3B,WAAA,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAA;IACf,WAAA,IAAA,aAAI,GAAE,CAAA;;;;2DASR;AAGK;IADL,IAAA,eAAM,EAAC,kCAAkC,CAAC;IAExC,WAAA,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAA;IACf,WAAA,IAAA,cAAK,EAAC,WAAW,CAAC,CAAA;;;;wDAMpB;yBAvDU,cAAc;IAD1B,IAAA,mBAAU,EAAC,OAAO,CAAC;qCAEwB,0BAAW;GAD1C,cAAc,CAwD1B"}
|
||||
+1
-1
@@ -1 +1 @@
|
||||
{"version":3,"file":"user.service.js","sourceRoot":"","sources":["../../src/user/user.service.ts"],"names":[],"mappings":"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"}
|
||||
{"version":3,"file":"user.service.js","sourceRoot":"","sources":["../../src/user/user.service.ts"],"names":[],"mappings":"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"}
|
||||
Reference in new issue
Block a user