@infrab4a/connect 3.9.0-beta.6 → 3.9.0-beta.8
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 +107 -23
- package/bundles/infrab4a-connect.umd.js.map +1 -1
- package/esm2015/infra/elasticsearch/adapters/elastic.adapter.js +63 -0
- package/esm2015/infra/elasticsearch/adapters/index.js +2 -2
- package/esm2015/infra/elasticsearch/indexes/products-index.js +28 -19
- package/fesm2015/infrab4a-connect.js +88 -20
- package/fesm2015/infrab4a-connect.js.map +1 -1
- package/infra/elasticsearch/adapters/elastic.adapter.d.ts +23 -0
- package/infra/elasticsearch/adapters/index.d.ts +1 -0
- package/package.json +2 -1
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
2
|
+
import { Client } from '@elastic/elasticsearch';
|
|
3
|
+
import { NotFoundError } from '../../../errors';
|
|
4
|
+
export class ElasticAdapter {
|
|
5
|
+
constructor(config) {
|
|
6
|
+
this.config = config;
|
|
7
|
+
this.client = new Client(config);
|
|
8
|
+
}
|
|
9
|
+
get(index, id) {
|
|
10
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
11
|
+
try {
|
|
12
|
+
const data = yield this.client.get({ index, id });
|
|
13
|
+
return data._source;
|
|
14
|
+
}
|
|
15
|
+
catch (erro) {
|
|
16
|
+
throw new NotFoundError(erro.message);
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
query(index, query) {
|
|
21
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
22
|
+
const result = yield this.client.search({
|
|
23
|
+
index,
|
|
24
|
+
query,
|
|
25
|
+
});
|
|
26
|
+
return {
|
|
27
|
+
total: result.hits.total,
|
|
28
|
+
hits: result.hits.hits,
|
|
29
|
+
};
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
save(index, data) {
|
|
33
|
+
return this.client.index({
|
|
34
|
+
index,
|
|
35
|
+
document: data,
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
update(index, id, data) {
|
|
39
|
+
try {
|
|
40
|
+
return this.client.update({
|
|
41
|
+
index,
|
|
42
|
+
id,
|
|
43
|
+
doc: data,
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
catch (error) {
|
|
47
|
+
console.log(error);
|
|
48
|
+
throw new Error(error.message);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
delete(index, id) {
|
|
52
|
+
try {
|
|
53
|
+
this.client.delete({
|
|
54
|
+
index,
|
|
55
|
+
id,
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
catch (error) {
|
|
59
|
+
console.log(error);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxhc3RpYy5hZGFwdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC9zcmMvaW5mcmEvZWxhc3RpY3NlYXJjaC9hZGFwdGVycy9lbGFzdGljLmFkYXB0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUUvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFPL0MsTUFBTSxPQUFPLGNBQWM7SUFFekIsWUFBNkIsTUFBMkI7UUFBM0IsV0FBTSxHQUFOLE1BQU0sQ0FBcUI7UUFDdEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUNsQyxDQUFDO0lBRUssR0FBRyxDQUFDLEtBQWEsRUFBRSxFQUFVOztZQUNqQyxJQUFJO2dCQUNGLE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQTtnQkFDakQsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFBO2FBQ3BCO1lBQUMsT0FBTyxJQUFJLEVBQUU7Z0JBQ2IsTUFBTSxJQUFJLGFBQWEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUE7YUFDdEM7UUFDSCxDQUFDO0tBQUE7SUFFSyxLQUFLLENBQUMsS0FBYSxFQUFFLEtBQVU7O1lBQ25DLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7Z0JBQ3RDLEtBQUs7Z0JBQ0wsS0FBSzthQUNOLENBQUMsQ0FBQTtZQUVGLE9BQU87Z0JBQ0wsS0FBSyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSztnQkFDeEIsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSTthQUN2QixDQUFBO1FBQ0gsQ0FBQztLQUFBO0lBRUQsSUFBSSxDQUFDLEtBQWEsRUFBRSxJQUFnQjtRQUNsQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1lBQ3ZCLEtBQUs7WUFDTCxRQUFRLEVBQUUsSUFBSTtTQUNmLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBYSxFQUFFLEVBQVUsRUFBRSxJQUFnQjtRQUNoRCxJQUFJO1lBQ0YsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztnQkFDeEIsS0FBSztnQkFDTCxFQUFFO2dCQUNGLEdBQUcsRUFBRSxJQUFJO2FBQ1YsQ0FBQyxDQUFBO1NBQ0g7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNkLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUE7WUFDbEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUE7U0FDL0I7SUFDSCxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQWEsRUFBRSxFQUFVO1FBQzlCLElBQUk7WUFDRixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztnQkFDakIsS0FBSztnQkFDTCxFQUFFO2FBQ0gsQ0FBQyxDQUFBO1NBQ0g7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNkLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUE7U0FDbkI7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDbGllbnQgfSBmcm9tICdAZWxhc3RpYy9lbGFzdGljc2VhcmNoJ1xyXG5pbXBvcnQgeyBCYXNlTW9kZWwgfSBmcm9tICcuLi8uLi8uLi9kb21haW4nXHJcbmltcG9ydCB7IE5vdEZvdW5kRXJyb3IgfSBmcm9tICcuLi8uLi8uLi9lcnJvcnMnXHJcblxyXG5leHBvcnQgdHlwZSBFbGFzdGljU2VhcmNoQ29uZmlnID0ge1xyXG4gIGNsb3VkOiB7IGlkOiBzdHJpbmcgfVxyXG4gIGF1dGg6IHsgYXBpS2V5OiBzdHJpbmcgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgRWxhc3RpY0FkYXB0ZXI8VCBleHRlbmRzIEJhc2VNb2RlbDxUPj4ge1xyXG4gIGNsaWVudDogQ2xpZW50XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBjb25maWc6IEVsYXN0aWNTZWFyY2hDb25maWcpIHtcclxuICAgIHRoaXMuY2xpZW50ID0gbmV3IENsaWVudChjb25maWcpXHJcbiAgfVxyXG5cclxuICBhc3luYyBnZXQoaW5kZXg6IHN0cmluZywgaWQ6IHN0cmluZykge1xyXG4gICAgdHJ5IHtcclxuICAgICAgY29uc3QgZGF0YSA9IGF3YWl0IHRoaXMuY2xpZW50LmdldCh7IGluZGV4LCBpZCB9KVxyXG4gICAgICByZXR1cm4gZGF0YS5fc291cmNlXHJcbiAgICB9IGNhdGNoIChlcnJvKSB7XHJcbiAgICAgIHRocm93IG5ldyBOb3RGb3VuZEVycm9yKGVycm8ubWVzc2FnZSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGFzeW5jIHF1ZXJ5KGluZGV4OiBzdHJpbmcsIHF1ZXJ5OiBhbnkpIHtcclxuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHRoaXMuY2xpZW50LnNlYXJjaCh7XHJcbiAgICAgIGluZGV4LFxyXG4gICAgICBxdWVyeSxcclxuICAgIH0pXHJcblxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgdG90YWw6IHJlc3VsdC5oaXRzLnRvdGFsLFxyXG4gICAgICBoaXRzOiByZXN1bHQuaGl0cy5oaXRzLFxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2F2ZShpbmRleDogc3RyaW5nLCBkYXRhOiBQYXJ0aWFsPFQ+KSB7XHJcbiAgICByZXR1cm4gdGhpcy5jbGllbnQuaW5kZXgoe1xyXG4gICAgICBpbmRleCxcclxuICAgICAgZG9jdW1lbnQ6IGRhdGEsXHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgdXBkYXRlKGluZGV4OiBzdHJpbmcsIGlkOiBzdHJpbmcsIGRhdGE6IFBhcnRpYWw8VD4pIHtcclxuICAgIHRyeSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmNsaWVudC51cGRhdGUoe1xyXG4gICAgICAgIGluZGV4LFxyXG4gICAgICAgIGlkLFxyXG4gICAgICAgIGRvYzogZGF0YSxcclxuICAgICAgfSlcclxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKGVycm9yKVxyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoZXJyb3IubWVzc2FnZSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGRlbGV0ZShpbmRleDogc3RyaW5nLCBpZDogc3RyaW5nKSB7XHJcbiAgICB0cnkge1xyXG4gICAgICB0aGlzLmNsaWVudC5kZWxldGUoe1xyXG4gICAgICAgIGluZGV4LFxyXG4gICAgICAgIGlkLFxyXG4gICAgICB9KVxyXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgY29uc29sZS5sb2coZXJyb3IpXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export * from './axios.adapter';
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
export * from './elastic.adapter';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9lbGFzdGljc2VhcmNoL2FkYXB0ZXJzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUJBQWlCLENBQUE7QUFDL0IsY0FBYyxtQkFBbUIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYXhpb3MuYWRhcHRlcidcclxuZXhwb3J0ICogZnJvbSAnLi9lbGFzdGljLmFkYXB0ZXInXHJcbiJdfQ==
|
|
@@ -53,28 +53,37 @@ export class ProductsIndex {
|
|
|
53
53
|
filter.push({ term: { tags: shop == Shops.GLAMSHOP ? 'feminino' : 'masculino' } });
|
|
54
54
|
}
|
|
55
55
|
const search = yield this.adapter.query(this.index, {
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
56
|
+
size,
|
|
57
|
+
_source: fields,
|
|
58
|
+
query: {
|
|
59
|
+
bool: {
|
|
60
|
+
must: {
|
|
61
|
+
multi_match: {
|
|
62
|
+
query: `${searchTerm}`,
|
|
63
|
+
type: 'bool_prefix',
|
|
64
|
+
fields: [
|
|
65
|
+
'name',
|
|
66
|
+
'name.folded',
|
|
67
|
+
'name.search',
|
|
68
|
+
'description',
|
|
69
|
+
'description.search',
|
|
70
|
+
'description.folded',
|
|
71
|
+
'brand',
|
|
72
|
+
'brand.search',
|
|
73
|
+
'brand.folded',
|
|
74
|
+
],
|
|
75
|
+
fuzziness: 2,
|
|
67
76
|
},
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
77
|
+
},
|
|
78
|
+
should: {
|
|
79
|
+
match_phrase_prefix: {
|
|
80
|
+
'name.search': {
|
|
81
|
+
query: `${searchTerm}`,
|
|
82
|
+
slop: 10,
|
|
74
83
|
},
|
|
75
84
|
},
|
|
76
|
-
filter,
|
|
77
85
|
},
|
|
86
|
+
filter,
|
|
78
87
|
},
|
|
79
88
|
},
|
|
80
89
|
});
|
|
@@ -114,4 +123,4 @@ export class ProductsIndex {
|
|
|
114
123
|
});
|
|
115
124
|
}
|
|
116
125
|
}
|
|
117
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
126
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdHMtaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9lbGFzdGljc2VhcmNoL2luZGV4ZXMvcHJvZHVjdHMtaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFJaEQsTUFBTSxPQUFPLGFBQWE7SUFFeEIsWUFBNkIsT0FBOEI7UUFBOUIsWUFBTyxHQUFQLE9BQU8sQ0FBdUI7UUFEbkQsVUFBSyxHQUFHLFVBQVUsQ0FBQTtJQUNvQyxDQUFDO0lBRXpELE9BQU8sQ0FBQyxFQUFVOztZQUN0QixNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUE7WUFDbkQsT0FBTyxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ2pDLENBQUM7S0FBQTtJQUVLLFlBQVksQ0FBQyxFQUFVOztZQUMzQixNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7Z0JBQ2hELEtBQUssRUFBRTtvQkFDTCxJQUFJLEVBQUU7d0JBQ0osSUFBSSxFQUFFOzRCQUNKLEtBQUssRUFBRTtnQ0FDTCxFQUFFLEVBQUUsRUFBRTs2QkFDUDt5QkFDRjtxQkFDRjtpQkFDRjthQUNGLENBQUMsQ0FBQTtZQUVGLE9BQU8sT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQ2pELENBQUM7S0FBQTtJQUVLLE1BQU0sQ0FBQyxVQUFrQixFQUFFLEtBQWEsRUFBRSxJQUFZOztZQUMxRCxNQUFNLElBQUksR0FBVyxLQUFLLElBQUks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QUE7SUFFSyxNQUFNLENBQUMsRUFBVTs7WUFDckIsSUFBSTtnQkFDRixNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUE7YUFDMUM7WUFBQyxPQUFPLEtBQUssRUFBRTtnQkFDZCxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFBO2FBQ3JCO1FBQ0gsQ0FBQztLQUFBO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm9kdWN0LCBTaG9wcyB9IGZyb20gJy4uLy4uLy4uL2RvbWFpbidcclxuaW1wb3J0IHsgUHJvZHVjdEhhc3VyYUdyYXBoUUwgfSBmcm9tICcuLi8uLi9oYXN1cmEtZ3JhcGhxbCdcclxuaW1wb3J0IHsgQXhpb3NBZGFwdGVyIH0gZnJvbSAnLi4vYWRhcHRlcnMnXHJcblxyXG5leHBvcnQgY2xhc3MgUHJvZHVjdHNJbmRleCB7XHJcbiAgcHJpdmF0ZSBpbmRleCA9IGBwcm9kdWN0c2BcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGFkYXB0ZXI6IEF4aW9zQWRhcHRlcjxQcm9kdWN0Pikge31cclxuXHJcbiAgYXN5bmMgZ2V0QnlJZChpZDogc3RyaW5nKTogUHJvbWlzZTxQcm9kdWN0PiB7XHJcbiAgICBjb25zdCBkYXRhID0gYXdhaXQgdGhpcy5hZGFwdGVyLmdldCh0aGlzLmluZGV4LCBpZClcclxuICAgIHJldHVybiBQcm9kdWN0LnRvSW5zdGFuY2UoZGF0YSlcclxuICB9XHJcblxyXG4gIGFzeW5jIGdldEJ5QWxsb3lJZChpZDogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBkYXRhID0gYXdhaXQgdGhpcy5hZGFwdGVyLnF1ZXJ5KHRoaXMuaW5kZXgsIHtcclxuICAgICAgcXVlcnk6IHtcclxuICAgICAgICBib29sOiB7XHJcbiAgICAgICAgICBtdXN0OiB7XHJcbiAgICAgICAgICAgIG1hdGNoOiB7XHJcbiAgICAgICAgICAgICAgaWQ6IGlkLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICB9LFxyXG4gICAgfSlcclxuXHJcbiAgICByZXR1cm4gUHJvZHVjdC50b0luc3RhbmNlKGRhdGEuaGl0c1swXS5fc291cmNlKVxyXG4gIH1cclxuXHJcbiAgYXN5bmMgc2VhcmNoKHNlYXJjaFRlcm06IHN0cmluZywgdG90YWw6IG51bWJlciwgc2hvcDogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBzaXplOiBudW1iZXIgPSB0b3RhbCA+PSAxMCA/IDUwMCA6IDlcclxuXHJcbiAgICBjb25zdCBmaWVsZHMgPSBbXHJcbiAgICAgICdFQU4nLFxyXG4gICAgICAnYnJhbmQnLFxyXG4gICAgICAnaWQnLFxyXG4gICAgICAnaW1hZ2VzJyxcclxuICAgICAgJ21pbmlhdHVyZXMnLFxyXG4gICAgICAnbmFtZScsXHJcbiAgICAgICdwcmljZScsXHJcbiAgICAgICdza3UnLFxyXG4gICAgICAnc3RvY2snLFxyXG4gICAgICAnc2x1ZycsXHJcbiAgICAgICdyZXZpZXdzJyxcclxuICAgICAgJ2hhc1ZhcmlhbnRzJyxcclxuICAgICAgJ3JhdGUnLFxyXG4gICAgXVxyXG5cclxuICAgIGNvbnN0IGZpbHRlcjogQXJyYXk8eyB0ZXJtOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB8IGJvb2xlYW4gfCBudW1iZXIgfSB9PiA9IFt7IHRlcm06IHsgcHVibGlzaGVkOiB0cnVlIH0gfV1cclxuXHJcbiAgICBpZiAoc2l6ZSA+IDkpIHtcclxuICAgICAgZmllbGRzLnB1c2goLi4uWydwcmljZVBhaWQnLCAnaXNHaWZ0JywgJ3N0b2NrJywgJ3dlaWdodCcsICd0YWdzJ10pXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBmaWx0ZXIucHVzaCh7IHRlcm06IHsgdGFnczogc2hvcCA9PSBTaG9wcy5HTEFNU0hPUCA/ICdmZW1pbmlubycgOiAnbWFzY3VsaW5vJyB9IH0pXHJcbiAgICB9XHJcblxyXG4gICAgY29uc3Qgc2VhcmNoID0gYXdhaXQgdGhpcy5hZGFwdGVyLnF1ZXJ5KHRoaXMuaW5kZXgsIHtcclxuICAgICAgc2l6ZSxcclxuICAgICAgX3NvdXJjZTogZmllbGRzLFxyXG4gICAgICBxdWVyeToge1xyXG4gICAgICAgIGJvb2w6IHtcclxuICAgICAgICAgIG11c3Q6IHtcclxuICAgICAgICAgICAgbXVsdGlfbWF0Y2g6IHtcclxuICAgICAgICAgICAgICBxdWVyeTogYCR7c2VhcmNoVGVybX1gLFxyXG4gICAgICAgICAgICAgIHR5cGU6ICdib29sX3ByZWZpeCcsXHJcbiAgICAgICAgICAgICAgZmllbGRzOiBbXHJcbiAgICAgICAgICAgICAgICAnbmFtZScsXHJcbiAgICAgICAgICAgICAgICAnbmFtZS5mb2xkZWQnLFxyXG4gICAgICAgICAgICAgICAgJ25hbWUuc2VhcmNoJyxcclxuICAgICAgICAgICAgICAgICdkZXNjcmlwdGlvbicsXHJcbiAgICAgICAgICAgICAgICAnZGVzY3JpcHRpb24uc2VhcmNoJyxcclxuICAgICAgICAgICAgICAgICdkZXNjcmlwdGlvbi5mb2xkZWQnLFxyXG4gICAgICAgICAgICAgICAgJ2JyYW5kJyxcclxuICAgICAgICAgICAgICAgICdicmFuZC5zZWFyY2gnLFxyXG4gICAgICAgICAgICAgICAgJ2JyYW5kLmZvbGRlZCcsXHJcbiAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgICBmdXp6aW5lc3M6IDIsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgc2hvdWxkOiB7XHJcbiAgICAgICAgICAgIG1hdGNoX3BocmFzZV9wcmVmaXg6IHtcclxuICAgICAgICAgICAgICAnbmFtZS5zZWFyY2gnOiB7XHJcbiAgICAgICAgICAgICAgICBxdWVyeTogYCR7c2VhcmNoVGVybX1gLFxyXG4gICAgICAgICAgICAgICAgc2xvcDogMTAsXHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBmaWx0ZXIsXHJcbiAgICAgICAgfSxcclxuICAgICAgfSxcclxuICAgIH0pXHJcblxyXG4gICAgc2VhcmNoLmhpdHMgPSBzZWFyY2guaGl0cy5maWx0ZXIoKGU6IGFueSkgPT4gZS5fc291cmNlLm5hbWUgIT09ICcnKVxyXG5cclxuICAgIHJldHVybiBzZWFyY2hcclxuICB9XHJcblxyXG4gIGFzeW5jIHNhdmUocHJvZHVjdDogUHJvZHVjdEhhc3VyYUdyYXBoUUwpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRyeSB7XHJcbiAgICAgIGNvbnN0IHsgY3JlYXRlZEF0LCB1cGRhdGVkQXQsIGtpdFByb2R1Y3RzLCAuLi5kYXRhIH0gPSBwcm9kdWN0XHJcblxyXG4gICAgICB0aGlzLmFkYXB0ZXIuc2F2ZSh0aGlzLmluZGV4LCBkYXRhKVxyXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgY29uc29sZS5lcnJvcihlcnJvcilcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGFzeW5jIHVwZGF0ZShwcm9kdWN0OiBQcm9kdWN0SGFzdXJhR3JhcGhRTCkge1xyXG4gICAgdHJ5IHtcclxuICAgICAgYXdhaXQgdGhpcy5hZGFwdGVyLnVwZGF0ZSh0aGlzLmluZGV4LCBwcm9kdWN0LmlkLCBwcm9kdWN0KVxyXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgY29uc29sZS5lcnJvcihlcnJvcilcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGFzeW5jIGRlbGV0ZShpZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICB0cnkge1xyXG4gICAgICBhd2FpdCB0aGlzLmFkYXB0ZXIuZGVsZXRlKHRoaXMuaW5kZXgsIGlkKVxyXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgY29uc29sZS5lcnJvcihlcnJvcilcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
|
|
@@ -7,6 +7,7 @@ import { isString, isNil, isNumber, isDate, set, isObject, isEmpty, chunk, isBoo
|
|
|
7
7
|
export { chunk, isBoolean, isDate, isEmpty, isInteger, isNaN, isNil, isNumber, isObject, isString, now, omit, pick, set } from 'lodash';
|
|
8
8
|
import { CustomError } from 'ts-custom-error';
|
|
9
9
|
import axios from 'axios';
|
|
10
|
+
import { Client } from '@elastic/elasticsearch';
|
|
10
11
|
import firebase from 'firebase';
|
|
11
12
|
import { mutation, query } from 'gql-query-builder';
|
|
12
13
|
|
|
@@ -1149,7 +1150,65 @@ class AxiosAdapter {
|
|
|
1149
1150
|
}
|
|
1150
1151
|
}
|
|
1151
1152
|
|
|
1152
|
-
|
|
1153
|
+
class ElasticAdapter {
|
|
1154
|
+
constructor(config) {
|
|
1155
|
+
this.config = config;
|
|
1156
|
+
this.client = new Client(config);
|
|
1157
|
+
}
|
|
1158
|
+
get(index, id) {
|
|
1159
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
1160
|
+
try {
|
|
1161
|
+
const data = yield this.client.get({ index, id });
|
|
1162
|
+
return data._source;
|
|
1163
|
+
}
|
|
1164
|
+
catch (erro) {
|
|
1165
|
+
throw new NotFoundError(erro.message);
|
|
1166
|
+
}
|
|
1167
|
+
});
|
|
1168
|
+
}
|
|
1169
|
+
query(index, query) {
|
|
1170
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
1171
|
+
const result = yield this.client.search({
|
|
1172
|
+
index,
|
|
1173
|
+
query,
|
|
1174
|
+
});
|
|
1175
|
+
return {
|
|
1176
|
+
total: result.hits.total,
|
|
1177
|
+
hits: result.hits.hits,
|
|
1178
|
+
};
|
|
1179
|
+
});
|
|
1180
|
+
}
|
|
1181
|
+
save(index, data) {
|
|
1182
|
+
return this.client.index({
|
|
1183
|
+
index,
|
|
1184
|
+
document: data,
|
|
1185
|
+
});
|
|
1186
|
+
}
|
|
1187
|
+
update(index, id, data) {
|
|
1188
|
+
try {
|
|
1189
|
+
return this.client.update({
|
|
1190
|
+
index,
|
|
1191
|
+
id,
|
|
1192
|
+
doc: data,
|
|
1193
|
+
});
|
|
1194
|
+
}
|
|
1195
|
+
catch (error) {
|
|
1196
|
+
console.log(error);
|
|
1197
|
+
throw new Error(error.message);
|
|
1198
|
+
}
|
|
1199
|
+
}
|
|
1200
|
+
delete(index, id) {
|
|
1201
|
+
try {
|
|
1202
|
+
this.client.delete({
|
|
1203
|
+
index,
|
|
1204
|
+
id,
|
|
1205
|
+
});
|
|
1206
|
+
}
|
|
1207
|
+
catch (error) {
|
|
1208
|
+
console.log(error);
|
|
1209
|
+
}
|
|
1210
|
+
}
|
|
1211
|
+
}
|
|
1153
1212
|
|
|
1154
1213
|
class ProductsIndex {
|
|
1155
1214
|
constructor(adapter) {
|
|
@@ -1204,28 +1263,37 @@ class ProductsIndex {
|
|
|
1204
1263
|
filter.push({ term: { tags: shop == Shops.GLAMSHOP ? 'feminino' : 'masculino' } });
|
|
1205
1264
|
}
|
|
1206
1265
|
const search = yield this.adapter.query(this.index, {
|
|
1207
|
-
|
|
1208
|
-
|
|
1209
|
-
|
|
1210
|
-
|
|
1211
|
-
|
|
1212
|
-
|
|
1213
|
-
|
|
1214
|
-
|
|
1215
|
-
|
|
1216
|
-
|
|
1217
|
-
|
|
1266
|
+
size,
|
|
1267
|
+
_source: fields,
|
|
1268
|
+
query: {
|
|
1269
|
+
bool: {
|
|
1270
|
+
must: {
|
|
1271
|
+
multi_match: {
|
|
1272
|
+
query: `${searchTerm}`,
|
|
1273
|
+
type: 'bool_prefix',
|
|
1274
|
+
fields: [
|
|
1275
|
+
'name',
|
|
1276
|
+
'name.folded',
|
|
1277
|
+
'name.search',
|
|
1278
|
+
'description',
|
|
1279
|
+
'description.search',
|
|
1280
|
+
'description.folded',
|
|
1281
|
+
'brand',
|
|
1282
|
+
'brand.search',
|
|
1283
|
+
'brand.folded',
|
|
1284
|
+
],
|
|
1285
|
+
fuzziness: 2,
|
|
1218
1286
|
},
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1287
|
+
},
|
|
1288
|
+
should: {
|
|
1289
|
+
match_phrase_prefix: {
|
|
1290
|
+
'name.search': {
|
|
1291
|
+
query: `${searchTerm}`,
|
|
1292
|
+
slop: 10,
|
|
1225
1293
|
},
|
|
1226
1294
|
},
|
|
1227
|
-
filter,
|
|
1228
1295
|
},
|
|
1296
|
+
filter,
|
|
1229
1297
|
},
|
|
1230
1298
|
},
|
|
1231
1299
|
});
|
|
@@ -3703,5 +3771,5 @@ class VariantHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGra
|
|
|
3703
3771
|
* Generated bundle index. Do not edit.
|
|
3704
3772
|
*/
|
|
3705
3773
|
|
|
3706
|
-
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, ShopSettings, ShopSettingsFirestoreRepository, 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 };
|
|
3774
|
+
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, ElasticAdapter, 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, ShopSettings, ShopSettingsFirestoreRepository, 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 };
|
|
3707
3775
|
//# sourceMappingURL=infrab4a-connect.js.map
|