Modifications pour le document Solr Search

Modifié par Florent Charton le 2026/03/13 11:04

Depuis la version 4.1
modifié par Florent Charton
sur 2026/01/13 15:01
Commentaire de modification : Install extension [org.xwiki.platform:xwiki-platform-search-solr-ui/17.10.2]
À la version 5.1
modifié par Florent Charton
sur 2026/03/13 11:04
Commentaire de modification : Install extension [org.xwiki.platform:xwiki-platform-search-solr-ui/17.10.4]

Résumé

Détails

XWiki.JavaScriptExtension[0]
Code
... ... @@ -11,19 +11,19 @@
11 11  
12 12   var collapseAllFacets = function(event) {
13 13   event.preventDefault();
14 - $(event.target).closest('.search-facets').find('.search-facet').removeClass('expanded');
14 + $(event.target).closest('.search-facets').find('.search-facet .search-facet-body').collapse('hide');
15 15   $(event.target).hide().parent().children('.search-facets-action-expandAll').show();
16 16   };
17 17  
18 18   var expandAllFacets = function(event) {
19 19   event.preventDefault();
20 - $(event.target).closest('.search-facets').find('.search-facet').addClass('expanded');
20 + $(event.target).closest('.search-facets').find('.search-facet .search-facet-body').collapse('show');
21 21   $(event.target).hide().parent().children('.search-facets-action-collapseAll').show();
22 22   };
23 23  
24 24   var updateExpandCollapseAllFacetsState = function(facetsContainer) {
25 - var facetCount = facetsContainer.find('.search-facet').length;
26 - var expandedFacetCount = facetsContainer.find('.search-facet.expanded').length;
25 + let facetCount = facetsContainer.find('.search-facet').length;
26 + let expandedFacetCount = facetsContainer.find('.search-facet-body.collapse.in').length;
27 27   if (expandedFacetCount > facetCount / 2) {
28 28   facetsContainer.find('.search-facets-action-collapseAll').show()
29 29   .parent().children('.search-facets-action-expandAll').hide();
... ... @@ -70,8 +70,7 @@
70 70   updateExpandCollapseAllFacetsState(facetsContainer);
71 71  
72 72   // Expand/Collapse toggle for each facet.
73 - facetsContainer.find('.facet-toggle').on('click', function(event) {
74 - $(event.target).parents('.search-facet').toggleClass('expanded');
73 + facetsContainer.find('.search-facet-body').on('hidden.bs.collapse shown.bs.collapse', function(event) {
75 75   updateExpandCollapseAllFacetsState(facetsContainer);
76 76   });
77 77  
... ... @@ -93,7 +93,7 @@
93 93  
94 94   var getSearchUIState = function() {
95 95   var expandedFacets = [];
96 - $('.search-facet.expanded').each(function() {
95 + $('.search-facet:has(btn.facet-toggle:not(.collapsed))').each(function() {
97 97   expandedFacets.push($(this).attr('data-name'));
98 98   });
99 99   return {
... ... @@ -104,7 +104,7 @@
104 104   var setSearchUIState = function(state) {
105 105   state = state || {};
106 106   var expandedFacets = state.expandedFacets || [];
107 - $('.search-facet').not('.expanded').each(function() {
106 + $('.search-facet:has(btn.facet-toggle.collapsed)').each(function() {
108 108   if (expandedFacets.indexOf($(this).attr('data-name')) >= 0) {
109 109   $(this).addClass('expanded');
110 110   }
XWiki.StyleSheetExtension[0]
Code
... ... @@ -229,6 +229,8 @@
229 229  
230 230  .search-facet {
231 231   padding: .2em 0;
232 + display: flex;
233 + flex-direction: column;
232 232  }
233 233  
234 234  .search-facets-header > p,
... ... @@ -271,13 +271,6 @@
271 271  }
272 272  
273 273  .search-facet-body {
274 - opacity: 0;
275 - visibility: hidden; /* This makes sure the element is removed from the accessibility tree. */
276 -
277 - position: absolute;
278 - transform: translateY(-10px); /* Start the animation slightly above */
279 - padding-top: .5em;
280 -
281 281   border-top-width: 0;
282 282   border-top-left-radius: 0;
283 283   border-top-right-radius: 0;
... ... @@ -303,13 +303,13 @@
303 303   box-shadow: unset;
304 304  }
305 305  
306 -.search-facet .search-facet-header .facet-toggle > span, button.facet-value-toggle > span,
307 -.search-facet .search-facet-header .facet-toggle > img, button.facet-value-toggle > img {
301 +.search-facet .search-facet-header .facet-toggle.collapsed > span, button.facet-value-toggle > span,
302 +.search-facet .search-facet-header .facet-toggle.collapsed > img, button.facet-value-toggle > img {
308 308   transform: rotate(90deg);
309 309  }
310 310  
311 -.search-facet.expanded .search-facet-header .facet-toggle > span, .expanded > button.facet-value-toggle > span,
312 -.search-facet.expanded .search-facet-header .facet-toggle > img, .expanded > button.facet-value-toggle > img {
306 +.search-facet .search-facet-header .facet-toggle > span, .expanded > button.facet-value-toggle > span,
307 +.search-facet .search-facet-header .facet-toggle > img, .expanded > button.facet-value-toggle > img {
313 313   transform: rotate(0deg);
314 314  }
315 315  
... ... @@ -318,13 +318,10 @@
318 318   .search-facet .search-facet-header .facet-toggle > img, button.facet-value-toggle > img {
319 319   transition: transform 0.2s ease;
320 320   }
321 -
322 - .search-facet-body {
323 - transition: opacity 0.3s ease, transform 0.3s ease;
324 - }
325 325  }
326 326  
327 -.search-facet.expanded {
318 +.search-facet:has(.search-facet-body.collapse.in),
319 +.search-facet:has(.search-facet-body.collapsing) {
328 328   & .search-facet-header {
329 329   border-bottom-width: 0;
330 330   border-bottom-left-radius: 0;
... ... @@ -331,15 +331,9 @@
331 331   border-bottom-right-radius: 0;
332 332  
333 333   & label {
334 - font-weight: var(--font-weight-semibold);
326 + font-weight: var(--font-weight-semibold);
335 335   }
336 336   }
337 - & .search-facet-body {
338 - opacity: 1;
339 - position: unset; /* This element should be positioned normally when shown. */
340 - visibility: visible;
341 - transform: translateY(0);
342 - }
343 343  }
344 344  
345 345  .search-facet-body ul, .search-facet-body ul.users {