store-scrapper-js-common 1.0.141 → 1.0.144

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.
@@ -0,0 +1,9 @@
1
+ export declare class ProxyConfigDto {
2
+ host: string;
3
+ port: number;
4
+ auth?: {
5
+ username: string;
6
+ password: string;
7
+ };
8
+ protocol?: string;
9
+ }
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ProxyConfigDto = void 0;
4
+ class ProxyConfigDto {
5
+ }
6
+ exports.ProxyConfigDto = ProxyConfigDto;
7
+ //# sourceMappingURL=proxy-config.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proxy-config.dto.js","sourceRoot":"/","sources":["dto/proxy-config.dto.ts"],"names":[],"mappings":";;;AAAA,MAAa,cAAc;CAW1B;AAXD,wCAWC","sourcesContent":["export class ProxyConfigDto {\n host: string;\n\n port: number;\n\n auth?: {\n username: string;\n password: string;\n };\n\n protocol?: string;\n}\n"]}
@@ -0,0 +1,8 @@
1
+ export declare class QueueConfigDto {
2
+ name?: string;
3
+ concurrency?: number;
4
+ rateLimiter?: {
5
+ max: number;
6
+ duration: number;
7
+ };
8
+ }
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.QueueConfigDto = void 0;
4
+ class QueueConfigDto {
5
+ }
6
+ exports.QueueConfigDto = QueueConfigDto;
7
+ //# sourceMappingURL=queue-config.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queue-config.dto.js","sourceRoot":"/","sources":["dto/queue-config.dto.ts"],"names":[],"mappings":";;;AAAA,MAAa,cAAc;CAW1B;AAXD,wCAWC","sourcesContent":["export class QueueConfigDto {\n name?: string;\n\n concurrency?: number;\n\n rateLimiter?: {\n /** Max numbers of jobs processed */\n max: number,\n /** Per duration in milliseconds */\n duration: number\n }\n}\n"]}
@@ -1,13 +1,19 @@
1
+ import { ProxyConfigDto } from './proxy-config.dto';
2
+ import { QueueConfigDto } from './queue-config.dto';
1
3
  export declare class StoreConfig {
2
4
  name: string;
3
5
  filterCategories?: string[];
4
6
  skipCategories?: string[];
5
7
  cacheMenu?: boolean;
8
+ cacheKey?: string;
9
+ cacheTTL?: number;
6
10
  headers?: {
7
11
  [key: string]: any;
8
12
  };
9
13
  includeProductsWithoutStock?: boolean;
10
14
  queue?: string;
11
15
  persistQueue?: string;
16
+ proxy?: ProxyConfigDto;
17
+ queueConfig?: QueueConfigDto;
12
18
  [key: string]: any;
13
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"store-config.dto.js","sourceRoot":"/","sources":["dto/store-config.dto.ts"],"names":[],"mappings":";;;AAAA,MAAa,WAAW;CAkBvB;AAlBD,kCAkBC","sourcesContent":["export class StoreConfig {\n name: string;\n\n filterCategories?: string[];\n\n skipCategories?: string[];\n\n cacheMenu?: boolean;\n\n headers?: {[key: string]: any};\n\n includeProductsWithoutStock?: boolean;\n\n queue?: string;\n\n persistQueue?: string;\n\n [key: string]: any\n}\n"]}
1
+ {"version":3,"file":"store-config.dto.js","sourceRoot":"/","sources":["dto/store-config.dto.ts"],"names":[],"mappings":";;;AAGA,MAAa,WAAW;CA0BvB;AA1BD,kCA0BC","sourcesContent":["import { ProxyConfigDto } from './proxy-config.dto';\nimport { QueueConfigDto } from './queue-config.dto';\n\nexport class StoreConfig {\n name: string;\n\n filterCategories?: string[];\n\n skipCategories?: string[];\n\n cacheMenu?: boolean;\n\n cacheKey?: string;\n\n cacheTTL?: number;\n\n headers?: {[key: string]: any};\n\n includeProductsWithoutStock?: boolean;\n\n queue?: string;\n\n persistQueue?: string;\n\n proxy?: ProxyConfigDto;\n\n queueConfig?: QueueConfigDto;\n\n [key: string]: any\n}\n"]}
@@ -1,4 +1,4 @@
1
- import { StoreQueueConfig, Store, CountryEnum, PriorityEnum } from './store';
1
+ import { Store, CountryEnum, PriorityEnum } from './store';
2
2
  import { Product, UpdateReasonEnum, CurrencyEnum, ProductAttributes, ConditionalPrice } from './product';
3
3
  import { Price, MeasurementUnitEnum } from './price';
4
4
  import { Category } from './category';
@@ -9,4 +9,4 @@ import { AlertConditions } from './alert-conditions';
9
9
  import { PricesStats } from './prices-stats';
10
10
  import { CategoryEntity } from './category-entity';
11
11
  export declare const Entities: (typeof Keyword | typeof Price | typeof Product | typeof Store | typeof User)[];
12
- export { Store, Product, Price, Category, CategoryEntity, AbstractBase, Keyword, CONDITION_FIELD_ENUM, CONDITION_SCOPE, CONDITION_ENUM, CATEGORY_ENUM, User, AlertConditions, StoreQueueConfig, CountryEnum, PriorityEnum, CurrencyEnum, UpdateReasonEnum, ConditionalPrice, ProductAttributes, MeasurementUnitEnum, PricesStats, };
12
+ export { Store, Product, Price, Category, CategoryEntity, AbstractBase, Keyword, CONDITION_FIELD_ENUM, CONDITION_SCOPE, CONDITION_ENUM, CATEGORY_ENUM, User, AlertConditions, CountryEnum, PriorityEnum, CurrencyEnum, UpdateReasonEnum, ConditionalPrice, ProductAttributes, MeasurementUnitEnum, PricesStats, };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"/","sources":["entities/index.ts"],"names":[],"mappings":";;;AAAA,mCAEiB;AAoBf,sFArBkB,aAAK,OAqBlB;AACmE,4FAtB/C,mBAAW,OAsB+C;AAAE,6FAtB/C,oBAAY,OAsB+C;AApBnG,uCAEmB;AAiBV,wFAlBP,iBAAO,OAkBO;AAEA,iGApBL,0BAAgB,OAoBK;AAA9B,6FApB2B,sBAAY,OAoB3B;AAlBd,mCAAqD;AAgBnC,sFAhBT,aAAK,OAgBS;AAEgD,oGAlBvD,2BAAmB,OAkBuD;AAjB1F,yCAAsC;AAeb,yFAfhB,mBAAQ,OAegB;AAdjC,mDAA+C;AAcI,6FAd1C,4BAAY,OAc0C;AAb/D,uCAEmB;AAW8C,wFAZ/D,iBAAO,OAY+D;AACtD,8FAbP,uBAAa,OAaO;AAA7B,+FAbwB,wBAAc,OAaxB;AAD0D,qGAZhC,8BAAoB,OAYgC;AAAE,gGAZhC,yBAAe,OAYgC;AAV/G,iCAA8B;AAWG,qFAXxB,WAAI,OAWwB;AAVrC,yDAAqD;AAUd,gGAV9B,kCAAe,OAU8B;AATtD,iDAA6C;AAU+C,4FAVnF,0BAAW,OAUmF;AATvG,uDAAmD;AAOhB,+FAP1B,gCAAc,OAO0B;AALpC,QAAA,QAAQ,GAAG;IACtB,aAAK,EAAE,iBAAO,EAAE,aAAK,EAAE,iBAAO,EAAE,WAAI;CACrC,CAAC","sourcesContent":["import {\n StoreQueueConfig, Store, CountryEnum, PriorityEnum,\n} from './store';\nimport {\n Product, UpdateReasonEnum, CurrencyEnum, ProductAttributes, ConditionalPrice,\n} from './product';\nimport { Price, MeasurementUnitEnum } from './price';\nimport { Category } from './category';\nimport { AbstractBase } from './abstract-base';\nimport {\n Keyword, CATEGORY_ENUM, CONDITION_ENUM, CONDITION_FIELD_ENUM, CONDITION_SCOPE,\n} from './keyword';\nimport { User } from './user';\nimport { AlertConditions } from './alert-conditions';\nimport { PricesStats } from './prices-stats';\nimport { CategoryEntity } from './category-entity';\n\nexport const Entities = [\n Store, Product, Price, Keyword, User,\n];\n\nexport {\n Store, Product, Price, Category, CategoryEntity, AbstractBase, Keyword, CONDITION_FIELD_ENUM, CONDITION_SCOPE,\n CONDITION_ENUM, CATEGORY_ENUM, User, AlertConditions, StoreQueueConfig, CountryEnum, PriorityEnum,\n CurrencyEnum, UpdateReasonEnum, ConditionalPrice, ProductAttributes, MeasurementUnitEnum, PricesStats,\n};\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"/","sources":["entities/index.ts"],"names":[],"mappings":";;;AAAA,mCAA2D;AAoBzD,sFApBO,aAAK,OAoBP;AACiD,4FArBxC,mBAAW,OAqBwC;AAAE,6FArBxC,oBAAY,OAqBwC;AApBjF,uCAEmB;AAiBV,wFAlBP,iBAAO,OAkBO;AAEA,iGApBL,0BAAgB,OAoBK;AAA9B,6FApB2B,sBAAY,OAoB3B;AAlBd,mCAAqD;AAgBnC,sFAhBT,aAAK,OAgBS;AAEgD,oGAlBvD,2BAAmB,OAkBuD;AAjB1F,yCAAsC;AAeb,yFAfhB,mBAAQ,OAegB;AAdjC,mDAA+C;AAcI,6FAd1C,4BAAY,OAc0C;AAb/D,uCAEmB;AAW8C,wFAZ/D,iBAAO,OAY+D;AACtD,8FAbP,uBAAa,OAaO;AAA7B,+FAbwB,wBAAc,OAaxB;AAD0D,qGAZhC,8BAAoB,OAYgC;AAAE,gGAZhC,yBAAe,OAYgC;AAV/G,iCAA8B;AAWG,qFAXxB,WAAI,OAWwB;AAVrC,yDAAqD;AAUd,gGAV9B,kCAAe,OAU8B;AATtD,iDAA6C;AAU+C,4FAVnF,0BAAW,OAUmF;AATvG,uDAAmD;AAOhB,+FAP1B,gCAAc,OAO0B;AALpC,QAAA,QAAQ,GAAG;IACtB,aAAK,EAAE,iBAAO,EAAE,aAAK,EAAE,iBAAO,EAAE,WAAI;CACrC,CAAC","sourcesContent":["import { Store, CountryEnum, PriorityEnum } from './store';\nimport {\n Product, UpdateReasonEnum, CurrencyEnum, ProductAttributes, ConditionalPrice,\n} from './product';\nimport { Price, MeasurementUnitEnum } from './price';\nimport { Category } from './category';\nimport { AbstractBase } from './abstract-base';\nimport {\n Keyword, CATEGORY_ENUM, CONDITION_ENUM, CONDITION_FIELD_ENUM, CONDITION_SCOPE,\n} from './keyword';\nimport { User } from './user';\nimport { AlertConditions } from './alert-conditions';\nimport { PricesStats } from './prices-stats';\nimport { CategoryEntity } from './category-entity';\n\nexport const Entities = [\n Store, Product, Price, Keyword, User,\n];\n\nexport {\n Store, Product, Price, Category, CategoryEntity, AbstractBase, Keyword, CONDITION_FIELD_ENUM, CONDITION_SCOPE,\n CONDITION_ENUM, CATEGORY_ENUM, User, AlertConditions, CountryEnum, PriorityEnum,\n CurrencyEnum, UpdateReasonEnum, ConditionalPrice, ProductAttributes, MeasurementUnitEnum, PricesStats,\n};\n"]}
@@ -1,15 +1,8 @@
1
1
  import { AbstractBase } from './abstract-base';
2
2
  import { CATEGORY_ENUM } from './keyword';
3
+ import { QueueConfigDto } from '../dto/queue-config.dto';
4
+ import { StoreConfig } from '../dto';
3
5
  import { CurrencyEnum } from './product';
4
- import { StoreConfig } from '../dto/store-config.dto';
5
- export interface StoreQueueConfig {
6
- name?: string;
7
- concurrency?: number;
8
- rateLimiter?: {
9
- max: number;
10
- duration: number;
11
- };
12
- }
13
6
  export declare enum PlatformEnum {
14
7
  VTEX = "vtex",
15
8
  CUSTOM_VTEX = "custom_vtex",
@@ -55,7 +48,7 @@ export declare class Store extends AbstractBase {
55
48
  enabled: boolean;
56
49
  queue: string;
57
50
  persistQueue: string;
58
- storeQueueConfig?: StoreQueueConfig[];
51
+ storeQueueConfig?: QueueConfigDto[];
59
52
  country?: CountryEnum | string;
60
53
  defaultCurrency?: CurrencyEnum | string;
61
54
  configs?: StoreConfig[];
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"/","sources":["entities/store.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAEiB;AACjB,qDAA6C;AAC7C,mDAA+C;AAgB/C,IAAY,YASX;AATD,WAAY,YAAY;IACpB,6BAAa,CAAA;IACb,2CAA2B,CAAA;IAC3B,qCAAqB,CAAA;IACrB,qCAAqB,CAAA;IACrB,yCAAyB,CAAA;IACzB,mCAAmB,CAAA;IACnB,mCAAmB,CAAA;IACnB,mCAAmB,CAAA;AACvB,CAAC,EATW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QASvB;AAED,IAAY,WAQX;AARD,WAAY,WAAW;IACnB,8BAAe,CAAA;IACf,sCAAuB,CAAA;IACvB,kCAAmB,CAAA;IACnB,4BAAa,CAAA;IACb,gCAAiB,CAAA;IACjB,0BAAW,CAAA;IACX,8BAAe,CAAA;AACnB,CAAC,EARW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAQtB;AAED,IAAY,YAiBX;AAjBD,WAAY,YAAY;IACpB,uCAAuB,CAAA;IACvB,6BAAa,CAAA;IACb,iCAAiB,CAAA;IACjB,2BAAW,CAAA;IAEX,yCAAyB,CAAA;IACzB,6CAA6B,CAAA;IAC7B,uCAAuB,CAAA;IAEvB,yCAAyB,CAAA;IACzB,6CAA6B,CAAA;IAC7B,uCAAuB,CAAA;IAEvB,6CAA6B,CAAA;IAC7B,iDAAiC,CAAA;IACjC,2CAA2B,CAAA;AAC/B,CAAC,EAjBW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAiBvB;AAID,IAAa,KAAK,GAAlB,MAAa,KAAM,SAAQ,4BAAY;IAAvC;;QA0BI,YAAO,GAAG,IAAI,CAAC;IAsBnB,CAAC;CAAA,CAAA;AA5CG;IAHC,gBAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC3B,eAAK,EAAE;IACP,4BAAU,EAAE;;mCACA;AAGb;IADC,gBAAM,EAAE;;0CACY;AAIrB;IAFC,gBAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC3B,4BAAU,EAAE;;kCACD;AAGZ;IADC,gBAAM,EAAE;;yCACoB;AAG7B;IADC,gBAAM,EAAE;;uCACwB;AAGjC;IADC,gBAAM,EAAE;;mCACI;AAGb;IADC,gBAAM,EAAE;;6CACe;AAGxB;IADC,gBAAM,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;sCAC5B;AAGf;IADC,gBAAM,EAAE;;oCACK;AAGd;IADC,gBAAM,EAAE;;2CACY;AAGrB;IADC,gBAAM,EAAE;;+CAC6B;AAGtC;IADC,gBAAM,EAAE;;sCACsB;AAG/B;IADC,gBAAM,EAAE;;8CAC+B;AAGxC;IADC,gBAAM,EAAE;;sCACe;AAGxB;IADC,gBAAM,EAAE;;wCACkB;AA/ClB,KAAK;IAFjB,gBAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC1B,gBAAM,CAAC,CAAC,KAAK,CAAC,CAAC;GACH,KAAK,CAgDjB;AAhDY,sBAAK","sourcesContent":["import {\n Column, Entity, Index, Unique,\n} from 'typeorm';\nimport { IsNotEmpty } from 'class-validator';\nimport { AbstractBase } from './abstract-base';\nimport { CATEGORY_ENUM } from './keyword';\nimport { CurrencyEnum } from './product';\nimport { StoreConfig } from '../dto/store-config.dto';\n\nexport interface StoreQueueConfig {\n name?: string;\n concurrency?: number;\n rateLimiter?: {\n /** Max numbers of jobs processed */\n max: number,\n /** Per duration in milliseconds */\n duration: number\n }\n}\n\nexport enum PlatformEnum {\n VTEX = 'vtex',\n CUSTOM_VTEX = 'custom_vtex',\n COMMERCE = 'commerce',\n MYBCAPPS = 'mybcapps',\n JUMPSELLER = 'jumpseller',\n MAGENTO = 'magento',\n SHOPIFY = 'shopify',\n ALGOLIA = 'algolia',\n}\n\nexport enum CountryEnum {\n CHILE = 'chile',\n ARGENTINA = 'argentina',\n URUGUAY = 'uruguay',\n PERU = 'peru',\n BRAZIL = 'brazil',\n USA = 'usa',\n SPAIN = 'spain',\n}\n\nexport enum PriorityEnum {\n VERY_HIGH = 'very_high',\n HIGH = 'high',\n MEDIUM = 'medium',\n LOW = 'low',\n\n SHOES_HIGH = 'shoes_high',\n SHOES_MEDIUM = 'shoes_medium',\n SHOES_LOW = 'shoes_low',\n\n TECNO_HIGH = 'tecno_high',\n TECNO_MEDIUM = 'tecno_medium',\n TECNO_LOW = 'tecno_low',\n\n ELECTRO_HIGH = 'electro_high',\n ELECTRO_MEDIUM = 'electro_medium',\n ELECTRO_LOW = 'electro_low',\n}\n\n@Entity({ name: 'stores' })\n@Unique(['url'])\nexport class Store extends AbstractBase {\n @Column({ nullable: false })\n @Index()\n @IsNotEmpty()\n name: string;\n\n @Column()\n displayName?: string;\n\n @Column({ nullable: false })\n @IsNotEmpty()\n url: string;\n\n @Column()\n categories?: CATEGORY_ENUM[];\n\n @Column()\n priority?: PriorityEnum | string;\n\n @Column()\n type: string;\n\n @Column()\n parentStoreRef?: string;\n\n @Column({ default: true, type: 'boolean' })\n enabled = true;\n\n @Column()\n queue: string;\n\n @Column()\n persistQueue: string;\n\n @Column()\n storeQueueConfig?: StoreQueueConfig[];\n\n @Column()\n country?: CountryEnum | string;\n\n @Column()\n defaultCurrency?: CurrencyEnum | string;\n\n @Column()\n configs?: StoreConfig[];\n\n @Column()\n platforms?: PlatformEnum[];\n}\n"]}
1
+ {"version":3,"file":"store.js","sourceRoot":"/","sources":["entities/store.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAEiB;AACjB,qDAA6C;AAC7C,mDAA+C;AAM/C,IAAY,YASX;AATD,WAAY,YAAY;IACpB,6BAAa,CAAA;IACb,2CAA2B,CAAA;IAC3B,qCAAqB,CAAA;IACrB,qCAAqB,CAAA;IACrB,yCAAyB,CAAA;IACzB,mCAAmB,CAAA;IACnB,mCAAmB,CAAA;IACnB,mCAAmB,CAAA;AACvB,CAAC,EATW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QASvB;AAED,IAAY,WAQX;AARD,WAAY,WAAW;IACnB,8BAAe,CAAA;IACf,sCAAuB,CAAA;IACvB,kCAAmB,CAAA;IACnB,4BAAa,CAAA;IACb,gCAAiB,CAAA;IACjB,0BAAW,CAAA;IACX,8BAAe,CAAA;AACnB,CAAC,EARW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAQtB;AAED,IAAY,YAiBX;AAjBD,WAAY,YAAY;IACpB,uCAAuB,CAAA;IACvB,6BAAa,CAAA;IACb,iCAAiB,CAAA;IACjB,2BAAW,CAAA;IAEX,yCAAyB,CAAA;IACzB,6CAA6B,CAAA;IAC7B,uCAAuB,CAAA;IAEvB,yCAAyB,CAAA;IACzB,6CAA6B,CAAA;IAC7B,uCAAuB,CAAA;IAEvB,6CAA6B,CAAA;IAC7B,iDAAiC,CAAA;IACjC,2CAA2B,CAAA;AAC/B,CAAC,EAjBW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAiBvB;AAID,IAAa,KAAK,GAAlB,MAAa,KAAM,SAAQ,4BAAY;IAAvC;;QA0BI,YAAO,GAAG,IAAI,CAAC;IAsBnB,CAAC;CAAA,CAAA;AA5CG;IAHC,gBAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC3B,eAAK,EAAE;IACP,4BAAU,EAAE;;mCACA;AAGb;IADC,gBAAM,EAAE;;0CACY;AAIrB;IAFC,gBAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC3B,4BAAU,EAAE;;kCACD;AAGZ;IADC,gBAAM,EAAE;;yCACoB;AAG7B;IADC,gBAAM,EAAE;;uCACwB;AAGjC;IADC,gBAAM,EAAE;;mCACI;AAGb;IADC,gBAAM,EAAE;;6CACe;AAGxB;IADC,gBAAM,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;sCAC5B;AAGf;IADC,gBAAM,EAAE;;oCACK;AAGd;IADC,gBAAM,EAAE;;2CACY;AAGrB;IADC,gBAAM,EAAE;;+CAC2B;AAGpC;IADC,gBAAM,EAAE;;sCACsB;AAG/B;IADC,gBAAM,EAAE;;8CAC+B;AAGxC;IADC,gBAAM,EAAE;;sCACe;AAGxB;IADC,gBAAM,EAAE;;wCACkB;AA/ClB,KAAK;IAFjB,gBAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC1B,gBAAM,CAAC,CAAC,KAAK,CAAC,CAAC;GACH,KAAK,CAgDjB;AAhDY,sBAAK","sourcesContent":["import {\n Column, Entity, Index, Unique,\n} from 'typeorm';\nimport { IsNotEmpty } from 'class-validator';\nimport { AbstractBase } from './abstract-base';\nimport { CATEGORY_ENUM } from './keyword';\nimport { QueueConfigDto } from '../dto/queue-config.dto';\nimport { StoreConfig } from '../dto';\nimport { CurrencyEnum } from './product';\n\nexport enum PlatformEnum {\n VTEX = 'vtex',\n CUSTOM_VTEX = 'custom_vtex',\n COMMERCE = 'commerce',\n MYBCAPPS = 'mybcapps',\n JUMPSELLER = 'jumpseller',\n MAGENTO = 'magento',\n SHOPIFY = 'shopify',\n ALGOLIA = 'algolia',\n}\n\nexport enum CountryEnum {\n CHILE = 'chile',\n ARGENTINA = 'argentina',\n URUGUAY = 'uruguay',\n PERU = 'peru',\n BRAZIL = 'brazil',\n USA = 'usa',\n SPAIN = 'spain',\n}\n\nexport enum PriorityEnum {\n VERY_HIGH = 'very_high',\n HIGH = 'high',\n MEDIUM = 'medium',\n LOW = 'low',\n\n SHOES_HIGH = 'shoes_high',\n SHOES_MEDIUM = 'shoes_medium',\n SHOES_LOW = 'shoes_low',\n\n TECNO_HIGH = 'tecno_high',\n TECNO_MEDIUM = 'tecno_medium',\n TECNO_LOW = 'tecno_low',\n\n ELECTRO_HIGH = 'electro_high',\n ELECTRO_MEDIUM = 'electro_medium',\n ELECTRO_LOW = 'electro_low',\n}\n\n@Entity({ name: 'stores' })\n@Unique(['url'])\nexport class Store extends AbstractBase {\n @Column({ nullable: false })\n @Index()\n @IsNotEmpty()\n name: string;\n\n @Column()\n displayName?: string;\n\n @Column({ nullable: false })\n @IsNotEmpty()\n url: string;\n\n @Column()\n categories?: CATEGORY_ENUM[];\n\n @Column()\n priority?: PriorityEnum | string;\n\n @Column()\n type: string;\n\n @Column()\n parentStoreRef?: string;\n\n @Column({ default: true, type: 'boolean' })\n enabled = true;\n\n @Column()\n queue: string;\n\n @Column()\n persistQueue: string;\n\n @Column()\n storeQueueConfig?: QueueConfigDto[];\n\n @Column()\n country?: CountryEnum | string;\n\n @Column()\n defaultCurrency?: CurrencyEnum | string;\n\n @Column()\n configs?: StoreConfig[];\n\n @Column()\n platforms?: PlatformEnum[];\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "store-scrapper-js-common",
3
- "version": "1.0.141",
3
+ "version": "1.0.144",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -0,0 +1,12 @@
1
+ export class ProxyConfigDto {
2
+ host: string;
3
+
4
+ port: number;
5
+
6
+ auth?: {
7
+ username: string;
8
+ password: string;
9
+ };
10
+
11
+ protocol?: string;
12
+ }
@@ -0,0 +1,12 @@
1
+ export class QueueConfigDto {
2
+ name?: string;
3
+
4
+ concurrency?: number;
5
+
6
+ rateLimiter?: {
7
+ /** Max numbers of jobs processed */
8
+ max: number,
9
+ /** Per duration in milliseconds */
10
+ duration: number
11
+ }
12
+ }
@@ -1,3 +1,6 @@
1
+ import { ProxyConfigDto } from './proxy-config.dto';
2
+ import { QueueConfigDto } from './queue-config.dto';
3
+
1
4
  export class StoreConfig {
2
5
  name: string;
3
6
 
@@ -7,6 +10,10 @@ export class StoreConfig {
7
10
 
8
11
  cacheMenu?: boolean;
9
12
 
13
+ cacheKey?: string;
14
+
15
+ cacheTTL?: number;
16
+
10
17
  headers?: {[key: string]: any};
11
18
 
12
19
  includeProductsWithoutStock?: boolean;
@@ -15,5 +22,9 @@ export class StoreConfig {
15
22
 
16
23
  persistQueue?: string;
17
24
 
25
+ proxy?: ProxyConfigDto;
26
+
27
+ queueConfig?: QueueConfigDto;
28
+
18
29
  [key: string]: any
19
30
  }
@@ -1,6 +1,4 @@
1
- import {
2
- StoreQueueConfig, Store, CountryEnum, PriorityEnum,
3
- } from './store';
1
+ import { Store, CountryEnum, PriorityEnum } from './store';
4
2
  import {
5
3
  Product, UpdateReasonEnum, CurrencyEnum, ProductAttributes, ConditionalPrice,
6
4
  } from './product';
@@ -21,6 +19,6 @@ export const Entities = [
21
19
 
22
20
  export {
23
21
  Store, Product, Price, Category, CategoryEntity, AbstractBase, Keyword, CONDITION_FIELD_ENUM, CONDITION_SCOPE,
24
- CONDITION_ENUM, CATEGORY_ENUM, User, AlertConditions, StoreQueueConfig, CountryEnum, PriorityEnum,
22
+ CONDITION_ENUM, CATEGORY_ENUM, User, AlertConditions, CountryEnum, PriorityEnum,
25
23
  CurrencyEnum, UpdateReasonEnum, ConditionalPrice, ProductAttributes, MeasurementUnitEnum, PricesStats,
26
24
  };
@@ -4,19 +4,9 @@ import {
4
4
  import { IsNotEmpty } from 'class-validator';
5
5
  import { AbstractBase } from './abstract-base';
6
6
  import { CATEGORY_ENUM } from './keyword';
7
+ import { QueueConfigDto } from '../dto/queue-config.dto';
8
+ import { StoreConfig } from '../dto';
7
9
  import { CurrencyEnum } from './product';
8
- import { StoreConfig } from '../dto/store-config.dto';
9
-
10
- export interface StoreQueueConfig {
11
- name?: string;
12
- concurrency?: number;
13
- rateLimiter?: {
14
- /** Max numbers of jobs processed */
15
- max: number,
16
- /** Per duration in milliseconds */
17
- duration: number
18
- }
19
- }
20
10
 
21
11
  export enum PlatformEnum {
22
12
  VTEX = 'vtex',
@@ -95,7 +85,7 @@ export class Store extends AbstractBase {
95
85
  persistQueue: string;
96
86
 
97
87
  @Column()
98
- storeQueueConfig?: StoreQueueConfig[];
88
+ storeQueueConfig?: QueueConfigDto[];
99
89
 
100
90
  @Column()
101
91
  country?: CountryEnum | string;