(fix) Load repository filters only when needed [SCI-10156]

This commit is contained in:
Gregor Lasnibat 2024-02-20 15:57:15 +01:00
parent 425b189742
commit c9f475290a
2 changed files with 22 additions and 19 deletions

View file

@ -71,6 +71,7 @@ window.initRepositoryFilter = () => {
const defFilters = JSON.parse(JSON.stringify(DEFAULT_FILTERS));
const app = createApp({
data: () => ({
open: false,
filters: [],
defaultFilters: DEFAULT_FILTERS,
columns: [],
@ -80,19 +81,29 @@ window.initRepositoryFilter = () => {
filterName: null
}),
created() {
this.dataTableElement = $($('#filterContainer').data('datatable-id'));
$('#filtersDropdownButton').on('show.bs.dropdown', () => {
this.open = true;
this.dataTableElement = $($('#filterContainer').data('datatable-id'));
$.get($('#filterContainer').data('my-modules-url'), (data) => {
this.my_modules = data.data;
$.get($('#filterContainer').data('my-modules-url'), (data) => {
this.my_modules = data.data;
});
$.get($('#filterContainer').data('columns-url'), (data) => {
const combinedColumns = data.response.concat(defaultColumns);
this.columns = combinedColumns.sort((a, b) => (a.name > b.name ? 1 : -1));
});
$.get($('#filterContainer').data('saved-filters-url'), (data) => {
this.savedFilters = data.data;
});
$('#filtersColumnsDropdown, #savedFiltersContainer').removeClass('open');
});
$.get($('#filterContainer').data('columns-url'), (data) => {
const combinedColumns = data.response.concat(defaultColumns);
this.columns = combinedColumns.sort((a, b) => a.name > b.name ? 1 : -1);
});
$.get($('#filterContainer').data('saved-filters-url'), (data) => {
this.savedFilters = data.data;
$('#filterContainer').on('click', (e) => {
$('#filterContainer .dropdown-selector-container').removeClass('open');
e.stopPropagation();
});
},
computed: {
@ -152,13 +163,4 @@ window.initRepositoryFilter = () => {
app.config.globalProperties.i18n = window.I18n;
app.config.globalProperties.dateFormat = $('#filterContainer').data('date-format');
window.repositoryFilterObject = mountWithTurbolinks(app, '#filterContainer');
$('#filterContainer').on('click', (e) => {
$('#filterContainer .dropdown-selector-container').removeClass('open')
e.stopPropagation();
});
$('#filtersDropdownButton').on('show.bs.dropdown', () => {
$('#filtersColumnsDropdown, #savedFiltersContainer').removeClass('open');
});
};

View file

@ -23,6 +23,7 @@
data-user-utc-offset="<%= ActiveSupport::TimeZone.find_tzinfo(current_user.time_zone).utc_offset %>"
>
<filter-container
v-if="open"
:columns.sync="columns"
:my_modules.sync="my_modules"
:default-filters="defaultFilters"