@infrab4a/connect 3.3.3-beta.0 → 3.3.3-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.
- package/bundles/infrab4a-connect.umd.js +471 -14
- package/bundles/infrab4a-connect.umd.js.map +1 -1
- package/domain/catalog/models/category-filter.d.ts +9 -0
- package/domain/catalog/models/category.d.ts +3 -2
- package/domain/catalog/models/filter-option.d.ts +10 -0
- package/domain/catalog/models/filter.d.ts +13 -0
- package/domain/catalog/models/index.d.ts +3 -0
- package/domain/catalog/models/product.d.ts +1 -0
- package/domain/catalog/models/types/index.d.ts +0 -1
- package/domain/catalog/repositories/category-filter.repository.d.ts +5 -0
- package/domain/catalog/repositories/filter-option.repository.d.ts +4 -0
- package/domain/catalog/repositories/filter.repository.d.ts +4 -0
- package/domain/catalog/repositories/index.d.ts +3 -0
- package/domain/catalog/repositories/product.repository.d.ts +1 -0
- package/esm2015/domain/catalog/models/category-filter.js +10 -0
- package/esm2015/domain/catalog/models/category.js +8 -1
- package/esm2015/domain/catalog/models/filter-option.js +10 -0
- package/esm2015/domain/catalog/models/filter.js +10 -0
- package/esm2015/domain/catalog/models/index.js +4 -1
- package/esm2015/domain/catalog/models/product.js +1 -1
- package/esm2015/domain/catalog/models/types/index.js +1 -2
- package/esm2015/domain/catalog/repositories/category-filter.repository.js +2 -0
- package/esm2015/domain/catalog/repositories/filter-option.repository.js +2 -0
- package/esm2015/domain/catalog/repositories/filter.repository.js +2 -0
- package/esm2015/domain/catalog/repositories/index.js +4 -1
- package/esm2015/domain/catalog/repositories/product.repository.js +1 -1
- package/esm2015/infra/elasticsearch/indexes/products-index.js +3 -2
- package/esm2015/infra/firebase/firestore/repositories/catalog/product-firestore.repository.js +4 -1
- package/esm2015/infra/hasura-graphql/mixins/helpers/attribute-option.helper.js +2 -2
- package/esm2015/infra/hasura-graphql/repositories/catalog/category-filter-hasura-graphql.repository.js +24 -0
- package/esm2015/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.js +84 -4
- package/esm2015/infra/hasura-graphql/repositories/catalog/filter-hasura-graphql.repository.js +123 -0
- package/esm2015/infra/hasura-graphql/repositories/catalog/filter-option-hasura-graphql.repository.js +21 -0
- package/esm2015/infra/hasura-graphql/repositories/catalog/index.js +4 -1
- package/esm2015/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.js +17 -1
- package/esm2015/infra/hasura-graphql/types/hasura-graphql-fields.type.js +1 -1
- package/fesm2015/infrab4a-connect.js +295 -6
- package/fesm2015/infrab4a-connect.js.map +1 -1
- package/infra/firebase/firestore/repositories/catalog/product-firestore.repository.d.ts +1 -0
- package/infra/hasura-graphql/repositories/catalog/category-filter-hasura-graphql.repository.d.ts +11 -0
- package/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.d.ts +4 -1
- package/infra/hasura-graphql/repositories/catalog/filter-hasura-graphql.repository.d.ts +18 -0
- package/infra/hasura-graphql/repositories/catalog/filter-option-hasura-graphql.repository.d.ts +10 -0
- package/infra/hasura-graphql/repositories/catalog/index.d.ts +3 -0
- package/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.d.ts +1 -0
- package/infra/hasura-graphql/types/hasura-graphql-fields.type.d.ts +1 -1
- package/package.json +1 -1
- package/domain/catalog/models/types/category-filter.type.d.ts +0 -4
- package/esm2015/domain/catalog/models/types/category-filter.type.js +0 -2
|
@@ -750,6 +750,15 @@ class RecoveryPassword {
|
|
|
750
750
|
}
|
|
751
751
|
}
|
|
752
752
|
|
|
753
|
+
class Filter extends BaseModel {
|
|
754
|
+
identifierFields() {
|
|
755
|
+
return ['id'];
|
|
756
|
+
}
|
|
757
|
+
static get identifiersFields() {
|
|
758
|
+
return ['id'];
|
|
759
|
+
}
|
|
760
|
+
}
|
|
761
|
+
|
|
753
762
|
class Category extends BaseModel {
|
|
754
763
|
identifierFields() {
|
|
755
764
|
return ['id'];
|
|
@@ -757,6 +766,19 @@ class Category extends BaseModel {
|
|
|
757
766
|
static get identifiersFields() {
|
|
758
767
|
return ['id'];
|
|
759
768
|
}
|
|
769
|
+
}
|
|
770
|
+
__decorate([
|
|
771
|
+
Type(() => Filter),
|
|
772
|
+
__metadata("design:type", Array)
|
|
773
|
+
], Category.prototype, "filters", void 0);
|
|
774
|
+
|
|
775
|
+
class CategoryFilter extends BaseModel {
|
|
776
|
+
// identifierFields(): NonFunctionPropertyNames<CategoryFilter>[] {
|
|
777
|
+
// return ['id']
|
|
778
|
+
// }
|
|
779
|
+
static get identifiersFields() {
|
|
780
|
+
return ['id', 'filterId', 'categoryId'];
|
|
781
|
+
}
|
|
760
782
|
}
|
|
761
783
|
|
|
762
784
|
var GenderDestination;
|
|
@@ -774,6 +796,15 @@ var Shops;
|
|
|
774
796
|
Shops["ALL"] = "ALL";
|
|
775
797
|
})(Shops || (Shops = {}));
|
|
776
798
|
|
|
799
|
+
class FilterOption extends BaseModel {
|
|
800
|
+
identifierFields() {
|
|
801
|
+
return ['id'];
|
|
802
|
+
}
|
|
803
|
+
static get identifiersFields() {
|
|
804
|
+
return ['id'];
|
|
805
|
+
}
|
|
806
|
+
}
|
|
807
|
+
|
|
777
808
|
class Product extends BaseModel {
|
|
778
809
|
identifierFields() {
|
|
779
810
|
return ['id'];
|
|
@@ -1121,8 +1152,9 @@ class ProductsIndex {
|
|
|
1121
1152
|
'stock',
|
|
1122
1153
|
'weight',
|
|
1123
1154
|
'tags',
|
|
1155
|
+
'filters',
|
|
1124
1156
|
'hasVariants',
|
|
1125
|
-
'type'
|
|
1157
|
+
'type',
|
|
1126
1158
|
];
|
|
1127
1159
|
const { hits } = yield this.adapter.query('products/_search', Object.assign({ _source: fields, query: {
|
|
1128
1160
|
bool: {
|
|
@@ -1726,6 +1758,9 @@ class ProductFirestoreRepository extends withCrudFirestore(withHelpers(withFires
|
|
|
1726
1758
|
return this.reviews[status];
|
|
1727
1759
|
});
|
|
1728
1760
|
}
|
|
1761
|
+
cleanShoppingCountFromIds(ids) {
|
|
1762
|
+
return;
|
|
1763
|
+
}
|
|
1729
1764
|
}
|
|
1730
1765
|
|
|
1731
1766
|
class ProductVariantFirestoreRepository extends withSubCollection(withCrudFirestore(withHelpers(withFirestore(Base))), Product) {
|
|
@@ -2020,7 +2055,7 @@ class AttributeOptionHelper {
|
|
|
2020
2055
|
}
|
|
2021
2056
|
AttributeOptionHelper.FindByAttribute = (attributeName, fields) => {
|
|
2022
2057
|
if (fields.includes(attributeName))
|
|
2023
|
-
return { columnName: attributeName.toString(), attributeName };
|
|
2058
|
+
return { columnName: attributeName.toString(), attributeName, to: (value) => value, from: (value) => value };
|
|
2024
2059
|
const field = fields.find((columnOption) => isObject(columnOption) && Object.keys(columnOption).includes(attributeName.toString()));
|
|
2025
2060
|
const fieldOption = field === null || field === void 0 ? void 0 : field[attributeName.toString()];
|
|
2026
2061
|
if (isNil(fieldOption))
|
|
@@ -2546,8 +2581,29 @@ class VariantHasuraGraphQL extends Variant {
|
|
|
2546
2581
|
}
|
|
2547
2582
|
}
|
|
2548
2583
|
|
|
2584
|
+
class CategoryFilterHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGraphQL(Base)) {
|
|
2585
|
+
constructor(endpoint, authOptions) {
|
|
2586
|
+
super({
|
|
2587
|
+
tableName: 'category_filter',
|
|
2588
|
+
model: CategoryFilter,
|
|
2589
|
+
endpoint,
|
|
2590
|
+
authOptions,
|
|
2591
|
+
fields: ['id', { filterId: { columnName: 'filter_id' } }, { categoryId: { columnName: 'category_id' } }],
|
|
2592
|
+
});
|
|
2593
|
+
}
|
|
2594
|
+
deleteByCategoryAndFilter(categoryId, filterId) {
|
|
2595
|
+
return this.mutation('delete_category_filter', ['affected_rows'], {
|
|
2596
|
+
where: {
|
|
2597
|
+
type: 'category_filter_bool_exp',
|
|
2598
|
+
required: true,
|
|
2599
|
+
value: { category_id: { _eq: categoryId }, filter_id: { _eq: filterId } },
|
|
2600
|
+
},
|
|
2601
|
+
});
|
|
2602
|
+
}
|
|
2603
|
+
}
|
|
2604
|
+
|
|
2549
2605
|
class CategoryHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGraphQL(Base)) {
|
|
2550
|
-
constructor(endpoint, authOptions, productRepository) {
|
|
2606
|
+
constructor(endpoint, authOptions, productRepository, categoryFilterRepository) {
|
|
2551
2607
|
super({
|
|
2552
2608
|
tableName: 'category',
|
|
2553
2609
|
model: Category,
|
|
@@ -2583,7 +2639,17 @@ class CategoryHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGr
|
|
|
2583
2639
|
},
|
|
2584
2640
|
},
|
|
2585
2641
|
},
|
|
2586
|
-
|
|
2642
|
+
{
|
|
2643
|
+
filters: {
|
|
2644
|
+
columnName: 'filters',
|
|
2645
|
+
foreignKeyColumn: { filter_id: 'id' },
|
|
2646
|
+
fields: [{ filter: ['id', 'description', 'slug', 'enabled'] }],
|
|
2647
|
+
bindPersistData: (value) => ({
|
|
2648
|
+
filters: { data: value.map((filter) => ({ filter_id: filter.id })) },
|
|
2649
|
+
}),
|
|
2650
|
+
from: (filters) => (filters === null || filters === void 0 ? void 0 : filters.map((filter) => filter === null || filter === void 0 ? void 0 : filter.filter)) || [],
|
|
2651
|
+
},
|
|
2652
|
+
},
|
|
2587
2653
|
{ createdAt: { columnName: 'created_at' } },
|
|
2588
2654
|
{ updatedAt: { columnName: 'updated_at' } },
|
|
2589
2655
|
{
|
|
@@ -2608,6 +2674,7 @@ class CategoryHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGr
|
|
|
2608
2674
|
],
|
|
2609
2675
|
});
|
|
2610
2676
|
this.productRepository = productRepository;
|
|
2677
|
+
this.categoryFilterRepository = categoryFilterRepository;
|
|
2611
2678
|
}
|
|
2612
2679
|
create(params) {
|
|
2613
2680
|
const _super = Object.create(null, {
|
|
@@ -2634,12 +2701,13 @@ class CategoryHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGr
|
|
|
2634
2701
|
update: { get: () => super.update }
|
|
2635
2702
|
});
|
|
2636
2703
|
return __awaiter(this, void 0, void 0, function* () {
|
|
2637
|
-
const { products, id: checkId, metadata } = params, data = __rest(params, ["products", "id", "metadata"]);
|
|
2704
|
+
const { products, id: checkId, metadata, filters } = params, data = __rest(params, ["products", "id", "metadata", "filters"]);
|
|
2638
2705
|
const plainData = this.paramsToPlain({ id: checkId });
|
|
2639
2706
|
const id = yield this.getId(plainData.id);
|
|
2640
2707
|
const category = yield _super.update.call(this, Object.assign({ id }, data));
|
|
2641
2708
|
category.products = products && (yield this.updateProducts(+id, { products }));
|
|
2642
2709
|
category.metadata = metadata && (yield this.updateMetadata(+id, { metadata }));
|
|
2710
|
+
category.filters = filters && (yield this.updateFilters(+id, { filters }));
|
|
2643
2711
|
return category;
|
|
2644
2712
|
});
|
|
2645
2713
|
}
|
|
@@ -2779,6 +2847,211 @@ class CategoryHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGr
|
|
|
2779
2847
|
return plainData.metadata;
|
|
2780
2848
|
});
|
|
2781
2849
|
}
|
|
2850
|
+
updateFilters(categoryId, { filters }) {
|
|
2851
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
2852
|
+
if ('action' in filters && filters.action === 'remove' && filters.value.length) {
|
|
2853
|
+
for (let i = 0; i < filters.value.length; i++) {
|
|
2854
|
+
yield this.categoryFilterRepository.deleteByCategoryAndFilter(categoryId, filters.value[i].id);
|
|
2855
|
+
}
|
|
2856
|
+
return [];
|
|
2857
|
+
}
|
|
2858
|
+
if ('action' in filters && filters.action === 'merge' && filters.value.length) {
|
|
2859
|
+
let filtersList = [];
|
|
2860
|
+
for (let i = 0; i < filters.value.length; i++) {
|
|
2861
|
+
try {
|
|
2862
|
+
const hasFilter = yield this.categoryFilterRepository
|
|
2863
|
+
.find({
|
|
2864
|
+
filters: {
|
|
2865
|
+
categoryId,
|
|
2866
|
+
filterId: filters.value[i].id,
|
|
2867
|
+
},
|
|
2868
|
+
})
|
|
2869
|
+
.then((data) => data.data.shift());
|
|
2870
|
+
if (hasFilter) {
|
|
2871
|
+
filtersList.push(hasFilter);
|
|
2872
|
+
}
|
|
2873
|
+
else {
|
|
2874
|
+
const newCategoryFilter = yield this.categoryFilterRepository.create({
|
|
2875
|
+
filterId: filters.value[i].id,
|
|
2876
|
+
categoryId,
|
|
2877
|
+
});
|
|
2878
|
+
filtersList.push(newCategoryFilter);
|
|
2879
|
+
}
|
|
2880
|
+
}
|
|
2881
|
+
catch (error) {
|
|
2882
|
+
console.log('catch error: ', error);
|
|
2883
|
+
}
|
|
2884
|
+
}
|
|
2885
|
+
return filtersList;
|
|
2886
|
+
}
|
|
2887
|
+
if (Array.isArray(filters) && filters.length) {
|
|
2888
|
+
let filtersList = [];
|
|
2889
|
+
for (let i = 0; i < filters.length; i++) {
|
|
2890
|
+
try {
|
|
2891
|
+
const hasFilter = yield this.categoryFilterRepository
|
|
2892
|
+
.find({
|
|
2893
|
+
filters: {
|
|
2894
|
+
categoryId,
|
|
2895
|
+
filterId: filters[i].id,
|
|
2896
|
+
},
|
|
2897
|
+
})
|
|
2898
|
+
.then((data) => data.data.shift());
|
|
2899
|
+
if (hasFilter) {
|
|
2900
|
+
filtersList.push(hasFilter);
|
|
2901
|
+
}
|
|
2902
|
+
else {
|
|
2903
|
+
const newCategoryFilter = yield this.categoryFilterRepository.create({
|
|
2904
|
+
filterId: filters[i].id,
|
|
2905
|
+
categoryId,
|
|
2906
|
+
});
|
|
2907
|
+
filtersList.push(newCategoryFilter);
|
|
2908
|
+
}
|
|
2909
|
+
}
|
|
2910
|
+
catch (error) {
|
|
2911
|
+
console.log('catch error: ', error);
|
|
2912
|
+
}
|
|
2913
|
+
}
|
|
2914
|
+
return filtersList;
|
|
2915
|
+
}
|
|
2916
|
+
});
|
|
2917
|
+
}
|
|
2918
|
+
}
|
|
2919
|
+
|
|
2920
|
+
class FilterHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGraphQL(Base)) {
|
|
2921
|
+
constructor(endpoint, authOptions, filterOptionRepository, categoryFilterRepository) {
|
|
2922
|
+
super({
|
|
2923
|
+
tableName: 'filter',
|
|
2924
|
+
model: Filter,
|
|
2925
|
+
endpoint,
|
|
2926
|
+
authOptions,
|
|
2927
|
+
fields: [
|
|
2928
|
+
'id',
|
|
2929
|
+
'description',
|
|
2930
|
+
'slug',
|
|
2931
|
+
'enabled',
|
|
2932
|
+
{ createdAt: { columnName: 'created_at' } },
|
|
2933
|
+
{ updatedAt: { columnName: 'updated_at' } },
|
|
2934
|
+
{
|
|
2935
|
+
options: {
|
|
2936
|
+
columnName: 'options',
|
|
2937
|
+
foreignKeyColumn: { filterId: 'id' },
|
|
2938
|
+
fields: [
|
|
2939
|
+
'id',
|
|
2940
|
+
{ filterId: { columnName: 'filter_id' } },
|
|
2941
|
+
'description',
|
|
2942
|
+
{ createdAt: { columnName: 'created_at' } },
|
|
2943
|
+
{ updatedAt: { columnName: 'updated_at' } },
|
|
2944
|
+
],
|
|
2945
|
+
},
|
|
2946
|
+
},
|
|
2947
|
+
],
|
|
2948
|
+
});
|
|
2949
|
+
this.filterOptionRepository = filterOptionRepository;
|
|
2950
|
+
this.categoryFilterRepository = categoryFilterRepository;
|
|
2951
|
+
}
|
|
2952
|
+
update(params) {
|
|
2953
|
+
const _super = Object.create(null, {
|
|
2954
|
+
update: { get: () => super.update }
|
|
2955
|
+
});
|
|
2956
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
2957
|
+
const { options } = params, data = __rest(params, ["options"]);
|
|
2958
|
+
const filter = yield _super.update.call(this, data);
|
|
2959
|
+
filter.options = yield this.updateOptions(+data.id, { options });
|
|
2960
|
+
return filter;
|
|
2961
|
+
});
|
|
2962
|
+
}
|
|
2963
|
+
updateOptions(filterId, { options }) {
|
|
2964
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
2965
|
+
if (!options)
|
|
2966
|
+
return [];
|
|
2967
|
+
if ('action' in options && options.action === 'remove' && options.value.length) {
|
|
2968
|
+
for (let i = 0; i < options.value.length; i++) {
|
|
2969
|
+
yield this.filterOptionRepository.delete({ id: options.value[i].id });
|
|
2970
|
+
}
|
|
2971
|
+
return [];
|
|
2972
|
+
}
|
|
2973
|
+
if ('action' in options && options.action === 'merge' && options.value.length) {
|
|
2974
|
+
let filterOptions = [];
|
|
2975
|
+
for (let i = 0; i < options.value.length; i++) {
|
|
2976
|
+
try {
|
|
2977
|
+
const hasFilter = yield this.filterOptionRepository.get({ id: options.value[i].id });
|
|
2978
|
+
if (hasFilter)
|
|
2979
|
+
filterOptions.push(hasFilter);
|
|
2980
|
+
}
|
|
2981
|
+
catch (error) {
|
|
2982
|
+
const newOption = yield this.filterOptionRepository.create(Object.assign(Object.assign({}, options.value[i]), { filterId }));
|
|
2983
|
+
filterOptions.push(newOption);
|
|
2984
|
+
}
|
|
2985
|
+
}
|
|
2986
|
+
return filterOptions;
|
|
2987
|
+
}
|
|
2988
|
+
if (Array.isArray(options) && options.length) {
|
|
2989
|
+
let filterOptions = [];
|
|
2990
|
+
for (let i = 0; i < options.length; i++) {
|
|
2991
|
+
try {
|
|
2992
|
+
const hasFilter = yield this.filterOptionRepository.get({ id: options[i].id });
|
|
2993
|
+
if (hasFilter)
|
|
2994
|
+
filterOptions.push(hasFilter);
|
|
2995
|
+
}
|
|
2996
|
+
catch (error) {
|
|
2997
|
+
const newOption = yield this.filterOptionRepository.create(Object.assign(Object.assign({}, options[i]), { filterId }));
|
|
2998
|
+
filterOptions.push(newOption);
|
|
2999
|
+
}
|
|
3000
|
+
}
|
|
3001
|
+
}
|
|
3002
|
+
return [];
|
|
3003
|
+
});
|
|
3004
|
+
}
|
|
3005
|
+
delete(params) {
|
|
3006
|
+
const _super = Object.create(null, {
|
|
3007
|
+
delete: { get: () => super.delete }
|
|
3008
|
+
});
|
|
3009
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
3010
|
+
const { options } = params, data = __rest(params, ["options"]);
|
|
3011
|
+
const categoryFilters = yield this.categoryFilterRepository
|
|
3012
|
+
.find({
|
|
3013
|
+
filters: {
|
|
3014
|
+
filterId: +data.id,
|
|
3015
|
+
},
|
|
3016
|
+
})
|
|
3017
|
+
.then((result) => result.data);
|
|
3018
|
+
if (categoryFilters.length)
|
|
3019
|
+
throw new Error('Erro: o filtro está associado a uma ou mais categoria(s)');
|
|
3020
|
+
yield this.deleteOptions(options);
|
|
3021
|
+
yield _super.delete.call(this, { id: +data.id });
|
|
3022
|
+
return;
|
|
3023
|
+
});
|
|
3024
|
+
}
|
|
3025
|
+
deleteOptions(options) {
|
|
3026
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
3027
|
+
for (let i = 0; i < options.length; i++) {
|
|
3028
|
+
try {
|
|
3029
|
+
yield this.filterOptionRepository.delete({ id: options[i].id });
|
|
3030
|
+
}
|
|
3031
|
+
catch (error) {
|
|
3032
|
+
console.log(error);
|
|
3033
|
+
}
|
|
3034
|
+
}
|
|
3035
|
+
});
|
|
3036
|
+
}
|
|
3037
|
+
}
|
|
3038
|
+
|
|
3039
|
+
class FilterOptionHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGraphQL(Base)) {
|
|
3040
|
+
constructor(endpoint, authOptions) {
|
|
3041
|
+
super({
|
|
3042
|
+
tableName: 'filter_option',
|
|
3043
|
+
model: FilterOption,
|
|
3044
|
+
endpoint,
|
|
3045
|
+
authOptions,
|
|
3046
|
+
fields: [
|
|
3047
|
+
'id',
|
|
3048
|
+
'description',
|
|
3049
|
+
{ filterId: { columnName: 'filter_id' } },
|
|
3050
|
+
{ createdAt: { columnName: 'created_at' } },
|
|
3051
|
+
{ updatedAt: { columnName: 'updated_at' } },
|
|
3052
|
+
],
|
|
3053
|
+
});
|
|
3054
|
+
}
|
|
2782
3055
|
}
|
|
2783
3056
|
|
|
2784
3057
|
class ProductHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGraphQL(Base)) {
|
|
@@ -2884,6 +3157,7 @@ class ProductHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGra
|
|
|
2884
3157
|
'weight',
|
|
2885
3158
|
'gender',
|
|
2886
3159
|
{ tags: { columnName: 'tags', type: HasuraGraphQLColumnType.Jsonb } },
|
|
3160
|
+
{ filters: { columnName: 'filters', type: HasuraGraphQLColumnType.Jsonb } },
|
|
2887
3161
|
{ isKit: { columnName: 'is_kit' } },
|
|
2888
3162
|
{ createdAt: { columnName: 'created_at' } },
|
|
2889
3163
|
{ updatedAt: { columnName: 'updated_at' } },
|
|
@@ -3237,6 +3511,21 @@ class ProductHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGra
|
|
|
3237
3511
|
return data && data[0] && this.bindReviewToModel(data[0]);
|
|
3238
3512
|
});
|
|
3239
3513
|
}
|
|
3514
|
+
cleanShoppingCountFromIds(ids) {
|
|
3515
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
3516
|
+
return yield this.mutation('update_product', ['affected_rows'], {
|
|
3517
|
+
where: {
|
|
3518
|
+
value: { id: { _nin: ids } },
|
|
3519
|
+
type: 'product_bool_exp',
|
|
3520
|
+
required: true,
|
|
3521
|
+
},
|
|
3522
|
+
_set: {
|
|
3523
|
+
value: { shopping_count: 0 },
|
|
3524
|
+
type: 'product_set_input',
|
|
3525
|
+
},
|
|
3526
|
+
});
|
|
3527
|
+
});
|
|
3528
|
+
}
|
|
3240
3529
|
}
|
|
3241
3530
|
|
|
3242
3531
|
class VariantHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGraphQL(Base)) {
|
|
@@ -3352,5 +3641,5 @@ class VariantHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGra
|
|
|
3352
3641
|
* Generated bundle index. Do not edit.
|
|
3353
3642
|
*/
|
|
3354
3643
|
|
|
3355
|
-
export { AccessoryImportances, Address, Area, Authentication, AuthenticationFirebaseAuthService, AxiosAdapter, Base, BaseModel, BeardProblems, BeardSizes, BeautyProductImportances, BeautyProfile, BeautyQuestionsHelper, BillingStatus, BodyProblems, BodyShapes, BodyTattoos, Buy2Win, Buy2WinFirestoreRepository, CampaignDashboard, CampaignDashboardFirestoreRepository, CampaignHashtag, CampaignHashtagFirestoreRepository, Category, CategoryFirestoreRepository, CategoryHasuraGraphQL, CategoryHasuraGraphQLRepository, Checkout, CheckoutFirestoreRepository, CheckoutSubscription, CheckoutSubscriptionFirestoreRepository, CheckoutTypes, Coupon, CouponFirestoreRepository, CouponSubtypes, CouponTypes, DuplicatedResultsError, Edition, EditionStatus, Exclusivities, FaceSkinOilinesses, FaceSkinProblems, FaceSkinTones, FamilyIncomes, FilterType, FragranceImportances, GenderDestination, HairColors, HairProblems, HairStrands, HairTypes, Home, HomeFirestoreRepository, InvalidArgumentError, KitProduct, KitProductHasuraGraphQL, Lead, LeadFirestoreRepository, LegacyOrderFirestoreRepository, LineItem, NotFoundError, OfficePosition, Order, OrderFirestoreRepository, OrderStatus, Payment, PaymentFirestoreRepository, PaymentType, Product, ProductFirestoreRepository, ProductHasuraGraphQL, ProductHasuraGraphQLRepository, ProductSpents, ProductVariantFirestoreRepository, ProductsIndex, QuestionsFilters, RecoveryPassword, Register, RegisterFirebaseAuthService, RequiredArgumentError, ShippingMethod, ShopMenu, ShopMenuFirestoreRepository, Shops, SignInMethods, SignOut, Status, Subscription, SubscriptionEditionFirestoreRepository, SubscriptionFirestoreRepository, SubscriptionPayment, SubscriptionPaymentFirestoreRepository, SubscriptionPlan, SubscriptionPlanFirestoreRepository, SubscriptionProductFirestoreRepository, UnauthorizedError, UpdateOptionActions, User, UserAddress, UserAddressFirestoreRepository, UserAlreadyRegisteredError, UserBeautyProfileFirestoreRepository, UserFirestoreRepository, UserPaymentMethod, UserPaymentMethodFirestoreRepository, UserType, Variant, VariantHasuraGraphQL, VariantHasuraGraphQLRepository, WeakPasswordError, Where, isUUID, parseDateTime, withCreateFirestore, withCreateHasuraGraphQL, withCrudFirestore, withCrudHasuraGraphQL, withDeleteFirestore, withDeleteHasuraGraphQL, withFindFirestore, withFindHasuraGraphQL, withFirestore, withGetFirestore, withGetHasuraGraphQL, withHasuraGraphQL, withHelpers, withSubCollection, withUpdateFirestore, withUpdateHasuraGraphQL };
|
|
3644
|
+
export { AccessoryImportances, Address, Area, Authentication, AuthenticationFirebaseAuthService, AxiosAdapter, Base, BaseModel, BeardProblems, BeardSizes, BeautyProductImportances, BeautyProfile, BeautyQuestionsHelper, BillingStatus, BodyProblems, BodyShapes, BodyTattoos, Buy2Win, Buy2WinFirestoreRepository, CampaignDashboard, CampaignDashboardFirestoreRepository, CampaignHashtag, CampaignHashtagFirestoreRepository, Category, CategoryFilter, CategoryFilterHasuraGraphQLRepository, CategoryFirestoreRepository, CategoryHasuraGraphQL, CategoryHasuraGraphQLRepository, Checkout, CheckoutFirestoreRepository, CheckoutSubscription, CheckoutSubscriptionFirestoreRepository, CheckoutTypes, Coupon, CouponFirestoreRepository, CouponSubtypes, CouponTypes, DuplicatedResultsError, Edition, EditionStatus, Exclusivities, FaceSkinOilinesses, FaceSkinProblems, FaceSkinTones, FamilyIncomes, Filter, FilterHasuraGraphQLRepository, FilterOption, FilterOptionHasuraGraphQLRepository, FilterType, FragranceImportances, GenderDestination, HairColors, HairProblems, HairStrands, HairTypes, Home, HomeFirestoreRepository, InvalidArgumentError, KitProduct, KitProductHasuraGraphQL, Lead, LeadFirestoreRepository, LegacyOrderFirestoreRepository, LineItem, NotFoundError, OfficePosition, Order, OrderFirestoreRepository, OrderStatus, Payment, PaymentFirestoreRepository, PaymentType, Product, ProductFirestoreRepository, ProductHasuraGraphQL, ProductHasuraGraphQLRepository, ProductSpents, ProductVariantFirestoreRepository, ProductsIndex, QuestionsFilters, RecoveryPassword, Register, RegisterFirebaseAuthService, RequiredArgumentError, ShippingMethod, ShopMenu, ShopMenuFirestoreRepository, Shops, SignInMethods, SignOut, Status, Subscription, SubscriptionEditionFirestoreRepository, SubscriptionFirestoreRepository, SubscriptionPayment, SubscriptionPaymentFirestoreRepository, SubscriptionPlan, SubscriptionPlanFirestoreRepository, SubscriptionProductFirestoreRepository, UnauthorizedError, UpdateOptionActions, User, UserAddress, UserAddressFirestoreRepository, UserAlreadyRegisteredError, UserBeautyProfileFirestoreRepository, UserFirestoreRepository, UserPaymentMethod, UserPaymentMethodFirestoreRepository, UserType, Variant, VariantHasuraGraphQL, VariantHasuraGraphQLRepository, WeakPasswordError, Where, isUUID, parseDateTime, withCreateFirestore, withCreateHasuraGraphQL, withCrudFirestore, withCrudHasuraGraphQL, withDeleteFirestore, withDeleteHasuraGraphQL, withFindFirestore, withFindHasuraGraphQL, withFirestore, withGetFirestore, withGetHasuraGraphQL, withHasuraGraphQL, withHelpers, withSubCollection, withUpdateFirestore, withUpdateHasuraGraphQL };
|
|
3356
3645
|
//# sourceMappingURL=infrab4a-connect.js.map
|