All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.vertigo.ui.static.js.v-components.v-facets.js Maven / Gradle / Ivy

There is a newer version: 4.2.0
Show newest version
Vue.component('v-facets', {
  template: '
' + '
' + '
' + ' {{facetLabelByCode(selectedFacet)}}: {{facetValueLabelByCode(selectedFacet, selectedFacetValue)}}' + ' ' + '
' + '
' + ' ' + ' {{facet.label}}' + ' ' + ' ' + ' ' + ' ' + ' {{value.label}} {{value.count}}' + ' ' + ' {{$q.lang.vui.facets.showAll}}' + ' {{$q.lang.vui.facets.showLess}}' + ' ' + '
' , props: { facets: Array, selectedFacets: Object, contextKey: String, maxValues: { type : Number, default : 5 } }, computed: { }, data : function() { return { expandedFacets:[] } }, methods: { facetByCode : function (facetCode) { return this.facets.filter(function (facet) { return facet.code === facetCode; })[0]; }, facetLabelByCode : function (facetCode) { return this.facetByCode(facetCode).label; }, facetValueLabelByCode : function (facetCode, facetValueCode) { return this.facetByCode(facetCode).values.filter(function (facetValue) { return facetValue.code === facetValueCode; })[0].label; }, isAnyFacetValueSelected : function() { for(var facetCode in this.selectedFacets) { if(this.selectedFacets[facetCode].length > 0) { return true; } } return false; }, isFacetValueSelected : function (facetCode, facetValueCode){ return this.selectedFacets[facetCode].includes(facetValueCode); }, isFacetSelected : function (facetCode){ return this.selectedFacets[facetCode].length > 0; }, facetValueLabel : function (label, count){ return label + ' (' + count + ')'; }, expandFacet : function (facetCode){ if (!this.isFacetExpanded(facetCode)) { this.$data.expandedFacets.push(facetCode); } }, reduceFacet : function (facetCode){ if (this.isFacetExpanded(facetCode)) { this.$data.expandedFacets.splice( this.$data.expandedFacets.indexOf(facetCode), 1); } }, isFacetExpanded : function (facetCode){ return this.$data.expandedFacets.includes(facetCode); }, visibleFacets : function (facetCode, facetValues){ if (!this.isFacetExpanded(facetCode)) { return facetValues.slice(0, this.maxValues); } return facetValues; } } })




© 2015 - 2025 Weber Informatics LLC | Privacy Policy