Skip to content

Commit 2f6fcf1

Browse files
author
GuustMetz
committed
chore: add namesFilterModel to the filteringModel instance
1 parent c24d302 commit 2f6fcf1

2 files changed

Lines changed: 15 additions & 36 deletions

File tree

lib/public/views/SimulationPasses/ActiveColumns/simulationPassesActiveColumns.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,8 @@ export const simulationPassesActiveColumns = {
3131
name: 'Name',
3232
visible: true,
3333
sortable: true,
34-
filter: ({ namesFilterModel }) => textFilter(
35-
namesFilterModel,
34+
filter: ({ filteringModel }) => textFilter(
35+
filteringModel.get('names'),
3636
{ class: 'w-75 mt1', placeholder: 'e.g. LHC23k5, ...' },
3737
),
3838
classes: 'w-10 f6',

lib/public/views/SimulationPasses/AnchoredOverview/AnchoredSimulationPassesOverviewModel.js

Lines changed: 13 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,14 @@ export class AnchoredSimulationPassesOverviewModel extends OverviewPageModel {
2727
constructor() {
2828
super();
2929

30-
this._filteringModel = new FilteringModel();
31-
this._namesFilterModel = new TextTokensFilterModel();
32-
this._registerFilter(this._namesFilterModel);
30+
this._filteringModel = new FilteringModel({ names: new TextTokensFilterModel() });
31+
32+
this._filteringModel.observe(() => {
33+
this._pagination.silentlySetCurrentPage(1);
34+
this.load();
35+
});
36+
37+
this._filteringModel.visualChange$.bubbleTo(this);
3338

3439
this._dataPass = new ObservableData(RemoteData.notAsked());
3540
}
@@ -60,14 +65,10 @@ export class AnchoredSimulationPassesOverviewModel extends OverviewPageModel {
6065
* @inheritdoc
6166
*/
6267
getRootEndpoint() {
63-
const params = {
64-
filter: {
65-
names: this._namesFilterModel.normalized,
66-
dataPassIds: [this._dataPassId],
67-
},
68-
};
68+
const filter = this._filteringModel.normalized;
69+
filter.dataPassIds = [this._dataPassId];
6970

70-
return buildUrl('/api/simulationPasses', params);
71+
return buildUrl('/api/simulationPasses', { filter });
7172
}
7273

7374
/**
@@ -76,7 +77,7 @@ export class AnchoredSimulationPassesOverviewModel extends OverviewPageModel {
7677
* @returns {void}
7778
*/
7879
reset() {
79-
this._namesFilterModel.reset();
80+
this._filteringModel.reset();
8081
super.reset();
8182
}
8283

@@ -104,33 +105,11 @@ export class AnchoredSimulationPassesOverviewModel extends OverviewPageModel {
104105
return this._dataPass.getCurrent();
105106
}
106107

107-
/**
108-
* Returns data passes names filter model
109-
* @return {TextTokensFilterModel} data passes names filter model
110-
*/
111-
get namesFilterModel() {
112-
return this._namesFilterModel;
113-
}
114-
115-
/**
116-
* Register a new filter model
117-
* @param {FilterModel} filterModel the filter model to register
118-
* @return {void}
119-
* @private
120-
*/
121-
_registerFilter(filterModel) {
122-
filterModel.visualChange$.bubbleTo(this);
123-
filterModel.observe(() => {
124-
this._pagination.silentlySetCurrentPage(1);
125-
this.load();
126-
});
127-
}
128-
129108
/**
130109
* States whether any filter is active
131110
* @return {boolean} true if any filter is active
132111
*/
133112
isAnyFilterActive() {
134-
return !this._namesFilterModel.isEmpty;
113+
return this._filteringModel.isAnyFilterActive();
135114
}
136115
}

0 commit comments

Comments
 (0)