@pronto-tools-and-more/components 10.36.0 → 10.38.0
Sign up to get free protection for your applications and to get access to all the features.
package/dist/main.js
CHANGED
@@ -46,13 +46,36 @@ var ArticleAuthors = ({
|
|
46
46
|
return /* @__PURE__ */ React.createElement("div", { className: "ArticleAuthors" }, /* @__PURE__ */ React.createElement(JsonComponent, { json }));
|
47
47
|
};
|
48
48
|
|
49
|
+
// src/parts/CreatePropertiesFilter/CreatePropertiesFilter.ts
|
50
|
+
var createPropertiesFilter = (properties) => {
|
51
|
+
const entries = Object.entries(properties);
|
52
|
+
if (entries.length === 0) {
|
53
|
+
return [];
|
54
|
+
}
|
55
|
+
const outerFilter = [];
|
56
|
+
for (const [key, value] of Object.entries(properties)) {
|
57
|
+
if (Array.isArray(value)) {
|
58
|
+
const innerFilter = [];
|
59
|
+
for (const item of value) {
|
60
|
+
innerFilter.push({
|
61
|
+
properties: {
|
62
|
+
key,
|
63
|
+
value: item
|
64
|
+
}
|
65
|
+
});
|
66
|
+
}
|
67
|
+
if (innerFilter.length > 0) {
|
68
|
+
outerFilter.push({
|
69
|
+
OR: innerFilter
|
70
|
+
});
|
71
|
+
}
|
72
|
+
}
|
73
|
+
}
|
74
|
+
return outerFilter;
|
75
|
+
};
|
76
|
+
|
49
77
|
// src/parts/CreateFilterFromProperties/CreateFilterFromProperties.ts
|
50
|
-
var
|
51
|
-
properties,
|
52
|
-
authorId,
|
53
|
-
categoryId,
|
54
|
-
bundleId
|
55
|
-
}) => {
|
78
|
+
var createBundleFilter = (bundleId) => {
|
56
79
|
if (bundleId) {
|
57
80
|
return [
|
58
81
|
{
|
@@ -64,6 +87,9 @@ var createFilterFromProperties = ({
|
|
64
87
|
}
|
65
88
|
];
|
66
89
|
}
|
90
|
+
return [];
|
91
|
+
};
|
92
|
+
var createCategoryFilter = (categoryId) => {
|
67
93
|
if (categoryId) {
|
68
94
|
return [
|
69
95
|
{
|
@@ -79,6 +105,9 @@ var createFilterFromProperties = ({
|
|
79
105
|
}
|
80
106
|
];
|
81
107
|
}
|
108
|
+
return [];
|
109
|
+
};
|
110
|
+
var createAuthorFilter = (authorId) => {
|
82
111
|
if (authorId) {
|
83
112
|
return [
|
84
113
|
{
|
@@ -94,30 +123,39 @@ var createFilterFromProperties = ({
|
|
94
123
|
}
|
95
124
|
];
|
96
125
|
}
|
97
|
-
|
98
|
-
|
126
|
+
return [];
|
127
|
+
};
|
128
|
+
var mergeFilters = (filters) => {
|
129
|
+
const relevantFilters = filters.filter((f) => f.length > 0);
|
130
|
+
if (relevantFilters.length === 0) {
|
99
131
|
return [];
|
100
132
|
}
|
101
|
-
|
102
|
-
|
103
|
-
if (Array.isArray(value)) {
|
104
|
-
const innerFilter = [];
|
105
|
-
for (const item of value) {
|
106
|
-
innerFilter.push({
|
107
|
-
properties: {
|
108
|
-
key,
|
109
|
-
value: item
|
110
|
-
}
|
111
|
-
});
|
112
|
-
}
|
113
|
-
if (innerFilter.length > 0) {
|
114
|
-
outerFilter.push({
|
115
|
-
OR: innerFilter
|
116
|
-
});
|
117
|
-
}
|
118
|
-
}
|
133
|
+
if (relevantFilters.length === 1) {
|
134
|
+
return relevantFilters[0];
|
119
135
|
}
|
120
|
-
return
|
136
|
+
return [
|
137
|
+
{
|
138
|
+
AND: relevantFilters.flat(1)
|
139
|
+
}
|
140
|
+
];
|
141
|
+
};
|
142
|
+
var createFilterFromProperties = ({
|
143
|
+
properties,
|
144
|
+
authorId,
|
145
|
+
categoryId,
|
146
|
+
bundleId
|
147
|
+
}) => {
|
148
|
+
const categoryFilter = createCategoryFilter(categoryId);
|
149
|
+
const authorFilter = createAuthorFilter(authorId);
|
150
|
+
const bundleFilter = createBundleFilter(bundleId);
|
151
|
+
const propertiesFilter = createPropertiesFilter(properties);
|
152
|
+
const merged = mergeFilters([
|
153
|
+
categoryFilter,
|
154
|
+
authorFilter,
|
155
|
+
bundleFilter,
|
156
|
+
propertiesFilter
|
157
|
+
]);
|
158
|
+
return merged;
|
121
159
|
};
|
122
160
|
|
123
161
|
// src/parts/GetArticleListDataSource/GetArticleListDataSource.ts
|
@@ -0,0 +1 @@
|
|
1
|
+
export declare const createPropertiesFilter: (properties: any) => any[];
|