Skip to content

Commit 6e3b780

Browse files
author
Guust
committed
make filter computation much more compact using filteringmodel.normalize
1 parent c46d199 commit 6e3b780

4 files changed

Lines changed: 12 additions & 62 deletions

File tree

lib/public/components/Filters/LogsFilter/author/authorFilter.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,11 +48,11 @@ export const excludeAnonymousLogAuthorToggle = (authorFilterModel) => switchInpu
4848
* @return {Component} the filter component
4949
*/
5050
export const authorFilter = ({ filteringModel }) => h('.flex-row.items-center.g3', [
51-
rawTextFilter(filteringModel.get('authorFilter'), {
51+
rawTextFilter(filteringModel.get('author'), {
5252
classes: ['w-40'],
5353
id: 'authorFilterText',
54-
value: filteringModel.get('authorFilter').raw,
54+
value: filteringModel.get('author').raw,
5555
}),
56-
resetAuthorFilterButton(filteringModel.get('authorFilter')),
57-
excludeAnonymousLogAuthorToggle(filteringModel.get('authorFilter')),
56+
resetAuthorFilterButton(filteringModel.get('author')),
57+
excludeAnonymousLogAuthorToggle(filteringModel.get('author')),
5858
]);

lib/public/views/Logs/ActiveColumns/logsActiveColumns.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ export const logsActiveColumns = {
7777
* @return {Component} the filter component
7878
*/
7979
filter: ({ filteringModel }) => rawTextFilter(
80-
filteringModel.get('titleFilter'),
80+
filteringModel.get('title'),
8181
{
8282
id: 'titleFilterText',
8383
class: 'w-75 mt1',
@@ -106,7 +106,7 @@ export const logsActiveColumns = {
106106
* @return {Component} the filter component
107107
*/
108108
filter: ({ filteringModel }) => rawTextFilter(
109-
filteringModel.get('contentFilter'),
109+
filteringModel.get('content'),
110110
{
111111
id: 'contentFilterText',
112112
classes: ['w-75', 'mt1'],

lib/public/views/Logs/Overview/LogsOverviewModel.js

Lines changed: 5 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -39,9 +39,9 @@ export class LogsOverviewModel extends Observable {
3939
super();
4040

4141
this._filteringModel = new FilteringModel({
42-
authorFilter: new AuthorFilterModel(),
43-
titleFilter: new RawTextFilterModel(),
44-
contentFilter: new RawTextFilterModel(),
42+
author: new AuthorFilterModel(),
43+
title: new RawTextFilterModel(),
44+
content: new RawTextFilterModel(),
4545
tags: new TagFilterModel(tagsProvider.items$),
4646
runNumbers: new RawTextFilterModel(),
4747
environmentIds: new RawTextFilterModel(),
@@ -69,7 +69,7 @@ export class LogsOverviewModel extends Observable {
6969
model.appConfiguration$.observe(() => updateDebounceTime());
7070
updateDebounceTime();
7171

72-
excludeAnonymous && this._filteringModel.get('authorFilter').update('!Anonymous');
72+
excludeAnonymous && this._filteringModel.get('author').update('!Anonymous');
7373

7474
this.reset(false);
7575
}
@@ -92,7 +92,7 @@ export class LogsOverviewModel extends Observable {
9292
...sortOn && sortDirection && {
9393
[`sort[${sortOn}]`]: sortDirection,
9494
},
95-
...this._getFilterQueryParams(),
95+
filter: this._filteringModel.normalized,
9696
'page[offset]': this._pagination.firstItemOffset,
9797
'page[limit]': this._pagination.itemsPerPage,
9898
};
@@ -127,9 +127,6 @@ export class LogsOverviewModel extends Observable {
127127
*/
128128
reset(fetch = true) {
129129
this._filteringModel.reset();
130-
131-
this.lhcFillFilterOperation = 'AND';
132-
133130
this._pagination.reset();
134131

135132
if (fetch) {
@@ -183,51 +180,4 @@ export class LogsOverviewModel extends Observable {
183180
this._pagination.silentlySetCurrentPage(1);
184181
now ? this.fetchLogs() : this._debouncedFetchAllLogs();
185182
}
186-
187-
/**
188-
* Returns the list of URL params corresponding to the currently applied filter
189-
*
190-
* @return {Object} the URL params
191-
*
192-
* @private
193-
*/
194-
_getFilterQueryParams() {
195-
const titleFilter = this._filteringModel.get('titleFilter');
196-
const contentFilter = this._filteringModel.get('contentFilter');
197-
const authorFilter = this._filteringModel.get('authorFilter');
198-
const tags = this._filteringModel.get('tags');
199-
const runNumbers = this._filteringModel.get('runNumbers');
200-
const environmentIds = this._filteringModel.get('environmentIds');
201-
const fillNumbers = this._filteringModel.get('fillNumbers');
202-
const created = this._filteringModel.get('created');
203-
204-
return {
205-
...!titleFilter.isEmpty && {
206-
'filter[title]': titleFilter.normalized,
207-
},
208-
...!contentFilter.isEmpty && {
209-
'filter[content]': contentFilter.normalized,
210-
},
211-
...!authorFilter.isEmpty && {
212-
'filter[author]': authorFilter.normalized,
213-
},
214-
...!created.isEmpty && {
215-
'filter[created][from]': created.normalized.from,
216-
'filter[created][to]': created.normalized.to,
217-
},
218-
...!tags.isEmpty && {
219-
'filter[tags][values]': tags.selected.join(),
220-
'filter[tags][operation]': tags.combinationOperator.toLowerCase(),
221-
},
222-
...!runNumbers.isEmpty && {
223-
'filter[runNumbers]': runNumbers.normalized,
224-
},
225-
...!environmentIds.isEmpty && {
226-
'filter[environmentIds]': environmentIds.normalized,
227-
},
228-
...!fillNumbers.isEmpty && {
229-
'filter[fillNumbers]': fillNumbers.normalized,
230-
},
231-
};
232-
}
233183
}

lib/public/views/Logs/Overview/index.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ const logOverviewScreen = ({ logs: { overviewModel: logsOverviewModel } }) => {
3939
h('#main-action-bar.flex-row.justify-between.header-container.pv2', [
4040
h('.flex-row.g3', [
4141
filtersPanelPopover(logsOverviewModel, logsActiveColumns),
42-
excludeAnonymousLogAuthorToggle(logsOverviewModel.filteringModel.get('authorFilter')),
42+
excludeAnonymousLogAuthorToggle(logsOverviewModel.filteringModel.get('author')),
4343
]),
4444
actionButtons(),
4545
]),

0 commit comments

Comments
 (0)