store-scrapper-js-common 1.0.113 → 1.0.116

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.
@@ -26,6 +26,7 @@ export declare enum UpdateReasonEnum {
26
26
  MISSING_DATA = "missing_data",
27
27
  FIX_DATA = "fix_data",
28
28
  RE_LISTING = "re_listing",
29
+ OUT_OF_STOCK = "out_of_stock",
29
30
  CHILDREN_NEW_PRICE = "children_new_price",
30
31
  CHILDREN_NEW_CONDITIONAL_PRICE = "children_conditional_new_price",
31
32
  CHILDREN_NEW_NAME = "children_new_name",
@@ -33,7 +34,8 @@ export declare enum UpdateReasonEnum {
33
34
  CHILDREN_NEW_STOCK = "children_new_stock",
34
35
  CHILDREN_MISSING_DATA = "children_missing_data",
35
36
  CHILDREN_FIX_DATA = "children_fix_data",
36
- CHILDREN_RE_LISTING = "children_re_listing"
37
+ CHILDREN_RE_LISTING = "children_re_listing",
38
+ CHILDREN_OUT_OF_STOCK = "children_out_of_stock"
37
39
  }
38
40
  export interface ProductAttributes {
39
41
  stock?: number;
@@ -46,6 +48,7 @@ export interface ConditionalPrice {
46
48
  price?: number;
47
49
  cardRequired?: boolean;
48
50
  createdAt?: Date;
51
+ updatedAt?: Date;
49
52
  }
50
53
  export declare class Product extends AbstractBase {
51
54
  name: string;
@@ -63,6 +66,7 @@ export declare class Product extends AbstractBase {
63
66
  normalizedSellerName?: string;
64
67
  price?: Price;
65
68
  conditionalPrice?: ConditionalPrice;
69
+ conditionalPriceHistory?: ConditionalPrice[];
66
70
  previousPrice?: Price;
67
71
  bestPrice?: Price;
68
72
  priceStats?: PricesStats;
@@ -86,6 +90,11 @@ export declare class Product extends AbstractBase {
86
90
  pickUpFromStoreShipping?: boolean;
87
91
  fastDelivery?: boolean;
88
92
  enabled?: boolean;
93
+ enabledHistory?: {
94
+ enabled: boolean;
95
+ updatedAt?: Date;
96
+ createdAt?: Date;
97
+ };
89
98
  sourceUrl?: string;
90
99
  request?: HttpRequest;
91
100
  updatedAt?: Date;
@@ -40,6 +40,7 @@ var UpdateReasonEnum;
40
40
  UpdateReasonEnum["MISSING_DATA"] = "missing_data";
41
41
  UpdateReasonEnum["FIX_DATA"] = "fix_data";
42
42
  UpdateReasonEnum["RE_LISTING"] = "re_listing";
43
+ UpdateReasonEnum["OUT_OF_STOCK"] = "out_of_stock";
43
44
  UpdateReasonEnum["CHILDREN_NEW_PRICE"] = "children_new_price";
44
45
  UpdateReasonEnum["CHILDREN_NEW_CONDITIONAL_PRICE"] = "children_conditional_new_price";
45
46
  UpdateReasonEnum["CHILDREN_NEW_NAME"] = "children_new_name";
@@ -48,6 +49,7 @@ var UpdateReasonEnum;
48
49
  UpdateReasonEnum["CHILDREN_MISSING_DATA"] = "children_missing_data";
49
50
  UpdateReasonEnum["CHILDREN_FIX_DATA"] = "children_fix_data";
50
51
  UpdateReasonEnum["CHILDREN_RE_LISTING"] = "children_re_listing";
52
+ UpdateReasonEnum["CHILDREN_OUT_OF_STOCK"] = "children_out_of_stock";
51
53
  })(UpdateReasonEnum = exports.UpdateReasonEnum || (exports.UpdateReasonEnum = {}));
52
54
  let Product = class Product extends abstract_base_1.AbstractBase {
53
55
  };
@@ -117,6 +119,10 @@ __decorate([
117
119
  typeorm_1.Column(),
118
120
  __metadata("design:type", Object)
119
121
  ], Product.prototype, "conditionalPrice", void 0);
122
+ __decorate([
123
+ typeorm_1.Column(),
124
+ __metadata("design:type", Array)
125
+ ], Product.prototype, "conditionalPriceHistory", void 0);
120
126
  __decorate([
121
127
  typeorm_1.Column(),
122
128
  __metadata("design:type", price_1.Price)
@@ -185,6 +191,10 @@ __decorate([
185
191
  typeorm_1.Column(),
186
192
  __metadata("design:type", Boolean)
187
193
  ], Product.prototype, "enabled", void 0);
194
+ __decorate([
195
+ typeorm_1.Column(),
196
+ __metadata("design:type", Object)
197
+ ], Product.prototype, "enabledHistory", void 0);
188
198
  __decorate([
189
199
  typeorm_1.Column(),
190
200
  __metadata("design:type", String)
@@ -1 +1 @@
1
- {"version":3,"file":"product.js","sourceRoot":"/","sources":["entities/product.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n Column,\n Entity, Index, Unique,\n} from 'typeorm';\nimport { IsNotEmpty } from 'class-validator';\nimport { AbstractBase } from './abstract-base';\nimport { Price } from './price';\nimport { PricesStats } from './prices-stats';\nimport { Keyword } from './keyword';\nimport { HttpRequest } from '../classes/http-request';\nimport { ImageTypeEnum } from '../enums/image-type.enum';\n\nexport enum CurrencyEnum {\n CLP = 'clp',\n CMR_PTS = 'cmr_pts',\n PARIS_PTS = 'paris_pts',\n RIPLEY_PTS = 'ripley_pts',\n GENERAL_POINTS = 'general_pts',\n BRL = 'brl',\n PEN = 'pen',\n ARS = 'ars',\n EUR = 'eur',\n USD = 'usd',\n}\n\nexport enum UpdateReasonEnum {\n TIME = 'time',\n NEW_PRICE = 'new_price',\n NEW_CONDITIONAL_PRICE = 'new_conditional_price',\n NEW_NAME = 'new_name',\n NEW_LISTING = 'new_listing',\n NEW_STOCK = 'new_stock',\n MISSING_DATA = 'missing_data',\n FIX_DATA = 'fix_data',\n RE_LISTING = 're_listing',\n\n CHILDREN_NEW_PRICE = 'children_new_price',\n CHILDREN_NEW_CONDITIONAL_PRICE = 'children_conditional_new_price',\n CHILDREN_NEW_NAME = 'children_new_name',\n CHILDREN_NEW_LISTING = 'children_new_listing',\n CHILDREN_NEW_STOCK = 'children_new_stock',\n CHILDREN_MISSING_DATA = 'children_missing_data',\n CHILDREN_FIX_DATA = 'children_fix_data',\n CHILDREN_RE_LISTING = 'children_re_listing',\n}\n\nexport interface ProductAttributes {\n stock?: number;\n\n // TODO: Add enum\n color?: string;\n\n // TODO: Add enum\n size?: string;\n\n [key: string]: any;\n}\n\nexport interface ConditionalPrice {\n minAmount?: number;\n price?:number;\n cardRequired?: boolean;\n createdAt?: Date;\n}\n\n@Entity({ name: 'products' })\n@Unique('store_ref_sku', ['storeRef', 'sku'])\nexport class Product extends AbstractBase {\n @Column()\n name: string;\n\n @Column()\n brandName?: string;\n\n @Column()\n normalizedBrandName?: string;\n\n @Column()\n modelName?: string;\n\n @Column()\n @IsNotEmpty()\n @Index()\n sku: string;\n\n @Column()\n internalId?: string;\n\n @Column()\n ean?: string;\n\n @Column()\n @IsNotEmpty()\n url: string;\n\n @Column()\n @IsNotEmpty()\n @Index()\n storeRef: string;\n\n @Column()\n storeName?: string;\n\n @Column()\n branchStoreName?: string;\n\n @Column()\n sellerName?: string;\n\n @Column()\n normalizedSellerName?: string;\n\n @Column()\n @IsNotEmpty()\n price?: Price;\n\n @Column()\n conditionalPrice?: ConditionalPrice;\n\n @Column()\n previousPrice?: Price;\n\n @Column()\n bestPrice?: Price;\n\n @Column()\n priceStats?: PricesStats;\n\n @Column()\n priceHistory?: Price[];\n\n @Column()\n rank?: number;\n\n @Column()\n image?: string;\n\n @Column()\n images?: { type: ImageTypeEnum, url: string }[]\n\n @Column()\n category?: string;\n\n @Column()\n categoryPath?: string;\n\n @Column()\n page?: number;\n\n @Column()\n userRank?: number;\n\n @Column()\n attributes?: ProductAttributes;\n\n @Column()\n stockHistory?: {\n stock: number,\n updatedAt: string,\n }[];\n\n @Column()\n homeDeliveryShipping?: boolean;\n\n @Column()\n pickUpFromStoreShipping?: boolean;\n\n @Column()\n fastDelivery?: boolean;\n\n @Column()\n enabled?: boolean;\n\n @Column()\n sourceUrl?: string;\n\n @Column()\n request? : HttpRequest;\n\n @Column()\n @Index()\n updatedAt?: Date;\n\n @Column()\n @Index()\n categoryKeywordNames?: string[];\n\n @Column()\n categoryKeywords?: Keyword[];\n\n @Column()\n @Index()\n processedPricesAt?: Date;\n\n @Column()\n isMarketplace?: boolean;\n\n @Column()\n addToCartLink?: string;\n\n @Column()\n currency?: CurrencyEnum;\n\n @Column()\n updateReason?: UpdateReasonEnum[];\n\n @Column()\n nameHistory?: {\n name: string,\n updatedAt: string,\n }[];\n\n @Column()\n parentProductIdRef?: string;\n\n @Column()\n parentProductSkuRef?: string;\n\n @Column()\n children?: Product[]\n}\n"]}
1
+ {"version":3,"file":"product.js","sourceRoot":"/","sources":["entities/product.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n Column,\n Entity, Index, Unique,\n} from 'typeorm';\nimport { IsNotEmpty } from 'class-validator';\nimport { AbstractBase } from './abstract-base';\nimport { Price } from './price';\nimport { PricesStats } from './prices-stats';\nimport { Keyword } from './keyword';\nimport { HttpRequest } from '../classes/http-request';\nimport { ImageTypeEnum } from '../enums/image-type.enum';\n\nexport enum CurrencyEnum {\n CLP = 'clp',\n CMR_PTS = 'cmr_pts',\n PARIS_PTS = 'paris_pts',\n RIPLEY_PTS = 'ripley_pts',\n GENERAL_POINTS = 'general_pts',\n BRL = 'brl',\n PEN = 'pen',\n ARS = 'ars',\n EUR = 'eur',\n USD = 'usd',\n}\n\nexport enum UpdateReasonEnum {\n TIME = 'time',\n NEW_PRICE = 'new_price',\n NEW_CONDITIONAL_PRICE = 'new_conditional_price',\n NEW_NAME = 'new_name',\n NEW_LISTING = 'new_listing',\n NEW_STOCK = 'new_stock',\n MISSING_DATA = 'missing_data',\n FIX_DATA = 'fix_data',\n RE_LISTING = 're_listing',\n OUT_OF_STOCK = 'out_of_stock',\n\n CHILDREN_NEW_PRICE = 'children_new_price',\n CHILDREN_NEW_CONDITIONAL_PRICE = 'children_conditional_new_price',\n CHILDREN_NEW_NAME = 'children_new_name',\n CHILDREN_NEW_LISTING = 'children_new_listing',\n CHILDREN_NEW_STOCK = 'children_new_stock',\n CHILDREN_MISSING_DATA = 'children_missing_data',\n CHILDREN_FIX_DATA = 'children_fix_data',\n CHILDREN_RE_LISTING = 'children_re_listing',\n CHILDREN_OUT_OF_STOCK = 'children_out_of_stock'\n}\n\nexport interface ProductAttributes {\n stock?: number;\n\n // TODO: Add enum\n color?: string;\n\n // TODO: Add enum\n size?: string;\n\n [key: string]: any;\n}\n\nexport interface ConditionalPrice {\n minAmount?: number;\n price?:number;\n cardRequired?: boolean;\n createdAt?: Date;\n updatedAt?: Date;\n}\n\n@Entity({ name: 'products' })\n@Unique('store_ref_sku', ['storeRef', 'sku'])\nexport class Product extends AbstractBase {\n @Column()\n name: string;\n\n @Column()\n brandName?: string;\n\n @Column()\n normalizedBrandName?: string;\n\n @Column()\n modelName?: string;\n\n @Column()\n @IsNotEmpty()\n @Index()\n sku: string;\n\n @Column()\n internalId?: string;\n\n @Column()\n ean?: string;\n\n @Column()\n @IsNotEmpty()\n url: string;\n\n @Column()\n @IsNotEmpty()\n @Index()\n storeRef: string;\n\n @Column()\n storeName?: string;\n\n @Column()\n branchStoreName?: string;\n\n @Column()\n sellerName?: string;\n\n @Column()\n normalizedSellerName?: string;\n\n @Column()\n @IsNotEmpty()\n price?: Price;\n\n @Column()\n conditionalPrice?: ConditionalPrice;\n\n @Column()\n conditionalPriceHistory?: ConditionalPrice[];\n\n @Column()\n previousPrice?: Price;\n\n @Column()\n bestPrice?: Price;\n\n @Column()\n priceStats?: PricesStats;\n\n @Column()\n priceHistory?: Price[];\n\n @Column()\n rank?: number;\n\n @Column()\n image?: string;\n\n @Column()\n images?: { type: ImageTypeEnum, url: string }[]\n\n @Column()\n category?: string;\n\n @Column()\n categoryPath?: string;\n\n @Column()\n page?: number;\n\n @Column()\n userRank?: number;\n\n @Column()\n attributes?: ProductAttributes;\n\n @Column()\n stockHistory?: {\n stock: number,\n updatedAt: string,\n }[];\n\n @Column()\n homeDeliveryShipping?: boolean;\n\n @Column()\n pickUpFromStoreShipping?: boolean;\n\n @Column()\n fastDelivery?: boolean;\n\n @Column()\n enabled?: boolean;\n\n @Column()\n enabledHistory?: {enabled: boolean, updatedAt?:Date, createdAt?: Date};\n\n @Column()\n sourceUrl?: string;\n\n @Column()\n request? : HttpRequest;\n\n @Column()\n @Index()\n updatedAt?: Date;\n\n @Column()\n @Index()\n categoryKeywordNames?: string[];\n\n @Column()\n categoryKeywords?: Keyword[];\n\n @Column()\n @Index()\n processedPricesAt?: Date;\n\n @Column()\n isMarketplace?: boolean;\n\n @Column()\n addToCartLink?: string;\n\n @Column()\n currency?: CurrencyEnum;\n\n @Column()\n updateReason?: UpdateReasonEnum[];\n\n @Column()\n nameHistory?: {\n name: string,\n updatedAt: string,\n }[];\n\n @Column()\n parentProductIdRef?: string;\n\n @Column()\n parentProductSkuRef?: string;\n\n @Column()\n children?: Product[]\n}\n"]}
@@ -4,6 +4,7 @@ import { AlertConditions } from './alert-conditions';
4
4
  export declare enum USER_ROLES {
5
5
  ADMIN = "admin",
6
6
  VIP = "vip",
7
+ RESELLER_GROUP = "reseller_group",
7
8
  NORMAL = "normal"
8
9
  }
9
10
  export declare class User extends AbstractBase {
@@ -17,6 +17,7 @@ var USER_ROLES;
17
17
  (function (USER_ROLES) {
18
18
  USER_ROLES["ADMIN"] = "admin";
19
19
  USER_ROLES["VIP"] = "vip";
20
+ USER_ROLES["RESELLER_GROUP"] = "reseller_group";
20
21
  USER_ROLES["NORMAL"] = "normal";
21
22
  })(USER_ROLES = exports.USER_ROLES || (exports.USER_ROLES = {}));
22
23
  let User = class User extends abstract_base_1.AbstractBase {
@@ -1 +1 @@
1
- {"version":3,"file":"user.js","sourceRoot":"/","sources":["entities/user.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAEiB;AACjB,qDAA6C;AAC7C,mDAA+C;AAI/C,IAAY,UAIX;AAJD,WAAY,UAAU;IAClB,6BAAe,CAAA;IACf,yBAAW,CAAA;IACX,+BAAiB,CAAA;AACrB,CAAC,EAJW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAIrB;AAID,IAAa,IAAI,GAAjB,MAAa,IAAK,SAAQ,4BAAY;IAAtC;;QA0BI,YAAO,GAAG,IAAI,CAAC;IAOnB,CAAC;CAAA,CAAA;AA/BG;IADC,gBAAM,CAAC,EAAE,OAAO,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;;mCACrB;AAIpB;IAFC,gBAAM,EAAE;IACR,4BAAU,EAAE;;sCACI;AAIjB;IAFC,gBAAM,EAAE;IACR,4BAAU,EAAE;;mCACC;AAGd;IADC,gBAAM,EAAE;;mCACM;AAGf;IADC,gBAAM,EAAE;;mCACM;AAIf;IAFC,gBAAM,EAAE;IACR,eAAK,EAAE;;4CACgB;AAGxB;IADC,gBAAM,EAAE;;sCACS;AAGlB;IADC,gBAAM,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;;qCACX;AAGf;IADC,gBAAM,EAAE;;0CACwB;AAGjC;IADC,gBAAM,EAAE;;8CACoB;AAhCpB,IAAI;IAFhB,gBAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IACzB,gBAAM,CAAC,CAAC,UAAU,CAAC,CAAC;GACR,IAAI,CAiChB;AAjCY,oBAAI","sourcesContent":["import {\n Column, Entity, Index, Unique,\n} from 'typeorm';\nimport { IsNotEmpty } from 'class-validator';\nimport { AbstractBase } from './abstract-base';\nimport { Product } from './product';\nimport { AlertConditions } from './alert-conditions';\n\nexport enum USER_ROLES {\n ADMIN = 'admin',\n VIP = 'vip',\n NORMAL = 'normal'\n}\n\n@Entity({ name: 'users' })\n@Unique(['username'])\nexport class User extends AbstractBase {\n @Column({ default: [USER_ROLES.NORMAL] })\n roles: USER_ROLES[];\n\n @Column()\n @IsNotEmpty()\n username: string;\n\n @Column()\n @IsNotEmpty()\n email: string;\n\n @Column()\n phone?: number;\n\n @Column()\n alias?: string;\n\n @Column()\n @Index()\n telegramChatId?: number;\n\n @Column()\n cloudRef?: string;\n\n @Column({ default: true })\n enabled = true;\n\n @Column()\n productAlert?: AlertConditions[];\n\n @Column()\n productWatchList?: Product[];\n}\n"]}
1
+ {"version":3,"file":"user.js","sourceRoot":"/","sources":["entities/user.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAEiB;AACjB,qDAA6C;AAC7C,mDAA+C;AAI/C,IAAY,UAKX;AALD,WAAY,UAAU;IAClB,6BAAe,CAAA;IACf,yBAAW,CAAA;IACX,+CAAiC,CAAA;IACjC,+BAAiB,CAAA;AACrB,CAAC,EALW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAKrB;AAID,IAAa,IAAI,GAAjB,MAAa,IAAK,SAAQ,4BAAY;IAAtC;;QA0BI,YAAO,GAAG,IAAI,CAAC;IAOnB,CAAC;CAAA,CAAA;AA/BG;IADC,gBAAM,CAAC,EAAE,OAAO,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;;mCACrB;AAIpB;IAFC,gBAAM,EAAE;IACR,4BAAU,EAAE;;sCACI;AAIjB;IAFC,gBAAM,EAAE;IACR,4BAAU,EAAE;;mCACC;AAGd;IADC,gBAAM,EAAE;;mCACM;AAGf;IADC,gBAAM,EAAE;;mCACM;AAIf;IAFC,gBAAM,EAAE;IACR,eAAK,EAAE;;4CACgB;AAGxB;IADC,gBAAM,EAAE;;sCACS;AAGlB;IADC,gBAAM,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;;qCACX;AAGf;IADC,gBAAM,EAAE;;0CACwB;AAGjC;IADC,gBAAM,EAAE;;8CACoB;AAhCpB,IAAI;IAFhB,gBAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IACzB,gBAAM,CAAC,CAAC,UAAU,CAAC,CAAC;GACR,IAAI,CAiChB;AAjCY,oBAAI","sourcesContent":["import {\n Column, Entity, Index, Unique,\n} from 'typeorm';\nimport { IsNotEmpty } from 'class-validator';\nimport { AbstractBase } from './abstract-base';\nimport { Product } from './product';\nimport { AlertConditions } from './alert-conditions';\n\nexport enum USER_ROLES {\n ADMIN = 'admin',\n VIP = 'vip',\n RESELLER_GROUP = 'reseller_group',\n NORMAL = 'normal'\n}\n\n@Entity({ name: 'users' })\n@Unique(['username'])\nexport class User extends AbstractBase {\n @Column({ default: [USER_ROLES.NORMAL] })\n roles: USER_ROLES[];\n\n @Column()\n @IsNotEmpty()\n username: string;\n\n @Column()\n @IsNotEmpty()\n email: string;\n\n @Column()\n phone?: number;\n\n @Column()\n alias?: string;\n\n @Column()\n @Index()\n telegramChatId?: number;\n\n @Column()\n cloudRef?: string;\n\n @Column({ default: true })\n enabled = true;\n\n @Column()\n productAlert?: AlertConditions[];\n\n @Column()\n productWatchList?: Product[];\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "store-scrapper-js-common",
3
- "version": "1.0.113",
3
+ "version": "1.0.116",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -33,6 +33,7 @@ export enum UpdateReasonEnum {
33
33
  MISSING_DATA = 'missing_data',
34
34
  FIX_DATA = 'fix_data',
35
35
  RE_LISTING = 're_listing',
36
+ OUT_OF_STOCK = 'out_of_stock',
36
37
 
37
38
  CHILDREN_NEW_PRICE = 'children_new_price',
38
39
  CHILDREN_NEW_CONDITIONAL_PRICE = 'children_conditional_new_price',
@@ -42,6 +43,7 @@ export enum UpdateReasonEnum {
42
43
  CHILDREN_MISSING_DATA = 'children_missing_data',
43
44
  CHILDREN_FIX_DATA = 'children_fix_data',
44
45
  CHILDREN_RE_LISTING = 'children_re_listing',
46
+ CHILDREN_OUT_OF_STOCK = 'children_out_of_stock'
45
47
  }
46
48
 
47
49
  export interface ProductAttributes {
@@ -61,6 +63,7 @@ export interface ConditionalPrice {
61
63
  price?:number;
62
64
  cardRequired?: boolean;
63
65
  createdAt?: Date;
66
+ updatedAt?: Date;
64
67
  }
65
68
 
66
69
  @Entity({ name: 'products' })
@@ -117,6 +120,9 @@ export class Product extends AbstractBase {
117
120
  @Column()
118
121
  conditionalPrice?: ConditionalPrice;
119
122
 
123
+ @Column()
124
+ conditionalPriceHistory?: ConditionalPrice[];
125
+
120
126
  @Column()
121
127
  previousPrice?: Price;
122
128
 
@@ -171,6 +177,9 @@ export class Product extends AbstractBase {
171
177
  @Column()
172
178
  enabled?: boolean;
173
179
 
180
+ @Column()
181
+ enabledHistory?: {enabled: boolean, updatedAt?:Date, createdAt?: Date};
182
+
174
183
  @Column()
175
184
  sourceUrl?: string;
176
185
 
@@ -9,6 +9,7 @@ import { AlertConditions } from './alert-conditions';
9
9
  export enum USER_ROLES {
10
10
  ADMIN = 'admin',
11
11
  VIP = 'vip',
12
+ RESELLER_GROUP = 'reseller_group',
12
13
  NORMAL = 'normal'
13
14
  }
14
15