@dative-gpi/foundation-shared-components 0.0.127 → 0.0.128

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.
@@ -110,20 +110,20 @@
110
110
  <v-data-table
111
111
  v-if="!isExtraSmall"
112
112
  :selectStrategy="$props.singleSelect ? 'single' : 'all'"
113
- :itemValue="$props.itemValue"
114
- :showSelect="$props.showSelect"
115
- :headers="extraHeaders.concat(innerHeaders)"
116
113
  :groupBy="$props.groupBy ? [$props.groupBy] : []"
114
+ :headers="extraHeaders.concat(innerHeaders)"
117
115
  :sortBy="innerSortBy ? [innerSortBy] : []"
118
- :items="innerItems"
116
+ :itemsPerPage="innerRowsPerPage"
117
+ :showSelect="$props.showSelect"
118
+ :hover="!$props.sortDraggable"
119
+ :itemValue="$props.itemValue"
120
+ :rowProps="rowProps"
119
121
  :fixedHeader="true"
122
+ :items="innerItems"
120
123
  :multiSort="false"
121
- :hover="!$props.sortDraggable"
122
- :style="style"
123
- :row-props="rowProps"
124
- :class="classes"
125
124
  :page="innerPage"
126
- :itemsPerPage="innerRowsPerPage"
125
+ :class="classes"
126
+ :style="style"
127
127
  :modelValue="$props.modelValue"
128
128
  @auxclick:row="onClickLibrary.row"
129
129
  @click:row="onClickLibrary.row"
@@ -404,9 +404,9 @@
404
404
  <v-data-iterator
405
405
  v-else
406
406
  class="fs-data-table-iterator"
407
+ :itemsPerPage="innerRowsPerPage"
407
408
  :items="innerItems"
408
409
  :page="innerPage"
409
- :itemsPerPage="innerRowsPerPage"
410
410
  >
411
411
  <template
412
412
  #default="{ items }"
@@ -644,7 +644,7 @@
644
644
  </template>
645
645
 
646
646
  <script lang="ts">
647
- import { computed, defineComponent, onMounted, onUnmounted, PropType, ref, Ref, Slot, watch } from "vue";
647
+ import { computed, defineComponent, nextTick, onMounted, onUnmounted, PropType, ref, Ref, Slot, watch } from "vue";
648
648
  import { useRouter } from "vue-router";
649
649
 
650
650
  import { ColorEnum, FSDataTableColumn, FSDataTableFilter, FSDataTableOrder, FSToggle } from "@dative-gpi/foundation-shared-components/models";
@@ -1110,9 +1110,6 @@ export default defineComponent({
1110
1110
  const toggleFilter = (header: string, value: FSDataTableFilter[]): void => {
1111
1111
  filters.value[header] = value;
1112
1112
  emit("update:filters", filters.value);
1113
- // If a filter is hidden, the associated filter is reseted
1114
- resetable.value = Object.keys(filters.value)
1115
- .some((key) => filters.value[key].some((filter) => filter.hidden));
1116
1113
  };
1117
1114
 
1118
1115
  const resetFilter = (): void => {
@@ -1120,7 +1117,6 @@ export default defineComponent({
1120
1117
  filters.value[key] = filters.value[key].map((filter) => ({ ...filter, hidden: false }));
1121
1118
  }
1122
1119
  emit("update:filters", filters.value);
1123
- resetable.value = false;
1124
1120
  };
1125
1121
 
1126
1122
  const filterSlot = (header: FSDataTableColumn): string => {
@@ -1136,8 +1132,6 @@ export default defineComponent({
1136
1132
  innerColumn.hidden = value as boolean;
1137
1133
  if (value && filters.value[header.value!]) {
1138
1134
  filters.value[header.value!] = filters.value[header.value!].map((filter) => ({ ...filter, hidden: false }));
1139
- resetable.value = Object.keys(filters.value)
1140
- .some((key) => filters.value[key].some((filter) => filter.hidden));
1141
1135
  emit("update:filters", filters.value);
1142
1136
  }
1143
1137
  break;
@@ -1432,6 +1426,11 @@ export default defineComponent({
1432
1426
  innerPage.value = 1;
1433
1427
  });
1434
1428
 
1429
+ watch(filters, () => {
1430
+ resetable.value = Object.keys(filters.value)
1431
+ .some((key) => filters.value[key].some((filter) => filter.hidden));
1432
+ }, { deep: true });
1433
+
1435
1434
  watch(innerMode, () => {
1436
1435
  emit("update:mode", innerMode.value);
1437
1436
  size.value = props.sizeIterator;
@@ -1450,8 +1449,18 @@ export default defineComponent({
1450
1449
  emit("update:rowsPerPage", innerRowsPerPage.value);
1451
1450
  });
1452
1451
 
1453
- watch([() => props.headers, () => props.items], () => {
1452
+ watch(() => props.headers, () => {
1453
+ computeFilters();
1454
+ });
1455
+
1456
+ watch(() => props.items, async () => {
1454
1457
  computeFilters();
1458
+ if (innerPage.value !== 1) {
1459
+ const formerPage = innerPage.value;
1460
+ innerPage.value = 1;
1461
+ await nextTick();
1462
+ innerPage.value = formerPage;
1463
+ }
1455
1464
  });
1456
1465
 
1457
1466
  return {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@dative-gpi/foundation-shared-components",
3
3
  "sideEffects": false,
4
- "version": "0.0.127",
4
+ "version": "0.0.128",
5
5
  "description": "",
6
6
  "publishConfig": {
7
7
  "access": "public"
@@ -10,8 +10,8 @@
10
10
  "author": "",
11
11
  "license": "ISC",
12
12
  "dependencies": {
13
- "@dative-gpi/foundation-shared-domain": "0.0.127",
14
- "@dative-gpi/foundation-shared-services": "0.0.127",
13
+ "@dative-gpi/foundation-shared-domain": "0.0.128",
14
+ "@dative-gpi/foundation-shared-services": "0.0.128",
15
15
  "@fontsource/montserrat": "^5.0.16",
16
16
  "@lexical/clipboard": "^0.12.5",
17
17
  "@lexical/history": "^0.12.5",
@@ -32,5 +32,5 @@
32
32
  "sass": "^1.69.5",
33
33
  "sass-loader": "^13.3.2"
34
34
  },
35
- "gitHead": "464227e786eb9133fbbbc22a4309bbf0d226612b"
35
+ "gitHead": "29d087178fe21c8c415df60c4466755789860cbb"
36
36
  }