@itfin/components 1.4.7 → 1.4.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@itfin/components",
3
- "version": "1.4.7",
3
+ "version": "1.4.8",
4
4
  "author": "Vitalii Savchuk <esvit666@gmail.com>",
5
5
  "scripts": {
6
6
  "serve": "vue-cli-service serve",
@@ -27,18 +27,21 @@
27
27
  <slot name="after-filter-btn"></slot>
28
28
  </div>
29
29
  </div>
30
- <div v-if="showFilters && showFilter" class="d-flex gap-2 flex-nowrap filters-row">
31
- <filter-badge
32
- v-for="(facet, n) in visibleFilters"
33
- :key="n"
34
- v-model="filter[facet.name]"
35
- :is-default="filter[facet.name].isDefault"
36
- :text="filter[facet.name].label"
37
- :type="facet.type"
38
- :icon="facet.icon"
39
- :options="facet.options"
40
- @change="onFilterChange(facet, $event)"
41
- />
30
+ <div class="d-flex align-items-center justify-content-between w-100">
31
+ <div v-if="showFilters && showFilter" class="d-flex gap-2 flex-nowrap filters-row">
32
+ <filter-badge
33
+ v-for="(facet, n) in visibleFilters"
34
+ :key="n"
35
+ v-model="filter[facet.name]"
36
+ :is-default="filter[facet.name].isDefault"
37
+ :text="filter[facet.name].label"
38
+ :type="facet.type"
39
+ :icon="facet.icon"
40
+ :options="facet.options"
41
+ @change="onFilterChange(facet, $event)"
42
+ />
43
+ </div>
44
+ <slot name="after-filters"></slot>
42
45
  </div>
43
46
  <div v-if="loading">
44
47
  <span class="itf-spinner"></span>
@@ -292,7 +295,7 @@ class FilterPanel extends Vue {
292
295
  value.isDefault = facet.options.defaultValue ? JSON.stringify(value.value) === JSON.stringify(facet.options.defaultValue.value) : false;
293
296
  value.label = item ? item.label : facet.options.defaultValue.label;
294
297
  } else if (facet.type === 'text') {
295
- value.value = value.value.length ? value.value : undefined;
298
+ value.value = value.value.length ? value.value : (facet.options?.defaultValue ?? undefined);
296
299
  value.isDefault = !value.value;
297
300
  }
298
301
  value.hidden = facet.options?.hidden ?? false;
@@ -71,7 +71,7 @@
71
71
  clickable
72
72
  column-sorting
73
73
  column-resizing
74
- indicator-type="checkbox"
74
+ :indicator-type="indicatorType"
75
75
  class="permanent-checkboxes"
76
76
  :state-name="stateName"
77
77
  id-property="id"
@@ -154,6 +154,7 @@ class itfView extends Vue {
154
154
  @Prop(String) itemsKey;
155
155
  @Prop(String) panelKey;
156
156
  @Prop(String) stateName;
157
+ @Prop({ type: String, default: 'checkbox' }) indicatorType;
157
158
  @Prop({ type: String, default: 'table' }) tab;
158
159
  @Prop({ type: String, default () { return this.$t('components.table.search'); } }) searchPlaceholder;
159
160
  @Prop() panel;