capibara 1.1.17 → 1.1.21
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/config.js +2 -2
- package/config_cuarteles.js +111 -121
- package/cuarteles.html +21 -10
- package/data_cuarteles.js +39 -3
- package/dist/cuarteles.html +21 -10
- package/dist/index.js +6 -6
- package/package.json +1 -1
- package/src/lib/capibara.js +151 -48
- package/src/scss/components/_floatbox.scss +46 -2
- package/src/scss/components/_input_nav.scss +11 -0
- package/src/scss/layout/_contextMenu.scss +58 -0
- package/src/scss/layout/_detail_day.scss +6 -3
- package/src/scss/layout/_header.scss +11 -0
- package/src/scss/layout/_plotContainer.scss +1 -1
- package/src/scss/layout/_selectContainer.scss +19 -0
- package/src/scss/layout/_table.scss +1 -1
- package/src/scss/layout/_todayLine.scss +2 -2
- package/src/scss/style.scss +1 -0
- package/src/scss/themes/_color_themes.scss +27 -3
- package/src/scss/themes/_themes.scss +12 -0
- package/src/util/domUtils.js +6 -0
- package/src/util/styleUtils.js +35 -21
- package/src/util/tableElements.js +144 -26
- package/src/util/utils.js +13 -13
package/package.json
CHANGED
package/src/lib/capibara.js
CHANGED
|
@@ -4,7 +4,6 @@ import dateUtils from '../util/dateUtils';
|
|
|
4
4
|
import tableElements from '../util/tableElements';
|
|
5
5
|
import styleUtils from '../util/styleUtils';
|
|
6
6
|
|
|
7
|
-
|
|
8
7
|
/**
|
|
9
8
|
* Capibara, planilla para despliegue de datos por fecha como GANTT
|
|
10
9
|
* orientado inicialmente a datos diarios de items
|
|
@@ -14,7 +13,6 @@ import styleUtils from '../util/styleUtils';
|
|
|
14
13
|
export class Capibara{
|
|
15
14
|
|
|
16
15
|
|
|
17
|
-
|
|
18
16
|
/**
|
|
19
17
|
* @constructor
|
|
20
18
|
* Instancia variables de planilla Capibara, con configuracion
|
|
@@ -30,18 +28,21 @@ export class Capibara{
|
|
|
30
28
|
|
|
31
29
|
if(this.containerElement == null) console.error("Elemento dom segun config.selector, no encontrado");
|
|
32
30
|
|
|
33
|
-
this.initialized
|
|
34
|
-
this.$capibara
|
|
35
|
-
this.$elements
|
|
36
|
-
this.tabSelected
|
|
37
|
-
this.$inputsNavRight
|
|
38
|
-
this.selected
|
|
39
|
-
this.config
|
|
40
|
-
this.lastDataDay
|
|
41
|
-
this.isShowNavExtended
|
|
42
|
-
this.isShowNavInitial
|
|
43
|
-
this.isShowNavButtons
|
|
44
|
-
this.isMobile
|
|
31
|
+
this.initialized = false;
|
|
32
|
+
this.$capibara = null;
|
|
33
|
+
this.$elements = {};
|
|
34
|
+
this.tabSelected = null;
|
|
35
|
+
this.$inputsNavRight = [];
|
|
36
|
+
this.selected = [];
|
|
37
|
+
this.config = config;
|
|
38
|
+
this.lastDataDay = null;
|
|
39
|
+
this.isShowNavExtended = false;
|
|
40
|
+
this.isShowNavInitial = true;
|
|
41
|
+
this.isShowNavButtons = true;
|
|
42
|
+
this.isMobile = false;
|
|
43
|
+
this.lastMousePosition = null;
|
|
44
|
+
this.isVisibleContextMenu = false;
|
|
45
|
+
|
|
45
46
|
}
|
|
46
47
|
|
|
47
48
|
|
|
@@ -55,17 +56,17 @@ export class Capibara{
|
|
|
55
56
|
* - crea planilla llamando a drawTable
|
|
56
57
|
* - Agrega eventos a planilla
|
|
57
58
|
* - mueve scroll al medio de la tabla
|
|
58
|
-
*
|
|
59
59
|
*/
|
|
60
60
|
init(){
|
|
61
61
|
|
|
62
62
|
this.tabSelected = null;
|
|
63
63
|
this.$capibara = null;
|
|
64
64
|
this.$elements = {};
|
|
65
|
-
this.$inputsNavRight
|
|
65
|
+
this.$inputsNavRight = [];
|
|
66
66
|
this.selected = [];
|
|
67
67
|
this.lastDataDay = null;
|
|
68
68
|
this.isMobile = utils.checkIsMobile();
|
|
69
|
+
this.isVisibleContextMenu = false;
|
|
69
70
|
|
|
70
71
|
this.setAllCSSVariables();
|
|
71
72
|
this.drawTable();
|
|
@@ -98,7 +99,7 @@ export class Capibara{
|
|
|
98
99
|
let initialTab = config.timeline.tabs[0];
|
|
99
100
|
|
|
100
101
|
let $capibara = tableElements.createAgTable(config);
|
|
101
|
-
let $corner = tableElements.createCorner(config);
|
|
102
|
+
let $corner = tableElements.createCorner(config, initialTab);
|
|
102
103
|
let $cornerRight = tableElements.createCornerRight(config);
|
|
103
104
|
let $headerTop = tableElements.createHeaderTop(config);
|
|
104
105
|
let $header = tableElements.createHeader(config);
|
|
@@ -113,8 +114,11 @@ export class Capibara{
|
|
|
113
114
|
let $plotHorizontalContainer = tableElements.createPlotHorizontalContainer(config);
|
|
114
115
|
let $detailDay = tableElements.createDetailDay(config,config.data[0].children[0]);
|
|
115
116
|
|
|
117
|
+
let { elem:$contextMenu, isVisible } = tableElements.createContextMenu({config});
|
|
118
|
+
this.isVisibleContextMenu = isVisible;
|
|
119
|
+
|
|
116
120
|
let $navRight, inputs;
|
|
117
|
-
({element:$navRight, inputs} = tableElements.createNavRight(config
|
|
121
|
+
({element:$navRight, inputs} = tableElements.createNavRight(config));
|
|
118
122
|
|
|
119
123
|
let start = new Date(config.timeline.start);
|
|
120
124
|
let end = new Date(config.timeline.end);
|
|
@@ -129,9 +133,10 @@ export class Capibara{
|
|
|
129
133
|
|
|
130
134
|
let $background = tableElements.createBackground(config);
|
|
131
135
|
let $container = dom.createElement("div", { className:"container-tl"});
|
|
132
|
-
let $table = dom.createElement("div", { className: "table"}, {style:{width:width}});
|
|
133
136
|
let $dayMouseOver = dom.createElement("div", { className: "day-mouse-over"});
|
|
134
137
|
|
|
138
|
+
let $table = dom.createElement("div", { className: "table"}, {style:{width:width}});
|
|
139
|
+
|
|
135
140
|
$table.appendChild($background);
|
|
136
141
|
$table.appendChild($dayMouseOver);
|
|
137
142
|
$table.appendChild($detailDay);
|
|
@@ -158,12 +163,14 @@ export class Capibara{
|
|
|
158
163
|
$capibara.appendChild($cornerRight);
|
|
159
164
|
$capibara.appendChild($container);
|
|
160
165
|
$capibara.appendChild($navRight);
|
|
166
|
+
if($contextMenu) $capibara.appendChild($contextMenu);
|
|
161
167
|
|
|
162
168
|
|
|
163
169
|
this.$inputsNavRight = inputs;
|
|
164
170
|
this.$capibara = $capibara;
|
|
165
171
|
this.$elements = {
|
|
166
172
|
$detailDay,
|
|
173
|
+
$contextMenu,
|
|
167
174
|
$floatBoxContainer,
|
|
168
175
|
$selectContainer,
|
|
169
176
|
$table,
|
|
@@ -259,6 +266,8 @@ export class Capibara{
|
|
|
259
266
|
|
|
260
267
|
if(redraw){
|
|
261
268
|
this.redraw({
|
|
269
|
+
cornerLeft: true,
|
|
270
|
+
navLeft: true,
|
|
262
271
|
navRight: true,
|
|
263
272
|
floatBox:true
|
|
264
273
|
})
|
|
@@ -303,7 +312,7 @@ export class Capibara{
|
|
|
303
312
|
*/
|
|
304
313
|
setShowNavInitial(isShowNavInitial){
|
|
305
314
|
this.isShowNavInitial = isShowNavInitial;
|
|
306
|
-
styleUtils.setNavLeftInitialStyle(this.config, this.isShowNavInitial);
|
|
315
|
+
styleUtils.setNavLeftInitialStyle(this.config, this.isShowNavInitial, this.tabSelected);
|
|
307
316
|
}
|
|
308
317
|
|
|
309
318
|
/**
|
|
@@ -311,14 +320,14 @@ export class Capibara{
|
|
|
311
320
|
*/
|
|
312
321
|
setShowNavExtended(isShowNavExtended){
|
|
313
322
|
this.isShowNavExtended = isShowNavExtended;
|
|
314
|
-
styleUtils.setNavLeftExtendedStyle(this.config, this.isShowNavExtended);
|
|
323
|
+
styleUtils.setNavLeftExtendedStyle(this.config, this.isShowNavExtended, this.tabSelected);
|
|
315
324
|
}
|
|
316
325
|
/**
|
|
317
326
|
* Muestra/Oculta Sidebar buttons
|
|
318
327
|
*/
|
|
319
328
|
setShowNavButtons(isShowNavButtons){
|
|
320
329
|
this.isShowNavButtons = isShowNavButtons;
|
|
321
|
-
styleUtils.setNavLeftButtonsStyle(this.config, this.isShowNavButtons);
|
|
330
|
+
styleUtils.setNavLeftButtonsStyle(this.config, this.isShowNavButtons, this.tabSelected);
|
|
322
331
|
}
|
|
323
332
|
|
|
324
333
|
|
|
@@ -622,12 +631,62 @@ export class Capibara{
|
|
|
622
631
|
* @param {Object} evt - Evento de mouseleave
|
|
623
632
|
*/
|
|
624
633
|
mouseMoveOnTable(evt){
|
|
625
|
-
|
|
634
|
+
if(this.isVisibleContextMenu) return;
|
|
635
|
+
let pos = utils.eventToPosition(this.config, evt, this.$elements.$table);
|
|
636
|
+
if(this.lastMousePosition == null ||
|
|
637
|
+
this.lastMousePosition.left != pos.left ||
|
|
638
|
+
this.lastMousePosition.top != pos.top
|
|
639
|
+
){
|
|
626
640
|
this.$elements.$dayMouseOver.style.transform = "translate("+pos.left+"px ,"+pos.top+"px)";
|
|
627
641
|
evt.preventDefault();
|
|
628
|
-
|
|
642
|
+
this.lastMousePosition = pos;
|
|
643
|
+
}
|
|
644
|
+
};
|
|
645
|
+
|
|
646
|
+
|
|
647
|
+
|
|
648
|
+
rightClickOnCapibara(evt){
|
|
649
|
+
if(this.config.timeline.contextMenu){
|
|
650
|
+
this.hideDetailDay();
|
|
651
|
+
evt.preventDefault();
|
|
652
|
+
}
|
|
653
|
+
};
|
|
654
|
+
|
|
655
|
+
rightClickOnTable(evt){
|
|
656
|
+
if(this.config.timeline.contextMenu){
|
|
657
|
+
this.hideDetailDay();
|
|
658
|
+
this.showContextMenu(evt);
|
|
659
|
+
evt.preventDefault();
|
|
660
|
+
}
|
|
661
|
+
};
|
|
662
|
+
|
|
663
|
+
showContextMenu(evt){
|
|
664
|
+
|
|
665
|
+
let date = utils.getDayByEvent(this.config, evt, this.$elements.$table);
|
|
666
|
+
let item = utils.getItemByEvent(this.config, evt, this.$elements.$table);
|
|
667
|
+
|
|
668
|
+
if(this.isVisibleContextMenu) {
|
|
669
|
+
this.hideContextMenu();
|
|
670
|
+
return;
|
|
671
|
+
}
|
|
629
672
|
|
|
673
|
+
let position = utils.eventToPosition(this.config, evt, this.$elements.$table);
|
|
674
|
+
let { elem:$elem, isVisible } = tableElements.createContextMenu({
|
|
675
|
+
config: this.config,
|
|
676
|
+
evt,
|
|
677
|
+
position,
|
|
678
|
+
date,
|
|
679
|
+
item,
|
|
680
|
+
selected: this.selected
|
|
681
|
+
});
|
|
630
682
|
|
|
683
|
+
if($elem){
|
|
684
|
+
this.isVisibleContextMenu = isVisible;
|
|
685
|
+
this.$elements.$contextMenu.replaceWith($elem);
|
|
686
|
+
this.$elements.$contextMenu = $elem;
|
|
687
|
+
}
|
|
688
|
+
evt.preventDefault();
|
|
689
|
+
}
|
|
631
690
|
|
|
632
691
|
/**
|
|
633
692
|
* Captura el evento click en $table, para seleccionar dias
|
|
@@ -736,6 +795,11 @@ export class Capibara{
|
|
|
736
795
|
let index = utils.indexSelectedDay(this.selected, {date, item});
|
|
737
796
|
this.selected.splice(index, 1);
|
|
738
797
|
}
|
|
798
|
+
|
|
799
|
+
this.selected.forEach((s, index) => {
|
|
800
|
+
s.index = index+1;
|
|
801
|
+
})
|
|
802
|
+
|
|
739
803
|
if(redraw){
|
|
740
804
|
this.redrawSelection()
|
|
741
805
|
}
|
|
@@ -752,7 +816,13 @@ export class Capibara{
|
|
|
752
816
|
|
|
753
817
|
if(index < 0){
|
|
754
818
|
|
|
755
|
-
this.selected.push({
|
|
819
|
+
this.selected.push({
|
|
820
|
+
index: 0,
|
|
821
|
+
date,
|
|
822
|
+
item,
|
|
823
|
+
pos,
|
|
824
|
+
});
|
|
825
|
+
|
|
756
826
|
let dataDay = null;
|
|
757
827
|
if(item.data){
|
|
758
828
|
dataDay = item.data.find(d => {
|
|
@@ -788,6 +858,10 @@ export class Capibara{
|
|
|
788
858
|
}
|
|
789
859
|
})
|
|
790
860
|
|
|
861
|
+
this.selected.forEach((s, index) => {
|
|
862
|
+
s.index = index+1;
|
|
863
|
+
})
|
|
864
|
+
|
|
791
865
|
if(redraw){
|
|
792
866
|
this.redrawSelection()
|
|
793
867
|
}
|
|
@@ -834,6 +908,13 @@ export class Capibara{
|
|
|
834
908
|
this.$elements.$detailDay.classList.add("dd-hide");
|
|
835
909
|
};
|
|
836
910
|
|
|
911
|
+
hideContextMenu(){
|
|
912
|
+
this.$elements.$contextMenu.classList.add("cm-hide");
|
|
913
|
+
this.isVisibleContextMenu = false;
|
|
914
|
+
};
|
|
915
|
+
|
|
916
|
+
|
|
917
|
+
|
|
837
918
|
|
|
838
919
|
|
|
839
920
|
/**
|
|
@@ -843,8 +924,8 @@ export class Capibara{
|
|
|
843
924
|
* @param {Object} evt - evento de mousemove, para posiciones en pantalla
|
|
844
925
|
*/
|
|
845
926
|
refreshDetailDayPosition(position){
|
|
846
|
-
let dayWidth = parseFloat(utils.getCSSVariable("--day-width"));
|
|
847
|
-
let itemHeight = parseFloat(utils.getCSSVariable("--item-height"));
|
|
927
|
+
let dayWidth = parseFloat(utils.getCSSVariable(this.config, "--day-width"));
|
|
928
|
+
let itemHeight = parseFloat(utils.getCSSVariable(this.config, "--item-height"));
|
|
848
929
|
|
|
849
930
|
this.$elements.$detailDay.style.top = position.top + "px";
|
|
850
931
|
this.$elements.$detailDay.style.left = position.left + dayWidth + "px";
|
|
@@ -904,6 +985,17 @@ export class Capibara{
|
|
|
904
985
|
}
|
|
905
986
|
}
|
|
906
987
|
|
|
988
|
+
clickDateHeader(evt){
|
|
989
|
+
let date = evt.detail.date;
|
|
990
|
+
this.selected = [];
|
|
991
|
+
this.config.data.forEach(parent => {
|
|
992
|
+
parent.children.forEach(item => {
|
|
993
|
+
this.selectByItemDate(date, item, false);
|
|
994
|
+
});
|
|
995
|
+
});
|
|
996
|
+
this.redrawSelection();
|
|
997
|
+
}
|
|
998
|
+
|
|
907
999
|
/**
|
|
908
1000
|
* Captura evento window resize
|
|
909
1001
|
* para verificar si es mobile o no
|
|
@@ -953,28 +1045,35 @@ export class Capibara{
|
|
|
953
1045
|
}
|
|
954
1046
|
|
|
955
1047
|
|
|
956
|
-
|
|
957
1048
|
/**
|
|
958
1049
|
* Agrega eventos a los elementos del dom de la planilla
|
|
959
1050
|
* usando el objecto $capibara
|
|
960
1051
|
*/
|
|
961
1052
|
addEvents(){
|
|
962
|
-
this.$capibara.addEventListener("
|
|
963
|
-
this.$capibara.addEventListener("
|
|
964
|
-
this.$capibara.addEventListener("
|
|
965
|
-
this.$capibara.addEventListener("
|
|
966
|
-
this.$capibara.addEventListener("
|
|
967
|
-
this.$capibara.addEventListener("
|
|
968
|
-
this.$capibara.addEventListener("
|
|
969
|
-
this.$capibara.addEventListener("
|
|
970
|
-
this.$capibara.addEventListener("
|
|
971
|
-
this.$capibara.addEventListener("
|
|
972
|
-
this.$capibara.addEventListener("
|
|
1053
|
+
this.$capibara.addEventListener("click" , this.hideContextMenu.bind(this));
|
|
1054
|
+
this.$capibara.addEventListener("contextmenu" , this.rightClickOnCapibara.bind(this));
|
|
1055
|
+
this.$capibara.addEventListener("toggleDark" , this.toggleDark.bind(this));
|
|
1056
|
+
this.$capibara.addEventListener("toggleHeader" , this.toggleHeader.bind(this));
|
|
1057
|
+
this.$capibara.addEventListener("toggleSidebar" , this.toggleSidebar.bind(this));
|
|
1058
|
+
this.$capibara.addEventListener("toggleSidebarRight" , this.toggleSidebarRight.bind(this));
|
|
1059
|
+
this.$capibara.addEventListener("saveMultiInput" , this.saveInputsNavRight.bind(this));
|
|
1060
|
+
this.$capibara.addEventListener("cancelMultiInput" , this.cancelMultiInput.bind(this));
|
|
1061
|
+
this.$capibara.addEventListener("overNavItem" , this.overNavItem.bind(this));
|
|
1062
|
+
this.$capibara.addEventListener("leaveNavItem" , this.leaveNavItem.bind(this));
|
|
1063
|
+
this.$capibara.addEventListener("clickNavLeftTreeIcon" , this.clickNavLeftTreeIcon.bind(this));
|
|
1064
|
+
this.$capibara.addEventListener("mouseOverFloatBox" , this.mouseOverFloatBox.bind(this));
|
|
1065
|
+
this.$capibara.addEventListener("selectTabHeader" , e => { this.selectTab(e.detail.tab); });
|
|
973
1066
|
|
|
974
1067
|
this.$elements.$floatBoxContainer.addEventListener("mousemove", this.mouseMoveOnFlexBoxContainer.bind(this));
|
|
975
1068
|
this.$elements.$floatBoxContainer.addEventListener("mouseleave", this.mouseLeaveOnFloatBoxContainer.bind(this));
|
|
1069
|
+
|
|
976
1070
|
this.$elements.$table.addEventListener("mousemove", this.mouseMoveOnTable.bind(this) );
|
|
977
1071
|
this.$elements.$table.addEventListener("click", this.clickOnTable.bind(this));
|
|
1072
|
+
this.$elements.$table.addEventListener("contextmenu", this.rightClickOnTable.bind(this));
|
|
1073
|
+
|
|
1074
|
+
this.$elements.$container.addEventListener("scroll", this.hideContextMenu.bind(this));
|
|
1075
|
+
|
|
1076
|
+
this.$elements.$container.addEventListener("clickDate", this.clickDateHeader.bind(this));
|
|
978
1077
|
|
|
979
1078
|
window.addEventListener('resize',this.onWindowResize.bind(this));
|
|
980
1079
|
|
|
@@ -1027,11 +1126,14 @@ export class Capibara{
|
|
|
1027
1126
|
}
|
|
1028
1127
|
|
|
1029
1128
|
if(options.navLeft){
|
|
1030
|
-
tableElements.redrawNavLeft(this.$elements.$navLeft, this.config);
|
|
1129
|
+
tableElements.redrawNavLeft(this.$elements.$navLeft, this.config, this.tabSelected);
|
|
1130
|
+
styleUtils.setNavStyle(this.config);
|
|
1131
|
+
styleUtils.setNavLeftInitialStyle(this.config, this.isShowNavInitial, this.tabSelected);
|
|
1132
|
+
styleUtils.setNavLeftExtendedStyle(this.config, this.isShowNavExtended, this.tabSelected);
|
|
1031
1133
|
}
|
|
1032
1134
|
|
|
1033
1135
|
if(options.cornerLeft){
|
|
1034
|
-
tableElements.redrawCorner(this.$elements.$corner, this.config);
|
|
1136
|
+
tableElements.redrawCorner(this.$elements.$corner, this.config, this.tabSelected);
|
|
1035
1137
|
}
|
|
1036
1138
|
|
|
1037
1139
|
if(options.navRight){
|
|
@@ -1069,13 +1171,13 @@ export class Capibara{
|
|
|
1069
1171
|
focusOnFloatBox({pos, evt}){
|
|
1070
1172
|
if(this.isMobile){
|
|
1071
1173
|
let containerWidth = this.$elements.$container.clientWidth;
|
|
1072
|
-
let dayWidth = parseFloat(utils.getCSSVariable("--day-width"));
|
|
1073
|
-
let navWidth = parseFloat(utils.getCSSVariable("--nav-width"));
|
|
1174
|
+
let dayWidth = parseFloat(utils.getCSSVariable(this.config, "--day-width"));
|
|
1175
|
+
let navWidth = parseFloat(utils.getCSSVariable(this.config, "--nav-width"));
|
|
1074
1176
|
let left = pos.left - containerWidth + 1.5 * dayWidth + navWidth;
|
|
1075
1177
|
|
|
1076
1178
|
//let containerHeight = this.$elements.$container.clientHeight;
|
|
1077
|
-
let itemHeight = parseFloat(utils.getCSSVariable("--item-height"));
|
|
1078
|
-
//let headerHeight = parseFloat(utils.getCSSVariable("--header-height"));
|
|
1179
|
+
let itemHeight = parseFloat(utils.getCSSVariable(this.config, "--item-height"));
|
|
1180
|
+
//let headerHeight = parseFloat(utils.getCSSVariable(this.config, "--header-height"));
|
|
1079
1181
|
let top = pos.top - 0.5 * itemHeight;
|
|
1080
1182
|
|
|
1081
1183
|
let position = utils.eventToPosition(this.config, evt, this.$elements.$table);
|
|
@@ -1098,11 +1200,12 @@ export class Capibara{
|
|
|
1098
1200
|
*/
|
|
1099
1201
|
setAllCSSVariables(){
|
|
1100
1202
|
let config = this.config;
|
|
1203
|
+
//styleUtils.cleanStyle(config);
|
|
1101
1204
|
styleUtils.setHeaderStyle(config);
|
|
1102
1205
|
styleUtils.setNavStyle(config);
|
|
1103
|
-
styleUtils.setNavLeftInitialStyle(config, this.isShowNavInitial);
|
|
1104
|
-
styleUtils.setNavLeftExtendedStyle(config, this.isShowNavExtended);
|
|
1105
|
-
styleUtils.setNavLeftButtonsStyle(config, this.isShowNavButtons);
|
|
1206
|
+
styleUtils.setNavLeftInitialStyle(config, this.isShowNavInitial, this.tabSelected);
|
|
1207
|
+
styleUtils.setNavLeftExtendedStyle(config, this.isShowNavExtended, this.tabSelected);
|
|
1208
|
+
styleUtils.setNavLeftButtonsStyle(config, this.isShowNavButtons, this.tabSelected);
|
|
1106
1209
|
styleUtils.setTableStyle(config);
|
|
1107
1210
|
}
|
|
1108
1211
|
|
|
@@ -85,10 +85,14 @@
|
|
|
85
85
|
margin: 1px;
|
|
86
86
|
vertical-align: middle;
|
|
87
87
|
border: 1px solid rgba(255, 255, 255, 0.8);
|
|
88
|
+
backdrop-filter: blur(2px);
|
|
88
89
|
&.diamond{
|
|
89
90
|
border-radius: 0;
|
|
90
91
|
transform: rotate(45deg) skew(10deg, 10deg);
|
|
91
92
|
}
|
|
93
|
+
&.outlined{
|
|
94
|
+
background-color: transparent;
|
|
95
|
+
}
|
|
92
96
|
}
|
|
93
97
|
|
|
94
98
|
span.data {
|
|
@@ -103,15 +107,55 @@
|
|
|
103
107
|
font-weight: bold;
|
|
104
108
|
box-shadow: inset 0px 0px 10px rgba(255, 255, 255, 0.2);
|
|
105
109
|
border-radius: 3px;
|
|
110
|
+
color: white;
|
|
106
111
|
|
|
107
|
-
&:not(.
|
|
112
|
+
&:not(.shape-outlined){
|
|
108
113
|
border: 1px solid rgba(255, 255, 255, 0.2);
|
|
109
114
|
}
|
|
110
|
-
|
|
115
|
+
|
|
116
|
+
&.shape-outlined{
|
|
111
117
|
background: transparent;
|
|
112
118
|
border-width: 2px;
|
|
113
119
|
border-color: grey;
|
|
114
120
|
border-style: solid;
|
|
121
|
+
backdrop-filter: blur(2px);
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
&.shape-bar{
|
|
125
|
+
height: calc(var(--item-height) / 4);
|
|
126
|
+
line-height: calc(var(--item-height) / 4 + 1);
|
|
127
|
+
color: transparent;
|
|
128
|
+
border-radius: 1px;
|
|
129
|
+
border: 1px solid white;
|
|
130
|
+
margin: 0px 0px -1px 0px;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
&.shape-bar-outlined{
|
|
134
|
+
height: calc(var(--item-height) / 4);
|
|
135
|
+
line-height: 0px;
|
|
136
|
+
color: transparent;
|
|
137
|
+
border-radius: 1px;
|
|
138
|
+
border: 1px solid white;
|
|
139
|
+
margin: 0px 0px -1px 0px;
|
|
140
|
+
border-width: 2px;
|
|
141
|
+
border-color: grey;
|
|
142
|
+
border-style: solid;
|
|
143
|
+
backdrop-filter: blur(2px);
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
@each $nameTheme , $theme in $themes {
|
|
151
|
+
&#{$nameTheme}{
|
|
152
|
+
.float-box-container{
|
|
153
|
+
.float-box{
|
|
154
|
+
span.data{
|
|
155
|
+
&.shape-bar{
|
|
156
|
+
border-color: mapGet($theme,floatBox, shapeBar,border);
|
|
157
|
+
}
|
|
158
|
+
}
|
|
115
159
|
}
|
|
116
160
|
}
|
|
117
161
|
}
|
|
@@ -103,6 +103,17 @@
|
|
|
103
103
|
box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.3);
|
|
104
104
|
}
|
|
105
105
|
|
|
106
|
+
&--icon{
|
|
107
|
+
display: inline-block;
|
|
108
|
+
width: 0.75em;
|
|
109
|
+
height: 0.75em;
|
|
110
|
+
border-radius: 50%;
|
|
111
|
+
margin: 1em;
|
|
112
|
+
background: grey;
|
|
113
|
+
box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.3);
|
|
114
|
+
margin:0 0.25em 0 0;
|
|
115
|
+
}
|
|
116
|
+
|
|
106
117
|
&:hover .mini-input-section--tooltip{
|
|
107
118
|
display: block;
|
|
108
119
|
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
.capibara {
|
|
2
|
+
.cap-context-menu-container {
|
|
3
|
+
position: absolute;
|
|
4
|
+
left: 0;
|
|
5
|
+
top: 0;
|
|
6
|
+
z-index: 10;
|
|
7
|
+
|
|
8
|
+
&.cm-hide {
|
|
9
|
+
.cap-context-menu {
|
|
10
|
+
visibility: hidden;
|
|
11
|
+
opacity: 0;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.cap-context-menu {
|
|
16
|
+
position: absolute;
|
|
17
|
+
min-width: 150px;
|
|
18
|
+
z-index: 2;
|
|
19
|
+
border-radius: 3px;
|
|
20
|
+
border: 1px solid grey;
|
|
21
|
+
background: rgb(255, 255, 255);
|
|
22
|
+
box-shadow: 0 3px 5px -1px rgba(0, 0, 0, 0.2),
|
|
23
|
+
0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12);
|
|
24
|
+
font-size: 0.75em;
|
|
25
|
+
transition: all 0.1s linear;
|
|
26
|
+
visibility: visible;
|
|
27
|
+
opacity: 1;
|
|
28
|
+
padding: 0.4em 0px;
|
|
29
|
+
|
|
30
|
+
&--item {
|
|
31
|
+
padding: 0.5em 1em;
|
|
32
|
+
&:hover {
|
|
33
|
+
background: rgba(20, 20, 20, 0.2);
|
|
34
|
+
}
|
|
35
|
+
&.is-disabled {
|
|
36
|
+
opacity: 0.5;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
@each $nameTheme , $theme in $themes {
|
|
45
|
+
&#{$nameTheme}{
|
|
46
|
+
.cap-context-menu-container{
|
|
47
|
+
.cap-context-menu{
|
|
48
|
+
color: mapGet($theme, detailDay, color);
|
|
49
|
+
border-color: mapGet($theme, detailDay, border);
|
|
50
|
+
background: mapGet($theme, detailDay, background);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
}
|
|
@@ -135,16 +135,19 @@
|
|
|
135
135
|
flex-direction: row;
|
|
136
136
|
|
|
137
137
|
.left-icon {
|
|
138
|
-
width:
|
|
139
|
-
height:
|
|
138
|
+
width: 8px;
|
|
139
|
+
height: 8px;
|
|
140
140
|
min-height: unset !important;
|
|
141
|
-
left:
|
|
141
|
+
left: 1px;
|
|
142
142
|
top: 10px;
|
|
143
143
|
border-radius: 50%;
|
|
144
144
|
&.diamond{
|
|
145
145
|
border-radius: 0;
|
|
146
146
|
transform: rotate(45deg) skew(10deg, 10deg);
|
|
147
147
|
}
|
|
148
|
+
&.outlined{
|
|
149
|
+
background: transparent;
|
|
150
|
+
}
|
|
148
151
|
}
|
|
149
152
|
|
|
150
153
|
.name {
|
|
@@ -179,6 +179,9 @@
|
|
|
179
179
|
//background: var(--header-dia-active-background) ;
|
|
180
180
|
//color: white;
|
|
181
181
|
}
|
|
182
|
+
&.is-clickeable{
|
|
183
|
+
cursor:pointer;
|
|
184
|
+
}
|
|
182
185
|
}
|
|
183
186
|
}
|
|
184
187
|
}
|
|
@@ -236,6 +239,14 @@
|
|
|
236
239
|
background: mapGet($theme,header, days, active, background);
|
|
237
240
|
color: mapGet($theme,header, days, active, color);
|
|
238
241
|
}
|
|
242
|
+
&.is-clickeable{
|
|
243
|
+
&:hover{
|
|
244
|
+
background: rgba(100, 100, 100, 0.4);
|
|
245
|
+
}
|
|
246
|
+
&:active{
|
|
247
|
+
background: rgba(100, 100, 100, 0.6);
|
|
248
|
+
}
|
|
249
|
+
}
|
|
239
250
|
}
|
|
240
251
|
}
|
|
241
252
|
}
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
.plot-vertical{
|
|
12
12
|
background: rgba(0, 0, 0, 0.3);
|
|
13
13
|
width: var(--day-width);
|
|
14
|
-
height: calc(100vh - var(--header-height ) + var(--header-top-height));
|
|
14
|
+
height: calc(100vh - (var(--header-height ) + var(--header-top-height)));
|
|
15
15
|
position: absolute;
|
|
16
16
|
top: 0px;
|
|
17
17
|
left: 0px;
|
|
@@ -13,6 +13,25 @@
|
|
|
13
13
|
position: absolute;
|
|
14
14
|
background: rgba(189,189,189,0.4);
|
|
15
15
|
box-shadow: inset 0px 0px 5px rgba(189,189,189,0.8);
|
|
16
|
+
&[selected-index]{
|
|
17
|
+
&::after{
|
|
18
|
+
content:attr(selected-index);
|
|
19
|
+
display: block;
|
|
20
|
+
position:absolute;
|
|
21
|
+
left:-2px;
|
|
22
|
+
top: -2px;
|
|
23
|
+
background: red;
|
|
24
|
+
font-size: 0.75em;
|
|
25
|
+
color: white;
|
|
26
|
+
width: 1.3em;
|
|
27
|
+
height:1.3em;
|
|
28
|
+
border-radius:50%;
|
|
29
|
+
border: 1px solid blue;
|
|
30
|
+
z-index: 2;
|
|
31
|
+
text-align: center;
|
|
32
|
+
font-weight:bold;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
16
35
|
}
|
|
17
36
|
|
|
18
37
|
}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
left: calc( var(--nav-width ) + var(--initial-nav-width ) + var(--ex-nav-width ) + var(--btn-nav-width) );
|
|
6
6
|
top: var(--header-height) ;
|
|
7
7
|
width: calc(100% - var(--nav-width ) - var(--initial-nav-width ) - var(--ex-nav-width ) - var(--btn-nav-width));
|
|
8
|
-
height: calc(100% - var(--header-height));
|
|
8
|
+
max-height: calc(100% - var(--header-height));
|
|
9
9
|
margin-top: -1px;
|
|
10
10
|
|
|
11
11
|
.day-mouse-over{
|
|
@@ -21,8 +21,8 @@
|
|
|
21
21
|
top: 0px;
|
|
22
22
|
content: "";
|
|
23
23
|
width: 2px;
|
|
24
|
-
height: calc(100vh - var(--header-height) + var(--header-top-height));
|
|
25
|
-
background: rgba(183, 28, 28, 0.
|
|
24
|
+
height: calc(100vh - (var(--header-height) + var(--header-top-height)));
|
|
25
|
+
background: rgba(183, 28, 28, 0.4);
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
|