@infrab4a/connect 3.2.8 → 3.3.0-beta.1

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.
@@ -1354,8 +1354,8 @@
1354
1354
  OrderStatus["EM_PREPARO"] = "Preparando pedido";
1355
1355
  OrderStatus["NF_EMITIDA"] = "Nota Fiscal Emitida";
1356
1356
  OrderStatus["AGUARDANDO_ENVIO"] = "Aguardando Transaportadora";
1357
- OrderStatus["ENVIADO"] = "Pedido Enviado";
1358
- OrderStatus["ENTREGUE"] = "Pedido entregue";
1357
+ OrderStatus["ENVIADO"] = "Enviado";
1358
+ OrderStatus["ENTREGUE"] = "Entregue";
1359
1359
  OrderStatus["CANCELADO"] = "Cancelado";
1360
1360
  OrderStatus["CREDIT_CARD"] = "credit_card";
1361
1361
  })(exports.OrderStatus || (exports.OrderStatus = {}));
@@ -1865,6 +1865,30 @@
1865
1865
  }());
1866
1866
 
1867
1867
  var withFirestore = function (MixinBase) {
1868
+ var isObjectsAndNoDate = function (data) { return data &&
1869
+ !Array.isArray(data) &&
1870
+ typeof data === 'object' &&
1871
+ (data === null || data === void 0 ? void 0 : data.constructor.name) !== 'Timestamp' &&
1872
+ !('seconds' in data); };
1873
+ var bindDate = function (data, keyName) {
1874
+ if ((data === null || data === void 0 ? void 0 : data.constructor.name) === 'Timestamp')
1875
+ return data.toDate();
1876
+ if (data && typeof data === 'object' && 'seconds' in data)
1877
+ return new Date(data.seconds * 1000);
1878
+ if (typeof data === 'number' && ['createdAt', 'updatedAt'].includes(keyName))
1879
+ return new Date(data);
1880
+ return data;
1881
+ };
1882
+ var bindAllDateFromObject = function (data) {
1883
+ return Object.keys(data).reduce(function (object, key) {
1884
+ var _a;
1885
+ return (Object.assign(Object.assign({}, object), (_a = {}, _a[key] = isObjectsAndNoDate(data[key])
1886
+ ? bindAllDateFromObject(data[key])
1887
+ : Array.isArray(data[key])
1888
+ ? data[key].map(function (element) { return (isObjectsAndNoDate(element) ? bindAllDateFromObject(element) : element); })
1889
+ : bindDate(data[key], key), _a)));
1890
+ }, {});
1891
+ };
1868
1892
  return /** @class */ (function (_super) {
1869
1893
  __extends(class_1, _super);
1870
1894
  function class_1() {
@@ -1879,12 +1903,18 @@
1879
1903
  toFirestore: function (data) { return ((data === null || data === void 0 ? void 0 : data.toPlain) ? data.toPlain() : data); },
1880
1904
  fromFirestore: function (snap) {
1881
1905
  var data = snap.data();
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 }));
1906
+ var bindedData;
1907
+ try {
1908
+ var ids = { id: snap.id };
1909
+ bindedData = bindAllDateFromObject(data);
1910
+ return _this.model.toInstance(Object.assign(Object.assign({}, bindedData), ids));
1911
+ }
1912
+ catch (error) {
1913
+ console.info('id', snap.id);
1914
+ console.info('data', JSON.stringify(bindedData));
1915
+ console.error(error);
1916
+ throw error;
1917
+ }
1888
1918
  },
1889
1919
  };
1890
1920
  };
@@ -1946,6 +1976,16 @@
1946
1976
  }(MixinBase));
1947
1977
  };
1948
1978
 
1979
+ var FirestoreFieldType;
1980
+ (function (FirestoreFieldType) {
1981
+ FirestoreFieldType["String"] = "string";
1982
+ FirestoreFieldType["Number"] = "number";
1983
+ FirestoreFieldType["Boolean"] = "boolean";
1984
+ FirestoreFieldType["Timestamp"] = "timestamp";
1985
+ FirestoreFieldType["Array"] = "array";
1986
+ FirestoreFieldType["Map"] = "map";
1987
+ })(FirestoreFieldType || (FirestoreFieldType = {}));
1988
+
1949
1989
  var withFindFirestore = function (MixinBase) {
1950
1990
  var checkIfIsFilterOption = function (filter) { return !lodash.isNil(filter === null || filter === void 0 ? void 0 : filter.operator); };
1951
1991
  var getValueFromFilter = function (filter) {
@@ -1970,13 +2010,16 @@
1970
2010
  ? fieldName.toString()
1971
2011
  : Object.keys(plainInstance).find(function (key) { return plainInstance[key]; });
1972
2012
  if ((options === null || options === void 0 ? void 0 : options.operator) === exports.Where.LIKE) {
1973
- if (Array.isArray(options === null || options === void 0 ? void 0 : options.value))
2013
+ if (Array.isArray(options === null || options === void 0 ? void 0 : options.value) &&
2014
+ (_this.fields[firestoreFieldName] === FirestoreFieldType.Array || !_this.fields[firestoreFieldName]))
1974
2015
  return queryReference.where(firestoreFieldName, 'array-contains-any', options.value);
1975
2016
  queryReference = queryReference.where(firestoreFieldName, '>=', options.value);
1976
2017
  queryReference = queryReference.where(firestoreFieldName, '<=', options.value + "~");
1977
2018
  return queryReference;
1978
2019
  }
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))
2020
+ if ((options === null || options === void 0 ? void 0 : options.operator) === exports.Where.IN &&
2021
+ Array.isArray(options === null || options === void 0 ? void 0 : options.value) &&
2022
+ (_this.fields[firestoreFieldName] === FirestoreFieldType.Array || !_this.fields[firestoreFieldName]))
1980
2023
  return queryReference.where(firestoreFieldName, 'array-contains', options.value);
1981
2024
  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)) {
1982
2025
  return Object.keys(options).reduce(function (queryReferenceWithWhere, key) { return _this.buildWhereSentence(queryReferenceWithWhere, fieldName.toString() + "." + key, options[key]); }, queryReference);
@@ -2688,7 +2731,8 @@
2688
2731
  var _a;
2689
2732
  if (!!((_a = order === null || order === void 0 ? void 0 : order.lineItems) === null || _a === void 0 ? void 0 : _a.length)) {
2690
2733
  order.lineItems = order.lineItems.map(function (lineItem) {
2691
- if (!!lineItem.price[order.shop]) {
2734
+ var _a;
2735
+ if (!!((_a = lineItem.price) === null || _a === void 0 ? void 0 : _a[order.shop])) {
2692
2736
  var shopPrice = lineItem['price'][order.shop];
2693
2737
  lineItem['price'] = shopPrice;
2694
2738
  }
@@ -2699,6 +2743,9 @@
2699
2743
  };
2700
2744
  _this.collectionName = 'orders';
2701
2745
  _this.model = Order;
2746
+ _this.fields = {
2747
+ status: FirestoreFieldType.String,
2748
+ };
2702
2749
  return _this;
2703
2750
  }
2704
2751
  OrderFirestoreRepository.prototype.buildModelInstance = function () {