toggle-components-library 1.36.1-beta.1 → 1.36.1-beta.12
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/dist/img/contacts-greyblue.ef6f8a9a.svg +1 -0
- package/dist/img/contacts-white.95d07c7a.svg +1 -0
- package/dist/toggle-components-library.common.js +237 -219
- package/dist/toggle-components-library.common.js.map +1 -1
- package/dist/toggle-components-library.css +1 -1
- package/dist/toggle-components-library.umd.js +237 -219
- package/dist/toggle-components-library.umd.js.map +1 -1
- package/dist/toggle-components-library.umd.min.js +1 -1
- package/dist/toggle-components-library.umd.min.js.map +1 -1
- package/package.json +1 -1
- package/src/components/buttons/ToggleMetricsButton.vue +3 -18
- package/src/components/forms/ToggleDatePicker.vue +7 -3
- package/src/components/forms/ToggleInputCurrency.vue +10 -3
- package/src/components/forms/ToggleInputPercentage.vue +7 -1
- package/src/components/forms/ToggleInputText.vue +0 -4
- package/src/components/metrics/ToggleMetricSingleMetric.vue +7 -12
- package/src/components/metrics/ToggleMetricSparkLine.vue +2 -2
- package/src/components/statusbar/ToggleStatusBar.vue +74 -0
- package/src/index.js +4 -3
- package/src/sass/includes/_as_buttons.scss +4 -38
- package/src/sass/includes/_as_cards.scss +0 -29
- package/src/sass/includes/_as_inputs.scss +5 -0
- package/src/sass/includes/_as_metrics.scss +0 -5
- package/src/sass/includes/_as_navs.scss +0 -16
- package/src/sass/includes/_as_statusbar.scss +179 -0
- package/src/sass/main.scss +1 -0
- package/dist/img/airship-feedback-hover.a207c947.svg +0 -10
- package/dist/img/airship-feedback.1f7c858c.svg +0 -10
- package/package-lock.json +0 -20285
- package/src/assets/icons/airship-feedback-hover.svg +0 -10
- package/src/assets/icons/airship-feedback.svg +0 -10
- package/src/components/cards/ToggleCommentCard.vue +0 -59
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<button :class="['toggle-metrics-button', buttonStyle
|
|
3
|
-
<div :class="icon"
|
|
2
|
+
<button :class="['toggle-metrics-button', buttonStyle]" @click="click">
|
|
3
|
+
<div :class="icon"></div>
|
|
4
4
|
<slot>{{buttonText}}</slot>
|
|
5
5
|
</button>
|
|
6
6
|
</template>
|
|
@@ -19,22 +19,7 @@
|
|
|
19
19
|
},
|
|
20
20
|
icon: {
|
|
21
21
|
type: String,
|
|
22
|
-
required:
|
|
23
|
-
validator: function(value) {
|
|
24
|
-
return ["heatmap-icon", "email-icon", "contacts-icon"].indexOf(value) !== -1;
|
|
25
|
-
}
|
|
26
|
-
},
|
|
27
|
-
size: {
|
|
28
|
-
type: String,
|
|
29
|
-
default: "medium",
|
|
30
|
-
required: false,
|
|
31
|
-
validator: function(value) {
|
|
32
|
-
return ["small", "medium", "large"].indexOf(value) !== -1;
|
|
33
|
-
}
|
|
34
|
-
},
|
|
35
|
-
styles: {
|
|
36
|
-
type: Object,
|
|
37
|
-
required: false,
|
|
22
|
+
required: true,
|
|
38
23
|
},
|
|
39
24
|
},
|
|
40
25
|
methods: {
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
<label class="toggle-input-label">{{label}}</label>
|
|
7
7
|
|
|
8
8
|
<div class="toggle-date-input-container">
|
|
9
|
-
<div class="toggle-date-input-calendar-icon">
|
|
10
|
-
<input type="text" class="toggle-input" :name="name" ref="date-input" :id="'toggle-date-input'+_uid" :value="date" v-on:keypress="$event.preventDefault()"
|
|
9
|
+
<div :class="['toggle-date-input-calendar-icon', {'calendar-icon-disabled' :disabled}]">
|
|
10
|
+
<input type="text" class="toggle-input" :name="name" :disabled="disabled" ref="date-input" :id="'toggle-date-input'+_uid" :value="date" v-on:keypress="$event.preventDefault()" />
|
|
11
11
|
</div>
|
|
12
12
|
<button type="button" class="toggle-clear" v-on:click="clearDate" v-if="displayValue"></button>
|
|
13
13
|
</div>
|
|
@@ -101,7 +101,11 @@ export default {
|
|
|
101
101
|
maxLength:{
|
|
102
102
|
type: Number,
|
|
103
103
|
required:false
|
|
104
|
-
}
|
|
104
|
+
},
|
|
105
|
+
disabled: {
|
|
106
|
+
type: Boolean,
|
|
107
|
+
default: false
|
|
108
|
+
},
|
|
105
109
|
},
|
|
106
110
|
|
|
107
111
|
created : function(){
|
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
<div class="toggle-input-container" :class="{'toggle-input-is-invalid':isInvalid }" v-on:click="focusClosestInput">
|
|
6
|
+
<div class="toggle-input-container" :class="{'toggle-input-is-invalid':isInvalid, 'toggle-input-is-disabled':disabled }" v-on:click="focusClosestInput">
|
|
7
|
+
|
|
7
8
|
<label
|
|
8
9
|
v-if="label"
|
|
9
10
|
:for="name ? name : 'InputText' "
|
|
@@ -16,6 +17,7 @@
|
|
|
16
17
|
:placeholder="placeholder ? placeholder : '' "
|
|
17
18
|
:autocomplete="autocomplete ? 'on' : 'off' "
|
|
18
19
|
:required="required"
|
|
20
|
+
:disabled="disabled"
|
|
19
21
|
v-model="inputVal"
|
|
20
22
|
@blur="isInputActive = false"
|
|
21
23
|
@focus="isInputActive = true"
|
|
@@ -91,8 +93,13 @@ export default {
|
|
|
91
93
|
currencyDenomination: {
|
|
92
94
|
type: Number,
|
|
93
95
|
default: 100
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
+
},
|
|
97
|
+
disabled: {
|
|
98
|
+
type: Boolean,
|
|
99
|
+
required: false,
|
|
100
|
+
default: false
|
|
101
|
+
|
|
102
|
+
},
|
|
96
103
|
},
|
|
97
104
|
|
|
98
105
|
created : function(){
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
|
|
3
|
-
<div class="toggle-input-container" :class="{'toggle-input-is-invalid':isInvalid }" v-on:click="focusClosestInput">
|
|
3
|
+
<div class="toggle-input-container" :class="{'toggle-input-is-invalid':isInvalid, 'toggle-input-is-disabled':disabled }" v-on:click="focusClosestInput">
|
|
4
4
|
|
|
5
5
|
<label
|
|
6
6
|
v-if="label"
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
:placeholder="placeholder ? placeholder : '' "
|
|
15
15
|
:autocomplete="autocomplete ? 'on' : 'off' "
|
|
16
16
|
:required="required"
|
|
17
|
+
:disabled="disabled"
|
|
17
18
|
v-model="inputVal"
|
|
18
19
|
@blur="isInputActive = false"
|
|
19
20
|
@focus="isInputActive = true"
|
|
@@ -77,6 +78,11 @@ export default {
|
|
|
77
78
|
allowFloat: {
|
|
78
79
|
type: Boolean,
|
|
79
80
|
default: false
|
|
81
|
+
},
|
|
82
|
+
disabled: {
|
|
83
|
+
type: Boolean,
|
|
84
|
+
required: false,
|
|
85
|
+
default: false
|
|
80
86
|
}
|
|
81
87
|
},
|
|
82
88
|
|
|
@@ -2,9 +2,7 @@
|
|
|
2
2
|
<div>
|
|
3
3
|
<h3 class="toggle-metric metric-label">{{label}}</h3>
|
|
4
4
|
<div class="single-metric-icon" v-if="metricPending && label.length == 0"></div>
|
|
5
|
-
<h1 class="toggle-metric metric-value" v-else>{{metricValue}}
|
|
6
|
-
<span v-if="score" class="toggle-metric-score-rating">/{{value.maxScore}}</span>
|
|
7
|
-
</h1>
|
|
5
|
+
<h1 class="toggle-metric metric-value" v-else>{{metricValue}}</h1>
|
|
8
6
|
</div>
|
|
9
7
|
</template>
|
|
10
8
|
|
|
@@ -23,20 +21,20 @@ export default {
|
|
|
23
21
|
type: String,
|
|
24
22
|
default: "ToggleMetricSingleMetric"
|
|
25
23
|
},
|
|
26
|
-
|
|
24
|
+
/**
|
|
27
25
|
* Type of the value, this will affect on the format shown
|
|
28
26
|
*/
|
|
29
27
|
type : {
|
|
30
28
|
type: String,
|
|
31
29
|
validator: function (value) {
|
|
32
|
-
return ['text', 'number', 'percentage', 'currency'
|
|
30
|
+
return ['text', 'number', 'percentage', 'currency'].indexOf(value) !== -1
|
|
33
31
|
}
|
|
34
32
|
},
|
|
35
33
|
/**
|
|
36
34
|
* Component's value
|
|
37
35
|
*/
|
|
38
36
|
value: {
|
|
39
|
-
type: [String, Number
|
|
37
|
+
type: [String, Number],
|
|
40
38
|
required: true
|
|
41
39
|
},
|
|
42
40
|
/**
|
|
@@ -89,17 +87,14 @@ export default {
|
|
|
89
87
|
case 'currency':
|
|
90
88
|
return (this.value/this.currencyDenomination).toLocaleString(this.currencyLocale, {style: 'currency', currency: this.currencyCode});
|
|
91
89
|
case'percentage':
|
|
92
|
-
return `${this.value}
|
|
93
|
-
case 'score':
|
|
94
|
-
return this.value.score;
|
|
90
|
+
return `${this.value} %`
|
|
95
91
|
default:
|
|
96
92
|
return this.value.toLocaleString();
|
|
97
93
|
|
|
98
94
|
}
|
|
99
|
-
},
|
|
100
|
-
score() {
|
|
101
|
-
return this.type === 'score';
|
|
102
95
|
}
|
|
96
|
+
|
|
97
|
+
|
|
103
98
|
}
|
|
104
99
|
}
|
|
105
100
|
|
|
@@ -54,14 +54,14 @@ export default {
|
|
|
54
54
|
type : {
|
|
55
55
|
type: String,
|
|
56
56
|
validator: function (value) {
|
|
57
|
-
return ['text', 'number', 'percentage', 'currency'
|
|
57
|
+
return ['text', 'number', 'percentage', 'currency'].indexOf(value) !== -1
|
|
58
58
|
}
|
|
59
59
|
},
|
|
60
60
|
/**
|
|
61
61
|
* single metric component value
|
|
62
62
|
*/
|
|
63
63
|
singleMetricVal: {
|
|
64
|
-
type: [String, Number
|
|
64
|
+
type: [String, Number],
|
|
65
65
|
required: true
|
|
66
66
|
},
|
|
67
67
|
/**
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div :class="['toggle-status-bar-container', statusColours, statusSize]">
|
|
3
|
+
<span class="toggle-status-bar-dot blinking toggle-status-bar-label" v-if="showDot">●</span>
|
|
4
|
+
<label class="toggle-status-bar-label">
|
|
5
|
+
{{ statusName }}
|
|
6
|
+
</label>
|
|
7
|
+
|
|
8
|
+
<div class="toggle-status-bar-tooltip-container" v-if="showToolTip && toolTipText.length">
|
|
9
|
+
<div class="toggle-status-bar-tooltip">
|
|
10
|
+
?
|
|
11
|
+
<span class="toggle-status-bar-tooltip-text">{{ toolTipText }}</span>
|
|
12
|
+
</div>
|
|
13
|
+
</div>
|
|
14
|
+
</div>
|
|
15
|
+
</template>
|
|
16
|
+
|
|
17
|
+
<script>
|
|
18
|
+
export default {
|
|
19
|
+
name: 'StatusBar',
|
|
20
|
+
props: {
|
|
21
|
+
status: {
|
|
22
|
+
type: String,
|
|
23
|
+
required: true,
|
|
24
|
+
validator: function (value) {
|
|
25
|
+
return ['draft', 'processing', 'complete', 'inactive', 'active', 'submitted', 'failed'].indexOf(value) !== -1;
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
size: {
|
|
29
|
+
type: String,
|
|
30
|
+
required: false,
|
|
31
|
+
default: 'regular',
|
|
32
|
+
validator: function (value) {
|
|
33
|
+
return ['small', 'regular'].indexOf(value) !== -1;
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
toolTipOptions: {
|
|
37
|
+
type: Object,
|
|
38
|
+
required: false
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
computed: {
|
|
42
|
+
// Capitalise the first letter of the status
|
|
43
|
+
statusName() {
|
|
44
|
+
return this.status.charAt(0).toUpperCase() + this.status.slice(1);
|
|
45
|
+
},
|
|
46
|
+
// Add the status to the class name
|
|
47
|
+
statusColours() {
|
|
48
|
+
return 'toggle-status-bar-' + this.status;
|
|
49
|
+
},
|
|
50
|
+
// Add the size to the class name
|
|
51
|
+
statusSize() {
|
|
52
|
+
return 'toggle-status-bar-' + this.size;
|
|
53
|
+
},
|
|
54
|
+
// Show the dot if the status is active or processing
|
|
55
|
+
showDot() {
|
|
56
|
+
return this.status === 'active' || this.status === 'processing' || this.status === 'submitted';
|
|
57
|
+
},
|
|
58
|
+
showToolTip() {
|
|
59
|
+
return this.size == 'regular';
|
|
60
|
+
},
|
|
61
|
+
toolTipText() {
|
|
62
|
+
if (!this.toolTipOptions) {
|
|
63
|
+
return '';
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
if (this.toolTipOptions[this.status]) {
|
|
67
|
+
return this.toolTipOptions[this.status];
|
|
68
|
+
} else {
|
|
69
|
+
return '';
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
</script>
|
package/src/index.js
CHANGED
|
@@ -83,12 +83,13 @@ import ToggleMetricFunnelChart from "./components/metrics/ToggleMetricFunnelChar
|
|
|
83
83
|
import ToggleThreeDots from "./components/threedots/ToggleThreeDots.vue";
|
|
84
84
|
import ToggleThreeDotsButton from "./components/threedots/ToggleThreeDotsButton.vue";
|
|
85
85
|
|
|
86
|
+
import ToggleStatusBar from "./components/statusbar/ToggleStatusBar.vue";
|
|
87
|
+
|
|
86
88
|
import ToggleCarousel from "./components/carousel/ToggleCarousel.vue";
|
|
87
89
|
import ToggleCarouselSlide from "./components/carousel/ToggleCarouselSlide.vue";
|
|
88
90
|
|
|
89
91
|
import ToggleEmailCard from "./components/cards/ToggleEmailCard.vue";
|
|
90
92
|
import ToggleRewardsCard from "./components/cards/ToggleRewardsCard.vue";
|
|
91
|
-
import ToggleCommentCard from "./components/cards/ToggleCommentCard.vue";
|
|
92
93
|
|
|
93
94
|
|
|
94
95
|
import './sass/main.scss';
|
|
@@ -159,11 +160,11 @@ const Components = {
|
|
|
159
160
|
ToggleBoosterBasicButton,
|
|
160
161
|
ToggleBoosterModal,
|
|
161
162
|
ToggleContactSearch,
|
|
163
|
+
ToggleStatusBar,
|
|
162
164
|
ToggleCarousel,
|
|
163
165
|
ToggleCarouselSlide,
|
|
164
166
|
ToggleEmailCard,
|
|
165
|
-
ToggleRewardsCard
|
|
166
|
-
ToggleCommentCard
|
|
167
|
+
ToggleRewardsCard
|
|
167
168
|
}
|
|
168
169
|
|
|
169
170
|
Object.keys(Components).forEach(name => {
|
|
@@ -395,7 +395,7 @@
|
|
|
395
395
|
}
|
|
396
396
|
|
|
397
397
|
&:hover .contacts-icon {
|
|
398
|
-
background-
|
|
398
|
+
background-image: url("../assets/icons/contacts-white.svg");
|
|
399
399
|
}
|
|
400
400
|
}
|
|
401
401
|
//icons
|
|
@@ -418,11 +418,9 @@
|
|
|
418
418
|
}
|
|
419
419
|
|
|
420
420
|
.contacts-icon {
|
|
421
|
-
|
|
422
|
-
background-
|
|
423
|
-
-
|
|
424
|
-
mask: var(--svg);
|
|
425
|
-
mask-repeat: no-repeat;
|
|
421
|
+
background-image: url("../assets/icons/contacts-greyblue.svg");
|
|
422
|
+
background-repeat:no-repeat;
|
|
423
|
+
background-size:contain;
|
|
426
424
|
margin-right: 6px;
|
|
427
425
|
width: 14px;
|
|
428
426
|
height: 14px;
|
|
@@ -430,38 +428,6 @@
|
|
|
430
428
|
}
|
|
431
429
|
}
|
|
432
430
|
|
|
433
|
-
.toggle-metrics-button-small {
|
|
434
|
-
padding: 0px 13px;
|
|
435
|
-
font-size: 12px;
|
|
436
|
-
&.mini-contacts {
|
|
437
|
-
font-size: 0.65rem;
|
|
438
|
-
padding: 5px 12px;
|
|
439
|
-
}
|
|
440
|
-
.heatmap-icon {
|
|
441
|
-
width: 21px;
|
|
442
|
-
height: 21px;
|
|
443
|
-
}
|
|
444
|
-
.email-icon {
|
|
445
|
-
width: 25px;
|
|
446
|
-
height: 25px;
|
|
447
|
-
}
|
|
448
|
-
.contacts-icon {
|
|
449
|
-
--svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='.8em' viewBox='0 0 448 512'%3E%3C!--! Font Awesome Free 6.4.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --%3E%3Cstyle%3Esvg%7Bfill:%23fff%7D%3C/style%3E%3Cpath d='M304 128a80 80 0 1 0 -160 0 80 80 0 1 0 160 0zM96 128a128 128 0 1 1 256 0A128 128 0 1 1 96 128zM49.3 464H398.7c-8.9-63.3-63.3-112-129-112H178.3c-65.7 0-120.1 48.7-129 112zM0 482.3C0 383.8 79.8 304 178.3 304h91.4C368.2 304 448 383.8 448 482.3c0 16.4-13.3 29.7-29.7 29.7H29.7C13.3 512 0 498.7 0 482.3z'/%3E%3C/svg%3E");
|
|
450
|
-
-webkit-mask: var(--svg);
|
|
451
|
-
mask: var(--svg);
|
|
452
|
-
mask-repeat: no-repeat;
|
|
453
|
-
}
|
|
454
|
-
}
|
|
455
|
-
|
|
456
|
-
.toggle-metrics-button-large {
|
|
457
|
-
padding: 23px 27px;
|
|
458
|
-
font-size: 17px;
|
|
459
|
-
&.mini-contacts {
|
|
460
|
-
font-size: .92rem;
|
|
461
|
-
padding: 10px 25px;
|
|
462
|
-
}
|
|
463
|
-
}
|
|
464
|
-
|
|
465
431
|
.toggle-button-booster-badge {
|
|
466
432
|
display: flex;
|
|
467
433
|
align-items: center;
|
|
@@ -164,32 +164,3 @@
|
|
|
164
164
|
|
|
165
165
|
}
|
|
166
166
|
|
|
167
|
-
.toggle-comment-card {
|
|
168
|
-
display: flex;
|
|
169
|
-
flex-direction: row;
|
|
170
|
-
width: 100%;
|
|
171
|
-
height: 250px;
|
|
172
|
-
border-radius: 18px;
|
|
173
|
-
padding-right: 20px;
|
|
174
|
-
font-size: $toggle-font-size-regular;
|
|
175
|
-
font-family: $toggle-font-family;
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
.toggle-comment-card-info {
|
|
179
|
-
display: flex;
|
|
180
|
-
flex-direction: column;
|
|
181
|
-
justify-content: space-between;
|
|
182
|
-
padding: 30px 70px 20px 30px;
|
|
183
|
-
color: white;
|
|
184
|
-
border-radius: 30px;
|
|
185
|
-
width: 100%;
|
|
186
|
-
|
|
187
|
-
.toggle-comment-card-text {
|
|
188
|
-
text-align: justify;
|
|
189
|
-
line-height: 1.5rem;
|
|
190
|
-
|
|
191
|
-
p {
|
|
192
|
-
margin: 0
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
}
|
|
@@ -342,11 +342,6 @@
|
|
|
342
342
|
&.airship-hat-icon span::before {
|
|
343
343
|
background-image: url("../assets/icons/airship-hat-hover.svg");
|
|
344
344
|
}
|
|
345
|
-
|
|
346
|
-
&.airship-feedback-icon a::before,
|
|
347
|
-
&.airship-feedback-icon span::before {
|
|
348
|
-
background-image: url("../assets/icons/airship-feedback-hover.svg");
|
|
349
|
-
}
|
|
350
345
|
}
|
|
351
346
|
}
|
|
352
347
|
|
|
@@ -511,17 +506,6 @@
|
|
|
511
506
|
animation: tilt-shake 0.4s;
|
|
512
507
|
background-image: url("../assets/icons/airship-audiences-hover.svg");
|
|
513
508
|
}
|
|
514
|
-
// add feedbacl
|
|
515
|
-
&.airship-feedback-icon a::before,
|
|
516
|
-
&.airship-feedback-icon span::before {
|
|
517
|
-
background-image: url("../assets/icons/airship-feedback.svg");
|
|
518
|
-
}
|
|
519
|
-
|
|
520
|
-
&.airship-feedback-icon a:hover::before,
|
|
521
|
-
&.airship-feedback-icon span:hover::before {
|
|
522
|
-
animation: tilt-shake 0.4s;
|
|
523
|
-
background-image: url("../assets/icons/airship-feedback-hover.svg");
|
|
524
|
-
}
|
|
525
509
|
|
|
526
510
|
}
|
|
527
511
|
}
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
.toggle-status-bar-container {
|
|
2
|
+
font-family: $toggle-font-family;
|
|
3
|
+
font-size: 16px !important;
|
|
4
|
+
display: flex;
|
|
5
|
+
justify-content: center;
|
|
6
|
+
align-items: center;
|
|
7
|
+
height: 50px;
|
|
8
|
+
width: 100%;
|
|
9
|
+
min-width: 94px;
|
|
10
|
+
border-radius: 7px;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.toggle-status-bar-small {
|
|
14
|
+
height: 35px;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
// Tooltip
|
|
18
|
+
.toggle-status-bar-tooltip-container{
|
|
19
|
+
position: absolute;
|
|
20
|
+
display: flex;
|
|
21
|
+
justify-content: right;
|
|
22
|
+
width: 100%;
|
|
23
|
+
right: 32px;
|
|
24
|
+
cursor: default;
|
|
25
|
+
|
|
26
|
+
.toggle-status-bar-tooltip {
|
|
27
|
+
position: relative;
|
|
28
|
+
display: inline-block;
|
|
29
|
+
width: 20px;
|
|
30
|
+
text-align: center;
|
|
31
|
+
border: 1px solid hotpink;
|
|
32
|
+
border-radius: 50px;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
// Tooltip text
|
|
36
|
+
.toggle-status-bar-tooltip .toggle-status-bar-tooltip-text {
|
|
37
|
+
visibility: hidden;
|
|
38
|
+
width: 200px;
|
|
39
|
+
background-color: rgba(0, 0, 0, .8);
|
|
40
|
+
color: #fff;
|
|
41
|
+
text-align: center;
|
|
42
|
+
padding: 10px;
|
|
43
|
+
border-radius: 6px;
|
|
44
|
+
position: absolute;
|
|
45
|
+
z-index: 1;
|
|
46
|
+
top: -5px;
|
|
47
|
+
right: 105%;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
.toggle-status-bar-tooltip:hover .toggle-status-bar-tooltip-text {
|
|
51
|
+
visibility: visible;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
// Draft colours
|
|
57
|
+
.toggle-status-bar-draft {
|
|
58
|
+
background-color: #FFB88D;
|
|
59
|
+
|
|
60
|
+
.toggle-status-bar-label {
|
|
61
|
+
color: #A34308;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
.toggle-status-bar-tooltip {
|
|
65
|
+
color: #A34308;
|
|
66
|
+
border: 1px solid #A34308;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
// Processing colours
|
|
71
|
+
.toggle-status-bar-processing {
|
|
72
|
+
background-color: #D7E9F2;
|
|
73
|
+
|
|
74
|
+
.toggle-status-bar-label {
|
|
75
|
+
color: #269BE3;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.toggle-status-bar-tooltip {
|
|
79
|
+
color: #269BE3;
|
|
80
|
+
border: 1px solid #269BE3;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
// Complete colours
|
|
85
|
+
.toggle-status-bar-complete {
|
|
86
|
+
background-color: #B3E49F;
|
|
87
|
+
|
|
88
|
+
.toggle-status-bar-label {
|
|
89
|
+
color: #3BB40B;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
.toggle-status-bar-tooltip {
|
|
93
|
+
color: #3BB40B;
|
|
94
|
+
border: 1px solid #3BB40B;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
// Inactive colours
|
|
99
|
+
.toggle-status-bar-inactive {
|
|
100
|
+
background-color: #D7E9F2;
|
|
101
|
+
|
|
102
|
+
.toggle-status-bar-label {
|
|
103
|
+
color: #269BE3;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
.toggle-status-bar-tooltip {
|
|
107
|
+
color: #269BE3;
|
|
108
|
+
border: 1px solid #269BE3;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
// Active colours
|
|
113
|
+
.toggle-status-bar-active {
|
|
114
|
+
background-color: #D7E9F2;
|
|
115
|
+
border: 1px solid #FF4848;
|
|
116
|
+
|
|
117
|
+
.toggle-status-bar-label {
|
|
118
|
+
color: #FF4848;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
.toggle-status-bar-tooltip {
|
|
122
|
+
color: #FF4848;
|
|
123
|
+
border: 1px solid #FF4848;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
// Submitted colours
|
|
128
|
+
.toggle-status-bar-submitted {
|
|
129
|
+
background-color: #D7E9F2;
|
|
130
|
+
|
|
131
|
+
.toggle-status-bar-label {
|
|
132
|
+
color: #269BE3;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
.toggle-status-bar-tooltip {
|
|
136
|
+
color: #269BE3;
|
|
137
|
+
border: 1px solid #269BE3;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
// Failed colours
|
|
143
|
+
.toggle-status-bar-failed {
|
|
144
|
+
background-color: #F2E3E3;
|
|
145
|
+
border: 1px solid #ED7B7C;
|
|
146
|
+
|
|
147
|
+
.toggle-status-bar-label {
|
|
148
|
+
color: #ED7B7C;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
.toggle-status-bar-tooltip {
|
|
152
|
+
color: #ED7B7C;
|
|
153
|
+
border: 1px solid #ED7B7C;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
.toggle-status-bar-dot {
|
|
158
|
+
font-size: 20px;
|
|
159
|
+
margin: 0 3px 2px 0;
|
|
160
|
+
float: none !important;
|
|
161
|
+
padding: 0 !important;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
// Dot blinking animation
|
|
165
|
+
.blinking {
|
|
166
|
+
animation: 2s blink ease infinite;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
@keyframes blink {
|
|
170
|
+
|
|
171
|
+
from,
|
|
172
|
+
to {
|
|
173
|
+
opacity: 0;
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
50% {
|
|
177
|
+
opacity: 1;
|
|
178
|
+
}
|
|
179
|
+
}
|
package/src/sass/main.scss
CHANGED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
<svg id="Group_10" data-name="Group 10" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="624.048" height="499" viewBox="0 0 624.048 499">
|
|
2
|
-
<defs>
|
|
3
|
-
<clipPath id="clip-path">
|
|
4
|
-
<rect id="Rectangle_25" data-name="Rectangle 25" width="624.048" height="499" fill="none"/>
|
|
5
|
-
</clipPath>
|
|
6
|
-
</defs>
|
|
7
|
-
<g id="Group_9" data-name="Group 9" clip-path="url(#clip-path)">
|
|
8
|
-
<path id="Path_3" data-name="Path 3" d="M617.3,465.069l-.384-.318c-.385-.317-.9-.738-1.674-1.49-1.419-1.279-3.616-3.309-6.36-6.112a225.664,225.664,0,0,1-20.162-23.534c-.136-.182-.271-.367-.406-.55-22.957-31.214-26.261-72.555-9.486-107.484,16.327-34,23.783-71.208,20.13-109.472C586.148,81.9,441.91-14.07,276.747,1.694S-11.9,138.983.914,273.192,157.963,503.371,323.126,487.608a364.7,364.7,0,0,0,89.545-20,77.522,77.522,0,0,1,58.556,2.224,367.136,367.136,0,0,0,38.334,14.95c29.035,9.42,63.567,16.569,96.922,13.5A19.281,19.281,0,0,0,622.561,486.8a18.785,18.785,0,0,0-5.261-21.731m-446.79-153.1A50.455,50.455,0,1,1,216.243,257.2a50.456,50.456,0,0,1-45.733,54.772m138.931-12.493a50.454,50.454,0,1,1,45.734-54.77,50.454,50.454,0,0,1-45.734,54.77m134.991-12.137a50.455,50.455,0,1,1,45.733-54.769,50.455,50.455,0,0,1-45.733,54.769" transform="translate(0 0)" fill="#477ef6"/>
|
|
9
|
-
</g>
|
|
10
|
-
</svg>
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
<svg id="Group_10" data-name="Group 10" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="624.048" height="499" viewBox="0 0 624.048 499">
|
|
2
|
-
<defs>
|
|
3
|
-
<clipPath id="clip-path">
|
|
4
|
-
<rect id="Rectangle_25" data-name="Rectangle 25" width="624.048" height="499" fill="none"/>
|
|
5
|
-
</clipPath>
|
|
6
|
-
</defs>
|
|
7
|
-
<g id="Group_9" data-name="Group 9" clip-path="url(#clip-path)">
|
|
8
|
-
<path id="Path_3" data-name="Path 3" d="M617.3,465.069l-.384-.318c-.385-.317-.9-.738-1.674-1.49-1.419-1.279-3.616-3.309-6.36-6.112a225.664,225.664,0,0,1-20.162-23.534c-.136-.182-.271-.367-.406-.55-22.957-31.214-26.261-72.555-9.486-107.484,16.327-34,23.783-71.208,20.13-109.472C586.148,81.9,441.91-14.07,276.747,1.694S-11.9,138.983.914,273.192,157.963,503.371,323.126,487.608a364.7,364.7,0,0,0,89.545-20,77.522,77.522,0,0,1,58.556,2.224,367.136,367.136,0,0,0,38.334,14.95c29.035,9.42,63.567,16.569,96.922,13.5A19.281,19.281,0,0,0,622.561,486.8a18.785,18.785,0,0,0-5.261-21.731m-446.79-153.1A50.455,50.455,0,1,1,216.243,257.2a50.456,50.456,0,0,1-45.733,54.772m138.931-12.493a50.454,50.454,0,1,1,45.734-54.77,50.454,50.454,0,0,1-45.734,54.77m134.991-12.137a50.455,50.455,0,1,1,45.733-54.769,50.455,50.455,0,0,1-45.733,54.769" transform="translate(0 0)" fill="#354b64"/>
|
|
9
|
-
</g>
|
|
10
|
-
</svg>
|