blob: 19a24a0273c6906594afda694982c3d534857222 [file] [log] [blame]
Matteo Scandolofcdbed32016-02-08 16:55:44 -08001/* CONTAINER */
2diagnostic .half-height {
3 position: relative;
4 height: 50%;
5}
6
Matteo Scandolo51031482016-02-17 13:54:11 -08007diagnostic .onethird-height {
8 position: relative;
9 height: 33%;
10}
11
12diagnostic .twothird-height {
13 position: relative;
14 height: 67%;
15}
16
Matteo Scandolo9fe01af2016-02-09 16:01:49 -080017diagnostic .subscriber-select{
18 max-width: 200px;
19 position: absolute;
20 top: 20px;
21 right: 20px;
22 z-index: 1;
23}
24
Matteo Scandolo219b1a72016-02-09 11:19:22 -080025.half-height + .half-height {
26 border-top: 1px solid black;
27}
28
29service-topology,
30logic-topology {
Matteo Scandolo8a64fa42016-01-21 11:21:03 -080031 height: 100%;
32 width: 100%;
33 display: block;
Matteo Scandolo219b1a72016-02-09 11:19:22 -080034 position: absolute;
35 top: 0;
Matteo Scandolo8a64fa42016-01-21 11:21:03 -080036}
37
Matteo Scandoloe4779902016-02-09 11:37:11 -080038logic-topology .subscriber circle,
39logic-topology .device circle{
40 fill: #fff;
41 stroke: green;
42 stroke-width: 1px;
43}
44
Matteo Scandolo9fe01af2016-02-09 16:01:49 -080045logic-topology .network .cloud {
46 fill: #fff;
47 stroke: green;
48 stroke-width: 1px;
49}
50
Matteo Scandoload5b2282016-02-16 11:50:51 -080051logic-topology .node.rack rect{
52 fill: #fff;
53 stroke: steelblue;
54 stroke-width: 1px;
55}
56
Matteo Scandolo79de20a2016-02-16 15:06:11 -080057logic-topology .node .instance.active rect{
58 fill: lightsteelblue;
59 stroke: steelblue;
60 stroke-width: 1px;
61}
62
Matteo Scandolo2c33a4c2016-01-25 16:24:42 -080063/* LEGEND */
64
65.legend {
66 fill: #fff;
67 stroke: #ccc;
68 stroke-width: 1px;
69 position: relative;
70}
71
72.legend text {
73 stroke: #000;
74}
75
Matteo Scandolo8a64fa42016-01-21 11:21:03 -080076.node {
77 cursor: pointer;
78}
79
Matteo Scandolo5bf04572016-01-25 17:36:08 -080080.node circle,
81.node rect{
Matteo Scandolo8a64fa42016-01-21 11:21:03 -080082 fill: #fff;
83 stroke: steelblue;
Matteo Scandolofcdbed32016-02-08 16:55:44 -080084 stroke-width: 1px;
Matteo Scandolo8a64fa42016-01-21 11:21:03 -080085}
86
Matteo Scandolof2c99012016-01-25 10:10:38 -080087.node.subscriber circle,
Matteo Scandolo9fe01af2016-02-09 16:01:49 -080088.node.subscriber rect,
89.node.router circle,
90.node.router rect {
Matteo Scandolo2c33a4c2016-01-25 16:24:42 -080091 stroke: #05ffcb;
Matteo Scandolof2c99012016-01-25 10:10:38 -080092}
93
Matteo Scandolo5bf04572016-01-25 17:36:08 -080094.node.slice rect {
Matteo Scandolo071ef462016-01-25 12:00:42 -080095 stroke: #b01dff;
96}
97
Matteo Scandolo5bf04572016-01-25 17:36:08 -080098.node.instance rect {
Matteo Scandoloc9ebd922016-01-28 12:02:57 -080099 stroke: #ccc;
100}
101
102.node.instance rect.active {
Matteo Scandolo2c33a4c2016-01-25 16:24:42 -0800103 stroke: #ff8b00;
Matteo Scandolo071ef462016-01-25 12:00:42 -0800104}
105
Matteo Scandolo6e8a75a2016-01-22 09:33:26 -0800106.node rect.slice-detail{
107 fill: #fff;
108 stroke: steelblue;
109 stroke-width: 3px;
110}
111
Matteo Scandolo8a64fa42016-01-21 11:21:03 -0800112.node text {
113 font: 12px sans-serif;
114}
115
Matteo Scandolo219b1a72016-02-09 11:19:22 -0800116.link, .device-link {
Matteo Scandolo8a64fa42016-01-21 11:21:03 -0800117 fill: none;
118 stroke: #ccc;
119 stroke-width: 2px;
Matteo Scandolo06f45d62016-01-21 15:38:06 -0800120}
121
Matteo Scandolo2c33a4c2016-01-25 16:24:42 -0800122.link.slice {
Matteo Scandolo9ef3c842016-01-25 13:55:09 -0800123 stroke: rgba(157, 4, 183, 0.29);
124}
Matteo Scandolo2c33a4c2016-01-25 16:24:42 -0800125.link.instance{
Matteo Scandoloc9ebd922016-01-28 12:02:57 -0800126 stroke: #ccc;
127}
128
129.link.instance.active{
Matteo Scandolo2c33a4c2016-01-25 16:24:42 -0800130 stroke: rgba(255, 138, 0, 0.65);
131}
Matteo Scandolo9ef3c842016-01-25 13:55:09 -0800132
Matteo Scandolo06f45d62016-01-21 15:38:06 -0800133.service-details{
134 width: 200px;
135 position: absolute;
136 top: 20px;
137 right: 20px;
Matteo Scandolo3501ccb2016-01-21 16:02:57 -0800138}
139
140/* when showing the thing */
141
142.animate.ng-hide-remove {
143 animation:0.5s bounceInRight ease;
144}
145
146/* when hiding the picture */
147.animate.ng-hide-add {
148 animation:0.5s bounceOutRight ease;
149}
150
151/* ANIMATIONS */
152
153@keyframes bounceInRight {
154 from, 60%, 75%, 90%, to {
155 animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
156 }
157
158 from {
159 opacity: 0;
160 transform: translate3d(3000px, 0, 0);
161 }
162
163 60% {
164 opacity: 1;
165 transform: translate3d(-25px, 0, 0);
166 }
167
168 75% {
169 transform: translate3d(10px, 0, 0);
170 }
171
172 90% {
173 transform: translate3d(-5px, 0, 0);
174 }
175
176 to {
177 transform: none;
178 }
179}
180
181@keyframes bounceInLeft {
182 from, 60%, 75%, 90%, to {
183 animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
184 }
185
186 0% {
187 opacity: 0;
188 transform: translate3d(-3000px, 0, 0);
189 }
190
191 60% {
192 opacity: 1;
193 transform: translate3d(25px, 0, 0);
194 }
195
196 75% {
197 transform: translate3d(-10px, 0, 0);
198 }
199
200 90% {
201 transform: translate3d(5px, 0, 0);
202 }
203
204 to {
205 transform: none;
206 }
Matteo Scandolo8a64fa42016-01-21 11:21:03 -0800207}