@infrab4a/connect 3.4.3-beta.0 → 3.5.0-beta.0

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.
Files changed (43) hide show
  1. package/bundles/infrab4a-connect.umd.js +157 -362
  2. package/bundles/infrab4a-connect.umd.js.map +1 -1
  3. package/domain/generic/repository/find.repository.d.ts +0 -3
  4. package/domain/shopping/models/enums/order-status.enum.d.ts +2 -2
  5. package/domain/shopping/models/index.d.ts +4 -5
  6. package/domain/shopping/repositories/index.d.ts +2 -4
  7. package/esm2015/domain/generic/repository/find.repository.js +1 -1
  8. package/esm2015/domain/shopping/models/enums/order-status.enum.js +3 -3
  9. package/esm2015/domain/shopping/models/index.js +5 -6
  10. package/esm2015/domain/shopping/repositories/index.js +3 -5
  11. package/esm2015/infra/firebase/firestore/mixins/with-find-firestore.mixin.js +5 -11
  12. package/esm2015/infra/firebase/firestore/mixins/with-firestore.mixin.js +7 -34
  13. package/esm2015/infra/firebase/firestore/repositories/shopping/index.js +4 -6
  14. package/esm2015/infra/firebase/firestore/repositories/shopping/order-firestore.repository.js +2 -7
  15. package/esm2015/infra/firebase/firestore/types/firestore.repository.type.js +1 -1
  16. package/esm2015/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.js +12 -17
  17. package/esm2015/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.js +5 -5
  18. package/esm2015/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.js +17 -28
  19. package/esm2015/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.js +4 -7
  20. package/esm2015/infra/hasura-graphql/repositories/catalog/variant-hasura-graphql.repository.js +2 -2
  21. package/fesm2015/infrab4a-connect.js +91 -185
  22. package/fesm2015/infrab4a-connect.js.map +1 -1
  23. package/infra/firebase/firestore/mixins/with-find-firestore.mixin.d.ts +2 -2
  24. package/infra/firebase/firestore/repositories/shopping/index.d.ts +3 -5
  25. package/infra/firebase/firestore/types/firestore.repository.type.d.ts +1 -3
  26. package/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.d.ts +9 -4
  27. package/package.json +2 -2
  28. package/domain/shopping/models/campaign-dashboard.d.ts +0 -15
  29. package/domain/shopping/models/campaign-hashtag.d.ts +0 -18
  30. package/domain/shopping/repositories/campaign-dashboard.repository.d.ts +0 -4
  31. package/domain/shopping/repositories/campaign-hashtag.repository.d.ts +0 -4
  32. package/esm2015/domain/shopping/models/campaign-dashboard.js +0 -7
  33. package/esm2015/domain/shopping/models/campaign-hashtag.js +0 -7
  34. package/esm2015/domain/shopping/repositories/campaign-dashboard.repository.js +0 -2
  35. package/esm2015/domain/shopping/repositories/campaign-hashtag.repository.js +0 -2
  36. package/esm2015/infra/firebase/firestore/enums/firestore-field-type.enum.js +0 -10
  37. package/esm2015/infra/firebase/firestore/enums/index.js +0 -2
  38. package/esm2015/infra/firebase/firestore/repositories/shopping/campaign-dashboard-firestore.repository.js +0 -12
  39. package/esm2015/infra/firebase/firestore/repositories/shopping/campaign-hashtag-firestore.repository.js +0 -12
  40. package/infra/firebase/firestore/enums/firestore-field-type.enum.d.ts +0 -8
  41. package/infra/firebase/firestore/enums/index.d.ts +0 -1
  42. package/infra/firebase/firestore/repositories/shopping/campaign-dashboard-firestore.repository.d.ts +0 -9
  43. package/infra/firebase/firestore/repositories/shopping/campaign-hashtag-firestore.repository.d.ts +0 -9
@@ -1,13 +1,14 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('reflect-metadata'), require('class-transformer'), require('date-fns'), require('lodash'), require('ts-custom-error'), require('axios'), require('firebase'), require('gql-query-builder')) :
3
- typeof define === 'function' && define.amd ? define('@infrab4a/connect', ['exports', 'reflect-metadata', 'class-transformer', 'date-fns', 'lodash', 'ts-custom-error', 'axios', 'firebase', 'gql-query-builder'], factory) :
4
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.infrab4a = global.infrab4a || {}, global.infrab4a.connect = {}), null, global["class-transformer"], global["date-fns"], global.lodash, global["ts-custom-error"], global.axios, global.firebase, global["gql-query-builder"]));
5
- })(this, (function (exports, reflectMetadata, classTransformer, dateFns, lodash, tsCustomError, axios, firebase, gqlQueryBuilder) { 'use strict';
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('reflect-metadata'), require('class-transformer'), require('date-fns'), require('lodash'), require('ts-custom-error'), require('axios'), require('firebase'), require('gql-query-builder'), require('node-fetch')) :
3
+ typeof define === 'function' && define.amd ? define('@infrab4a/connect', ['exports', 'reflect-metadata', 'class-transformer', 'date-fns', 'lodash', 'ts-custom-error', 'axios', 'firebase', 'gql-query-builder', 'node-fetch'], factory) :
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.infrab4a = global.infrab4a || {}, global.infrab4a.connect = {}), null, global["class-transformer"], global["date-fns"], global.lodash, global["ts-custom-error"], global.axios, global.firebase, global["gql-query-builder"], global["node-fetch"]));
5
+ })(this, (function (exports, reflectMetadata, classTransformer, dateFns, lodash, tsCustomError, axios, firebase, gqlQueryBuilder, fetch) { 'use strict';
6
6
 
7
7
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
8
 
9
9
  var axios__default = /*#__PURE__*/_interopDefaultLegacy(axios);
10
10
  var firebase__default = /*#__PURE__*/_interopDefaultLegacy(firebase);
11
+ var fetch__default = /*#__PURE__*/_interopDefaultLegacy(fetch);
11
12
 
12
13
  var BaseModel = /** @class */ (function () {
13
14
  function BaseModel(args) {
@@ -289,7 +290,7 @@
289
290
  Status["CANCELLED"] = "Cancelado";
290
291
  })(exports.Status || (exports.Status = {}));
291
292
 
292
- /******************************************************************************
293
+ /*! *****************************************************************************
293
294
  Copyright (c) Microsoft Corporation.
294
295
 
295
296
  Permission to use, copy, modify, and/or distribute this software for any
@@ -356,64 +357,6 @@
356
357
  function __param(paramIndex, decorator) {
357
358
  return function (target, key) { decorator(target, key, paramIndex); };
358
359
  }
359
- function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
360
- function accept(f) { if (f !== void 0 && typeof f !== "function")
361
- throw new TypeError("Function expected"); return f; }
362
- var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
363
- var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
364
- var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
365
- var _, done = false;
366
- for (var i = decorators.length - 1; i >= 0; i--) {
367
- var context = {};
368
- for (var p in contextIn)
369
- context[p] = p === "access" ? {} : contextIn[p];
370
- for (var p in contextIn.access)
371
- context.access[p] = contextIn.access[p];
372
- context.addInitializer = function (f) { if (done)
373
- throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
374
- var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
375
- if (kind === "accessor") {
376
- if (result === void 0)
377
- continue;
378
- if (result === null || typeof result !== "object")
379
- throw new TypeError("Object expected");
380
- if (_ = accept(result.get))
381
- descriptor.get = _;
382
- if (_ = accept(result.set))
383
- descriptor.set = _;
384
- if (_ = accept(result.init))
385
- initializers.push(_);
386
- }
387
- else if (_ = accept(result)) {
388
- if (kind === "field")
389
- initializers.push(_);
390
- else
391
- descriptor[key] = _;
392
- }
393
- }
394
- if (target)
395
- Object.defineProperty(target, contextIn.name, descriptor);
396
- done = true;
397
- }
398
- ;
399
- function __runInitializers(thisArg, initializers, value) {
400
- var useValue = arguments.length > 2;
401
- for (var i = 0; i < initializers.length; i++) {
402
- value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
403
- }
404
- return useValue ? value : void 0;
405
- }
406
- ;
407
- function __propKey(x) {
408
- return typeof x === "symbol" ? x : "".concat(x);
409
- }
410
- ;
411
- function __setFunctionName(f, name, prefix) {
412
- if (typeof name === "symbol")
413
- name = name.description ? "[".concat(name.description, "]") : "";
414
- return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
415
- }
416
- ;
417
360
  function __metadata(metadataKey, metadataValue) {
418
361
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
419
362
  return Reflect.metadata(metadataKey, metadataValue);
@@ -445,7 +388,7 @@
445
388
  function step(op) {
446
389
  if (f)
447
390
  throw new TypeError("Generator is already executing.");
448
- while (g && (g = 0, op[0] && (_ = 0)), _)
391
+ while (_)
449
392
  try {
450
393
  if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)
451
394
  return t;
@@ -509,11 +452,7 @@
509
452
  var __createBinding = Object.create ? (function (o, m, k, k2) {
510
453
  if (k2 === undefined)
511
454
  k2 = k;
512
- var desc = Object.getOwnPropertyDescriptor(m, k);
513
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
514
- desc = { enumerable: true, get: function () { return m[k]; } };
515
- }
516
- Object.defineProperty(o, k2, desc);
455
+ Object.defineProperty(o, k2, { enumerable: true, get: function () { return m[k]; } });
517
456
  }) : (function (o, m, k, k2) {
518
457
  if (k2 === undefined)
519
458
  k2 = k;
@@ -613,7 +552,7 @@
613
552
  function __asyncDelegator(o) {
614
553
  var i, p;
615
554
  return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
616
- function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }
555
+ function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }
617
556
  }
618
557
  function __asyncValues(o) {
619
558
  if (!Symbol.asyncIterator)
@@ -667,11 +606,6 @@
667
606
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
668
607
  throw new TypeError("Cannot write private member to an object whose class did not declare it");
669
608
  return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
670
- }
671
- function __classPrivateFieldIn(state, receiver) {
672
- if (receiver === null || (typeof receiver !== "object" && typeof receiver !== "function"))
673
- throw new TypeError("Cannot use 'in' operator on non-object");
674
- return typeof state === "function" ? receiver === state : state.has(receiver);
675
609
  }
676
610
 
677
611
  var Edition = /** @class */ (function (_super) {
@@ -1414,54 +1348,17 @@
1414
1348
  return Variant;
1415
1349
  }(BaseModel));
1416
1350
 
1417
- var Buy2Win = /** @class */ (function (_super) {
1418
- __extends(Buy2Win, _super);
1419
- function Buy2Win() {
1420
- return _super !== null && _super.apply(this, arguments) || this;
1421
- }
1422
- Object.defineProperty(Buy2Win, "identifiersFields", {
1423
- get: function () {
1424
- return ['id'];
1425
- },
1426
- enumerable: false,
1427
- configurable: true
1428
- });
1429
- return Buy2Win;
1430
- }(BaseModel));
1431
- __decorate([
1432
- classTransformer.Type(function () { return Category; }),
1433
- __metadata("design:type", Array)
1434
- ], Buy2Win.prototype, "categories", void 0);
1435
-
1436
- var CampaignDashboard = /** @class */ (function (_super) {
1437
- __extends(CampaignDashboard, _super);
1438
- function CampaignDashboard() {
1439
- return _super !== null && _super.apply(this, arguments) || this;
1440
- }
1441
- Object.defineProperty(CampaignDashboard, "identifiersFields", {
1442
- get: function () {
1443
- return ['id'];
1444
- },
1445
- enumerable: false,
1446
- configurable: true
1447
- });
1448
- return CampaignDashboard;
1449
- }(BaseModel));
1450
-
1451
- var CampaignHashtag = /** @class */ (function (_super) {
1452
- __extends(CampaignHashtag, _super);
1453
- function CampaignHashtag() {
1454
- return _super !== null && _super.apply(this, arguments) || this;
1455
- }
1456
- Object.defineProperty(CampaignHashtag, "identifiersFields", {
1457
- get: function () {
1458
- return ['id'];
1459
- },
1460
- enumerable: false,
1461
- configurable: true
1462
- });
1463
- return CampaignHashtag;
1464
- }(BaseModel));
1351
+ exports.OrderStatus = void 0;
1352
+ (function (OrderStatus) {
1353
+ OrderStatus["AGUARDANDO_PAGAMENTO"] = "Aguardando pagamento";
1354
+ OrderStatus["EM_PREPARO"] = "Preparando pedido";
1355
+ OrderStatus["NF_EMITIDA"] = "Nota Fiscal Emitida";
1356
+ OrderStatus["AGUARDANDO_ENVIO"] = "Aguardando Transaportadora";
1357
+ OrderStatus["ENVIADO"] = "Pedido Enviado";
1358
+ OrderStatus["ENTREGUE"] = "Pedido entregue";
1359
+ OrderStatus["CANCELADO"] = "Cancelado";
1360
+ OrderStatus["CREDIT_CARD"] = "credit_card";
1361
+ })(exports.OrderStatus || (exports.OrderStatus = {}));
1465
1362
 
1466
1363
  var LineItem = /** @class */ (function (_super) {
1467
1364
  __extends(LineItem, _super);
@@ -1525,18 +1422,6 @@
1525
1422
  __metadata("design:type", Coupon)
1526
1423
  ], Checkout.prototype, "coupon", void 0);
1527
1424
 
1528
- exports.OrderStatus = void 0;
1529
- (function (OrderStatus) {
1530
- OrderStatus["AGUARDANDO_PAGAMENTO"] = "Aguardando pagamento";
1531
- OrderStatus["EM_PREPARO"] = "Preparando pedido";
1532
- OrderStatus["NF_EMITIDA"] = "Nota Fiscal Emitida";
1533
- OrderStatus["AGUARDANDO_ENVIO"] = "Aguardando Transaportadora";
1534
- OrderStatus["ENVIADO"] = "Enviado";
1535
- OrderStatus["ENTREGUE"] = "Entregue";
1536
- OrderStatus["CANCELADO"] = "Cancelado";
1537
- OrderStatus["CREDIT_CARD"] = "credit_card";
1538
- })(exports.OrderStatus || (exports.OrderStatus = {}));
1539
-
1540
1425
  var Order = /** @class */ (function (_super) {
1541
1426
  __extends(Order, _super);
1542
1427
  function Order() {
@@ -1580,6 +1465,25 @@
1580
1465
  __metadata("design:type", Coupon)
1581
1466
  ], CheckoutSubscription.prototype, "coupon", void 0);
1582
1467
 
1468
+ var Buy2Win = /** @class */ (function (_super) {
1469
+ __extends(Buy2Win, _super);
1470
+ function Buy2Win() {
1471
+ return _super !== null && _super.apply(this, arguments) || this;
1472
+ }
1473
+ Object.defineProperty(Buy2Win, "identifiersFields", {
1474
+ get: function () {
1475
+ return ['id'];
1476
+ },
1477
+ enumerable: false,
1478
+ configurable: true
1479
+ });
1480
+ return Buy2Win;
1481
+ }(BaseModel));
1482
+ __decorate([
1483
+ classTransformer.Type(function () { return Category; }),
1484
+ __metadata("design:type", Array)
1485
+ ], Buy2Win.prototype, "categories", void 0);
1486
+
1583
1487
  exports.FilterType = void 0;
1584
1488
  (function (FilterType) {
1585
1489
  FilterType["ACCESSORY_IMPORTANCE"] = "accessoryImportance";
@@ -1961,30 +1865,6 @@
1961
1865
  }());
1962
1866
 
1963
1867
  var withFirestore = function (MixinBase) {
1964
- var isObjectsAndNoDate = function (data) { return data &&
1965
- !Array.isArray(data) &&
1966
- typeof data === 'object' &&
1967
- (data === null || data === void 0 ? void 0 : data.constructor.name) !== 'Timestamp' &&
1968
- !('seconds' in data); };
1969
- var bindDate = function (data, keyName) {
1970
- if ((data === null || data === void 0 ? void 0 : data.constructor.name) === 'Timestamp')
1971
- return data.toDate();
1972
- if (data && typeof data === 'object' && 'seconds' in data)
1973
- return new Date(data.seconds * 1000);
1974
- if (typeof data === 'number' && ['createdAt', 'updatedAt'].includes(keyName))
1975
- return new Date(data);
1976
- return data;
1977
- };
1978
- var bindAllDateFromObject = function (data) {
1979
- return Object.keys(data).reduce(function (object, key) {
1980
- var _a;
1981
- return (Object.assign(Object.assign({}, object), (_a = {}, _a[key] = isObjectsAndNoDate(data[key])
1982
- ? bindAllDateFromObject(data[key])
1983
- : Array.isArray(data[key])
1984
- ? data[key].map(function (element) { return (isObjectsAndNoDate(element) ? bindAllDateFromObject(element) : element); })
1985
- : bindDate(data[key], key), _a)));
1986
- }, {});
1987
- };
1988
1868
  return /** @class */ (function (_super) {
1989
1869
  __extends(class_1, _super);
1990
1870
  function class_1() {
@@ -1999,18 +1879,12 @@
1999
1879
  toFirestore: function (data) { return ((data === null || data === void 0 ? void 0 : data.toPlain) ? data.toPlain() : data); },
2000
1880
  fromFirestore: function (snap) {
2001
1881
  var data = snap.data();
2002
- var bindedData;
2003
- try {
2004
- var ids = { id: snap.id };
2005
- bindedData = bindAllDateFromObject(data);
2006
- return _this.model.toInstance(Object.assign(Object.assign({}, bindedData), ids));
2007
- }
2008
- catch (error) {
2009
- console.info('id', snap.id);
2010
- console.info('data', JSON.stringify(bindedData));
2011
- console.error(error);
2012
- throw error;
2013
- }
1882
+ Object.keys(data).forEach(function (key) {
1883
+ if (data[key] && typeof data[key] === 'object' && '_seconds' in data[key]) {
1884
+ data[key] = data[key].toDate();
1885
+ }
1886
+ });
1887
+ return _this.model.toInstance(Object.assign(Object.assign({}, data), { id: snap.id }));
2014
1888
  },
2015
1889
  };
2016
1890
  };
@@ -2072,16 +1946,6 @@
2072
1946
  }(MixinBase));
2073
1947
  };
2074
1948
 
2075
- var FirestoreFieldType;
2076
- (function (FirestoreFieldType) {
2077
- FirestoreFieldType["String"] = "string";
2078
- FirestoreFieldType["Number"] = "number";
2079
- FirestoreFieldType["Boolean"] = "boolean";
2080
- FirestoreFieldType["Timestamp"] = "timestamp";
2081
- FirestoreFieldType["Array"] = "array";
2082
- FirestoreFieldType["Map"] = "map";
2083
- })(FirestoreFieldType || (FirestoreFieldType = {}));
2084
-
2085
1949
  var withFindFirestore = function (MixinBase) {
2086
1950
  var checkIfIsFilterOption = function (filter) { return !lodash.isNil(filter === null || filter === void 0 ? void 0 : filter.operator); };
2087
1951
  var getValueFromFilter = function (filter) {
@@ -2106,16 +1970,13 @@
2106
1970
  ? fieldName.toString()
2107
1971
  : Object.keys(plainInstance).find(function (key) { return plainInstance[key]; });
2108
1972
  if ((options === null || options === void 0 ? void 0 : options.operator) === exports.Where.LIKE) {
2109
- if (Array.isArray(options === null || options === void 0 ? void 0 : options.value) &&
2110
- (_this.fields[firestoreFieldName] === FirestoreFieldType.Array || !_this.fields[firestoreFieldName]))
1973
+ if (Array.isArray(options === null || options === void 0 ? void 0 : options.value))
2111
1974
  return queryReference.where(firestoreFieldName, 'array-contains-any', options.value);
2112
1975
  queryReference = queryReference.where(firestoreFieldName, '>=', options.value);
2113
1976
  queryReference = queryReference.where(firestoreFieldName, '<=', options.value + "~");
2114
1977
  return queryReference;
2115
1978
  }
2116
- if ((options === null || options === void 0 ? void 0 : options.operator) === exports.Where.IN &&
2117
- Array.isArray(options === null || options === void 0 ? void 0 : options.value) &&
2118
- (_this.fields[firestoreFieldName] === FirestoreFieldType.Array || !_this.fields[firestoreFieldName]))
1979
+ if ((options === null || options === void 0 ? void 0 : options.operator) === exports.Where.IN && Array.isArray(options === null || options === void 0 ? void 0 : options.value))
2119
1980
  return queryReference.where(firestoreFieldName, 'array-contains', options.value);
2120
1981
  if (lodash.isObject(options) && lodash.isNil(options === null || options === void 0 ? void 0 : options.operator) && lodash.isNil(options === null || options === void 0 ? void 0 : options.value)) {
2121
1982
  return Object.keys(options).reduce(function (queryReferenceWithWhere, key) { return _this.buildWhereSentence(queryReferenceWithWhere, fieldName.toString() + "." + key, options[key]); }, queryReference);
@@ -2124,37 +1985,35 @@
2124
1985
  };
2125
1986
  return _this;
2126
1987
  }
2127
- FindFirestore.prototype.find = function (_b) {
2128
- var _c = _b === void 0 ? {} : _b, filters = _c.filters, limits = _c.limits, orderBy = _c.orderBy, options = _c.options;
2129
- var _a;
1988
+ FindFirestore.prototype.find = function (_a) {
1989
+ var _b = _a === void 0 ? {} : _a, filters = _b.filters, limits = _b.limits, orderBy = _b.orderBy;
2130
1990
  return __awaiter(this, void 0, void 0, function () {
2131
- var orderByKeys, enableCount, query, filtersKeysWithUnordered, docs, data;
2132
- return __generator(this, function (_b) {
2133
- switch (_b.label) {
1991
+ var orderByKeys, query, filtersKeysWithUnordered, docs, data;
1992
+ return __generator(this, function (_a) {
1993
+ switch (_a.label) {
2134
1994
  case 0:
2135
1995
  orderByKeys = Object.keys(orderBy || {});
2136
- enableCount = (_a = options === null || options === void 0 ? void 0 : options.enableCount) !== null && _a !== void 0 ? _a : true;
2137
1996
  query = this.collection(this.buildCollectionPathForFind(filters || {}));
2138
1997
  query = this.makeFirestoreWhere(query, filters || {});
2139
1998
  if (orderByKeys.length) {
2140
1999
  filtersKeysWithUnordered = Object.keys(filters || {}).filter(function (filterKey) { return !orderByKeys.includes(filterKey); });
2141
2000
  if (filtersKeysWithUnordered.length)
2142
2001
  filtersKeysWithUnordered.forEach(function (filterKey) {
2143
- var _b;
2144
- return (orderBy = Object.assign(Object.assign({}, (![exports.Where.EQUALS].includes(filters[filterKey].operator) ? (_b = {}, _b[filterKey] = 'asc', _b) : {})), orderBy));
2002
+ var _a;
2003
+ return (orderBy = Object.assign(Object.assign({}, (![exports.Where.EQUALS].includes(filters[filterKey].operator) ? (_a = {}, _a[filterKey] = 'asc', _a) : {})), orderBy));
2145
2004
  });
2146
2005
  Object.keys(orderBy).forEach(function (fieldName) { return (query = query.orderBy(fieldName, orderBy[fieldName])); });
2147
2006
  }
2148
2007
  return [4 /*yield*/, this.defineLimits(query, filters, limits)];
2149
2008
  case 1:
2150
- query = _b.sent();
2009
+ query = _a.sent();
2151
2010
  return [4 /*yield*/, query.get()];
2152
2011
  case 2:
2153
- docs = _b.sent();
2012
+ docs = _a.sent();
2154
2013
  data = docs.docs.map(function (doc) { return doc.data(); });
2155
2014
  return [2 /*return*/, {
2156
2015
  data: data,
2157
- count: enableCount ? this.calculateCount(data, limits) : Infinity,
2016
+ count: this.calculateCount(data, limits),
2158
2017
  }];
2159
2018
  }
2160
2019
  });
@@ -2169,23 +2028,23 @@
2169
2028
  };
2170
2029
  FindFirestore.prototype.defineLimits = function (query, filters, limits) {
2171
2030
  return __awaiter(this, void 0, void 0, function () {
2172
- var _b, _c;
2173
- return __generator(this, function (_d) {
2174
- switch (_d.label) {
2031
+ var _a, _b;
2032
+ return __generator(this, function (_c) {
2033
+ switch (_c.label) {
2175
2034
  case 0:
2176
2035
  if (!(limits === null || limits === void 0 ? void 0 : limits.offset)) return [3 /*break*/, 3];
2177
2036
  if (!this.model.isModel(limits.offset)) return [3 /*break*/, 2];
2178
- _c = (_b = query).startAfter;
2037
+ _b = (_a = query).startAfter;
2179
2038
  return [4 /*yield*/, this.collection(this.buildCollectionPathForFind(filters))
2180
2039
  .doc(limits.offset[limits.offset.identifiersFields.shift()])
2181
2040
  .get()];
2182
2041
  case 1:
2183
- query = _c.apply(_b, [_d.sent()]);
2042
+ query = _b.apply(_a, [_c.sent()]);
2184
2043
  return [3 /*break*/, 3];
2185
2044
  case 2:
2186
2045
  if (lodash.isNumber(limits.offset) || lodash.isString(limits.offset))
2187
2046
  query = query.startAt(limits.offset);
2188
- _d.label = 3;
2047
+ _c.label = 3;
2189
2048
  case 3:
2190
2049
  if (limits === null || limits === void 0 ? void 0 : limits.limit)
2191
2050
  query = query.limit(limits.limit);
@@ -2779,42 +2638,6 @@
2779
2638
  return SubscriptionProductFirestoreRepository;
2780
2639
  }(withCrudFirestore(withHelpers(withFirestore(Base)))));
2781
2640
 
2782
- var Buy2WinFirestoreRepository = /** @class */ (function (_super) {
2783
- __extends(Buy2WinFirestoreRepository, _super);
2784
- function Buy2WinFirestoreRepository(firestore) {
2785
- var _this = _super.call(this) || this;
2786
- _this.firestore = firestore;
2787
- _this.collectionName = 'buy2win';
2788
- _this.model = Buy2Win;
2789
- return _this;
2790
- }
2791
- return Buy2WinFirestoreRepository;
2792
- }(withCrudFirestore(withHelpers(withFirestore(Base)))));
2793
-
2794
- var CampaignDashboardFirestoreRepository = /** @class */ (function (_super) {
2795
- __extends(CampaignDashboardFirestoreRepository, _super);
2796
- function CampaignDashboardFirestoreRepository(firestore) {
2797
- var _this = _super.call(this) || this;
2798
- _this.firestore = firestore;
2799
- _this.collectionName = 'dashboardCampaignsAuto';
2800
- _this.model = CampaignDashboard;
2801
- return _this;
2802
- }
2803
- return CampaignDashboardFirestoreRepository;
2804
- }(withCrudFirestore(withHelpers(withFirestore(Base)))));
2805
-
2806
- var CampaignHashtagFirestoreRepository = /** @class */ (function (_super) {
2807
- __extends(CampaignHashtagFirestoreRepository, _super);
2808
- function CampaignHashtagFirestoreRepository(firestore) {
2809
- var _this = _super.call(this) || this;
2810
- _this.firestore = firestore;
2811
- _this.collectionName = 'hashtagCampaignsAuto';
2812
- _this.model = CampaignHashtag;
2813
- return _this;
2814
- }
2815
- return CampaignHashtagFirestoreRepository;
2816
- }(withCrudFirestore(withHelpers(withFirestore(Base)))));
2817
-
2818
2641
  var CheckoutFirestoreRepository = /** @class */ (function (_super) {
2819
2642
  __extends(CheckoutFirestoreRepository, _super);
2820
2643
  function CheckoutFirestoreRepository(firestore) {
@@ -2827,18 +2650,6 @@
2827
2650
  return CheckoutFirestoreRepository;
2828
2651
  }(withCrudFirestore(withHelpers(withFirestore(Base)))));
2829
2652
 
2830
- var CheckoutSubscriptionFirestoreRepository = /** @class */ (function (_super) {
2831
- __extends(CheckoutSubscriptionFirestoreRepository, _super);
2832
- function CheckoutSubscriptionFirestoreRepository(firestore) {
2833
- var _this = _super.call(this) || this;
2834
- _this.firestore = firestore;
2835
- _this.collectionName = 'checkoutsSubscription';
2836
- _this.model = CheckoutSubscription;
2837
- return _this;
2838
- }
2839
- return CheckoutSubscriptionFirestoreRepository;
2840
- }(withCrudFirestore(withHelpers(withFirestore(Base)))));
2841
-
2842
2653
  var CouponFirestoreRepository = /** @class */ (function (_super) {
2843
2654
  __extends(CouponFirestoreRepository, _super);
2844
2655
  function CouponFirestoreRepository(firestore) {
@@ -2877,8 +2688,7 @@
2877
2688
  var _a;
2878
2689
  if (!!((_a = order === null || order === void 0 ? void 0 : order.lineItems) === null || _a === void 0 ? void 0 : _a.length)) {
2879
2690
  order.lineItems = order.lineItems.map(function (lineItem) {
2880
- var _a;
2881
- if (!!((_a = lineItem.price) === null || _a === void 0 ? void 0 : _a[order.shop])) {
2691
+ if (!!lineItem.price[order.shop]) {
2882
2692
  var shopPrice = lineItem['price'][order.shop];
2883
2693
  lineItem['price'] = shopPrice;
2884
2694
  }
@@ -2889,9 +2699,6 @@
2889
2699
  };
2890
2700
  _this.collectionName = 'orders';
2891
2701
  _this.model = Order;
2892
- _this.fields = {
2893
- status: FirestoreFieldType.String,
2894
- };
2895
2702
  return _this;
2896
2703
  }
2897
2704
  OrderFirestoreRepository.prototype.buildModelInstance = function () {
@@ -2908,17 +2715,6 @@
2908
2715
  return OrderFirestoreRepository;
2909
2716
  }(withCrudFirestore(withHelpers(withFirestore(Base)))));
2910
2717
 
2911
- var LegacyOrderFirestoreRepository = /** @class */ (function (_super) {
2912
- __extends(LegacyOrderFirestoreRepository, _super);
2913
- function LegacyOrderFirestoreRepository(firestore) {
2914
- var _this = _super.call(this, firestore) || this;
2915
- _this.firestore = firestore;
2916
- _this.collectionName = 'legacyOrders';
2917
- return _this;
2918
- }
2919
- return LegacyOrderFirestoreRepository;
2920
- }(OrderFirestoreRepository));
2921
-
2922
2718
  var PaymentFirestoreRepository = /** @class */ (function (_super) {
2923
2719
  __extends(PaymentFirestoreRepository, _super);
2924
2720
  function PaymentFirestoreRepository(firestore) {
@@ -2931,6 +2727,18 @@
2931
2727
  return PaymentFirestoreRepository;
2932
2728
  }(withCrudFirestore(withHelpers(withFirestore(Base)))));
2933
2729
 
2730
+ var CheckoutSubscriptionFirestoreRepository = /** @class */ (function (_super) {
2731
+ __extends(CheckoutSubscriptionFirestoreRepository, _super);
2732
+ function CheckoutSubscriptionFirestoreRepository(firestore) {
2733
+ var _this = _super.call(this) || this;
2734
+ _this.firestore = firestore;
2735
+ _this.collectionName = 'checkoutsSubscription';
2736
+ _this.model = CheckoutSubscription;
2737
+ return _this;
2738
+ }
2739
+ return CheckoutSubscriptionFirestoreRepository;
2740
+ }(withCrudFirestore(withHelpers(withFirestore(Base)))));
2741
+
2934
2742
  var SubscriptionPlanFirestoreRepository = /** @class */ (function (_super) {
2935
2743
  __extends(SubscriptionPlanFirestoreRepository, _super);
2936
2744
  function SubscriptionPlanFirestoreRepository(firestore) {
@@ -2943,6 +2751,29 @@
2943
2751
  return SubscriptionPlanFirestoreRepository;
2944
2752
  }(withCrudFirestore(withHelpers(withFirestore(Base)))));
2945
2753
 
2754
+ var Buy2WinFirestoreRepository = /** @class */ (function (_super) {
2755
+ __extends(Buy2WinFirestoreRepository, _super);
2756
+ function Buy2WinFirestoreRepository(firestore) {
2757
+ var _this = _super.call(this) || this;
2758
+ _this.firestore = firestore;
2759
+ _this.collectionName = 'buy2win';
2760
+ _this.model = Buy2Win;
2761
+ return _this;
2762
+ }
2763
+ return Buy2WinFirestoreRepository;
2764
+ }(withCrudFirestore(withHelpers(withFirestore(Base)))));
2765
+
2766
+ var LegacyOrderFirestoreRepository = /** @class */ (function (_super) {
2767
+ __extends(LegacyOrderFirestoreRepository, _super);
2768
+ function LegacyOrderFirestoreRepository(firestore) {
2769
+ var _this = _super.call(this, firestore) || this;
2770
+ _this.firestore = firestore;
2771
+ _this.collectionName = 'legacyOrders';
2772
+ return _this;
2773
+ }
2774
+ return LegacyOrderFirestoreRepository;
2775
+ }(OrderFirestoreRepository));
2776
+
2946
2777
  var HomeFirestoreRepository = /** @class */ (function (_super) {
2947
2778
  __extends(HomeFirestoreRepository, _super);
2948
2779
  function HomeFirestoreRepository(firestore) {
@@ -3529,19 +3360,21 @@
3529
3360
  };
3530
3361
  HasuraGraphQLMixin.prototype.fetch = function (params) {
3531
3362
  return __awaiter(this, void 0, void 0, function () {
3532
- var headers, result;
3363
+ var headers, response, result;
3533
3364
  return __generator(this, function (_a) {
3534
3365
  switch (_a.label) {
3535
3366
  case 0:
3536
3367
  headers = this.headers;
3537
- return [4 /*yield*/, axios__default["default"]({
3538
- url: "" + this.endpoint,
3368
+ return [4 /*yield*/, fetch__default["default"]("" + this.endpoint, {
3539
3369
  method: 'POST',
3540
- data: params,
3370
+ body: JSON.stringify(params),
3541
3371
  headers: headers,
3542
3372
  })];
3543
3373
  case 1:
3544
- result = (_a.sent()).data;
3374
+ response = _a.sent();
3375
+ return [4 /*yield*/, response.json()];
3376
+ case 2:
3377
+ result = _a.sent();
3545
3378
  if (!lodash.isNil(result.errors))
3546
3379
  throw new Error(JSON.stringify(result.errors));
3547
3380
  return [2 /*return*/, result.data];
@@ -3713,16 +3546,14 @@
3713
3546
  function FindHasuraGraphQLMixin() {
3714
3547
  return _super !== null && _super.apply(this, arguments) || this;
3715
3548
  }
3716
- FindHasuraGraphQLMixin.prototype.find = function (params) {
3717
- var _a;
3549
+ FindHasuraGraphQLMixin.prototype.find = function (options) {
3718
3550
  return __awaiter(this, void 0, void 0, function () {
3719
- var _b, filters, limits, orderBy, options, enableCount, variablesCount, variables, result, data;
3551
+ var _b, filters, limits, orderBy, variablesCount, variables, result, data, count;
3720
3552
  var _this = this;
3721
3553
  return __generator(this, function (_c) {
3722
3554
  switch (_c.label) {
3723
3555
  case 0:
3724
- _b = params || {}, filters = _b.filters, limits = _b.limits, orderBy = _b.orderBy, options = _b.options;
3725
- enableCount = (_a = options === null || options === void 0 ? void 0 : options.enableCount) !== null && _a !== void 0 ? _a : true;
3556
+ _b = options || {}, filters = _b.filters, limits = _b.limits, orderBy = _b.orderBy;
3726
3557
  variablesCount = Object.assign(Object.assign({}, (lodash.isNil(orderBy) ? {} : { order_by: { type: this.tableName + "_order_by!", list: true, value: orderBy } })), (lodash.isNil(filters)
3727
3558
  ? {}
3728
3559
  : {
@@ -3733,11 +3564,11 @@
3733
3564
  },
3734
3565
  }));
3735
3566
  variables = Object.assign(Object.assign({}, (lodash.isNil(limits) ? {} : limits)), variablesCount);
3736
- return [4 /*yield*/, this.query(__spreadArray([
3567
+ return [4 /*yield*/, this.query([
3737
3568
  {
3738
3569
  operation: this.tableName,
3739
- fields: params.fields
3740
- ? params.fields
3570
+ fields: options.fields
3571
+ ? options.fields
3741
3572
  .map(function (fieldName) {
3742
3573
  var _a;
3743
3574
  return (_a = _this.fields.find(function (fieldOption) { return fieldOption === fieldName; })) !== null && _a !== void 0 ? _a : _this.fields.find(function (fieldOption) { return Object.keys(fieldOption).shift() === fieldName; });
@@ -3745,20 +3576,18 @@
3745
3576
  .filter(Boolean)
3746
3577
  : this.fields,
3747
3578
  variables: variables,
3748
- }
3749
- ], __read((enableCount
3750
- ? [
3751
- {
3752
- operation: this.tableName + "_aggregate",
3753
- fields: [{ aggregate: ['count'] }],
3754
- variables: variablesCount,
3755
- },
3756
- ]
3757
- : []))))];
3579
+ },
3580
+ {
3581
+ operation: this.tableName + "_aggregate",
3582
+ fields: [{ aggregate: ['count'] }],
3583
+ variables: variablesCount,
3584
+ },
3585
+ ])];
3758
3586
  case 1:
3759
3587
  result = _c.sent();
3760
3588
  data = result[this.tableName].map(function (row) { return _this.convertDataFromHasura(row); });
3761
- return [2 /*return*/, { data: data, count: enableCount ? result[this.tableName + "_aggregate"].aggregate.count : Infinity }];
3589
+ count = result[this.tableName + "_aggregate"].aggregate.count;
3590
+ return [2 /*return*/, { count: count, data: data }];
3762
3591
  }
3763
3592
  });
3764
3593
  });
@@ -3912,7 +3741,7 @@
3912
3741
  switch (_d.label) {
3913
3742
  case 0:
3914
3743
  if (!Number.isNaN(+identifiers.id)) return [3 /*break*/, 2];
3915
- return [4 /*yield*/, this.find({ filters: { firestoreId: identifiers.id }, options: { enableCount: false } })];
3744
+ return [4 /*yield*/, this.find({ filters: { firestoreId: identifiers.id } })];
3916
3745
  case 1:
3917
3746
  _c = (_a = (_d.sent()).data) === null || _a === void 0 ? void 0 : _a[0];
3918
3747
  return [3 /*break*/, 3];
@@ -3966,19 +3795,19 @@
3966
3795
  };
3967
3796
  CategoryHasuraGraphQLRepository.prototype.getCategoryBySlug = function (slug, shop) {
3968
3797
  return __awaiter(this, void 0, void 0, function () {
3969
- var data;
3970
- return __generator(this, function (_c) {
3971
- switch (_c.label) {
3798
+ var _c, data, count;
3799
+ return __generator(this, function (_d) {
3800
+ switch (_d.label) {
3972
3801
  case 0:
3973
3802
  if (!slug)
3974
3803
  return [2 /*return*/];
3975
- return [4 /*yield*/, this.find({ filters: { slug: slug, shop: shop, published: true }, options: { enableCount: false } })];
3804
+ return [4 /*yield*/, this.find({ filters: { slug: slug, shop: shop, published: true } })];
3976
3805
  case 1:
3977
- data = (_c.sent()).data;
3978
- if (!data.length)
3979
- throw new NotFoundError("Category with slug " + slug + " not found");
3980
- if (data.length > 1)
3806
+ _c = _d.sent(), data = _c.data, count = _c.count;
3807
+ if (count > 1)
3981
3808
  throw new DuplicatedResultsError('Query returned duplicated values');
3809
+ if (!count)
3810
+ throw new NotFoundError("Category with slug " + slug + " not found");
3982
3811
  return [2 /*return*/, data.shift()];
3983
3812
  }
3984
3813
  });
@@ -3987,46 +3816,17 @@
3987
3816
  CategoryHasuraGraphQLRepository.prototype.getCategoriesForHome = function (categoryIds, limit) {
3988
3817
  if (limit === void 0) { limit = 4; }
3989
3818
  return __awaiter(this, void 0, void 0, function () {
3990
- var categoriesFirestore, categoriesHasura, categories, _c, _d, _e, _f, _g, _h, _j, _k, homeSections;
3819
+ var _c, categories, count, homeSections;
3991
3820
  var _this = this;
3992
- return __generator(this, function (_l) {
3993
- switch (_l.label) {
3994
- case 0:
3995
- if (!(categoryIds === null || categoryIds === void 0 ? void 0 : categoryIds.length))
3996
- return [2 /*return*/, []];
3997
- categoriesFirestore = categoryIds.filter(function (categoryId) { return Number.isNaN(+categoryId); });
3998
- categoriesHasura = categoryIds.filter(function (categoryId) { return +categoryId > 0; });
3999
- categories = [];
4000
- if (!categoriesFirestore.length) return [3 /*break*/, 2];
4001
- _d = (_c = categories.push).apply;
4002
- _e = [categories];
4003
- _f = [[]];
4004
- return [4 /*yield*/, this.find({
4005
- filters: { firestoreId: { operator: exports.Where.IN, value: categoriesFirestore.filter(Boolean) }, published: true },
4006
- }).then(function (_c) {
4007
- var data = _c.data;
4008
- return data;
4009
- })];
3821
+ return __generator(this, function (_d) {
3822
+ switch (_d.label) {
3823
+ case 0: return [4 /*yield*/, this.find({
3824
+ filters: { firestoreId: { operator: exports.Where.IN, value: categoryIds.filter(Boolean) }, published: true },
3825
+ })];
4010
3826
  case 1:
4011
- _d.apply(_c, _e.concat([__spreadArray.apply(void 0, _f.concat([__read.apply(void 0, [(_l.sent())])]))]));
4012
- _l.label = 2;
4013
- case 2:
4014
- if (!categoriesHasura.length) return [3 /*break*/, 4];
4015
- _h = (_g = categories.push).apply;
4016
- _j = [categories];
4017
- _k = [[]];
4018
- return [4 /*yield*/, this.find({
4019
- filters: { id: { operator: exports.Where.IN, value: categoriesHasura.filter(Boolean) }, published: true },
4020
- }).then(function (_c) {
4021
- var data = _c.data;
4022
- return data;
4023
- })];
4024
- case 3:
4025
- _h.apply(_g, _j.concat([__spreadArray.apply(void 0, _k.concat([__read.apply(void 0, [(_l.sent())])]))]));
4026
- _l.label = 4;
4027
- case 4:
4028
- if (!categories.length)
4029
- return [2 /*return*/, []];
3827
+ _c = _d.sent(), categories = _c.data, count = _c.count;
3828
+ if (!count)
3829
+ throw new NotFoundError('Categories not found');
4030
3830
  return [4 /*yield*/, Promise.all(categories.map(function (category) { return __awaiter(_this, void 0, void 0, function () {
4031
3831
  var _c;
4032
3832
  return __generator(this, function (_d) {
@@ -4041,24 +3841,23 @@
4041
3841
  }
4042
3842
  });
4043
3843
  }); }))];
4044
- case 5:
4045
- homeSections = _l.sent();
3844
+ case 2:
3845
+ homeSections = _d.sent();
4046
3846
  return [2 /*return*/, homeSections];
4047
3847
  }
4048
3848
  });
4049
3849
  });
4050
3850
  };
4051
3851
  CategoryHasuraGraphQLRepository.prototype.mountCategory = function (category, options) {
4052
- var _a;
4053
3852
  return __awaiter(this, void 0, void 0, function () {
4054
3853
  var products, productsData;
4055
3854
  return __generator(this, function (_c) {
4056
3855
  switch (_c.label) {
4057
3856
  case 0:
4058
- if (!((_a = category === null || category === void 0 ? void 0 : category.products) === null || _a === void 0 ? void 0 : _a.length))
4059
- return [2 /*return*/, []];
3857
+ if (!category.products)
3858
+ throw new RequiredArgumentError(['Category products is empty']);
4060
3859
  products = [];
4061
- return [4 /*yield*/, this.productRepository.find(Object.assign(Object.assign({ filters: Object.assign({ id: { operator: exports.Where.IN, value: category.products }, published: true }, ((options === null || options === void 0 ? void 0 : options.hasStock) ? { stock: { quantity: { operator: exports.Where.GT, value: 0 } } } : {})), fields: [
3860
+ return [4 /*yield*/, this.productRepository.find(Object.assign({ filters: Object.assign({ id: { operator: exports.Where.IN, value: category.products }, published: true }, ((options === null || options === void 0 ? void 0 : options.hasStock) ? { stock: { quantity: { operator: exports.Where.GT, value: 0 } } } : {})), fields: [
4062
3861
  'id',
4063
3862
  'name',
4064
3863
  'slug',
@@ -4082,7 +3881,7 @@
4082
3881
  'tags',
4083
3882
  'type',
4084
3883
  'shoppingCount',
4085
- ] }, ((options === null || options === void 0 ? void 0 : options.limit) ? { limits: { limit: options === null || options === void 0 ? void 0 : options.limit } } : {})), { options: { enableCount: false } }))];
3884
+ ] }, ((options === null || options === void 0 ? void 0 : options.limit) ? { limits: { limit: options === null || options === void 0 ? void 0 : options.limit } } : {})))];
4086
3885
  case 1:
4087
3886
  productsData = (_c.sent()).data;
4088
3887
  products.push.apply(products, __spreadArray([], __read(productsData)));
@@ -4100,7 +3899,7 @@
4100
3899
  case 0:
4101
3900
  if (!Number.isNaN(+id))
4102
3901
  return [2 /*return*/, id];
4103
- return [4 /*yield*/, this.find({ filters: { firestoreId: id }, options: { enableCount: false } })];
3902
+ return [4 /*yield*/, this.find({ filters: { firestoreId: id } })];
4104
3903
  case 1:
4105
3904
  data = (_c.sent()).data;
4106
3905
  if ((_a = data === null || data === void 0 ? void 0 : data[0]) === null || _a === void 0 ? void 0 : _a.id)
@@ -4420,7 +4219,7 @@
4420
4219
  switch (_f.label) {
4421
4220
  case 0:
4422
4221
  if (!Number.isNaN(+identifiers.id)) return [3 /*break*/, 2];
4423
- return [4 /*yield*/, this.find({ filters: { firestoreId: identifiers.id }, options: { enableCount: false } })];
4222
+ return [4 /*yield*/, this.find({ filters: { firestoreId: identifiers.id } })];
4424
4223
  case 1:
4425
4224
  _c = (_a = (_f.sent()).data) === null || _a === void 0 ? void 0 : _a[0];
4426
4225
  return [3 /*break*/, 4];
@@ -4465,21 +4264,21 @@
4465
4264
  ProductHasuraGraphQLRepository.prototype.getBySlug = function (slug) {
4466
4265
  var _a;
4467
4266
  return __awaiter(this, void 0, void 0, function () {
4468
- var result, product;
4469
- return __generator(this, function (_c) {
4470
- switch (_c.label) {
4267
+ var result, product, _c;
4268
+ return __generator(this, function (_d) {
4269
+ switch (_d.label) {
4471
4270
  case 0: return [4 /*yield*/, this.find({
4472
4271
  filters: {
4473
4272
  slug: slug,
4474
4273
  },
4475
- fields: this.fields.map(function (field) { return typeof field === 'string' ? field : Object.keys(field).shift(); }),
4476
- options: {
4477
- enableCount: false,
4478
- },
4479
4274
  })];
4480
4275
  case 1:
4481
- result = _c.sent();
4276
+ result = _d.sent();
4482
4277
  product = (_a = result === null || result === void 0 ? void 0 : result.data) === null || _a === void 0 ? void 0 : _a.shift();
4278
+ _c = product;
4279
+ return [4 /*yield*/, this.findReviewsByProduct(+product.id)];
4280
+ case 2:
4281
+ _c.reviews = _d.sent();
4483
4282
  return [2 /*return*/, product];
4484
4283
  }
4485
4284
  });
@@ -4760,7 +4559,7 @@
4760
4559
  case 0:
4761
4560
  if (!Number.isNaN(+id))
4762
4561
  return [2 /*return*/, id];
4763
- return [4 /*yield*/, this.find({ filters: { firestoreId: id }, options: { enableCount: false } })];
4562
+ return [4 /*yield*/, this.find({ filters: { firestoreId: id } })];
4764
4563
  case 1:
4765
4564
  data = (_c.sent()).data;
4766
4565
  if ((_a = data === null || data === void 0 ? void 0 : data[0]) === null || _a === void 0 ? void 0 : _a.id)
@@ -4990,7 +4789,7 @@
4990
4789
  case 0:
4991
4790
  if (!Number.isNaN(+id))
4992
4791
  return [2 /*return*/, id];
4993
- return [4 /*yield*/, this.find({ filters: { firestoreId: id }, options: { enableCount: false } })];
4792
+ return [4 /*yield*/, this.find({ filters: { firestoreId: id } })];
4994
4793
  case 1:
4995
4794
  data = (_c.sent()).data;
4996
4795
  if ((_a = data === null || data === void 0 ? void 0 : data[0]) === null || _a === void 0 ? void 0 : _a.id)
@@ -5117,10 +4916,6 @@
5117
4916
  exports.BeautyQuestionsHelper = BeautyQuestionsHelper;
5118
4917
  exports.Buy2Win = Buy2Win;
5119
4918
  exports.Buy2WinFirestoreRepository = Buy2WinFirestoreRepository;
5120
- exports.CampaignDashboard = CampaignDashboard;
5121
- exports.CampaignDashboardFirestoreRepository = CampaignDashboardFirestoreRepository;
5122
- exports.CampaignHashtag = CampaignHashtag;
5123
- exports.CampaignHashtagFirestoreRepository = CampaignHashtagFirestoreRepository;
5124
4919
  exports.Category = Category;
5125
4920
  exports.CategoryFirestoreRepository = CategoryFirestoreRepository;
5126
4921
  exports.CategoryHasuraGraphQL = CategoryHasuraGraphQL;