@wrcb/cb-common 1.0.607 → 1.0.619
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/events/promo-app/PromotionCreatedEvent.d.ts +22 -0
- package/build/events/promo-app/PromotionCreatedEvent.js +2 -0
- package/build/events/promo-app/PromotionExpiredEvent.d.ts +9 -0
- package/build/events/promo-app/PromotionExpiredEvent.js +2 -0
- package/build/events/promo-app/PromotionUpdatedEvent.d.ts +14 -0
- package/build/events/promo-app/PromotionUpdatedEvent.js +2 -0
- package/build/events/subjects.d.ts +4 -1
- package/build/events/subjects.js +4 -0
- package/build/server.d.ts +3 -0
- package/build/server.js +3 -0
- package/build/services/RedisService.d.ts +9 -0
- package/build/services/RedisService.js +16 -0
- package/build/services/TenantDataService.js +45 -0
- package/build/types/tenant.d.ts +1 -0
- package/build/types/tenant.js +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Tenant } from 'src/types/tenant';
|
|
2
|
+
import { Subjects } from '../subjects';
|
|
3
|
+
export interface PromotionCreatedEvent {
|
|
4
|
+
subject: Subjects.PromotionCreated;
|
|
5
|
+
data: {
|
|
6
|
+
tenant: Tenant.PromoApp;
|
|
7
|
+
promotionId: string;
|
|
8
|
+
titulo: string;
|
|
9
|
+
descricao: string;
|
|
10
|
+
categoria: string;
|
|
11
|
+
categoriasAdicionais?: string[];
|
|
12
|
+
linkAfiliado: string;
|
|
13
|
+
imagemUrl?: string;
|
|
14
|
+
preco?: number;
|
|
15
|
+
precoAnterior?: number;
|
|
16
|
+
descontoPercentual?: number;
|
|
17
|
+
loja: string;
|
|
18
|
+
score: number;
|
|
19
|
+
exclusivaParaLogado: boolean;
|
|
20
|
+
dataExpiracao?: Date;
|
|
21
|
+
};
|
|
22
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Tenant } from 'src/types/tenant';
|
|
2
|
+
import { Subjects } from '../subjects';
|
|
3
|
+
export interface PromotionUpdatedEvent {
|
|
4
|
+
subject: Subjects.PromotionUpdated;
|
|
5
|
+
data: {
|
|
6
|
+
tenant: Tenant.PromoApp;
|
|
7
|
+
promotionId: string;
|
|
8
|
+
preco?: number;
|
|
9
|
+
precoAnterior?: number;
|
|
10
|
+
descontoPercentual?: number;
|
|
11
|
+
score?: number;
|
|
12
|
+
dataExpiracao?: Date;
|
|
13
|
+
};
|
|
14
|
+
}
|
|
@@ -45,5 +45,8 @@ export declare enum Subjects {
|
|
|
45
45
|
BetSettled = "BetSettled",
|
|
46
46
|
BetRefunded = "BetRefunded",
|
|
47
47
|
BetRejected = "BetRejected",
|
|
48
|
-
PredictionResolved = "PredictionResolved"
|
|
48
|
+
PredictionResolved = "PredictionResolved",
|
|
49
|
+
PromotionCreated = "PromotionCreated",
|
|
50
|
+
PromotionUpdated = "PromotionUpdated",
|
|
51
|
+
PromotionExpired = "PromotionExpired"
|
|
49
52
|
}
|
package/build/events/subjects.js
CHANGED
|
@@ -52,4 +52,8 @@ var Subjects;
|
|
|
52
52
|
Subjects["BetRefunded"] = "BetRefunded";
|
|
53
53
|
Subjects["BetRejected"] = "BetRejected";
|
|
54
54
|
Subjects["PredictionResolved"] = "PredictionResolved";
|
|
55
|
+
// promo app
|
|
56
|
+
Subjects["PromotionCreated"] = "PromotionCreated";
|
|
57
|
+
Subjects["PromotionUpdated"] = "PromotionUpdated";
|
|
58
|
+
Subjects["PromotionExpired"] = "PromotionExpired";
|
|
55
59
|
})(Subjects || (exports.Subjects = Subjects = {}));
|
package/build/server.d.ts
CHANGED
|
@@ -73,6 +73,9 @@ export * from './events/politica-bet/predictionPublishedEvent';
|
|
|
73
73
|
export * from './events/politica-bet/betPlacedEvent';
|
|
74
74
|
export * from './events/politica-bet/betSettledEvent';
|
|
75
75
|
export * from './events/politica-bet/betRefundedEvent';
|
|
76
|
+
export * from './events/promo-app/PromotionCreatedEvent';
|
|
77
|
+
export * from './events/promo-app/PromotionExpiredEvent';
|
|
78
|
+
export * from './events/promo-app/PromotionUpdatedEvent';
|
|
76
79
|
export * from './services/RedisService';
|
|
77
80
|
export * from './services/TenantDataService';
|
|
78
81
|
export * from './services/WasabiUploader';
|
package/build/server.js
CHANGED
|
@@ -89,6 +89,9 @@ __exportStar(require("./events/politica-bet/predictionPublishedEvent"), exports)
|
|
|
89
89
|
__exportStar(require("./events/politica-bet/betPlacedEvent"), exports);
|
|
90
90
|
__exportStar(require("./events/politica-bet/betSettledEvent"), exports);
|
|
91
91
|
__exportStar(require("./events/politica-bet/betRefundedEvent"), exports);
|
|
92
|
+
__exportStar(require("./events/promo-app/PromotionCreatedEvent"), exports);
|
|
93
|
+
__exportStar(require("./events/promo-app/PromotionExpiredEvent"), exports);
|
|
94
|
+
__exportStar(require("./events/promo-app/PromotionUpdatedEvent"), exports);
|
|
92
95
|
__exportStar(require("./services/RedisService"), exports);
|
|
93
96
|
__exportStar(require("./services/TenantDataService"), exports);
|
|
94
97
|
__exportStar(require("./services/WasabiUploader"), exports);
|
|
@@ -8,4 +8,13 @@ export declare class RedisService {
|
|
|
8
8
|
static maintenanceSettingsKey(tenant: Tenant): string;
|
|
9
9
|
static userBalanceKey(tenant: Tenant, userId: string): string;
|
|
10
10
|
static bannedViewerKey(streamerId: string, viewerId: string): string;
|
|
11
|
+
static promotionByIdKey(tenant: Tenant, promotionId: string): string;
|
|
12
|
+
static promotionsListKey(params: {
|
|
13
|
+
tenant: Tenant;
|
|
14
|
+
categoria?: string;
|
|
15
|
+
page: number;
|
|
16
|
+
limit: number;
|
|
17
|
+
isLogged: boolean;
|
|
18
|
+
}): string;
|
|
19
|
+
static promotionsCategoryPrefix(tenant: Tenant, categoria?: string): string;
|
|
11
20
|
}
|
|
@@ -26,5 +26,21 @@ class RedisService {
|
|
|
26
26
|
static bannedViewerKey(streamerId, viewerId) {
|
|
27
27
|
return `banned:${streamerId}:${viewerId}`;
|
|
28
28
|
}
|
|
29
|
+
static promotionByIdKey(tenant, promotionId) {
|
|
30
|
+
return `${tenant}:promotion:${promotionId}`;
|
|
31
|
+
}
|
|
32
|
+
static promotionsListKey(params) {
|
|
33
|
+
var _a;
|
|
34
|
+
const categoria = (_a = params.categoria) !== null && _a !== void 0 ? _a : 'all';
|
|
35
|
+
const authScope = params.isLogged ? 'logged' : 'guest';
|
|
36
|
+
return (`${params.tenant}:promotions:list:` +
|
|
37
|
+
`${categoria}:` +
|
|
38
|
+
`${authScope}:` +
|
|
39
|
+
`page:${params.page}:` +
|
|
40
|
+
`limit:${params.limit}`);
|
|
41
|
+
}
|
|
42
|
+
static promotionsCategoryPrefix(tenant, categoria) {
|
|
43
|
+
return `${tenant}:promotions:list:${categoria !== null && categoria !== void 0 ? categoria : 'all'}`;
|
|
44
|
+
}
|
|
29
45
|
}
|
|
30
46
|
exports.RedisService = RedisService;
|
|
@@ -484,5 +484,50 @@ TenantDataService.tenantDataMap = {
|
|
|
484
484
|
minCriteriaCount: 1,
|
|
485
485
|
maxCriteriaCount: 5
|
|
486
486
|
}
|
|
487
|
+
},
|
|
488
|
+
[tenant_1.Tenant.PromoApp]: {
|
|
489
|
+
TENANT: tenant_1.Tenant.PromoApp,
|
|
490
|
+
SITE_NAME: 'Promo app',
|
|
491
|
+
SITE_URL: 'https://promoapp.com.br',
|
|
492
|
+
SITE_DESCRIPTION: 'Promoções todoos os dias em primeira mão!',
|
|
493
|
+
KEYWORDS: ['porn'],
|
|
494
|
+
SOCIAL_X: 'https://x.com/promoapp',
|
|
495
|
+
SOCIAL_YOUTUBE: 'https://youtube.com/promoapp',
|
|
496
|
+
SOCIAL_INSTAGRAM: 'https://instagram.com/promoapp',
|
|
497
|
+
SOCIAL_FACEBOOK: 'https://facebook.com/promoapp',
|
|
498
|
+
USER_CATEGORIES_CONFIG: {
|
|
499
|
+
// Promo app não possui categorias de usuário específicas
|
|
500
|
+
},
|
|
501
|
+
COUPONS_TYPE_ALLOWED_TO_BE_CREATED_BY_SELLER: [],
|
|
502
|
+
COUPONS_TYPE_ALLOWED_TO_BE_CREATED_BY_ADMIN: [],
|
|
503
|
+
EMAIL_HOST: 'smtp.gmail.com',
|
|
504
|
+
EMAIL_PORT: '587',
|
|
505
|
+
EMAIL_USER: 'promoapp@gmail.com',
|
|
506
|
+
AUTH_FACEBOOK_APP_ID: '',
|
|
507
|
+
AUTH_GOOGLE_ID: '',
|
|
508
|
+
AUTH_GOOGLE_SECRET: '',
|
|
509
|
+
GOOGLE_ANALYTICS_MEASUREMENT_ID: '',
|
|
510
|
+
GOOGLE_VERIFICATION: '',
|
|
511
|
+
MEDIA_CONFIG: {
|
|
512
|
+
maxPhotoSizeMB: 5,
|
|
513
|
+
maxVideoSizeMB: 100,
|
|
514
|
+
allowedImageFormats: ['jpg', 'jpeg', 'png', 'webp'],
|
|
515
|
+
allowedVideoFormats: ['mp4', 'webm', 'mov'],
|
|
516
|
+
imageQualities: {
|
|
517
|
+
thumbnail: { width: 150, height: 150, quality: 80 },
|
|
518
|
+
medium: { width: 800, height: 800, quality: 85 },
|
|
519
|
+
large: { width: 1920, height: 1920, quality: 90 }
|
|
520
|
+
}
|
|
521
|
+
},
|
|
522
|
+
RATING_CRITERIA: {
|
|
523
|
+
criteriaOptions: [
|
|
524
|
+
'Relevancia',
|
|
525
|
+
'Precisao',
|
|
526
|
+
'CustoBeneficio',
|
|
527
|
+
'Variedade'
|
|
528
|
+
],
|
|
529
|
+
minCriteriaCount: 1,
|
|
530
|
+
maxCriteriaCount: 5
|
|
531
|
+
}
|
|
487
532
|
}
|
|
488
533
|
};
|
package/build/types/tenant.d.ts
CHANGED
package/build/types/tenant.js
CHANGED