@infrab4a/connect 4.9.7-beta.10 → 4.9.7-beta.11

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/index.cjs.js CHANGED
@@ -84,7 +84,7 @@ class CategoryBase extends BaseModel {
84
84
  return this.metadata.find((metadata) => metadata.shop === exports.Shops.MENSMARKET);
85
85
  }
86
86
  getMostRelevantByShop(shop) {
87
- return this.mostRelevant[shop];
87
+ return this.mostRelevant && this.mostRelevant[shop] ? this.mostRelevant[shop] : [];
88
88
  }
89
89
  }
90
90
  tslib.__decorate([
@@ -286,6 +286,17 @@ class CampaignHashtag extends BaseModel {
286
286
  }
287
287
  }
288
288
 
289
+ class BeautyProfile extends BaseModel {
290
+ toPlain() {
291
+ const plain = super.toPlain();
292
+ delete plain.id;
293
+ return plain;
294
+ }
295
+ static get identifiersFields() {
296
+ return ['id', 'userId'];
297
+ }
298
+ }
299
+
289
300
  exports.AccessoryImportances = void 0;
290
301
  (function (AccessoryImportances) {
291
302
  AccessoryImportances["NOT_INTERESTED"] = "N\u00E3o tenho interesse";
@@ -462,6 +473,13 @@ exports.OfficePosition = void 0;
462
473
  OfficePosition["Director"] = "Diretor";
463
474
  })(exports.OfficePosition || (exports.OfficePosition = {}));
464
475
 
476
+ exports.PersonTypes = void 0;
477
+ (function (PersonTypes) {
478
+ PersonTypes["GLAMGIRL"] = "glamgirl";
479
+ PersonTypes["BFLU"] = "bflu";
480
+ PersonTypes["NONE"] = "none";
481
+ })(exports.PersonTypes || (exports.PersonTypes = {}));
482
+
465
483
  exports.ProductSpents = void 0;
466
484
  (function (ProductSpents) {
467
485
  ProductSpents["UNTIL_50"] = "At\u00E9 R$50";
@@ -482,6 +500,12 @@ exports.UserType = void 0;
482
500
  UserType["Influencer"] = "Influencer";
483
501
  })(exports.UserType || (exports.UserType = {}));
484
502
 
503
+ class Lead extends BaseModel {
504
+ static get identifiersFields() {
505
+ return ['id'];
506
+ }
507
+ }
508
+
485
509
  class Edition extends BaseModel {
486
510
  static get identifiersFields() {
487
511
  return ['id', 'subscriptionId'];
@@ -1880,17 +1904,6 @@ class SubscriptionPlan extends BaseModel {
1880
1904
  }
1881
1905
  }
1882
1906
 
1883
- class BeautyProfile extends BaseModel {
1884
- toPlain() {
1885
- const plain = super.toPlain();
1886
- delete plain.id;
1887
- return plain;
1888
- }
1889
- static get identifiersFields() {
1890
- return ['id', 'userId'];
1891
- }
1892
- }
1893
-
1894
1907
  class User extends BaseModel {
1895
1908
  static toInstance(data) {
1896
1909
  const instance = super.toInstance(data);
@@ -2004,12 +2017,6 @@ class UserPaymentMethod extends BaseModel {
2004
2017
  }
2005
2018
  }
2006
2019
 
2007
- class Lead extends BaseModel {
2008
- static get identifiersFields() {
2009
- return ['id'];
2010
- }
2011
- }
2012
-
2013
2020
  class UnauthorizedError extends tsCustomError.CustomError {
2014
2021
  constructor(message) {
2015
2022
  super(message);
@@ -4275,7 +4282,7 @@ const withHasuraGraphQL = (MixinBase) => {
4275
4282
  const response = await axios__default["default"](request);
4276
4283
  if (!lodash.isNil(response.data.errors)) {
4277
4284
  this.logger.error({ req: request, res: response.data.errors });
4278
- throw new Error(response.data.errors);
4285
+ throw new Error(JSON.stringify(response.data.errors));
4279
4286
  }
4280
4287
  this.logger.log({ req: request, res: response.data });
4281
4288
  return response.data.data;
@@ -4835,8 +4842,11 @@ class CategoryHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGr
4835
4842
  this.categoryFilterRepository = categoryFilterRepository;
4836
4843
  }
4837
4844
  async create(params) {
4838
- const { metadata } = params, data = tslib.__rest(params, ["metadata"]);
4839
- return super.create(Object.assign(Object.assign({}, data), { isWishlist: false, metadata: metadata || [{ shop: null, description: null, title: null }] }));
4845
+ const { mostRelevant, metadata } = params, data = tslib.__rest(params, ["mostRelevant", "metadata"]);
4846
+ return super.create(Object.assign(Object.assign({}, data), { isWishlist: false, metadata: metadata || [{ shop: null, description: null, title: null }], mostRelevant: mostRelevant || {
4847
+ [exports.Shops.GLAMSHOP]: null,
4848
+ [exports.Shops.MENSMARKET]: null,
4849
+ } }));
4840
4850
  }
4841
4851
  async get(identifiers) {
4842
4852
  var _a;
@@ -5889,24 +5899,33 @@ class ProductStockNotificationHasuraGraphQLRepository extends withCrudHasuraGrap
5889
5899
  email,
5890
5900
  });
5891
5901
  }
5892
- async getNotificationsReport({ ean, sku, name, category, reference, emailsCount, }) {
5893
- const query = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (ean && { ean: { _eq: ean } })), (sku && { sku: { _eq: sku } })), (name && { name: { _iregex: name } })), (category && { category: { _iregex: category } })), (reference && { category_reference: { _eq: reference } })), (emailsCount && { emails_registered: { _eq: emailsCount } }));
5894
- const { report_stock_notification } = await this.query('report_stock_notification', ['ean', 'sku', 'name', 'stock', 'category', 'category_reference', 'emails_registered'], {
5895
- where: {
5902
+ async getNotificationsReport(params, orderBy, pagination) {
5903
+ const query = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (params.ean && { ean: { _eq: params.ean } })), (params.sku && { sku: { _eq: params.sku } })), (params.name && { name: { _iregex: params.name } })), (params.category && { category: { _iregex: params.category } })), (params.reference && { category_reference: { _eq: params.reference } })), (params.emailsCount && { emails_registered: { _eq: params.emailsCount } }));
5904
+ const orderByField = {
5905
+ [orderBy.field]: orderBy.direction,
5906
+ };
5907
+ const limit = Object.assign({}, ((pagination === null || pagination === void 0 ? void 0 : pagination.limit) && {
5908
+ limit: {
5909
+ value: pagination === null || pagination === void 0 ? void 0 : pagination.limit,
5910
+ },
5911
+ }));
5912
+ const offset = Object.assign({}, ((pagination === null || pagination === void 0 ? void 0 : pagination.offset) && {
5913
+ offset: {
5914
+ value: pagination === null || pagination === void 0 ? void 0 : pagination.offset,
5915
+ },
5916
+ }));
5917
+ const { report_stock_notification } = await this.query('report_stock_notification', ['product_id', 'ean', 'sku', 'name', 'stock', 'category_id', 'category', 'reference', 'emails_registered'], Object.assign(Object.assign({ where: {
5896
5918
  type: 'report_stock_notification_bool_exp',
5897
5919
  value: query,
5898
5920
  required: true,
5899
- },
5900
- });
5921
+ }, order_by: {
5922
+ type: '[report_stock_notification_order_by]',
5923
+ value: orderByField,
5924
+ required: true,
5925
+ } }, limit), offset));
5901
5926
  return report_stock_notification;
5902
5927
  }
5903
5928
  }
5904
- tslib.__decorate([
5905
- Log(),
5906
- tslib.__metadata("design:type", Function),
5907
- tslib.__metadata("design:paramtypes", [Object]),
5908
- tslib.__metadata("design:returntype", Promise)
5909
- ], ProductStockNotificationHasuraGraphQLRepository.prototype, "getNotificationsReport", null);
5910
5929
 
5911
5930
  class VariantHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGraphQL(Base)) {
5912
5931
  constructor({ endpoint, authOptions, interceptors, }) {
@@ -6014,11 +6033,14 @@ class VariantHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGra
6014
6033
  }
6015
6034
  }
6016
6035
 
6036
+ class WishlistHasuraGraphQL extends Wishlist {
6037
+ }
6038
+
6017
6039
  class WishlistHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGraphQL(Base)) {
6018
6040
  constructor({ endpoint, authOptions, interceptors, }, categoryFilterRepository) {
6019
6041
  super({
6020
6042
  tableName: 'category',
6021
- model: Wishlist,
6043
+ model: WishlistHasuraGraphQL,
6022
6044
  endpoint,
6023
6045
  authOptions,
6024
6046
  interceptors,
@@ -6099,8 +6121,11 @@ class WishlistHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGr
6099
6121
  { personId: { columnName: 'person_id' } },
6100
6122
  { personName: { columnName: 'person_name' } },
6101
6123
  { personPhoto: { columnName: 'person_photo' } },
6124
+ { personType: { columnName: 'person_type' } },
6125
+ { personIsSubscriber: { columnName: 'person_is_subscriber' } },
6102
6126
  'theme',
6103
6127
  { bannerUrl: { columnName: 'banner_url' } },
6128
+ { personHasPhoto: { columnName: 'person_has_photo' } },
6104
6129
  ],
6105
6130
  });
6106
6131
  this.categoryFilterRepository = categoryFilterRepository;
@@ -6163,7 +6188,7 @@ class WishlistHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGr
6163
6188
  throw new NotFoundError(`Wishlists from person ${personId} not found`);
6164
6189
  return data;
6165
6190
  }
6166
- getCategoryBySlug(slug, _shop) {
6191
+ async getCategoryBySlug(slug, _shop) {
6167
6192
  return this.getWishlistBySlug(slug);
6168
6193
  }
6169
6194
  async getCategoryByShop(shop) {
@@ -6181,6 +6206,13 @@ class WishlistHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGr
6181
6206
  });
6182
6207
  return data;
6183
6208
  }
6209
+ async findBfluOrGlamgirlWishlists(params, shops) {
6210
+ var _a, _b;
6211
+ return this.find(Object.assign(Object.assign({}, params), { filters: Object.assign(Object.assign({}, params.filters), { published: true, shops: { operator: exports.Where.LIKE, value: shops }, personType: (_b = (_a = params.filters) === null || _a === void 0 ? void 0 : _a.personType) !== null && _b !== void 0 ? _b : {
6212
+ operator: exports.Where.IN,
6213
+ value: [exports.PersonTypes.BFLU, exports.PersonTypes.GLAMGIRL],
6214
+ } }), orderBy: Object.assign({ personHasPhoto: 'desc' }, lodash.omit(params.orderBy, ['personHasPhoto'])) }));
6215
+ }
6184
6216
  getCategoriesForHome(categoryIds, limit, gender) {
6185
6217
  return;
6186
6218
  }
@@ -6285,6 +6317,12 @@ tslib.__decorate([
6285
6317
  tslib.__metadata("design:paramtypes", [String]),
6286
6318
  tslib.__metadata("design:returntype", Promise)
6287
6319
  ], WishlistHasuraGraphQLRepository.prototype, "getCategoryByShop", null);
6320
+ tslib.__decorate([
6321
+ Log(),
6322
+ tslib.__metadata("design:type", Function),
6323
+ tslib.__metadata("design:paramtypes", [Object, Array]),
6324
+ tslib.__metadata("design:returntype", Promise)
6325
+ ], WishlistHasuraGraphQLRepository.prototype, "findBfluOrGlamgirlWishlists", null);
6288
6326
 
6289
6327
  Object.defineProperty(exports, 'add', {
6290
6328
  enumerable: true,
package/index.esm.js CHANGED
@@ -78,7 +78,7 @@ class CategoryBase extends BaseModel {
78
78
  return this.metadata.find((metadata) => metadata.shop === Shops.MENSMARKET);
79
79
  }
80
80
  getMostRelevantByShop(shop) {
81
- return this.mostRelevant[shop];
81
+ return this.mostRelevant && this.mostRelevant[shop] ? this.mostRelevant[shop] : [];
82
82
  }
83
83
  }
84
84
  __decorate([
@@ -280,6 +280,17 @@ class CampaignHashtag extends BaseModel {
280
280
  }
281
281
  }
282
282
 
283
+ class BeautyProfile extends BaseModel {
284
+ toPlain() {
285
+ const plain = super.toPlain();
286
+ delete plain.id;
287
+ return plain;
288
+ }
289
+ static get identifiersFields() {
290
+ return ['id', 'userId'];
291
+ }
292
+ }
293
+
283
294
  var AccessoryImportances;
284
295
  (function (AccessoryImportances) {
285
296
  AccessoryImportances["NOT_INTERESTED"] = "N\u00E3o tenho interesse";
@@ -456,6 +467,13 @@ var OfficePosition;
456
467
  OfficePosition["Director"] = "Diretor";
457
468
  })(OfficePosition || (OfficePosition = {}));
458
469
 
470
+ var PersonTypes;
471
+ (function (PersonTypes) {
472
+ PersonTypes["GLAMGIRL"] = "glamgirl";
473
+ PersonTypes["BFLU"] = "bflu";
474
+ PersonTypes["NONE"] = "none";
475
+ })(PersonTypes || (PersonTypes = {}));
476
+
459
477
  var ProductSpents;
460
478
  (function (ProductSpents) {
461
479
  ProductSpents["UNTIL_50"] = "At\u00E9 R$50";
@@ -476,6 +494,12 @@ var UserType;
476
494
  UserType["Influencer"] = "Influencer";
477
495
  })(UserType || (UserType = {}));
478
496
 
497
+ class Lead extends BaseModel {
498
+ static get identifiersFields() {
499
+ return ['id'];
500
+ }
501
+ }
502
+
479
503
  class Edition extends BaseModel {
480
504
  static get identifiersFields() {
481
505
  return ['id', 'subscriptionId'];
@@ -1874,17 +1898,6 @@ class SubscriptionPlan extends BaseModel {
1874
1898
  }
1875
1899
  }
1876
1900
 
1877
- class BeautyProfile extends BaseModel {
1878
- toPlain() {
1879
- const plain = super.toPlain();
1880
- delete plain.id;
1881
- return plain;
1882
- }
1883
- static get identifiersFields() {
1884
- return ['id', 'userId'];
1885
- }
1886
- }
1887
-
1888
1901
  class User extends BaseModel {
1889
1902
  static toInstance(data) {
1890
1903
  const instance = super.toInstance(data);
@@ -1998,12 +2011,6 @@ class UserPaymentMethod extends BaseModel {
1998
2011
  }
1999
2012
  }
2000
2013
 
2001
- class Lead extends BaseModel {
2002
- static get identifiersFields() {
2003
- return ['id'];
2004
- }
2005
- }
2006
-
2007
2014
  class UnauthorizedError extends CustomError {
2008
2015
  constructor(message) {
2009
2016
  super(message);
@@ -4269,7 +4276,7 @@ const withHasuraGraphQL = (MixinBase) => {
4269
4276
  const response = await axios(request);
4270
4277
  if (!isNil(response.data.errors)) {
4271
4278
  this.logger.error({ req: request, res: response.data.errors });
4272
- throw new Error(response.data.errors);
4279
+ throw new Error(JSON.stringify(response.data.errors));
4273
4280
  }
4274
4281
  this.logger.log({ req: request, res: response.data });
4275
4282
  return response.data.data;
@@ -4829,8 +4836,11 @@ class CategoryHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGr
4829
4836
  this.categoryFilterRepository = categoryFilterRepository;
4830
4837
  }
4831
4838
  async create(params) {
4832
- const { metadata } = params, data = __rest(params, ["metadata"]);
4833
- return super.create(Object.assign(Object.assign({}, data), { isWishlist: false, metadata: metadata || [{ shop: null, description: null, title: null }] }));
4839
+ const { mostRelevant, metadata } = params, data = __rest(params, ["mostRelevant", "metadata"]);
4840
+ return super.create(Object.assign(Object.assign({}, data), { isWishlist: false, metadata: metadata || [{ shop: null, description: null, title: null }], mostRelevant: mostRelevant || {
4841
+ [Shops.GLAMSHOP]: null,
4842
+ [Shops.MENSMARKET]: null,
4843
+ } }));
4834
4844
  }
4835
4845
  async get(identifiers) {
4836
4846
  var _a;
@@ -5883,24 +5893,33 @@ class ProductStockNotificationHasuraGraphQLRepository extends withCrudHasuraGrap
5883
5893
  email,
5884
5894
  });
5885
5895
  }
5886
- async getNotificationsReport({ ean, sku, name, category, reference, emailsCount, }) {
5887
- const query = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (ean && { ean: { _eq: ean } })), (sku && { sku: { _eq: sku } })), (name && { name: { _iregex: name } })), (category && { category: { _iregex: category } })), (reference && { category_reference: { _eq: reference } })), (emailsCount && { emails_registered: { _eq: emailsCount } }));
5888
- const { report_stock_notification } = await this.query('report_stock_notification', ['ean', 'sku', 'name', 'stock', 'category', 'category_reference', 'emails_registered'], {
5889
- where: {
5896
+ async getNotificationsReport(params, orderBy, pagination) {
5897
+ const query = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (params.ean && { ean: { _eq: params.ean } })), (params.sku && { sku: { _eq: params.sku } })), (params.name && { name: { _iregex: params.name } })), (params.category && { category: { _iregex: params.category } })), (params.reference && { category_reference: { _eq: params.reference } })), (params.emailsCount && { emails_registered: { _eq: params.emailsCount } }));
5898
+ const orderByField = {
5899
+ [orderBy.field]: orderBy.direction,
5900
+ };
5901
+ const limit = Object.assign({}, ((pagination === null || pagination === void 0 ? void 0 : pagination.limit) && {
5902
+ limit: {
5903
+ value: pagination === null || pagination === void 0 ? void 0 : pagination.limit,
5904
+ },
5905
+ }));
5906
+ const offset = Object.assign({}, ((pagination === null || pagination === void 0 ? void 0 : pagination.offset) && {
5907
+ offset: {
5908
+ value: pagination === null || pagination === void 0 ? void 0 : pagination.offset,
5909
+ },
5910
+ }));
5911
+ const { report_stock_notification } = await this.query('report_stock_notification', ['product_id', 'ean', 'sku', 'name', 'stock', 'category_id', 'category', 'reference', 'emails_registered'], Object.assign(Object.assign({ where: {
5890
5912
  type: 'report_stock_notification_bool_exp',
5891
5913
  value: query,
5892
5914
  required: true,
5893
- },
5894
- });
5915
+ }, order_by: {
5916
+ type: '[report_stock_notification_order_by]',
5917
+ value: orderByField,
5918
+ required: true,
5919
+ } }, limit), offset));
5895
5920
  return report_stock_notification;
5896
5921
  }
5897
5922
  }
5898
- __decorate([
5899
- Log(),
5900
- __metadata("design:type", Function),
5901
- __metadata("design:paramtypes", [Object]),
5902
- __metadata("design:returntype", Promise)
5903
- ], ProductStockNotificationHasuraGraphQLRepository.prototype, "getNotificationsReport", null);
5904
5923
 
5905
5924
  class VariantHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGraphQL(Base)) {
5906
5925
  constructor({ endpoint, authOptions, interceptors, }) {
@@ -6008,11 +6027,14 @@ class VariantHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGra
6008
6027
  }
6009
6028
  }
6010
6029
 
6030
+ class WishlistHasuraGraphQL extends Wishlist {
6031
+ }
6032
+
6011
6033
  class WishlistHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGraphQL(Base)) {
6012
6034
  constructor({ endpoint, authOptions, interceptors, }, categoryFilterRepository) {
6013
6035
  super({
6014
6036
  tableName: 'category',
6015
- model: Wishlist,
6037
+ model: WishlistHasuraGraphQL,
6016
6038
  endpoint,
6017
6039
  authOptions,
6018
6040
  interceptors,
@@ -6093,8 +6115,11 @@ class WishlistHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGr
6093
6115
  { personId: { columnName: 'person_id' } },
6094
6116
  { personName: { columnName: 'person_name' } },
6095
6117
  { personPhoto: { columnName: 'person_photo' } },
6118
+ { personType: { columnName: 'person_type' } },
6119
+ { personIsSubscriber: { columnName: 'person_is_subscriber' } },
6096
6120
  'theme',
6097
6121
  { bannerUrl: { columnName: 'banner_url' } },
6122
+ { personHasPhoto: { columnName: 'person_has_photo' } },
6098
6123
  ],
6099
6124
  });
6100
6125
  this.categoryFilterRepository = categoryFilterRepository;
@@ -6157,7 +6182,7 @@ class WishlistHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGr
6157
6182
  throw new NotFoundError(`Wishlists from person ${personId} not found`);
6158
6183
  return data;
6159
6184
  }
6160
- getCategoryBySlug(slug, _shop) {
6185
+ async getCategoryBySlug(slug, _shop) {
6161
6186
  return this.getWishlistBySlug(slug);
6162
6187
  }
6163
6188
  async getCategoryByShop(shop) {
@@ -6175,6 +6200,13 @@ class WishlistHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGr
6175
6200
  });
6176
6201
  return data;
6177
6202
  }
6203
+ async findBfluOrGlamgirlWishlists(params, shops) {
6204
+ var _a, _b;
6205
+ return this.find(Object.assign(Object.assign({}, params), { filters: Object.assign(Object.assign({}, params.filters), { published: true, shops: { operator: Where.LIKE, value: shops }, personType: (_b = (_a = params.filters) === null || _a === void 0 ? void 0 : _a.personType) !== null && _b !== void 0 ? _b : {
6206
+ operator: Where.IN,
6207
+ value: [PersonTypes.BFLU, PersonTypes.GLAMGIRL],
6208
+ } }), orderBy: Object.assign({ personHasPhoto: 'desc' }, omit(params.orderBy, ['personHasPhoto'])) }));
6209
+ }
6178
6210
  getCategoriesForHome(categoryIds, limit, gender) {
6179
6211
  return;
6180
6212
  }
@@ -6279,5 +6311,11 @@ __decorate([
6279
6311
  __metadata("design:paramtypes", [String]),
6280
6312
  __metadata("design:returntype", Promise)
6281
6313
  ], WishlistHasuraGraphQLRepository.prototype, "getCategoryByShop", null);
6314
+ __decorate([
6315
+ Log(),
6316
+ __metadata("design:type", Function),
6317
+ __metadata("design:paramtypes", [Object, Array]),
6318
+ __metadata("design:returntype", Promise)
6319
+ ], WishlistHasuraGraphQLRepository.prototype, "findBfluOrGlamgirlWishlists", null);
6282
6320
 
6283
- export { AccessoryImportances, Address, Area, Authentication, AuthenticationFirebaseAuthService, AxiosAdapter, Base, BaseModel, BeardProblems, BeardSizes, BeautyProductImportances, BeautyProfile, BeautyQuestionsHelper, BillingStatus, BodyProblems, BodyShapes, BodyTattoos, Buy2Win, Buy2WinFirestoreRepository, Campaign, CampaignBanner, CampaignDashboard, CampaignDashboardFirestoreRepository, CampaignHashtag, CampaignHashtagFirestoreRepository, Category, CategoryCollectionChildren, CategoryCollectionChildrenHasuraGraphQLRepository, CategoryFilter, CategoryFilterHasuraGraphQLRepository, CategoryFirestoreRepository, CategoryHasuraGraphQL, CategoryHasuraGraphQLRepository, Checkout, CheckoutFirestoreRepository, CheckoutSubscription, CheckoutSubscriptionFirestoreRepository, CheckoutTypes, ClassNameHelper, ConnectBaseDocumentSnapshot, ConnectCollectionService, ConnectDocumentService, ConnectFirestoreService, Coupon, CouponFirestoreRepository, CouponSubtypes, CouponTypes, Debug, DebugDecoratorHelper, DebugHelper, DebugNamespaces, DuplicatedResultsError, Edition, EditionStatus, Exclusivities, FaceSkinOilinesses, FaceSkinProblems, FaceSkinTones, FamilyIncomes, Filter, FilterHasuraGraphQLRepository, FilterOption, FilterOptionHasuraGraphQLRepository, FilterType, FirebaseFileUploaderService, FragranceImportances, GenderDestination, HairColors, HairProblems, HairStrands, HairTypes, Home, HomeFirestoreRepository, InvalidArgumentError, KitProduct, KitProductHasuraGraphQL, Lead, LeadFirestoreRepository, LegacyOrderFirestoreRepository, LineItem, Log, Logger, NotFoundError, OfficePosition, Order, OrderBlocked, OrderBlockedFirestoreRepository, OrderFirestoreRepository, OrderStatus, Payment, PaymentFirestoreRepository, PaymentType, Plans, Product, ProductFirestoreRepository, ProductHasuraGraphQL, ProductHasuraGraphQLRepository, ProductReviews, ProductReviewsHasuraGraphQLRepository, ProductSpents, ProductStockNotification, ProductStockNotificationHasuraGraphQLRepository, ProductVariantFirestoreRepository, ProductsIndex, QuestionsFilters, RecoveryPassword, ReflectHelper, Register, RegisterFirebaseAuthService, RequiredArgumentError, RoundProductPricesHelper, ShippingMethod, ShopMenu, ShopMenuFirestoreRepository, ShopPageName, ShopSettings, ShopSettingsFirestoreRepository, Shops, SignInMethods, SignOut, Status, Subscription, SubscriptionEditionFirestoreRepository, SubscriptionFirestoreRepository, SubscriptionMaterialization, SubscriptionMaterializationFirestoreRepository, SubscriptionPayment, SubscriptionPaymentFirestoreRepository, SubscriptionPlan, SubscriptionPlanFirestoreRepository, SubscriptionProductFirestoreRepository, SubscriptionSummary, SubscriptionSummaryFirestoreRepository, Trace, UnauthorizedError, UpdateOptionActions, UpdateUserImage, User, UserAddress, UserAddressFirestoreRepository, UserAlreadyRegisteredError, UserBeautyProfileFirestoreRepository, UserFirestoreRepository, UserPaymentMethod, UserPaymentMethodFirestoreRepository, UserType, Variant, VariantHasuraGraphQL, VariantHasuraGraphQLRepository, WeakPasswordError, Where, Wishlist, WishlistHasuraGraphQLRepository, is, isDebuggable, isUUID, parseDateTime, withCreateFirestore, withCreateHasuraGraphQL, withCrudFirestore, withCrudHasuraGraphQL, withDeleteFirestore, withDeleteHasuraGraphQL, withFindFirestore, withFindHasuraGraphQL, withFirestore, withGetFirestore, withGetHasuraGraphQL, withHasuraGraphQL, withHelpers, withSubCollection, withUpdateFirestore, withUpdateHasuraGraphQL };
6321
+ export { AccessoryImportances, Address, Area, Authentication, AuthenticationFirebaseAuthService, AxiosAdapter, Base, BaseModel, BeardProblems, BeardSizes, BeautyProductImportances, BeautyProfile, BeautyQuestionsHelper, BillingStatus, BodyProblems, BodyShapes, BodyTattoos, Buy2Win, Buy2WinFirestoreRepository, Campaign, CampaignBanner, CampaignDashboard, CampaignDashboardFirestoreRepository, CampaignHashtag, CampaignHashtagFirestoreRepository, Category, CategoryCollectionChildren, CategoryCollectionChildrenHasuraGraphQLRepository, CategoryFilter, CategoryFilterHasuraGraphQLRepository, CategoryFirestoreRepository, CategoryHasuraGraphQL, CategoryHasuraGraphQLRepository, Checkout, CheckoutFirestoreRepository, CheckoutSubscription, CheckoutSubscriptionFirestoreRepository, CheckoutTypes, ClassNameHelper, ConnectBaseDocumentSnapshot, ConnectCollectionService, ConnectDocumentService, ConnectFirestoreService, Coupon, CouponFirestoreRepository, CouponSubtypes, CouponTypes, Debug, DebugDecoratorHelper, DebugHelper, DebugNamespaces, DuplicatedResultsError, Edition, EditionStatus, Exclusivities, FaceSkinOilinesses, FaceSkinProblems, FaceSkinTones, FamilyIncomes, Filter, FilterHasuraGraphQLRepository, FilterOption, FilterOptionHasuraGraphQLRepository, FilterType, FirebaseFileUploaderService, FragranceImportances, GenderDestination, HairColors, HairProblems, HairStrands, HairTypes, Home, HomeFirestoreRepository, InvalidArgumentError, KitProduct, KitProductHasuraGraphQL, Lead, LeadFirestoreRepository, LegacyOrderFirestoreRepository, LineItem, Log, Logger, NotFoundError, OfficePosition, Order, OrderBlocked, OrderBlockedFirestoreRepository, OrderFirestoreRepository, OrderStatus, Payment, PaymentFirestoreRepository, PaymentType, PersonTypes, Plans, Product, ProductFirestoreRepository, ProductHasuraGraphQL, ProductHasuraGraphQLRepository, ProductReviews, ProductReviewsHasuraGraphQLRepository, ProductSpents, ProductStockNotification, ProductStockNotificationHasuraGraphQLRepository, ProductVariantFirestoreRepository, ProductsIndex, QuestionsFilters, RecoveryPassword, ReflectHelper, Register, RegisterFirebaseAuthService, RequiredArgumentError, RoundProductPricesHelper, ShippingMethod, ShopMenu, ShopMenuFirestoreRepository, ShopPageName, ShopSettings, ShopSettingsFirestoreRepository, Shops, SignInMethods, SignOut, Status, Subscription, SubscriptionEditionFirestoreRepository, SubscriptionFirestoreRepository, SubscriptionMaterialization, SubscriptionMaterializationFirestoreRepository, SubscriptionPayment, SubscriptionPaymentFirestoreRepository, SubscriptionPlan, SubscriptionPlanFirestoreRepository, SubscriptionProductFirestoreRepository, SubscriptionSummary, SubscriptionSummaryFirestoreRepository, Trace, UnauthorizedError, UpdateOptionActions, UpdateUserImage, User, UserAddress, UserAddressFirestoreRepository, UserAlreadyRegisteredError, UserBeautyProfileFirestoreRepository, UserFirestoreRepository, UserPaymentMethod, UserPaymentMethodFirestoreRepository, UserType, Variant, VariantHasuraGraphQL, VariantHasuraGraphQLRepository, WeakPasswordError, Where, Wishlist, WishlistHasuraGraphQLRepository, is, isDebuggable, isUUID, parseDateTime, withCreateFirestore, withCreateHasuraGraphQL, withCrudFirestore, withCrudHasuraGraphQL, withDeleteFirestore, withDeleteHasuraGraphQL, withFindFirestore, withFindHasuraGraphQL, withFirestore, withGetFirestore, withGetHasuraGraphQL, withHasuraGraphQL, withHelpers, withSubCollection, withUpdateFirestore, withUpdateHasuraGraphQL };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@infrab4a/connect",
3
- "version": "4.9.7-beta.10",
3
+ "version": "4.9.7-beta.11",
4
4
  "publishConfig": {
5
5
  "registry": "https://registry.npmjs.org"
6
6
  },
@@ -7,3 +7,11 @@ export type ReportStockNotification = {
7
7
  category_reference: string;
8
8
  emails_registered: number;
9
9
  };
10
+ export type ReportStockNotificationInput = {
11
+ ean?: string;
12
+ sku?: string;
13
+ name?: string;
14
+ category?: string;
15
+ reference?: string;
16
+ emailsCount?: number;
17
+ };
@@ -1,8 +1,11 @@
1
1
  import { GenericIdentifier } from '../../generic/model';
2
+ import { PersonType } from '../../users';
2
3
  import { Category } from './category';
3
4
  export declare class Wishlist extends Category {
4
5
  personId?: string;
5
6
  personName?: string;
6
7
  personPhoto?: string;
8
+ personType?: PersonType;
9
+ personIsSubscriber?: boolean;
7
10
  static get identifiersFields(): GenericIdentifier[];
8
11
  }
@@ -1,13 +1,6 @@
1
1
  import { CrudRepository } from '../../generic/repository/crud.repository';
2
- import { ProductStockNotification, ReportStockNotification, Shops } from '../models';
2
+ import { ProductStockNotification, ReportStockNotification, ReportStockNotificationInput, Shops } from '../models';
3
3
  export interface ProductStockNotificationRepository extends CrudRepository<ProductStockNotification> {
4
4
  addCustomerEmail(shop: Shops, productId: string, name: string, email: string): Promise<void>;
5
- getNotificationsReport({ ean, sku, name, category, reference, emailsCount, }: {
6
- ean?: string;
7
- sku?: string;
8
- name?: string;
9
- category?: string;
10
- reference?: string;
11
- emailsCount?: number;
12
- }): Promise<ReportStockNotification[]>;
5
+ getNotificationsReport(params: ReportStockNotificationInput): Promise<ReportStockNotification[]>;
13
6
  }
@@ -1,6 +1,9 @@
1
1
  import { CategoryRepository } from '.';
2
+ import { FindRepositoryParams, RepositoryFindResult } from '../../generic';
3
+ import { Shops } from '../models';
2
4
  import { Wishlist } from '../models/wishlist';
3
5
  export interface WishlistRepository extends CategoryRepository {
4
6
  getWishlistBySlug(slug: string): Promise<Wishlist>;
5
7
  getWishlistByPerson(personId: string): Promise<Wishlist[]>;
8
+ findBfluOrGlamgirlWishlists(params: FindRepositoryParams<Wishlist>, shops: Shops[]): Promise<RepositoryFindResult<Wishlist>>;
6
9
  }
@@ -16,5 +16,6 @@ export * from './hair-problems.enum';
16
16
  export * from './hair-strands.enum';
17
17
  export * from './hair-types.enum';
18
18
  export * from './office-position.enum';
19
+ export * from './person-types.enum';
19
20
  export * from './product-spents.enum';
20
21
  export * from './user-type.enum';
@@ -0,0 +1,5 @@
1
+ export declare enum PersonTypes {
2
+ GLAMGIRL = "glamgirl",
3
+ BFLU = "bflu",
4
+ NONE = "none"
5
+ }
@@ -1,7 +1,8 @@
1
+ export * from './beauty-profile';
1
2
  export * from './enums';
3
+ export * from './lead';
2
4
  export * from './subscription';
5
+ export * from './types';
3
6
  export * from './user';
4
- export * from './beauty-profile';
5
7
  export * from './user-address';
6
8
  export * from './user-payment-method';
7
- export * from './lead';
@@ -0,0 +1 @@
1
+ export * from './person.type';
@@ -0,0 +1,2 @@
1
+ import { PersonTypes } from '../enums';
2
+ export type PersonType = `${PersonTypes}`;
@@ -5,7 +5,7 @@ import { FirestoreRepository, FirestoreSubRepository } from '../types';
5
5
  export declare const withHelpers: <TMixinBase extends MixinCtor = MixinCtor>(MixinBase: MixinCtor & TMixinBase) => {
6
6
  new (...args: any[]): {
7
7
  [x: string]: any;
8
- toArray<T extends ModelBaseStructure<T>>(snapShot: QuerySnapshot<T, import("@firebase/firestore").DocumentData> | QueryDocumentSnapshot<T, import("@firebase/firestore").DocumentData>[]): T[];
8
+ toArray<T extends ModelBaseStructure<T>>(snapShot: QuerySnapshot<T, import("firebase/firestore").DocumentData> | QueryDocumentSnapshot<T, import("firebase/firestore").DocumentData>[]): T[];
9
9
  isSubCollection<T_1 extends ModelBaseStructure<T_1>, E extends ModelBaseStructure<E>>(repository: FirestoreRepository<T_1> | FirestoreSubRepository<T_1, E>): repository is FirestoreSubRepository<T_1, E>;
10
10
  };
11
11
  } & TMixinBase;
@@ -0,0 +1,4 @@
1
+ import { Wishlist } from '../../../domain';
2
+ export declare class WishlistHasuraGraphQL extends Wishlist {
3
+ personHasPhoto?: boolean;
4
+ }
@@ -1,4 +1,4 @@
1
- import { Filter, ProductStockNotification, ReportStockNotification, Shops } from '../../../../domain';
1
+ import { Filter, ProductStockNotification, ReportStockNotification, ReportStockNotificationInput, Shops } from '../../../../domain';
2
2
  import { ProductStockNotificationRepository } from '../../../../domain/catalog/repositories';
3
3
  import { HasuraConstructorParams } from '../../mixins';
4
4
  declare const ProductStockNotificationHasuraGraphQLRepository_base: import("../../../../utils").MixinCtor<import("../..").GraphQLRepository<ProductStockNotification> & import("../../../../domain").CrudRepository<ProductStockNotification, import("../../../../domain").CrudParams<ProductStockNotification>> & import("../../../../domain").UpdateRepository<ProductStockNotification, import("../../../../domain").RepositoryUpdateParams<ProductStockNotification>> & {
@@ -7,13 +7,12 @@ declare const ProductStockNotificationHasuraGraphQLRepository_base: import("../.
7
7
  export declare class ProductStockNotificationHasuraGraphQLRepository extends ProductStockNotificationHasuraGraphQLRepository_base implements ProductStockNotificationRepository {
8
8
  constructor({ endpoint, authOptions, interceptors, }: Pick<HasuraConstructorParams<Filter>, 'endpoint' | 'authOptions' | 'interceptors'>);
9
9
  addCustomerEmail(shop: Shops, productId: string, name: string, email: string): Promise<void>;
10
- getNotificationsReport({ ean, sku, name, category, reference, emailsCount, }: {
11
- ean?: string;
12
- sku?: string;
13
- name?: string;
14
- category?: string;
15
- reference?: string;
16
- emailsCount?: number;
10
+ getNotificationsReport(params: ReportStockNotificationInput, orderBy?: {
11
+ field: string;
12
+ direction: string;
13
+ }, pagination?: {
14
+ offset: number;
15
+ limit: number;
17
16
  }): Promise<ReportStockNotification[]>;
18
17
  }
19
18
  export {};
@@ -1,20 +1,22 @@
1
1
  import { Category, CreateRepositoryParams, FindRepositoryParams, GetRepositoryParams, Product, RepositoryFindResult, Shops, UpdateRepositoryParams, Wishlist, WishlistRepository } from '../../../../domain';
2
2
  import { HasuraConstructorParams } from '../../mixins';
3
+ import { WishlistHasuraGraphQL } from '../../models/wishlist-hasura-graphql';
3
4
  import { CategoryFilterHasuraGraphQLRepository } from './category-filter-hasura-graphql.repository';
4
- declare const WishlistHasuraGraphQLRepository_base: import("../../../../utils").MixinCtor<import("../..").GraphQLRepository<Wishlist> & import("../../../../domain").CrudRepository<Wishlist, import("../../../../domain").CrudParams<Wishlist>> & import("../../../../domain").UpdateRepository<Wishlist, import("../../../../domain").RepositoryUpdateParams<Wishlist>> & {
5
- paramsToPlain(params: import("../../../../domain").RepositoryUpdateParams<Wishlist>): Partial<Wishlist>;
6
- }, [HasuraConstructorParams<Wishlist> & import("../../mixins").CreateConstructorParams & import("../../mixins").DeleteConstructorParams & import("../../mixins").GetConstructorParams & import("../../mixins").UpdateConstructorParams, ...any[]]>;
5
+ declare const WishlistHasuraGraphQLRepository_base: import("../../../../utils").MixinCtor<import("../..").GraphQLRepository<WishlistHasuraGraphQL> & import("../../../../domain").CrudRepository<WishlistHasuraGraphQL, import("../../../../domain").CrudParams<WishlistHasuraGraphQL>> & import("../../../../domain").UpdateRepository<WishlistHasuraGraphQL, import("../../../../domain").RepositoryUpdateParams<WishlistHasuraGraphQL>> & {
6
+ paramsToPlain(params: import("../../../../domain").RepositoryUpdateParams<WishlistHasuraGraphQL>): Partial<WishlistHasuraGraphQL>;
7
+ }, [HasuraConstructorParams<WishlistHasuraGraphQL> & import("../../mixins").CreateConstructorParams & import("../../mixins").DeleteConstructorParams & import("../../mixins").GetConstructorParams & import("../../mixins").UpdateConstructorParams, ...any[]]>;
7
8
  export declare class WishlistHasuraGraphQLRepository extends WishlistHasuraGraphQLRepository_base implements WishlistRepository {
8
9
  private readonly categoryFilterRepository;
9
10
  constructor({ endpoint, authOptions, interceptors, }: Pick<HasuraConstructorParams<Wishlist>, 'endpoint' | 'authOptions' | 'interceptors'>, categoryFilterRepository: CategoryFilterHasuraGraphQLRepository);
10
- create(params: CreateRepositoryParams<Wishlist>): Promise<Wishlist>;
11
- get(identifiers: GetRepositoryParams<Wishlist>): Promise<Wishlist>;
12
- find(params?: FindRepositoryParams<Wishlist>): Promise<RepositoryFindResult<Wishlist>>;
13
- update(params: UpdateRepositoryParams<Wishlist>): Promise<Wishlist>;
14
- getWishlistBySlug(slug: string): Promise<Wishlist>;
15
- getWishlistByPerson(personId: string): Promise<Wishlist[]>;
11
+ create(params: CreateRepositoryParams<WishlistHasuraGraphQL>): Promise<WishlistHasuraGraphQL>;
12
+ get(identifiers: GetRepositoryParams<WishlistHasuraGraphQL>): Promise<WishlistHasuraGraphQL>;
13
+ find(params?: FindRepositoryParams<WishlistHasuraGraphQL>): Promise<RepositoryFindResult<WishlistHasuraGraphQL>>;
14
+ update(params: UpdateRepositoryParams<WishlistHasuraGraphQL>): Promise<WishlistHasuraGraphQL>;
15
+ getWishlistBySlug(slug: string): Promise<WishlistHasuraGraphQL>;
16
+ getWishlistByPerson(personId: string): Promise<WishlistHasuraGraphQL[]>;
16
17
  getCategoryBySlug(slug: string, _shop: Shops): Promise<Wishlist>;
17
18
  getCategoryByShop(shop: string): Promise<any>;
19
+ findBfluOrGlamgirlWishlists(params: FindRepositoryParams<WishlistHasuraGraphQL>, shops: Shops[]): Promise<RepositoryFindResult<WishlistHasuraGraphQL>>;
18
20
  getCategoriesForHome(categoryIds: string[], limit?: number, gender?: string): any;
19
21
  mountCategory(category: Category, options?: {
20
22
  limit?: number;