@dative-gpi/foundation-shared-components 1.0.67 → 1.0.68
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/components/FSTabs.vue
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
:style="style"
|
|
8
8
|
:grow="true"
|
|
9
9
|
:modelValue="$props.tab"
|
|
10
|
-
@update:modelValue="
|
|
10
|
+
@update:modelValue="onUpdateTab($event)"
|
|
11
11
|
v-bind="$attrs"
|
|
12
12
|
>
|
|
13
13
|
<slot/>
|
|
@@ -15,7 +15,8 @@
|
|
|
15
15
|
</template>
|
|
16
16
|
|
|
17
17
|
<script lang="ts">
|
|
18
|
-
import { computed, defineComponent, type PropType, type StyleValue } from "vue";
|
|
18
|
+
import { computed, defineComponent, onMounted, type PropType, type StyleValue } from "vue";
|
|
19
|
+
import { useRouter } from "vue-router";
|
|
19
20
|
|
|
20
21
|
import { type ColorBase, ColorEnum } from "@dative-gpi/foundation-shared-components/models";
|
|
21
22
|
import { useColors } from "@dative-gpi/foundation-shared-components/composables";
|
|
@@ -24,7 +25,7 @@ export default defineComponent({
|
|
|
24
25
|
name: "FSTabs",
|
|
25
26
|
props: {
|
|
26
27
|
tab: {
|
|
27
|
-
type: Number,
|
|
28
|
+
type: [String, Number, Object] as PropType<any>,
|
|
28
29
|
required: false,
|
|
29
30
|
default: 0
|
|
30
31
|
},
|
|
@@ -32,10 +33,17 @@ export default defineComponent({
|
|
|
32
33
|
type: String as PropType<ColorBase>,
|
|
33
34
|
required: false,
|
|
34
35
|
default: ColorEnum.Primary
|
|
36
|
+
},
|
|
37
|
+
recordNavigation: {
|
|
38
|
+
type: Boolean,
|
|
39
|
+
required: false,
|
|
40
|
+
default: false
|
|
35
41
|
}
|
|
36
42
|
},
|
|
37
|
-
|
|
43
|
+
emits: ["update:tab"],
|
|
44
|
+
setup(props, { emit }) {
|
|
38
45
|
const { getColors } = useColors();
|
|
46
|
+
const router = useRouter();
|
|
39
47
|
|
|
40
48
|
const colors = computed(() => getColors(props.color));
|
|
41
49
|
const lights = getColors(ColorEnum.Light);
|
|
@@ -51,8 +59,22 @@ export default defineComponent({
|
|
|
51
59
|
"--fs-tab-tag-color" : colors.value.baseContrast!
|
|
52
60
|
}));
|
|
53
61
|
|
|
62
|
+
const onUpdateTab = (tab: number): void => {
|
|
63
|
+
if (props.recordNavigation) {
|
|
64
|
+
router.replace({ query: { tab: tab.toString() } });
|
|
65
|
+
}
|
|
66
|
+
emit("update:tab", tab);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
onMounted((): void => {
|
|
70
|
+
if (props.recordNavigation && router.currentRoute.value.query.tab) {
|
|
71
|
+
emit("update:tab", router.currentRoute.value.query.tab);
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
|
|
54
75
|
return {
|
|
55
|
-
style
|
|
76
|
+
style,
|
|
77
|
+
onUpdateTab
|
|
56
78
|
};
|
|
57
79
|
}
|
|
58
80
|
});
|
|
@@ -446,7 +446,7 @@
|
|
|
446
446
|
v-for="(item, index) in items"
|
|
447
447
|
elementSelector=".fs-draggable-item"
|
|
448
448
|
:disabled="draggableDisabled"
|
|
449
|
-
:item="item"
|
|
449
|
+
:item="{ ...item, index }"
|
|
450
450
|
:key="index"
|
|
451
451
|
@update:dragend="(event, dragged) => onDragEnd(event, dragged, '.fs-data-iterator-container')"
|
|
452
452
|
@dragover="(event) => onDragOver(event, '.fs-draggable-item', '.fs-data-iterator-container')"
|
|
@@ -617,7 +617,7 @@
|
|
|
617
617
|
v-for="(item, index) in items.filter((item) => item.type === 'item')"
|
|
618
618
|
elementSelector=".fs-draggable-item"
|
|
619
619
|
:disabled="draggableDisabled"
|
|
620
|
-
:item="item"
|
|
620
|
+
:item="{ ...item, index }"
|
|
621
621
|
:key="index"
|
|
622
622
|
@update:dragend="(event, dragged) => onDragEnd(event, dragged, '.fs-data-iterator-container')"
|
|
623
623
|
@dragover="(event) => onDragOver(event, '.fs-draggable-item', '.fs-data-iterator-container')"
|
|
@@ -1360,10 +1360,10 @@ export default defineComponent({
|
|
|
1360
1360
|
};
|
|
1361
1361
|
|
|
1362
1362
|
const resetRowIndex = (initialIndex: number, currentIndex: number, draggedElement: HTMLElement, tbodyElement: HTMLElement) => {
|
|
1363
|
-
if (initialIndex > currentIndex) {
|
|
1363
|
+
if (initialIndex > currentIndex && tbodyElement.children[initialIndex]) {
|
|
1364
1364
|
tbodyElement.children[initialIndex].insertAdjacentElement("afterend", draggedElement);
|
|
1365
1365
|
}
|
|
1366
|
-
else {
|
|
1366
|
+
else if(tbodyElement.children[initialIndex]) {
|
|
1367
1367
|
tbodyElement.children[initialIndex].insertAdjacentElement("beforebegin", draggedElement);
|
|
1368
1368
|
}
|
|
1369
1369
|
};
|
|
@@ -74,7 +74,7 @@ export default defineComponent({
|
|
|
74
74
|
const dragged = (event.target as HTMLElement)?.closest(props.elementSelector) as HTMLElement;
|
|
75
75
|
dragged.classList.add("fs-draggable-dragging");
|
|
76
76
|
dragged.classList.add("fs-draggable-dragging-grabbegin");
|
|
77
|
-
dragged.dataset.initialIndex = props.item
|
|
77
|
+
dragged.dataset.initialIndex = props.item.index;
|
|
78
78
|
event.preventDefault();
|
|
79
79
|
}
|
|
80
80
|
}, mobileGrabThreshold);
|
|
@@ -171,7 +171,7 @@ export default defineComponent({
|
|
|
171
171
|
return;
|
|
172
172
|
}
|
|
173
173
|
const dragged = (event.target as HTMLElement)?.closest(props.elementSelector) as HTMLElement;
|
|
174
|
-
dragged.dataset.initialIndex = props.item
|
|
174
|
+
dragged.dataset.initialIndex = props.item.index;
|
|
175
175
|
event.dataTransfer?.setDragImage(dragged, 25, 25);
|
|
176
176
|
|
|
177
177
|
if (event.dataTransfer) {
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dative-gpi/foundation-shared-components",
|
|
3
3
|
"sideEffects": false,
|
|
4
|
-
"version": "1.0.
|
|
4
|
+
"version": "1.0.68",
|
|
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": "1.0.
|
|
14
|
-
"@dative-gpi/foundation-shared-services": "1.0.
|
|
13
|
+
"@dative-gpi/foundation-shared-domain": "1.0.68",
|
|
14
|
+
"@dative-gpi/foundation-shared-services": "1.0.68"
|
|
15
15
|
},
|
|
16
16
|
"peerDependencies": {
|
|
17
17
|
"@dative-gpi/bones-ui": "^0.0.75",
|
|
@@ -35,5 +35,5 @@
|
|
|
35
35
|
"sass": "1.71.1",
|
|
36
36
|
"sass-loader": "13.3.2"
|
|
37
37
|
},
|
|
38
|
-
"gitHead": "
|
|
38
|
+
"gitHead": "341389f8890f7ebe2e0ac03ea54e5ed38e9c7e56"
|
|
39
39
|
}
|