@openglobus/og 0.14.10 → 0.15.0

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.
Files changed (140) hide show
  1. package/css/og.css +378 -275
  2. package/dist/@openglobus/og.css +1 -1
  3. package/dist/@openglobus/og.esm.js +2 -2
  4. package/dist/@openglobus/og.esm.js.map +1 -1
  5. package/dist/@openglobus/og.umd.js +2 -2
  6. package/dist/@openglobus/og.umd.js.map +1 -1
  7. package/package.json +18 -17
  8. package/src/og/Clock.js +218 -194
  9. package/src/og/Globe.js +5 -5
  10. package/src/og/Object3d.js +104 -145
  11. package/src/og/camera/Camera.js +31 -27
  12. package/src/og/camera/PlanetCamera.js +22 -14
  13. package/src/og/cons.js +107 -107
  14. package/src/og/control/Atmosphere.js +396 -0
  15. package/src/og/control/CompassButton.js +11 -18
  16. package/src/og/control/Control.js +187 -188
  17. package/src/og/control/GeoImageDragControl.js +84 -66
  18. package/src/og/control/LayerSwitcher.js +56 -138
  19. package/src/og/control/Lighting.js +314 -186
  20. package/src/og/control/MouseNavigation.js +2 -2
  21. package/src/og/control/RulerSwitcher.js +24 -19
  22. package/src/og/control/ScaleControl.js +30 -10
  23. package/src/og/control/SimpleSkyBackground.js +210 -0
  24. package/src/og/control/Sun.js +2 -0
  25. package/src/og/control/ZoomControl.js +30 -42
  26. package/src/og/control/index.js +6 -0
  27. package/src/og/control/ruler/RulerScene.js +5 -23
  28. package/src/og/control/selection/Selection.js +99 -0
  29. package/src/og/control/selection/SelectionScene.js +350 -0
  30. package/src/og/control/timeline/TimelineControl.js +99 -0
  31. package/src/og/control/timeline/TimelineModel.js +133 -0
  32. package/src/og/control/timeline/TimelineView.js +449 -0
  33. package/src/og/control/timeline/timelineUtils.js +132 -0
  34. package/src/og/ellipsoid/Ellipsoid.js +120 -93
  35. package/src/og/ellipsoid/wgs84.js +13 -13
  36. package/src/og/entity/Entity.js +36 -9
  37. package/src/og/entity/EntityCollection.js +0 -2
  38. package/src/og/entity/GeoObject.js +72 -56
  39. package/src/og/entity/GeoObjectHandler.js +487 -656
  40. package/src/og/entity/GeometryHandler.js +1341 -1337
  41. package/src/og/entity/Polyline.js +0 -16
  42. package/src/og/entity/Ray.js +0 -10
  43. package/src/og/entity/RayHandler.js +3 -44
  44. package/src/og/entity/Strip.js +1 -6
  45. package/src/og/index.js +10 -6
  46. package/src/og/input/input.js +3 -1
  47. package/src/og/layer/CanvasTiles.js +39 -34
  48. package/src/og/layer/Layer.js +69 -9
  49. package/src/og/layer/Material.js +1 -8
  50. package/src/og/layer/WMS.js +16 -5
  51. package/src/og/light/LightSource.js +2 -0
  52. package/src/og/math/Line3.js +140 -139
  53. package/src/og/math/Plane.js +118 -117
  54. package/src/og/math/Ray.js +242 -239
  55. package/src/og/math/Vec3.js +56 -37
  56. package/src/og/math/Vec4.js +3 -4
  57. package/src/og/math.js +21 -21
  58. package/src/og/quadTree/Node.js +5 -4
  59. package/src/og/quadTree/index.js +12 -0
  60. package/src/og/renderer/Renderer.js +64 -37
  61. package/src/og/renderer/RendererEvents.js +1071 -1065
  62. package/src/og/scene/Planet.js +352 -172
  63. package/src/og/scene/RenderNode.js +27 -12
  64. package/src/og/segment/Segment.js +0 -5
  65. package/src/og/shaders/atmos.js +332 -0
  66. package/src/og/shaders/drawnode.js +475 -109
  67. package/src/og/shaders/geoObject.js +96 -51
  68. package/src/og/shaders/polyline.js +212 -17
  69. package/src/og/shaders/ray.js +13 -6
  70. package/src/og/shaders/toneMapping.js +5 -5
  71. package/src/og/shaders/utils.js +88 -0
  72. package/src/og/terrain/GlobusTerrain.js +5 -4
  73. package/src/og/terrain/MapboxTerrain.js +231 -52
  74. package/src/og/ui/Button.js +106 -0
  75. package/src/og/ui/ButtonGroup.js +57 -0
  76. package/src/og/ui/Dialog.js +242 -0
  77. package/src/og/ui/Slider.js +144 -0
  78. package/src/og/ui/ToggleButton.js +51 -0
  79. package/src/og/{control → ui}/UIhelpers.js +11 -2
  80. package/src/og/ui/View.js +190 -0
  81. package/src/og/utils/shared.js +960 -942
  82. package/src/og/webgl/Framebuffer.js +308 -387
  83. package/src/og/webgl/Handler.js +90 -30
  84. package/src/og/webgl/Multisample.js +8 -0
  85. package/types/Clock.d.ts +7 -2
  86. package/types/Object3d.d.ts +14 -3
  87. package/types/camera/Camera.d.ts +18 -17
  88. package/types/camera/PlanetCamera.d.ts +3 -1
  89. package/types/control/Atmosphere.d.ts +15 -0
  90. package/types/control/CompassButton.d.ts +1 -2
  91. package/types/control/GeoImageDragControl.d.ts +7 -1
  92. package/types/control/LayerSwitcher.d.ts +5 -6
  93. package/types/control/Lighting.d.ts +32 -7
  94. package/types/control/ScaleControl.d.ts +2 -1
  95. package/types/control/SimpleSkyBackground.d.ts +15 -0
  96. package/types/control/ZoomControl.d.ts +0 -1
  97. package/types/control/index.d.ts +4 -1
  98. package/types/control/ruler/RulerScene.d.ts +0 -1
  99. package/types/control/selection/Selection.d.ts +49 -0
  100. package/types/control/selection/SelectionScene.d.ts +34 -0
  101. package/types/ellipsoid/Ellipsoid.d.ts +3 -2
  102. package/types/entity/Entity.d.ts +8 -0
  103. package/types/entity/GeoObject.d.ts +28 -22
  104. package/types/entity/GeoObjectHandler.d.ts +16 -56
  105. package/types/entity/Ray.d.ts +0 -3
  106. package/types/entity/RayHandler.d.ts +0 -4
  107. package/types/index.d.ts +7 -5
  108. package/types/input/input.d.ts +2 -0
  109. package/types/layer/CanvasTiles.d.ts +1 -0
  110. package/types/layer/Layer.d.ts +9 -0
  111. package/types/layer/WMS.d.ts +7 -3
  112. package/types/math/Plane.d.ts +1 -1
  113. package/types/math/Vec3.d.ts +19 -16
  114. package/types/math/Vec4.d.ts +2 -3
  115. package/types/math.d.ts +20 -20
  116. package/types/quadTree/index.d.ts +10 -0
  117. package/types/renderer/Renderer.d.ts +11 -37
  118. package/types/scene/Planet.d.ts +27 -1
  119. package/types/scene/RenderNode.d.ts +2 -1
  120. package/types/segment/Segment.d.ts +1 -1
  121. package/types/shaders/atmos.d.ts +4 -0
  122. package/types/shaders/drawnode.d.ts +3 -2
  123. package/types/shaders/utils.d.ts +1 -0
  124. package/types/terrain/GlobusTerrain.d.ts +1 -1
  125. package/types/terrain/MapboxTerrain.d.ts +2 -1
  126. package/types/ui/Button.d.ts +21 -0
  127. package/types/ui/Dialog.d.ts +41 -0
  128. package/types/ui/Slider.d.ts +30 -0
  129. package/types/ui/ToggleButton.d.ts +10 -0
  130. package/types/{control → ui}/UIhelpers.d.ts +1 -1
  131. package/types/ui/View.d.ts +32 -0
  132. package/types/utils/shared.d.ts +16 -14
  133. package/types/webgl/Framebuffer.d.ts +2 -5
  134. package/types/webgl/Handler.d.ts +15 -10
  135. package/types/webgl/Multisample.d.ts +2 -0
  136. package/src/og/ajax.js +0 -204
  137. package/src/og/entity/Object3d.js +0 -504
  138. package/src/og/utils/quadTreeType.js +0 -11
  139. package/types/ajax.d.ts +0 -24
  140. package/types/utils/quadTreeType.d.ts +0 -8
package/css/og.css CHANGED
@@ -1,3 +1,39 @@
1
+ :root {
2
+ --grey0: #1E1E1E; /*dialog background*/
3
+ --grey1: #434244; /*dialog border*/
4
+ --grey2: #3F3F46; /*dialog header*/
5
+ --grey3: #BBBBBB; /*dialog font color*/
6
+ --grey4: #5e5e5e; /*hover color*/
7
+ --grey5: rgb(64, 59, 59); /*map button background*/
8
+ --grey6: #bfbfbf; /*map button icon color*/
9
+ --grey7: #707070; /*slider progress color*/
10
+ --grey8: #e2e2e2; /*text color*/
11
+ --blue0: #1700a9ee;
12
+ }
13
+
14
+ .og-map-button {
15
+ height: 40px;
16
+ width: 40px;
17
+ position: absolute;
18
+ outline: none;
19
+ cursor: pointer;
20
+ z-index: 1;
21
+ border-radius: 4px;
22
+ background-color: var(--grey5);
23
+ }
24
+
25
+ .og-map-button svg,
26
+ .og-map-button svg path {
27
+ width: 24px;
28
+ height: 24px;
29
+ fill: var(--grey6);
30
+ }
31
+
32
+ .og-button__active.og-map-button svg,
33
+ .og-button__active.og-map-button svg path {
34
+ fill: white;
35
+ }
36
+
1
37
  .ogCenterIcon {
2
38
  height: 12px;
3
39
  width: 12px;
@@ -78,50 +114,18 @@
78
114
  margin-right: 5px;
79
115
  }
80
116
 
81
- .ogZoomControl {
82
- background-clip: padding-box;
83
- height: 70px;
84
- width: 40px;
85
- box-shadow: 0 1px 4px rgba(15, 15, 15, 0.17);
86
- z-index: 0;
87
- position: absolute;
88
- outline: none;
89
- cursor: pointer;
90
- bottom: 65px;
117
+ .og-zoomin-button {
118
+ bottom: 102px;
91
119
  right: 12px;
92
- background-color: rgba(64, 59, 59, 0.85);
93
- border-radius: 2px;
94
- }
95
-
96
- .ogZoomButton {
97
- z-Index: 50000;
98
- width: 100%;
99
- height: 50%;
100
- border: none;
101
- background-size: 15px !important;
102
- background-position: 12px 10px !important;
103
- cursor: pointer;
104
- outline: none;
105
- }
106
-
107
- .ogZoomIn {
108
- background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAdCAYAAAC5UQwxAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuM4zml1AAAAClSURBVEhL7daxDcQwDAPArPYbZFd7kGzzpWIFfiCmSbjIK5WKK0IIYhMB3szsVTSMRMNINIxEQ6XW+iml7HeesVmFhkorOBoDB5tVaKj4cijLwgkNFV8OZVk4GT76nflS5dtgoWds9oJ3OhS2AT9mXPjUfu/Iwn/Qha//NCt9CRbm4Q9oqPhyKMvCCQ0VXw5lsYX9Tq/H0w/e2QoNI9EwEg3j2HYC0DJ34KKb/uIAAAAASUVORK5CYII=) top left no-repeat;
120
+ border-bottom-left-radius: 0;
121
+ border-bottom-right-radius: 0;
109
122
  }
110
123
 
111
- .ogZoomOut {
112
- background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAdCAYAAAC5UQwxAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuM4zml1AAAABxSURBVEhL7dKxDcAgDAVRVssG7GoGyUYO6UC6dD6qFK/ghPgNLTOPwmjCaMJowmjCaMJowmjCaMJowmjaDmOMKyLuSu+b68Y2OC/0KYv1deMfrPA9ePzTnIDRhNGE0YTRhNGE0YTRhNGE0YTRhNGT7QHh3Hk0K/0NYAAAAABJRU5ErkJggg==) top left no-repeat;
113
- }
114
-
115
- @media (hover: hover) {
116
- .ogZoomIn:hover {
117
- background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuM4zml1AAAAJsSURBVEhLxda7ihVBEMbxdb3fQEVEMTFSMTDRSBB8AGONNDY29BkMFd/PQPCCweYyfr9hapjT9roHXM80/GG2Ll/11FT3nr1hGLblxMR+ONnAVv5e7h90jR2q4KlwNpwPFyY8s/HVBnoaG3SNDVX0TLgUroWb4faEZzY+MVsV7xobCJ0Ol8OtcDc8Ck8mPLPxiRErp6c10zUusHPfUDtvhAfhbXgfPk54ZuMTI1bOX9+6a1wg2bfzJnfC0/A5tIuNT4xYOf9UuNp8NdwPz8OX0C42PjFij2x3z2inhZaZ2OvhYXgZvoZ2sfGJESun2l1s1Fn+wWmXErTKrs8F02pwHofX4XtoFxufGLFy5NKgRZP2vIG2qEDD4TtdCXZfk/wsvAk/QrvY+MTUhMulQYtmtX8svizqDAoymYbkXtA6x4WgVr4LP0O72PjEiJUjlwYtmrTnc16FteNicBk4FibUsLwIr4K3IfwpHIR2sfGJEStHLg1aNGmrMU68wjVAbh9tciYdD5NqaL4FrfRWCvwK7WLjEyNWjlwatGjSVkOtfYXtwDewIy1yIRz3oklbjfGCqcIue/euK/BDOO5Fk7Yaaq1feJVWrzZcqx2n1S6QZfGdXplt8Z3+k1jCWdTg2b3WaaWhaRcbnxixcuQutTbqbPzRodq/kx8CS+xUq3wnQ2JCHY92sfGJETtObuhpjnSNCyRrmeEwmY6FM+lC+K8/9lDt9iY14Y6LKxCea5LFHNlmdI0Ndk7IGTStbh+XgXsXntn45nMaelozXWOHKu7bmVjtdNnDMxvfVkXRNR4CwdqAb7ikCm5VdBiGvd+wSIGUtsOkBQAAAABJRU5ErkJggg==) top left no-repeat;
118
- }
119
- }
120
-
121
- @media (hover: hover) {
122
- .ogZoomOut:hover {
123
- background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuM4zml1AAAAE7SURBVEhLxdXBSgJRGMVx0yxShCiJwI0rBYkM3AW9QVsXok/hc7jsCV0E1kOM5y/duHP5kHGy7w78FvN57znD6IyNoijquEhYa44yhx7MoQdz6MEcejCHHsyhB2uYPirNmtKcUk98EkpaciltufojMsgiM1xMqTiUsvBGenIrd3Iv/ROxh71kkEUm2b/lcSlXyKIHGcpYnuRZpvJSEWvZw14yyCKTbDoO5aGY29GVR5nIm7zLXBaylFVFrGUPe8kgi0yy6aDrUMz9vxZuzUjWspVP2cnXj++Kwnr2kkEWmWTTQVeTYq6A74ArmslGzn2QSTYddLVCcUcG8iofcu6DTLLpoCt/cZZbne3Hle1xyvYCictdX5lpueufRIwPY2yoI80p9ZROPJlDD+bQgzn0YA49mEMP5vD/FY09SuYbVKRjctAAAAAASUVORK5CYII=) top left no-repeat;
124
- }
124
+ .og-zoomout-button {
125
+ bottom: 58px;
126
+ right: 12px;
127
+ border-top-left-radius: 0;
128
+ border-top-right-radius: 0;
125
129
  }
126
130
 
127
131
  /* =============================== */
@@ -129,7 +133,7 @@
129
133
  /* =============================== */
130
134
 
131
135
  input {
132
- accent-color: #705affee;
136
+ accent-color: var(--blue0);
133
137
  cursor: pointer;
134
138
  }
135
139
 
@@ -150,52 +154,6 @@ input {
150
154
  z-index: 0;
151
155
  }
152
156
 
153
-
154
- /* =============================== */
155
- /* MENU ΒΤΝ STYLING */
156
- /* General Settings */
157
- /* =============================== */
158
-
159
- /* You can use any image you want. Just make sure it is around 32x32px. Color doesn't matter */
160
- /* Filters are used to convert to black and then lighten it: */
161
- /* e.g. filter: brightness(0) invert(0.6) */
162
- /* Make sure that you encode it to base64 (there are free online converters) */
163
- /* Also use this for background attribute: top left no-repeat */
164
-
165
- /* All buttons have this class + OFF if they are OFF */
166
- .og-menu-btn {
167
- height: 40px;
168
- width: 40px;
169
- position: absolute;
170
- outline: none;
171
- cursor: pointer;
172
- z-index: 1;
173
- border-radius: 4px;
174
- background-color: rgba(64, 59, 59, 0.85);
175
-
176
- }
177
-
178
- /* All buttons have a div inside to hold the background base64 image */
179
- .og-menu-btn > div {
180
- width: 40px;
181
- height: 40px;
182
- background-size: 24px !important;
183
- background-position: 8px 8px !important;
184
- filter: invert(95%) drop-shadow(4px 4px 3px black);
185
- }
186
-
187
- .og-menu-btn.og-OFF {
188
- border: none;
189
- }
190
-
191
- .og-menu-btn.og-OFF > div {
192
- filter: invert(75%)
193
- }
194
-
195
- .og-menu-btn.og-OFF > div:hover {
196
- filter: invert(100%)
197
- }
198
-
199
157
  .og-hide {
200
158
  display: none !important;
201
159
  }
@@ -204,7 +162,7 @@ input {
204
162
  visibility: hidden !important;
205
163
  }
206
164
 
207
- .og-dialog {
165
+ /*.og-dialog {
208
166
  position: absolute;
209
167
  right: 52px;
210
168
  width: 13em;
@@ -216,130 +174,112 @@ input {
216
174
  margin: 0;
217
175
  font-family: "Segoe UI", Frutiger, "Frutiger Linotype", "Dejavu Sans", "Helvetica Neue", Arial, sans-serif;
218
176
  overflow: hidden;
219
- }
220
-
221
-
222
- /* =============================== */
223
- /* DIALOG HEADER BTN STYLING */
224
- /* General Settings */
225
- /* =============================== */
177
+ }*/
226
178
 
227
- /* All buttons have this class + OFF if they are OFF */
228
- .og-dialog-header-btn {
229
- height: 24px;
230
- width: 24px;
231
- cursor: pointer;
179
+ .og-ddialog {
180
+ position: absolute;
181
+ display: flex;
182
+ flex-direction: column;
183
+ box-shadow: 3px 3px 4px rgba(15, 15, 15, 0.17);
184
+ background-color: var(--grey0);
185
+ border: 1px solid;
186
+ border-color: var(--grey1);
187
+ border-radius: 4px;
188
+ overflow: auto;
232
189
  }
233
190
 
234
- /* All buttons have a div inside to hold the background base64 image */
235
- .og-dialog-header-btn > div {
236
- width: 24px;
237
- height: 24px;
238
- background-size: 14px;
239
- background-position: 5px 5px !important;
240
- filter: brightness(0) invert(0.6)
191
+ .og-ddialog .og-ddialog-header {
192
+ width: 100%;
193
+ height: 27px;
194
+ position: relative;
195
+ padding: 0;
196
+ z-index: 1;
197
+ background-color: var(--grey2);
198
+ color: #fff;
199
+ display: flex;
200
+ flex-direction: row;
201
+ align-items: center;
202
+ justify-content: space-between;
241
203
  }
242
204
 
243
-
244
- .og-dialog-header-btn.og-OFF > div:hover {
245
- filter: brightness(0) invert(0.75)
205
+ .og-ddialog .og-ddialog-header .og-ddialog-header__title {
206
+ color: var(--grey3);
207
+ padding-left: 5px;
208
+ pointer-events: none;
209
+ font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
210
+ font-size: 14px;
211
+ font-weight: 400;
246
212
  }
247
213
 
248
- .og-dialog-header-btn > div:hover {
249
- filter: brightness(0) invert(0.75);
214
+ .og-ddialog .og-ddialog-header .og-ddialog-header__buttons {
215
+ display: flex;
216
+ flex-direction: row;
217
+ justify-content: flex-end;
250
218
  }
251
219
 
252
- .og-dialog-header-title {
253
- margin-left: 4px;
254
- line-height: 22px;
255
- font-size: 12px;
256
- color: #aaaaaa;
257
- width: fit-content;
220
+ .og-ddialog .og-ddialog-container {
221
+ overflow: auto;
222
+ position: relative;
223
+ width: 100%;
224
+ height: 100%;
225
+ font-family: "Segoe UI", Frutiger, "Frutiger Linotype", "Dejavu Sans", "Helvetica Neue", Arial, sans-serif;
226
+ font-size: 14px;
258
227
  }
259
228
 
260
- /* =============================== */
261
- /* 1 - LAYER SWITCHER */
262
- #og-layer-switcher-menu-btn {
263
- top: 12px;
264
- right: 12px;
229
+ .og-ddialog.dragging {
230
+ user-select: none;
265
231
  }
266
232
 
267
- #og-layer-switcher-menu-btn > div {
268
- background: url('data:image/png;base64,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') top left no-repeat;
233
+ .og-button {
234
+ display: flex;
235
+ align-items: center;
236
+ align-content: center;
237
+ padding: 2px;
238
+ flex-direction: row;
239
+ cursor: default;
240
+ justify-content: center;
241
+ color: var(--grey6);
269
242
  }
270
243
 
271
- #og-layer-switcher-dialog {
272
- top: 12px;
273
- width: 260px;
274
- color: whitesmoke;
244
+ .og-button .og-button-text {
275
245
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
276
- font-size: 16px;
246
+ font-size: 14px;
277
247
  font-weight: 400;
278
-
279
- }
280
-
281
- #og-layer-switcher-dialog input {
282
- margin-right: 12px;
283
- }
284
-
285
- .og-layer-switcher-main-container {
286
- resize: vertical;
287
- overflow-y: auto;
288
- height: min-content;
289
248
  }
290
249
 
291
- .og-layer-switcher-main-container.og-minimized {
292
- height: 24px !important;
293
- overflow-y: hidden;
294
- }
250
+ .og-button.og-button__active {
295
251
 
296
- #og-layer-switcher-dialog.og-minimized {
297
- resize: vertical;
298
- height: 24px !important;
299
252
  }
300
253
 
301
- .og-layer-switcher-dialog-header {
302
- height: 24px;
303
- width: 260px;
304
- margin: 0;
305
- padding: 0;
306
- border-radius: 4px 4px 0 0;
307
- background-color: rgba(112, 90, 255, 0.8);
308
- display: grid;
309
- grid-template-columns: 24px 24px 1fr 24px;
254
+ .og-button:hover {
255
+ background-color: var(--grey4);
310
256
  }
311
257
 
312
- #og-layer-switcher-dialog-close-btn > div {
313
- background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAAA3NCSVQICAjb4U/gAAAACXBIWXMAAADeAAAA3gHd6oNqAAAAGXRFWHRTb2Z0d2FyZQB3d3cuaW5rc2NhcGUub3Jnm+48GgAAAEJQTFRF////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAhihLswAAABV0Uk5TAAIHCRgaHi1LfoiWmJ6jxcfc4/T2aa9U1AAAALtJREFUOMuFU90ahBAUHIlUbMS8/6vuRWWz5TtzhRlzOD9AhXbrlnJO2+o0njC+sKJ480cPy40mybIMd36MfCCOP37a+YJ9qvdfeXI/PYbIDuLxjoVdLABgSl9QDAB/bmb7uc4/dj5XHtCXgYUKxyoo2MtCw9Vr6lQEBVXNHNYaMByKoKoVyRUbW0XLc0Niq2h5JmS2ipZnlgViCPGR4jfFRImpFosll1tsGLnlxKaV214eHHn05OHtj/8XWDc60UIMToAAAAAASUVORK5CYII=') top left no-repeat;
314
- background-size: 14px;
315
- }
316
-
317
- #og-layer-switcher-dialog-minMax-btn > div {
318
- background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAAsQAAALEBxi1JjQAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAGaSURBVFiFxdexThRRGMXx306CCKzGgoTQqRAtJMgzaIc8FYmRNyBqTcILaKfRAk1sYOmMhcFObExYEqDR4u5NyGS5O3d3Z+Ykp5rd7//duXe+OdNRXXewhWd4ivu4N7j2Fz/Rw0e8w1lG7aSWsYtz/Kvoc7zF6iTgOWyjnwEu+wo7mM2Fr+J4AnDZB1iqCt/A7ynCo39hrcrK64BHn6TuxG0c1giP/uKGM7HdADz6VRm+bLLTnutLrFxvYLdBePSbCL8rb8hMy310C7zAfHlPGtACNgthtrel54XwYmlL6x38wWLiR0f4MSbgkfQCTwmPxE0H5QjFmHCD//YS9S8mKT4VVdmCY3wfs/5jrCeun8I3zc+A6K+FsM9tqVcIGa4tfYCuECBbG8V97Ne80mHaG7ARktCV5lZ/gQfljnYabODlsFsyg88NwA8kYvqSkF7rgidDadRaTU2c4MkoeNQiPk0RnvVhEjUrpNfU23KUL4UDdysXfl0PhQCZk5rP8NqQR62sTkYjXWwKEW5jULz8eX4ojPb3QtAdqf+adwSq+JuuGwAAAABJRU5ErkJggg==') top left no-repeat;
319
- background-size: 14px;
258
+ .og-button-size__20 {
259
+ height: 20px;
260
+ width: 20px;
320
261
  }
321
262
 
322
- #og-layer-switcher-dialog-pin-btn {
323
- justify-self: right;
324
- margin-right: 4px;
325
- transform: rotate(-45deg);
326
-
263
+ .og-button__active {
264
+ background: var(--grey2);
327
265
  }
328
266
 
329
- #og-layer-switcher-dialog-pin-btn.og-OFF {
330
- transform: rotate(0deg);
331
- }
267
+ /* =============================== */
268
+ /* 1 - LAYER SWITCHER */
332
269
 
333
- #og-layer-switcher-dialog-pin-btn > div {
334
- background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAA7AAAAOwBeShxvQAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAE7SURBVFiF7da/LgRRGIbxH2tJqBQbCiSoSVQ6iSglEluoReUmXIM70ChU1ETrChQqF8DSiEIyBQomO9nMOPNvd0O8yalm8j3POec7Z4b//JE0sYfpYcEv8IE7zA4LHo+BSaTBBypxlAGPxy1a/RTYRDRMiRbuAwJ9k2h9Fw7BK/fEOOawoHvGi8JLrcQWrvDWU+QFjyXgSYngZXWI9wqQ0NhPwkZTBJYxErIsmWfchF5q4Ez9M+9gNa9pE+cVgZHuPfFUBF6HRIQ2dnCNlaLwOGW2I8JuWWBaiq5Eu054nEk85BSYL1I47Rj2polTzPi6H0JZKiKQBx5/8ztYE+6J7Trh8d53dDs51BO1NGAWPPk8629ovd/wnyReMVEFPpYTniVxXAUOGwXgSYkTXGKqqkADB1isWug/vyafkbf+xKZ/5a0AAAAASUVORK5CYII=') top left no-repeat;
335
- background-size: 14px;
270
+ .og-layerswitcher_button {
271
+ top: 12px;
272
+ right: 12px;
336
273
  }
337
274
 
338
275
  .og-layer-switcher-record {
339
276
  overflow: hidden;
340
277
  white-space: nowrap;
341
278
  text-overflow: ellipsis;
342
- padding: 6px 0;
279
+ color: white;
280
+ font-size: 14px;
281
+ font-weight: 250;
282
+ font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
343
283
  }
344
284
 
345
285
  .og-layer-switcher-record.og-depth-1,
@@ -349,12 +289,6 @@ input {
349
289
  font-weight: 250;
350
290
  }
351
291
 
352
- .og-layer-switcher-record.terrainProviders,
353
- .og-layer-switcher-record.baselayers {
354
- height: 24px;
355
- }
356
-
357
-
358
292
  .og-layer-switcher-record.overlays > * {
359
293
  display: inline;
360
294
  }
@@ -364,49 +298,44 @@ input {
364
298
  }
365
299
 
366
300
  .og-layer-switcher-record.og-depth-0:nth-child(2) {
367
- border-top: 2px solid grey;
368
- border-bottom: 2px solid grey;
369
301
  }
370
302
 
371
303
  .og-layer-switcher-record.og-depth-0 {
372
- padding: 18px 12px;
373
304
  }
374
305
 
375
306
  .og-layer-switcher-record.og-depth-0 input {
376
307
  margin-left: 18px;
377
308
  }
378
309
 
379
- details[open] > summary {
380
- margin-bottom: 12px;
310
+ .og-layer-switcher-record-title {
311
+ }
312
+
313
+ details .og-layer-switcher-record {
314
+ padding-top: 7px;
315
+ padding-bottom: 3px;
316
+ }
317
+
318
+ details > summary {
319
+ background: var(--grey1);
320
+ padding: 0px 7px 3px;
321
+ border-top: 1px solid var(--grey0);
322
+ }
323
+
324
+ details[open] {
325
+ padding-bottom: 10px;
381
326
  }
382
327
 
383
328
  .og-layer-switcher-dropZone {
384
329
  display: block !important;
385
330
  height: 4px;
386
331
  margin-left: 4px;
387
- /* background-color: #705affee; */
388
332
  }
389
333
 
390
334
  .og-layer-switcher-dropZone.og-drag-over {
391
-
392
- background-color: #705affee;
335
+ background-color: var(--blue0);
393
336
  opacity: 0.5;
394
337
  }
395
338
 
396
- /* =============================== */
397
- /* GEO IMAGE DRAGGER */
398
-
399
- /* Just set position and background url */
400
-
401
- #og-geo-image-dragger-menu-btn {
402
- top: 112px;
403
- right: 12px;
404
- }
405
-
406
- #og-geo-image-dragger-menu-btn > div {
407
- background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAIuSURBVHgB7ZjvVcIwFMWvHr9bN4gTyAZ2A92AOIFu4Ai4AWygToAbiBNQJwAnwDz6QkNs/tgAhXPyO+eeQJuS+5q8lD4gk8lkMpkTZ6S0Uhor3SsVOF7IG3kkrwul6Rlq8zYfSl/ckpboB6E0UCqVbrjdwhWADQUwQx3UXOmbj1WsVJMFG73kVnBbePysz5kBPLBJuvDO+KFYKqv1GQYbiF2uZPiD9Y56JmgZ4cLqOGNNjMEGrBv+LhwDC6vtgp5V8vBt+KlcF1zAT8V6s45TAMJoaeqv+Ptl4Dd/2OjC+Fyx/p1roQBc6JzonXOcODmAHUG584w6L/RDVcRevGJJ9McEjQ+tqae/1P2OYQbo7g9bjpeot28vhwiA/rsIz/mi47k1+w6A1vUry2WmQvuDio5FbdX7yoER4tc0LZW50XcR8CONvjsPgO70FH+TkjTyXCdQLzeJ8NKRSAxgiPbEE9i+k216RjoSCQEMjWvGaBK0RLOPh/SENCQ6BjBoMUl3/AVxxk0N0R2JDgG0mU/RAhH7fCiA2G1UwL8VdkEnu0ACMQGIXQzkIDmIUAAC+zNvj/GIjuO4csB+uBxKn2hKPK4XewlHElPnEu4HUZ+aG9psJmZVYlOqOCVi60IhlmheyKtA38JSErEv9RWaUsecWzqmKwopCDTBUOnmmltd7PLSNgO64vCGuhI3Q3+lRR1EqXSLltIiMUWdFGPucOx5QLvTBM2OlclkMpnM6fILH2AieAQ9pX8AAAAASUVORK5CYII=') top left no-repeat
408
- }
409
-
410
339
  /* =============================== */
411
340
  .displayNone {
412
341
  display: none;
@@ -419,22 +348,9 @@ details[open] > summary {
419
348
  /* =============================== */
420
349
  /* RULER */
421
350
 
422
- /* Just set position and background url */
423
- #og-ruler-menu-btn {
424
- bottom: 193px;
351
+ .og-ruler_button {
352
+ top: 65px;
425
353
  right: 12px;
426
- box-shadow: 0 1px 4px rgb(15 15 15 / 17%);
427
- background-color: rgba(64, 59, 59, 0.85);
428
- border-radius: 2px;
429
- }
430
-
431
- #og-ruler-menu-btn > div {
432
- background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAoCAYAAAC4h3lxAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAJVSURBVHgB1ZhrdcMwDEbvGBSCIRSCIJRBx2BlUDNYh2BlMAiFEAiBMAhbfDqfuo78yKNp9p2jH3EcW3GuJTmwLklnTWc/nR35R9p2duHqeGjCyrXp7J2+494urFhvnX2Tdt7bnpVJOmtJO/ytXG9YgQw6597c5hWuzsYvYXminENH8it+iJ6xSh/DE1Ti/ISOh2uLMVt0Qwt5XNw9UzHG4mHVdPZF2vF2oBPxIjQ8SJ7zFC6u3TJcW2WsAzNrRz4spjiv1YkHhVWhzLkwXVpYfWeCSunffY0d07SJxjgo82wZoRrOp35e8zdWHPsbJoRVIc/5F/MmmpPipDAirBoez7kvpW3QFnIvQVu8iMmwWuJcS/9jJejRxQZOHkmj21Mu/c/F+Wt07ZPfZ9ReKrdt2Fnob5QYF8MwCdcFCeWRDL+g4R4ZwwB0S50bxnGucexfKodMbtVVdJshnQfKooc8v2BhQjpSxkVFV+s8Nf17hZFjH7SbYC7XPgndM/2Vn+K8cJ8ld+SRSVlLJbpzHuFeySNjqatcB6NrlUEMw1Wzccec0KombumzV5LDw/FrgjZfeLXcnJGC426uUcVZKFEGlsIzWs0C91HmzAyc1+pCPweE2kQTppDZkd+gc2X0nnJHOMON4VTN4iTkK9dPHvyjKneES9Us3uFSPBcWUO4IZ9DL3DN5XPYsLO0IZ/7uWW4rukTlOloxxz7SaF9Iw8XwZAl9xxwKF1bAea1yzsa4zP7DaQ4Zys5bVvL/PiXLijmvUVwnzZ7+p+ilsp/hWio71j9YkX4Byx4UVaJRe+4AAAAASUVORK5CYII=') top left no-repeat
433
- }
434
-
435
- .og-ruler.og-dialog {
436
- height: 80px;
437
- top: 174px;
438
354
  }
439
355
 
440
356
  /* =============================== */
@@ -446,7 +362,7 @@ details[open] > summary {
446
362
  width: 100%;
447
363
  max-height: 70%;
448
364
  overflow: auto;
449
- font-size: 12px;
365
+ font-size: 14px;
450
366
  font-family: Arial;
451
367
  background-color: rgba(130, 130, 130, 0.49);
452
368
  color: white;
@@ -482,7 +398,7 @@ details[open] > summary {
482
398
 
483
399
  .ogViewExtentBtn:hover {
484
400
  border-radius: 10px;
485
- background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYEAQAAAAa7ikwAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAAABgAAAAYADwa0LPAAAAB3RJTUUH5ggMBTM4rM25AwAAAAJiS0dEAACqjSMyAAABsUlEQVRIx81WWYrCQBAVg4Iwbp8ud5DoYRRBxPMoouiPegQVPYp6Azdc/ly++01XKkmPksQ4ZmAKAr3V0u9VVScU8ikQkQhwuRifHIeCFiAWgy2xWHCGRSIBVKtAt6scdDrGmtz7IOJUyjAk7ne4Ce2JdhsimXzTeKkE7PfK0vEIjMdqTuPTSc23W6BY9G/cjvpwgKjVmOBHDnitXmfnJLcboOs+YNntWGGxADIZtRcOQ4xGEMMhjdV6Ngssl6yz2XjywuSZkf8w/vrW5MS8iWi13LPFgkbC8n5SEFwmVOLry+EApaJJ6C8KCSIaVcRXKk8FlE4D/T5vzmY81zT/0Wsa68znbKPX47ksSC5/JxkM/EdPxDvJ5RKMA3nWw8EfQxQsyecz2yiXvdNUptz7adposO716pim7EQ2Lrv3ZLP+o8/n7RQVzabHwWSSGxcJlb9y4t4qcjlgtWKd9RoiHn9x1WKRG5d1E1mhBr7PzY7WCBaruAiaQsEnnrpuNC5biLzJRL0D06ki1Ircp/FH0lstdRsnoaibzZeweDuKx6m3qE5rPZnlsmu2/KtH/9Pflm+sYR/yIsaCAQAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyMi0wOC0xMlQwNTo1MTo1NiswMDowMIPhE+YAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjItMDgtMTJUMDU6NTE6NTYrMDA6MDDyvKtaAAAAKHRFWHRkYXRlOnRpbWVzdGFtcAAyMDIyLTA4LTEyVDA1OjUxOjU2KzAwOjAwpamKhQAAAABJRU5ErkJggg==) center center no-repeat, #705affee;
401
+ background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYEAQAAAAa7ikwAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAAABgAAAAYADwa0LPAAAAB3RJTUUH5ggMBTM4rM25AwAAAAJiS0dEAACqjSMyAAABsUlEQVRIx81WWYrCQBAVg4Iwbp8ud5DoYRRBxPMoouiPegQVPYp6Azdc/ly++01XKkmPksQ4ZmAKAr3V0u9VVScU8ikQkQhwuRifHIeCFiAWgy2xWHCGRSIBVKtAt6scdDrGmtz7IOJUyjAk7ne4Ce2JdhsimXzTeKkE7PfK0vEIjMdqTuPTSc23W6BY9G/cjvpwgKjVmOBHDnitXmfnJLcboOs+YNntWGGxADIZtRcOQ4xGEMMhjdV6Ngssl6yz2XjywuSZkf8w/vrW5MS8iWi13LPFgkbC8n5SEFwmVOLry+EApaJJ6C8KCSIaVcRXKk8FlE4D/T5vzmY81zT/0Wsa68znbKPX47ksSC5/JxkM/EdPxDvJ5RKMA3nWw8EfQxQsyecz2yiXvdNUptz7adposO716pim7EQ2Lrv3ZLP+o8/n7RQVzabHwWSSGxcJlb9y4t4qcjlgtWKd9RoiHn9x1WKRG5d1E1mhBr7PzY7WCBaruAiaQsEnnrpuNC5biLzJRL0D06ki1Ircp/FH0lstdRsnoaibzZeweDuKx6m3qE5rPZnlsmu2/KtH/9Pflm+sYR/yIsaCAQAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAyMi0wOC0xMlQwNTo1MTo1NiswMDowMIPhE+YAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMjItMDgtMTJUMDU6NTE6NTYrMDA6MDDyvKtaAAAAKHRFWHRkYXRlOnRpbWVzdGFtcAAyMDIyLTA4LTEyVDA1OjUxOjU2KzAwOjAwpamKhQAAAABJRU5ErkJggg==) center center no-repeat, var(--blue0);
486
402
  }
487
403
 
488
404
 
@@ -620,90 +536,78 @@ details[open] > summary {
620
536
  }
621
537
 
622
538
  .og-compass-button {
623
- text-align: center;
624
- clear: none;
625
- cursor: pointer;
626
- background-clip: padding-box;
627
- height: 40px;
628
- width: 40px;
629
- box-shadow: 0 1px 4px rgba(15, 15, 15, 0.17);
630
- z-index: 0;
631
- position: absolute;
632
- outline: none;
633
- bottom: 144px;
539
+ bottom: 153px;
634
540
  right: 12px;
635
- background-color: rgba(64, 59, 59, 0.85);
636
- border-radius: 2px;
541
+ }
542
+
543
+ .og-compass-button svg {
544
+ width: 40px !important;
545
+ height: 40px !important;
637
546
  }
638
547
 
639
548
  /*
640
549
  Lighting control
641
550
  */
642
- .og-lighing {
551
+
552
+ .og-lighting_button {
643
553
  position: absolute;
644
- top: 0;
645
- right: 0;
646
- padding: 12px 0 12px 12px;
647
- width: 350px;
648
- overflow: auto;
554
+ left: 10px;
555
+ top: 65px;
556
+ }
557
+
558
+ .og-lighing {
559
+ position: relative;
560
+ padding: 12px;
649
561
  height: calc(100% - 30px);
650
562
  color: #b6b6b6;
651
- background-color: #222222;
652
- font-family: monospace;
653
- font-size: 14px;
654
- z-index: 10000;
655
- overflow-x: hidden;
563
+ }
564
+
565
+ .og-lighing .og-layers {
566
+ display: flex;
567
+ flex-direction: row;
568
+ align-items: center;
656
569
  }
657
570
 
658
571
  .og-lighing .og-color-options {
659
572
  }
660
573
 
661
574
  .og-lighing .og-caption {
662
- width: 100%;
663
575
  position: relative;
664
- padding-top: 5px;
665
- padding-bottom: 5px;
576
+ }
577
+
578
+ .og-lighing .og-lighting-emptyline {
579
+ width: 100%;
580
+ padding: 3px;
666
581
  }
667
582
 
668
583
  .og-lighing .og-option {
669
584
  width: 100%;
670
585
  position: relative;
671
- display: inline-block;
586
+ display: block;
587
+ flex-direction: row;
672
588
  padding-bottom: 7px;
673
- }
674
-
675
- .og-lighing .og-label {
676
- float: left;
589
+ text-overflow: ellipsis;
590
+ align-items: center;
591
+ justify-content: left;
677
592
  }
678
593
 
679
594
  .og-lighing .og-slider {
680
- float: left;
681
- width: calc(100% - 85px);
682
- margin-left: 10px;
683
- margin-right: 10px;
684
- }
685
-
686
- .og-lighing .og-slider input {
687
595
  width: 100%;
688
- position: relative;
689
596
  }
690
597
 
691
- .og-lighing .og-value {
692
- float: left;
693
- width: 50px;
598
+ .og-lighing .og-slider .og-slider-label {
599
+ width: 100px;
600
+ font-size: 12px;
694
601
  }
695
602
 
603
+
696
604
  .og-lighing #layers {
697
- font-size: 16px;
698
- color: #e8e8e8;
699
- background-color: #5e5e5e;
700
605
  font-family: monospace;
701
- padding: 5px;
702
- width: 240px;
606
+ padding: 2px;
703
607
  margin-left: 21px;
608
+ width: 200px;
704
609
  }
705
610
 
706
-
707
611
  .og-coordinates {
708
612
  position: absolute;
709
613
  bottom: 25px;
@@ -714,9 +618,10 @@ details[open] > summary {
714
618
  font-size: 1.0em;
715
619
  cursor: pointer;
716
620
  float: left;
717
- background-color: rgba(64, 59, 59, 0.85);
718
- color: white;
719
- padding: 3px;
621
+ background-color: var(--grey5);
622
+ color: var(--grey8);
623
+ padding: 5px;
624
+ border-radius: 4px;
720
625
  }
721
626
 
722
627
  .og-coordinates div {
@@ -761,4 +666,202 @@ details[open] > summary {
761
666
  right: 50%;
762
667
  position: absolute;
763
668
  pointer-events: none;
669
+ }
670
+
671
+ /*
672
+ ==========================
673
+ TIMELINE
674
+ ==========================
675
+ */
676
+
677
+ .og-timeline_button {
678
+ position: absolute;
679
+ top: 10px;
680
+ left: 10px;
681
+ }
682
+
683
+ .og-timeline-control_button {
684
+ width: 25px;
685
+ height: 20px;
686
+ margin-left: 3px;
687
+ margin-right: 3px;
688
+ background: var(--grey7);
689
+ border-radius: 1px;
690
+ }
691
+
692
+ .og-button svg,
693
+ .og-button svg path {
694
+ width: 24px;
695
+ height: 24px;
696
+ }
697
+
698
+ .og-timeline-control_button.og-button__active {
699
+ background: var(--grey3);
700
+ }
701
+
702
+ .og-timeline {
703
+ width: 100%;
704
+ height: 100%;
705
+ background: rgb(45 45 45);
706
+ position: absolute;
707
+ left: 0;
708
+ bottom: 0;
709
+ overflow: hidden;
710
+ }
711
+
712
+ .og-timeline-frame {
713
+ position: relative;
714
+ width: calc(100% - 20px);
715
+ margin: 0px 0px 0px 10px;
716
+ height: 30px;
717
+ }
718
+
719
+ .og-timeline-scale {
720
+ overflow: hidden;
721
+ width: 100%;
722
+ height: 100%;
723
+ }
724
+
725
+ .og-timeline-current {
726
+ position: absolute;
727
+ left: 0;
728
+ width: 11px;
729
+ height: 100%;
730
+ margin-left: -5px;
731
+ cursor: pointer;
732
+ margin-top: -7px;
733
+ }
734
+
735
+ .og-timeline-current-spin {
736
+ margin: 0 auto;
737
+ width: 1px;
738
+ height: 100%;
739
+ background-color: #ff3434;;
740
+ pointer-events: none;
741
+ }
742
+
743
+ .og-timeline-current-arrow {
744
+ width: 0;
745
+ height: 0;
746
+ border-left: 7px solid transparent;
747
+ border-right: 7px solid transparent;
748
+ border-top: 7px solid #ff3434;;
749
+ margin-left: -6px;
750
+ }
751
+
752
+ .og-timeline-bottom {
753
+ width: 100%;
754
+ display: flex;
755
+ position: relative;
756
+ justify-content: center;
757
+ margin-top: 3px;
758
+ }
759
+
760
+ .og-timeline-controls {
761
+ position: relative;
762
+ border-radius: 10px;
763
+ display: flex;
764
+ flex-direction: row;
765
+ justify-content: center;
766
+ align-items: center;
767
+ padding: 8px;
768
+ }
769
+
770
+ .og-timeline-unselectable {
771
+ -moz-user-select: none;
772
+ -khtml-user-select: none;
773
+ -webkit-user-select: none;
774
+ -ms-user-select: none;
775
+ user-select: none;
776
+ }
777
+
778
+ .og-timeline-top {
779
+ width: 100%;
780
+ display: block;
781
+ height: 15px;
782
+ }
783
+
784
+ /*
785
+ SLIDER
786
+ */
787
+
788
+ .og-slider {
789
+ display: flex;
790
+ flex-direction: row;
791
+ width: 200px;
792
+ height: 20px;
793
+ }
794
+
795
+ .og-slider .og-slider-label {
796
+ width: 100%;
797
+ height: 100%;
798
+ color: var(--grey6);
799
+ font-family: "Segoe UI", Frutiger, "Frutiger Linotype", "Dejavu Sans", "Helvetica Neue", Arial, sans-serif;
800
+ font-size: 14px;
801
+ display: flex;
802
+ align-items: center;
803
+ text-align: left;
804
+ }
805
+
806
+ .og-slider .og-slider-panel {
807
+ position: relative;
808
+ width: 100%;
809
+ height: 100%;
810
+ background-color: var(--grey1);
811
+ z-index: 1;
812
+ }
813
+
814
+ .og-slider .og-slider-panel .og-slider-progress {
815
+ position: absolute;
816
+ height: 100%;
817
+ background-color: var(--grey7);
818
+ pointer-events: none;
819
+ }
820
+
821
+ .og-slider .og-slider-panel .og-slider-pointer {
822
+ position: absolute;
823
+ left: 0;
824
+ top: 0;
825
+ height: 100%;
826
+ width: 3px;
827
+ background-color: var(--grey3);
828
+ pointer-events: none;
829
+ }
830
+
831
+ .og-slider input {
832
+ position: relative;
833
+ height: 100%;
834
+ width: 100%;
835
+ background: var(--grey5);
836
+ border: 1px solid var(--grey1);
837
+ z-index: 0;
838
+ color: var(--grey3);
839
+ padding-left: 5px;
840
+ width: 60px;
841
+ }
842
+
843
+ .og-slider input:focus-visible {
844
+ outline: none;
845
+ }
846
+
847
+ /* Chrome, Safari, Edge, Opera */
848
+ .og-slider input::-webkit-outer-spin-button,
849
+ .og-slider input::-webkit-inner-spin-button {
850
+ -webkit-appearance: none;
851
+ margin: 0;
852
+ }
853
+
854
+ /* Firefox */
855
+ .og-slider input[type=number] {
856
+ -moz-appearance: textfield;
857
+ }
858
+
859
+ .og-selection_button {
860
+ top: 117px;
861
+ right: 12px;
862
+ }
863
+
864
+ .og-geoimagegrag_button {
865
+ top: 169px;
866
+ right: 12px;
764
867
  }