@dative-gpi/foundation-shared-components 1.0.126 → 1.0.128-fix-various
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/FSFadeOut.vue +6 -4
- package/components/FSWindow.vue +10 -5
- package/components/agenda/FSAgendaHorizontalEvent.vue +14 -4
- package/components/calendar/FSSimpleCalendar.vue +6 -10
- package/package.json +4 -4
- package/styles/components/fs_agenda_event.scss +1 -1
- package/styles/components/fs_breadcrumbs.scss +4 -2
- package/styles/components/fs_button.scss +7 -5
- package/styles/components/fs_chip.scss +8 -6
- package/styles/components/fs_clickable.scss +14 -12
- package/styles/components/fs_col.scss +2 -1
- package/styles/components/fs_data_iterator_item.scss +12 -10
- package/styles/components/fs_fade_out.scss +0 -6
- package/styles/components/fs_image_card.scss +5 -3
- package/styles/components/fs_map.scss +11 -7
- package/styles/components/fs_password_field.scss +4 -2
- package/styles/components/fs_row.scss +2 -1
- package/styles/components/fs_span.scss +1 -0
- package/styles/components/fs_tabs.scss +9 -5
- package/styles/components/fs_tag.scss +9 -7
- package/styles/globals/overrides.scss +11 -4
- package/styles/globals/scrollbars.scss +10 -0
- package/tools/chartsTools.ts +3 -3
- package/utils/time.ts +13 -13
- package/components/tiles/FSChartTile.vue +0 -73
package/components/FSFadeOut.vue
CHANGED
|
@@ -69,7 +69,7 @@ export default defineComponent({
|
|
|
69
69
|
},
|
|
70
70
|
emits: ["scroll"],
|
|
71
71
|
setup(props) {
|
|
72
|
-
const { windowHeight, windowWidth } = useBreakpoints();
|
|
72
|
+
const { windowHeight, windowWidth, isTouchScreenEnabled } = useBreakpoints();
|
|
73
73
|
const { debounce } = useDebounce();
|
|
74
74
|
const { getColors } = useColors();
|
|
75
75
|
|
|
@@ -84,14 +84,16 @@ export default defineComponent({
|
|
|
84
84
|
|
|
85
85
|
const elementId = `id${uuidv4()}`;
|
|
86
86
|
|
|
87
|
+
const showOutsideScrollbar = computed(() => props.scrollOutside && !isTouchScreenEnabled);
|
|
88
|
+
|
|
87
89
|
const style = computed((): StyleValue => ({
|
|
88
90
|
"--fs-fade-out-height" : props.height ? sizeToVar(props.height) : "initial",
|
|
89
91
|
"--fs-fade-out-max-height" : props.maxHeight ? sizeToVar(props.maxHeight) : "initial",
|
|
90
92
|
"--fs-fade-out-width" : sizeToVar(props.width),
|
|
91
93
|
"--fs-fade-out-padding" : sizeToVar(props.padding),
|
|
92
|
-
"--fs-fade-out-width-offset" :
|
|
93
|
-
"--fs-fade-out-padding-offset" :
|
|
94
|
-
"--fs-fade-out-margin-right" :
|
|
94
|
+
"--fs-fade-out-width-offset" : showOutsideScrollbar.value ? '12px' : '0px',
|
|
95
|
+
"--fs-fade-out-padding-offset" : showOutsideScrollbar.value ? '4px' : '0px',
|
|
96
|
+
"--fs-fade-out-margin-right" : showOutsideScrollbar.value ? '-12px' : '0px',
|
|
95
97
|
"--fs-fade-out-mask-color" : backgrounds.base,
|
|
96
98
|
"--fs-fade-out-top-mask-height" : props.disableTopMask ? '0px' : topMaskHeight.value,
|
|
97
99
|
"--fs-fade-out-bottom-mask-height": props.disableBottomMask ? '0px' : bottomMaskHeight.value,
|
package/components/FSWindow.vue
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<template
|
|
3
|
-
v-if="
|
|
3
|
+
v-if="showError"
|
|
4
4
|
>
|
|
5
5
|
<slot
|
|
6
|
-
name="error"
|
|
6
|
+
name="error"
|
|
7
|
+
v-bind="{ goBack, width: $props.width, height: $props.height }"
|
|
7
8
|
>
|
|
8
9
|
<FSRow
|
|
9
10
|
padding="16px"
|
|
@@ -144,14 +145,18 @@ export default defineComponent({
|
|
|
144
145
|
}, 560);
|
|
145
146
|
});
|
|
146
147
|
|
|
147
|
-
const
|
|
148
|
+
const showError = computed((): boolean => {
|
|
148
149
|
if (!windowRef.value) {
|
|
149
|
-
return;
|
|
150
|
+
return false;
|
|
150
151
|
}
|
|
151
152
|
|
|
152
153
|
// https://github.com/vuetifyjs/vuetify/blob/master/packages/vuetify/src/components/VWindow/VWindow.tsx
|
|
153
154
|
// https://github.com/vuetifyjs/vuetify/blob/master/packages/vuetify/src/composables/group.ts#L161
|
|
154
155
|
const group = windowRef.value.group;
|
|
156
|
+
|
|
157
|
+
if (!group.items.value.length) {
|
|
158
|
+
return false;
|
|
159
|
+
}
|
|
155
160
|
return !group.items.value.find((item: any) => item.value === props.modelValue);
|
|
156
161
|
});
|
|
157
162
|
|
|
@@ -172,7 +177,7 @@ export default defineComponent({
|
|
|
172
177
|
return {
|
|
173
178
|
ColorEnum,
|
|
174
179
|
windowRef,
|
|
175
|
-
|
|
180
|
+
showError,
|
|
176
181
|
slots,
|
|
177
182
|
style,
|
|
178
183
|
getChildren,
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
name="default"
|
|
45
45
|
:label="label"
|
|
46
46
|
:icon="icon"
|
|
47
|
-
:iconBis="iconBis"
|
|
47
|
+
:iconBis="endToday ? iconBis : null"
|
|
48
48
|
:timeStart="epochToShortTimeOnlyFormat($props.start)"
|
|
49
49
|
:timeEnd="epochToShortTimeOnlyFormat($props.end)"
|
|
50
50
|
:variant="$props.variant"
|
|
@@ -120,12 +120,20 @@ export default defineComponent({
|
|
|
120
120
|
return dayEnd.value - props.dayStart;
|
|
121
121
|
});
|
|
122
122
|
|
|
123
|
+
const startToday = computed(() => {
|
|
124
|
+
return props.start >= props.dayStart;
|
|
125
|
+
});
|
|
126
|
+
|
|
127
|
+
const endToday = computed(() => {
|
|
128
|
+
return props.end <= dayEnd.value;
|
|
129
|
+
});
|
|
130
|
+
|
|
123
131
|
const dayDurationOffset = computed(() => {
|
|
124
132
|
return dayDuration.value - dayToMillisecond(1);
|
|
125
133
|
});
|
|
126
134
|
|
|
127
135
|
const leftPosition = computed(() => {
|
|
128
|
-
if (
|
|
136
|
+
if (!startToday.value) {
|
|
129
137
|
return 0;
|
|
130
138
|
}
|
|
131
139
|
return millisecondToDay(props.start - props.dayStart - dayDurationOffset.value) * 100;
|
|
@@ -136,10 +144,10 @@ export default defineComponent({
|
|
|
136
144
|
let end = props.end - dayDurationOffset.value;
|
|
137
145
|
if(props.variant === 'current' && dayEnd.value > props.now) {
|
|
138
146
|
end = props.now;
|
|
139
|
-
} else if (
|
|
147
|
+
} else if (!endToday.value) {
|
|
140
148
|
end = dayEnd.value - dayDurationOffset.value;
|
|
141
149
|
}
|
|
142
|
-
if (
|
|
150
|
+
if (!startToday.value) {
|
|
143
151
|
start = props.dayStart;
|
|
144
152
|
}
|
|
145
153
|
|
|
@@ -150,12 +158,14 @@ export default defineComponent({
|
|
|
150
158
|
const style = computed((): StyleValue => {
|
|
151
159
|
return {
|
|
152
160
|
'--fs-agenda-event-left': `${leftPosition.value}%`,
|
|
161
|
+
'--fs-agenda-event-border-width': startToday.value ? '3px' : '0px',
|
|
153
162
|
};
|
|
154
163
|
});
|
|
155
164
|
|
|
156
165
|
return {
|
|
157
166
|
style,
|
|
158
167
|
width,
|
|
168
|
+
endToday,
|
|
159
169
|
epochToShortTimeOnlyFormat
|
|
160
170
|
};
|
|
161
171
|
}
|
|
@@ -73,7 +73,7 @@ export default defineComponent({
|
|
|
73
73
|
|
|
74
74
|
const firstDayOfMonth = computed(() => {
|
|
75
75
|
const date = new Date(props.year, props.month - 1, 1);
|
|
76
|
-
const offset = getMachineOffset();
|
|
76
|
+
const offset = getMachineOffset(date.getTime());
|
|
77
77
|
|
|
78
78
|
date.setTime(date.getTime() + offset);
|
|
79
79
|
|
|
@@ -84,8 +84,7 @@ export default defineComponent({
|
|
|
84
84
|
const day = new Date(firstDayOfMonth.value);
|
|
85
85
|
|
|
86
86
|
const date = startOfWeek(day, { weekStartsOn: 1 });
|
|
87
|
-
|
|
88
|
-
const offset = getMachineOffset();
|
|
87
|
+
const offset = getMachineOffset(date.getTime());
|
|
89
88
|
|
|
90
89
|
date.setTime(date.getTime() + offset);
|
|
91
90
|
|
|
@@ -94,10 +93,9 @@ export default defineComponent({
|
|
|
94
93
|
|
|
95
94
|
const endDayOfMonth = computed(() => {
|
|
96
95
|
const day = new Date(firstDayOfMonth.value);
|
|
97
|
-
|
|
98
|
-
const date = endOfMonth(day);
|
|
99
96
|
|
|
100
|
-
const
|
|
97
|
+
const date = endOfMonth(day);
|
|
98
|
+
const offset = getMachineOffset(date.getTime());
|
|
101
99
|
|
|
102
100
|
date.setTime(date.getTime() + offset);
|
|
103
101
|
|
|
@@ -106,10 +104,9 @@ export default defineComponent({
|
|
|
106
104
|
|
|
107
105
|
const lastSunday = computed(() => {
|
|
108
106
|
const day = new Date(endDayOfMonth.value);
|
|
109
|
-
|
|
110
|
-
const date = endOfWeek(day, { weekStartsOn: 1 });
|
|
111
107
|
|
|
112
|
-
const
|
|
108
|
+
const date = endOfWeek(day, { weekStartsOn: 1 });
|
|
109
|
+
const offset = getMachineOffset(date.getTime());
|
|
113
110
|
|
|
114
111
|
date.setTime(date.getTime() + offset);
|
|
115
112
|
|
|
@@ -143,7 +140,6 @@ export default defineComponent({
|
|
|
143
140
|
dayLabel,
|
|
144
141
|
days
|
|
145
142
|
};
|
|
146
|
-
|
|
147
143
|
}
|
|
148
144
|
});
|
|
149
145
|
</script>
|
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.128-fix-various",
|
|
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.128-fix-various",
|
|
14
|
+
"@dative-gpi/foundation-shared-services": "1.0.128-fix-various"
|
|
15
15
|
},
|
|
16
16
|
"peerDependencies": {
|
|
17
17
|
"@dative-gpi/bones-ui": "^1.0.0",
|
|
@@ -35,5 +35,5 @@
|
|
|
35
35
|
"sass": "1.71.1",
|
|
36
36
|
"sass-loader": "13.3.2"
|
|
37
37
|
},
|
|
38
|
-
"gitHead": "
|
|
38
|
+
"gitHead": "90ff20655fc6c49d1c6d8b14435795b4c886b86f"
|
|
39
39
|
}
|
|
@@ -2,11 +2,6 @@
|
|
|
2
2
|
transition: color 0.28s cubic-bezier(0.4, 0, 0.2, 1) !important;
|
|
3
3
|
color: var(--fs-button-color) !important;
|
|
4
4
|
|
|
5
|
-
&:not(.fs-button-disabled, :has(.fs-button-load)):hover {
|
|
6
|
-
color: var(--fs-button-hover-color) !important;
|
|
7
|
-
cursor: pointer !important;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
5
|
&.fs-button-disabled,
|
|
11
6
|
&:has(.fs-button-load) {
|
|
12
7
|
cursor: default !important;
|
|
@@ -16,4 +11,11 @@
|
|
|
16
11
|
color: inherit;
|
|
17
12
|
text-decoration: none;
|
|
18
13
|
}
|
|
14
|
+
|
|
15
|
+
@include clickscreen {
|
|
16
|
+
&:not(.fs-button-disabled, :has(.fs-button-load)):hover {
|
|
17
|
+
color: var(--fs-button-hover-color) !important;
|
|
18
|
+
cursor: pointer !important;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
19
21
|
}
|
|
@@ -12,15 +12,17 @@
|
|
|
12
12
|
.fs-chip-editable {
|
|
13
13
|
cursor: pointer !important;
|
|
14
14
|
|
|
15
|
-
&:hover {
|
|
16
|
-
background-color: var(--fs-chip-hover-background-color) !important;
|
|
17
|
-
border-color: var(--fs-chip-hover-border-color) !important;
|
|
18
|
-
color: var(--fs-chip-hover-color) !important;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
15
|
&:active {
|
|
22
16
|
background-color: var(--fs-chip-active-background-color) !important;
|
|
23
17
|
border-color: var(--fs-chip-active-border-color) !important;
|
|
24
18
|
color: var(--fs-chip-active-color) !important;
|
|
25
19
|
}
|
|
20
|
+
|
|
21
|
+
@include clickscreen {
|
|
22
|
+
&:hover {
|
|
23
|
+
background-color: var(--fs-chip-hover-background-color) !important;
|
|
24
|
+
border-color: var(--fs-chip-hover-border-color) !important;
|
|
25
|
+
color: var(--fs-chip-hover-color) !important;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
26
28
|
}
|
|
@@ -11,18 +11,7 @@
|
|
|
11
11
|
&.fs-clickable-disabled {
|
|
12
12
|
cursor: default;
|
|
13
13
|
}
|
|
14
|
-
|
|
15
|
-
&:not(.fs-clickable-disabled):hover:not(:has( .fs-stopclick:hover)) {
|
|
16
|
-
background-color: var(--fs-clickable-hover-background-color) !important;
|
|
17
|
-
border-color: var(--fs-clickable-hover-border-color) !important;
|
|
18
|
-
color: var(--fs-clickable-hover-color) !important;
|
|
19
|
-
|
|
20
|
-
& .fs-card-clickable {
|
|
21
|
-
transition: background-color 0.28s cubic-bezier(0.4, 0, 0.2, 1);
|
|
22
|
-
background-color: var(--fs-clickable-hover-background-color);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
|
|
14
|
+
|
|
26
15
|
&:not(.fs-clickable-disabled):active:not(:has( .fs-stopclick:hover)) {
|
|
27
16
|
background-color: var(--fs-clickable-active-background-color) !important;
|
|
28
17
|
border-color: var(--fs-clickable-active-border-color) !important;
|
|
@@ -33,6 +22,19 @@
|
|
|
33
22
|
background-color: var(--fs-clickable-active-background-color);
|
|
34
23
|
}
|
|
35
24
|
}
|
|
25
|
+
|
|
26
|
+
@include clickscreen {
|
|
27
|
+
&:not(.fs-clickable-disabled):hover:not(:has( .fs-stopclick:hover)) {
|
|
28
|
+
background-color: var(--fs-clickable-hover-background-color) !important;
|
|
29
|
+
border-color: var(--fs-clickable-hover-border-color) !important;
|
|
30
|
+
color: var(--fs-clickable-hover-color) !important;
|
|
31
|
+
|
|
32
|
+
& .fs-card-clickable {
|
|
33
|
+
transition: background-color 0.28s cubic-bezier(0.4, 0, 0.2, 1);
|
|
34
|
+
background-color: var(--fs-clickable-hover-background-color);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
36
38
|
}
|
|
37
39
|
|
|
38
40
|
a:has(.fs-clickable) {
|
|
@@ -8,16 +8,18 @@
|
|
|
8
8
|
padding-right: 32px;
|
|
9
9
|
}
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
11
|
+
@include clickscreen {
|
|
12
|
+
&:hover::after {
|
|
13
|
+
content: "";
|
|
14
|
+
background-color: black;
|
|
15
|
+
pointer-events: none;
|
|
16
|
+
position: absolute;
|
|
17
|
+
opacity: 0.04;
|
|
18
|
+
height: 100%;
|
|
19
|
+
width: 100%;
|
|
20
|
+
left: 0;
|
|
21
|
+
top: 0;
|
|
22
|
+
}
|
|
21
23
|
}
|
|
22
24
|
}
|
|
23
25
|
|
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
transition: all 0.28s cubic-bezier(0.4, 0, 0.2, 1);
|
|
5
5
|
overflow-x: var(--fs-fade-out-x-overflow);
|
|
6
6
|
max-height: var(--fs-fade-out-max-height);
|
|
7
|
-
min-height: var(--fs-fade-out-height);
|
|
8
7
|
height: var(--fs-fade-out-height);
|
|
9
8
|
padding: var(--fs-fade-out-padding);
|
|
10
9
|
|
|
@@ -12,11 +11,6 @@
|
|
|
12
11
|
padding-right: calc(var(--fs-fade-out-padding) + var(--fs-fade-out-padding-offset));
|
|
13
12
|
width: calc(var(--fs-fade-out-width) + var(--fs-fade-out-width-offset));
|
|
14
13
|
margin-right: var(--fs-fade-out-margin-right);
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
flex-direction: column;
|
|
18
|
-
position: relative;
|
|
19
|
-
display: flex;
|
|
20
14
|
|
|
21
15
|
mask:
|
|
22
16
|
linear-gradient(to top, transparent 0, var(--fs-fade-out-mask-color)) 0 (0 / calc(100% - 8px)) var(--fs-fade-out-top-mask-height),
|
|
@@ -92,11 +92,13 @@
|
|
|
92
92
|
align-items: center;
|
|
93
93
|
justify-content: center;
|
|
94
94
|
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
95
|
+
@include clickscreen {
|
|
96
|
+
&:hover {
|
|
97
|
+
filter: brightness(0.92) drop-shadow(0px 2px 4px rgba(0, 0, 0, 0.4));
|
|
98
|
+
|
|
99
|
+
> * {
|
|
100
|
+
transform: scale(1.15);
|
|
101
|
+
}
|
|
100
102
|
}
|
|
101
103
|
}
|
|
102
104
|
}
|
|
@@ -128,8 +130,10 @@
|
|
|
128
130
|
opacity: 0.6;
|
|
129
131
|
transition: opacity 0.28s cubic-bezier(0.4, 0, 0.2, 1);
|
|
130
132
|
|
|
131
|
-
|
|
132
|
-
|
|
133
|
+
@include clickscreen {
|
|
134
|
+
&:hover {
|
|
135
|
+
opacity: 1;
|
|
136
|
+
}
|
|
133
137
|
}
|
|
134
138
|
}
|
|
135
139
|
}
|
|
@@ -4,7 +4,9 @@
|
|
|
4
4
|
color: var(--fs-password-field-color) !important;
|
|
5
5
|
transition: color 0.28s cubic-bezier(0.4, 0, 0.2, 1);
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
@include clickscreen {
|
|
8
|
+
&:hover {
|
|
9
|
+
color: var(--fs-password-field-hover-color) !important;
|
|
10
|
+
}
|
|
9
11
|
}
|
|
10
12
|
}
|
|
@@ -23,9 +23,11 @@
|
|
|
23
23
|
@extend .text-button;
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
26
|
+
@include clickscreen {
|
|
27
|
+
&:hover {
|
|
28
|
+
border-bottom: 1px solid var(--fs-tab-hover-border-color) !important;
|
|
29
|
+
color: var(--fs-group-hover-color) !important;
|
|
30
|
+
}
|
|
29
31
|
}
|
|
30
32
|
}
|
|
31
33
|
|
|
@@ -34,8 +36,10 @@
|
|
|
34
36
|
color: var(--fs-group-hover-color) !important;
|
|
35
37
|
border-bottom: 0 !important;
|
|
36
38
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
+
@include clickscreen {
|
|
40
|
+
&:hover {
|
|
41
|
+
border-bottom: 0 !important;
|
|
42
|
+
}
|
|
39
43
|
}
|
|
40
44
|
}
|
|
41
45
|
|
|
@@ -13,17 +13,19 @@
|
|
|
13
13
|
background-color: var(--fs-tag-background-color) !important;
|
|
14
14
|
color: var(--fs-tag-color) !important;
|
|
15
15
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
}
|
|
16
|
+
min-width: 20px !important;
|
|
17
|
+
width: 20px !important;
|
|
18
|
+
height: 20px !important;
|
|
20
19
|
|
|
21
20
|
&:active {
|
|
22
21
|
background-color: var(--fs-tag-active-background-color) !important;
|
|
23
22
|
color: var(--fs-tag-active-color) !important;
|
|
24
23
|
}
|
|
25
24
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
25
|
+
@include clickscreen {
|
|
26
|
+
&:hover {
|
|
27
|
+
background-color: var(--fs-tag-hover-background-color) !important;
|
|
28
|
+
color: var(--fs-tag-hover-color) !important;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
29
31
|
}
|
|
@@ -137,11 +137,16 @@
|
|
|
137
137
|
}
|
|
138
138
|
}
|
|
139
139
|
|
|
140
|
-
// Ellipsis on input of all fields
|
|
141
140
|
input {
|
|
141
|
+
// Ellipsis on all fields
|
|
142
142
|
text-overflow: ellipsis;
|
|
143
143
|
}
|
|
144
144
|
|
|
145
|
+
input, select, textarea {
|
|
146
|
+
// No zoom on focus for user of a certain version of Chrome, and who ask their mobile to zoom if font-size < 16px
|
|
147
|
+
touch-action: none;
|
|
148
|
+
}
|
|
149
|
+
|
|
145
150
|
// No up / down buttons in input field of type number
|
|
146
151
|
input[type=number] {
|
|
147
152
|
-moz-appearance: textfield;
|
|
@@ -187,9 +192,11 @@ $nthOverlay: 25;
|
|
|
187
192
|
}
|
|
188
193
|
|
|
189
194
|
// Change color on arrows when hovered
|
|
190
|
-
|
|
191
|
-
.v-slide-
|
|
192
|
-
|
|
195
|
+
@include clickscreen {
|
|
196
|
+
.v-slide-group__prev:hover,
|
|
197
|
+
.v-slide-group__next:hover {
|
|
198
|
+
color: var(--fs-group-hover-color);
|
|
199
|
+
}
|
|
193
200
|
}
|
|
194
201
|
|
|
195
202
|
/***************************************************************************/
|
|
@@ -47,9 +47,19 @@
|
|
|
47
47
|
@include touchscreen {
|
|
48
48
|
.fs-hide-x-scrollbar {
|
|
49
49
|
overflow-x: scroll;
|
|
50
|
+
|
|
51
|
+
&::-webkit-scrollbar {
|
|
52
|
+
display: none;
|
|
53
|
+
}
|
|
54
|
+
scrollbar-width: none;
|
|
50
55
|
}
|
|
51
56
|
|
|
52
57
|
.fs-hide-y-scrollbar {
|
|
53
58
|
overflow-y: scroll;
|
|
59
|
+
|
|
60
|
+
&::-webkit-scrollbar {
|
|
61
|
+
display: none;
|
|
62
|
+
}
|
|
63
|
+
scrollbar-width: none;
|
|
54
64
|
}
|
|
55
65
|
}
|
package/tools/chartsTools.ts
CHANGED
|
@@ -39,10 +39,10 @@ export const colorSetLabel = (value: ColorSets | number): string => {
|
|
|
39
39
|
switch (value) {
|
|
40
40
|
case ColorSets.Default: return $tr("ui.color-sets.am-charts", "Am Charts");
|
|
41
41
|
case ColorSets.Grafana: return $tr("ui.color-sets.grafana", "Grafana");
|
|
42
|
-
case ColorSets.Armytage: return $tr("ui.color-sets.armytage", "
|
|
42
|
+
case ColorSets.Armytage: return $tr("ui.color-sets.armytage", "High contrast (26 colors)");
|
|
43
43
|
case ColorSets.Hash: return $tr("ui.color-sets.hash", "Hash");
|
|
44
|
-
case ColorSets.Kelly: return $tr("ui.color-sets.
|
|
45
|
-
case ColorSets.ZeileisHornikMurrell: return $tr("ui.color-sets.
|
|
44
|
+
case ColorSets.Kelly: return $tr("ui.color-sets.kelly", "High contrast (22 colors)");
|
|
45
|
+
case ColorSets.ZeileisHornikMurrell: return $tr("ui.color-sets.zeileis", "Colorblind accessible");
|
|
46
46
|
default: return $tr("ui.common.none", "None");
|
|
47
47
|
}
|
|
48
48
|
}
|
package/utils/time.ts
CHANGED
|
@@ -5,13 +5,13 @@ import { TimeUnit } from "@dative-gpi/foundation-shared-domain/enums"
|
|
|
5
5
|
const { $tr } = useTranslationsProvider();
|
|
6
6
|
|
|
7
7
|
export const timeSteps = [
|
|
8
|
-
{ id: TimeUnit.Second,
|
|
9
|
-
{ id: TimeUnit.Minute,
|
|
10
|
-
{ id: TimeUnit.Hour,
|
|
11
|
-
{ id: TimeUnit.Day,
|
|
12
|
-
{ id: TimeUnit.Week,
|
|
13
|
-
{ id: TimeUnit.Month,
|
|
14
|
-
{ id: TimeUnit.Year,
|
|
8
|
+
{ id: TimeUnit.Second, get label() { return $tr("ui.common.second", "Second") }, get plural() { return $tr("ui.common.seconds", "Seconds") } },
|
|
9
|
+
{ id: TimeUnit.Minute, get label() { return $tr("ui.common.minute", "Minute") }, get plural() { return $tr("ui.common.minutes", "Minutes") } },
|
|
10
|
+
{ id: TimeUnit.Hour, get label() { return $tr("ui.common.hour", "Hour") }, get plural() { return $tr("ui.common.hours", "Hours") } },
|
|
11
|
+
{ id: TimeUnit.Day, get label() { return $tr("ui.common.day", "Day") }, get plural() { return $tr("ui.common.days", "Days") } },
|
|
12
|
+
{ id: TimeUnit.Week, get label() { return $tr("ui.common.week", "Week") }, get plural() { return $tr("ui.common.weeks", "Weeks") } },
|
|
13
|
+
{ id: TimeUnit.Month, get label() { return $tr("ui.common.month", "Month") }, get plural() { return $tr("ui.common.months", "Months") } },
|
|
14
|
+
{ id: TimeUnit.Year, get label() { return $tr("ui.common.year", "Year") }, get plural() { return $tr("ui.common.years", "Years") } },
|
|
15
15
|
];
|
|
16
16
|
|
|
17
17
|
export const timeStepToString = (value: { value: number, unit: TimeUnit } | null): string => {
|
|
@@ -28,12 +28,12 @@ export const timeStepToString = (value: { value: number, unit: TimeUnit } | null
|
|
|
28
28
|
};
|
|
29
29
|
|
|
30
30
|
// TODO : remove everything below this line
|
|
31
|
-
export const timeScale
|
|
32
|
-
{ id: 1, label
|
|
33
|
-
{ id: 60, label
|
|
34
|
-
{ id: 3600, label
|
|
35
|
-
{ id: 86400, label
|
|
36
|
-
{ id: 604800, label
|
|
31
|
+
export const timeScale = [
|
|
32
|
+
{ id: 1, get label() { return $tr("ui.common.second", "Second") }, get plural() { return $tr("ui.common.seconds", "Seconds") } },
|
|
33
|
+
{ id: 60, get label() { return $tr("ui.common.minute", "Minute") }, get plural() { return $tr("ui.common.minutes", "Minutes") } },
|
|
34
|
+
{ id: 3600, get label() { return $tr("ui.common.hour", "Hour") }, get plural() { return $tr("ui.common.hours", "Hours") } },
|
|
35
|
+
{ id: 86400, get label() { return $tr("ui.common.day", "Day") }, get plural() { return $tr("ui.common.days", "Days") } },
|
|
36
|
+
{ id: 604800, get label() { return $tr("ui.common.week", "Week") }, get plural() { return $tr("ui.common.weeks", "Weeks") } },
|
|
37
37
|
];
|
|
38
38
|
|
|
39
39
|
export const getTimeScaleIndex = (value: number): number => {
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<FSChartTileUI
|
|
3
|
-
v-if="chart"
|
|
4
|
-
:label="chart.label"
|
|
5
|
-
:icon="chart.icon"
|
|
6
|
-
:type="chart.chartType"
|
|
7
|
-
:imageId="chart.imageId"
|
|
8
|
-
v-bind="$attrs"
|
|
9
|
-
/>
|
|
10
|
-
</template>
|
|
11
|
-
|
|
12
|
-
<script lang="ts">
|
|
13
|
-
import { defineComponent, watch, computed } from "vue";
|
|
14
|
-
import type { PropType } from "vue";
|
|
15
|
-
|
|
16
|
-
import { ColorEnum } from "@dative-gpi/foundation-shared-components/models";
|
|
17
|
-
import { chartIcon } from "@dative-gpi/foundation-shared-components/tools";
|
|
18
|
-
|
|
19
|
-
import { useChartOrganisation, useChartOrganisationType } from "@dative-gpi/foundation-core-services/composables";
|
|
20
|
-
|
|
21
|
-
import { ApplicationScope } from "@dative-gpi/foundation-shared-domain/enums";
|
|
22
|
-
import FSChartTileUI from "./FSChartTileUI.vue";
|
|
23
|
-
|
|
24
|
-
export default defineComponent({
|
|
25
|
-
name: "FSChartTile",
|
|
26
|
-
components: {
|
|
27
|
-
FSChartTileUI
|
|
28
|
-
},
|
|
29
|
-
props: {
|
|
30
|
-
chartId: {
|
|
31
|
-
type: String,
|
|
32
|
-
required: true
|
|
33
|
-
},
|
|
34
|
-
scope: {
|
|
35
|
-
type: Object as PropType<ApplicationScope | number>,
|
|
36
|
-
required : true
|
|
37
|
-
}
|
|
38
|
-
},
|
|
39
|
-
setup(props) {
|
|
40
|
-
|
|
41
|
-
const {get : fetchChartOrganisation, entity : chartOrganisation } = useChartOrganisation();
|
|
42
|
-
const {get : fetchChartOrganisationType, entity : chartOrganisationType } = useChartOrganisationType();
|
|
43
|
-
|
|
44
|
-
const chart = computed(() =>{
|
|
45
|
-
if(props.scope == ApplicationScope.Organisation){
|
|
46
|
-
return chartOrganisation.value;
|
|
47
|
-
}
|
|
48
|
-
else if(props.scope == ApplicationScope.OrganisationType){
|
|
49
|
-
return chartOrganisationType.value;
|
|
50
|
-
}
|
|
51
|
-
else{
|
|
52
|
-
return null
|
|
53
|
-
}
|
|
54
|
-
})
|
|
55
|
-
|
|
56
|
-
watch(() => [props.chartId, props.scope], () =>{
|
|
57
|
-
if(props.scope == ApplicationScope.Organisation){
|
|
58
|
-
fetchChartOrganisation(props.chartId);
|
|
59
|
-
}
|
|
60
|
-
else if(props.scope == ApplicationScope.OrganisationType)
|
|
61
|
-
{
|
|
62
|
-
fetchChartOrganisationType(props.chartId)
|
|
63
|
-
}
|
|
64
|
-
}, {immediate : true})
|
|
65
|
-
|
|
66
|
-
return {
|
|
67
|
-
ColorEnum,
|
|
68
|
-
chart,
|
|
69
|
-
chartIcon
|
|
70
|
-
};
|
|
71
|
-
}
|
|
72
|
-
});
|
|
73
|
-
</script>
|