@projektemacher/storymapjs 0.10.6 → 0.10.7

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 (148) hide show
  1. package/CHANGELOG +11 -0
  2. package/dist/assets/{demo-CVQ7kFek.js → demo-D6cTmzn6.js} +1 -1
  3. package/dist/assets/{harness-C-VZV-ou.js → harness-BPFlzutp.js} +1 -1
  4. package/dist/assets/main-Y-MYUSJ4.js +17 -0
  5. package/dist/css/fonts/font.oldstandard.css +18 -22
  6. package/dist/demo.html +2 -2
  7. package/dist/docs/migration.html +1 -1
  8. package/dist/embed/index.html +129 -4
  9. package/dist/harness.html +2 -2
  10. package/dist/index.html +17 -0
  11. package/dist/js/storymap.d.ts +126 -7
  12. package/dist/js/storymap.js +4518 -3613
  13. package/dist/js/storymap.js.map +1 -1
  14. package/docs/migration-from-knightlab.md +139 -0
  15. package/docs/storymap-as-iiif-manifest.md +510 -0
  16. package/package.json +6 -3
  17. package/src/animation/easings.ts +18 -0
  18. package/src/animation/morpheus.d.ts +41 -0
  19. package/src/core/Browser.ts +19 -0
  20. package/src/core/Load.ts +180 -0
  21. package/src/core/Util.ts +354 -0
  22. package/src/core/mixins.ts +171 -0
  23. package/src/dom/Dom.ts +31 -0
  24. package/src/dom/DomEvent.ts +61 -0
  25. package/src/globals.d.ts +16 -0
  26. package/src/language/Language.ts +107 -0
  27. package/src/language/locale/be.json +18 -0
  28. package/src/language/locale/bg.json +18 -0
  29. package/src/language/locale/cs.json +18 -0
  30. package/src/language/locale/de.json +20 -0
  31. package/src/language/locale/el.json +18 -0
  32. package/src/language/locale/en.json +28 -0
  33. package/src/language/locale/es.json +18 -0
  34. package/src/language/locale/et.json +18 -0
  35. package/src/language/locale/fr.json +18 -0
  36. package/src/language/locale/he.json +18 -0
  37. package/src/language/locale/hu.json +18 -0
  38. package/src/language/locale/is.json +18 -0
  39. package/src/language/locale/it.json +18 -0
  40. package/src/language/locale/jp.json +18 -0
  41. package/src/language/locale/ko.json +18 -0
  42. package/src/language/locale/nl.json +18 -0
  43. package/src/language/locale/nn.json +18 -0
  44. package/src/language/locale/no.json +18 -0
  45. package/src/language/locale/pl.json +18 -0
  46. package/src/language/locale/pt.json +18 -0
  47. package/src/language/locale/ru.json +18 -0
  48. package/src/language/locale/sk.json +18 -0
  49. package/src/language/locale/sr.json +17 -0
  50. package/src/language/locale/sv.json +18 -0
  51. package/src/language/locale/tr.json +18 -0
  52. package/src/language/locale/uk.json +18 -0
  53. package/src/language/locale/ur.json +18 -0
  54. package/src/language/locale/zh-cn.json +18 -0
  55. package/src/language/locale/zh-tw.json +18 -0
  56. package/src/main.ts +51 -0
  57. package/src/map/Map.ts +717 -0
  58. package/src/map/MapMarker.ts +149 -0
  59. package/src/map/openlayers/Map.OpenLayers.ts +1879 -0
  60. package/src/map/openlayers/MapMarker.OpenLayers.ts +176 -0
  61. package/src/map/openlayers/zoomifyTiles.ts +28 -0
  62. package/src/map/types.ts +17 -0
  63. package/src/media/EmbedUtil.ts +168 -0
  64. package/src/media/Media.ts +409 -0
  65. package/src/media/MediaType.ts +163 -0
  66. package/src/media/types/Audio.ts +87 -0
  67. package/src/media/types/Blockquote.ts +40 -0
  68. package/src/media/types/DailyMotion.ts +58 -0
  69. package/src/media/types/DocumentCloud.ts +41 -0
  70. package/src/media/types/Facebook.ts +41 -0
  71. package/src/media/types/Flickr.ts +115 -0
  72. package/src/media/types/GoogleDoc.ts +59 -0
  73. package/src/media/types/IFrame.ts +51 -0
  74. package/src/media/types/Image.ts +49 -0
  75. package/src/media/types/Juxtapose.ts +32 -0
  76. package/src/media/types/SoundCloud.ts +77 -0
  77. package/src/media/types/Text.ts +172 -0
  78. package/src/media/types/Twitter.ts +96 -0
  79. package/src/media/types/Video.ts +84 -0
  80. package/src/media/types/Vimeo.ts +65 -0
  81. package/src/media/types/Website.ts +36 -0
  82. package/src/media/types/Wikipedia.ts +124 -0
  83. package/src/media/types/YouTube.ts +192 -0
  84. package/src/scss/Typography.scss +237 -0
  85. package/src/scss/VCO.StoryMap.Dark.scss +138 -0
  86. package/src/scss/VCO.StoryMap.scss +164 -0
  87. package/src/scss/Variables.Dark.scss +56 -0
  88. package/src/scss/Variables.scss +47 -0
  89. package/src/scss/core/Mixins.scss +112 -0
  90. package/src/scss/core/Reset.scss +206 -0
  91. package/src/scss/fonts/_font.base.scss +113 -0
  92. package/src/scss/fonts/font.abril-droidsans.scss +75 -0
  93. package/src/scss/fonts/font.amatic-andika.scss +73 -0
  94. package/src/scss/fonts/font.bitter-raleway.scss +86 -0
  95. package/src/scss/fonts/font.clicker-garamond.scss +92 -0
  96. package/src/scss/fonts/font.dancing-ledger.scss +74 -0
  97. package/src/scss/fonts/font.default.scss +9 -0
  98. package/src/scss/fonts/font.fjalla-average.scss +80 -0
  99. package/src/scss/fonts/font.georgia-helvetica.scss +58 -0
  100. package/src/scss/fonts/font.knightlab.scss +97 -0
  101. package/src/scss/fonts/font.lustria-lato.scss +80 -0
  102. package/src/scss/fonts/font.medula-lato.scss +73 -0
  103. package/src/scss/fonts/font.oldstandard.scss +88 -0
  104. package/src/scss/fonts/font.opensans-gentiumbook.scss +80 -0
  105. package/src/scss/fonts/font.playfair-faunaone.scss +86 -0
  106. package/src/scss/fonts/font.playfair.scss +85 -0
  107. package/src/scss/fonts/font.pt.scss +90 -0
  108. package/src/scss/fonts/font.roboto-megrim.scss +73 -0
  109. package/src/scss/fonts/font.rufina-sintony.scss +73 -0
  110. package/src/scss/fonts/font.ubuntu.scss +78 -0
  111. package/src/scss/fonts/font.unicaone-vollkorn.scss +85 -0
  112. package/src/scss/icons/Icons.scss +239 -0
  113. package/src/scss/map/VCO.ImageMarker.scss +23 -0
  114. package/src/scss/map/VCO.Map.scss +21 -0
  115. package/src/scss/map/VCO.MapMarker.scss +147 -0
  116. package/src/scss/map/openlayers/VCO.Map.OpenLayers.scss +126 -0
  117. package/src/scss/media/VCO.Media.scss +222 -0
  118. package/src/scss/media/types/VCO.Media.Blockquote.scss +76 -0
  119. package/src/scss/media/types/VCO.Media.IFrame.scss +11 -0
  120. package/src/scss/media/types/VCO.Media.Image.scss +13 -0
  121. package/src/scss/media/types/VCO.Media.Instagram.scss +7 -0
  122. package/src/scss/media/types/VCO.Media.Profile.scss +5 -0
  123. package/src/scss/media/types/VCO.Media.Text.scss +90 -0
  124. package/src/scss/media/types/VCO.Media.Twitter.scss +87 -0
  125. package/src/scss/media/types/VCO.Media.Wikipedia.scss +64 -0
  126. package/src/scss/site/site.scss +748 -0
  127. package/src/scss/slider/VCO.Slide.scss +447 -0
  128. package/src/scss/slider/VCO.SlideNav.scss +338 -0
  129. package/src/scss/slider/VCO.StorySlider.scss +64 -0
  130. package/src/scss/snapmap/VCO.SnapMap.scss +103 -0
  131. package/src/scss/ui/VCO.Consent.scss +77 -0
  132. package/src/scss/ui/VCO.MenuBar.Button.scss +99 -0
  133. package/src/scss/ui/VCO.MenuBar.scss +20 -0
  134. package/src/scss/ui/VCO.Message.scss +104 -0
  135. package/src/site/site.ts +87 -0
  136. package/src/slider/Slide.ts +460 -0
  137. package/src/slider/SlideNav.ts +212 -0
  138. package/src/slider/StorySlider.ts +722 -0
  139. package/src/storymap/Consent.ts +146 -0
  140. package/src/storymap/StoryMap.ts +1108 -0
  141. package/src/storymap/iiif.ts +386 -0
  142. package/src/storymap/validate.ts +184 -0
  143. package/src/types.ts +297 -0
  144. package/src/ui/Draggable.ts +374 -0
  145. package/src/ui/MenuBar.ts +323 -0
  146. package/src/ui/Message.ts +118 -0
  147. package/src/ui/Swipable.ts +388 -0
  148. package/dist/assets/main-DwbXrrYn.js +0 -17
@@ -0,0 +1,338 @@
1
+ @use "sass:color";
2
+ @use "../Variables" as *;
3
+ @use "../core/Mixins" as *;
4
+
5
+ /* SlideNav
6
+ ================================================== */
7
+
8
+ /* NAVIGATION
9
+ ================================================== */
10
+ .vco-slidenav-previous,
11
+ .vco-slidenav-next {
12
+ position: absolute;
13
+ top: 45%;
14
+ z-index: 10;
15
+ cursor: pointer;
16
+
17
+ .vco-slidenav-content-container {
18
+ height: 200px;
19
+ width: 00;
20
+ position: absolute;
21
+ }
22
+
23
+ .vco-slidenav-title,
24
+ .vco-slidenav-description {
25
+ width: 100%;
26
+
27
+ // word-break:break-all;
28
+
29
+ word-break: break-all;
30
+ overflow-wrap: anywhere;
31
+ hyphens: auto;
32
+
33
+ @include opacity(15);
34
+ }
35
+
36
+ .vco-slidenav-title {
37
+ margin-top: 10px;
38
+ font-size: $base-font-size-small;
39
+ line-height: $base-font-size-small;
40
+
41
+ // font-weight: bold;
42
+ }
43
+ }
44
+
45
+ .vco-slidenav-next,
46
+ .vco-slidenav-previous {
47
+ .vco-slidenav-icon {
48
+ // 44px minimum touch target (issues #288, #434); the negative
49
+ // margins keep the glyph exactly where it was
50
+ padding: 10px;
51
+ min-width: 24px;
52
+ margin: -10px -10px -5px;
53
+ }
54
+ }
55
+
56
+ /* ICONS AND NAVIGATION HOVER AND COLOR
57
+ ================================================== */
58
+ .vco-slidenav-next,
59
+ .vco-slidenav-previous {
60
+ .vco-slidenav-content-container {
61
+ .vco-slidenav-icon,
62
+ .vco-slidenav-title,
63
+ .vco-slidenav-description {
64
+ text-shadow: 1px 1px 1px $color-background;
65
+
66
+ // color: $color-foreground;
67
+ color: $color-background;
68
+ }
69
+
70
+ &.vco-slidenav-inverted {
71
+ .vco-slidenav-icon,
72
+ .vco-slidenav-title,
73
+ .vco-slidenav-description {
74
+ // color:$color-background;
75
+ color: $color-foreground;
76
+ text-shadow: 1px 1px 1px $color-foreground;
77
+ }
78
+ }
79
+ }
80
+
81
+ .vco-slidenav-icon {
82
+ font-family: vco-icons, sans-serif;
83
+ speak: none;
84
+ font-style: normal;
85
+ font-weight: normal;
86
+ font-variant: normal;
87
+ text-transform: none;
88
+ line-height: 1;
89
+ font-size: 32px;
90
+ margin-bottom: 5px;
91
+ }
92
+
93
+ &:hover {
94
+ .vco-slidenav-title,
95
+ .vco-slidenav-description {
96
+ @include opacity(100);
97
+ }
98
+ }
99
+ }
100
+
101
+ .vco-slidenav-next {
102
+ text-align: right;
103
+ margin-right: 10px;
104
+ right: 100px;
105
+
106
+ .vco-slidenav-icon {
107
+ margin-left: 100 - 24px;
108
+
109
+ &::before {
110
+ content: "\e64f";
111
+ }
112
+ }
113
+
114
+ &:hover {
115
+ .vco-slidenav-icon {
116
+ margin-left: 100 - 20px;
117
+ }
118
+ }
119
+ }
120
+
121
+ .vco-slidenav-previous {
122
+ text-align: left;
123
+
124
+ .vco-slidenav-icon {
125
+ margin-left: 0;
126
+
127
+ &::before {
128
+ content: "\e650";
129
+ }
130
+ }
131
+
132
+ &:hover {
133
+ .vco-slidenav-icon {
134
+ margin-left: -4px;
135
+ }
136
+ }
137
+ }
138
+
139
+ /* Skinny
140
+ ================================================== */
141
+ .vco-skinny {
142
+ .vco-slidenav-next {
143
+ right: 32px;
144
+
145
+ .vco-slidenav-icon {
146
+ margin-left: 32 - 24px;
147
+ }
148
+
149
+ &:hover {
150
+ .vco-slidenav-icon {
151
+ margin-left: 32 - 20px;
152
+
153
+ @include opacity(100);
154
+ }
155
+ }
156
+ }
157
+
158
+ .vco-slidenav-previous {
159
+ &:hover {
160
+ .vco-slidenav-icon {
161
+ margin-left: -4px;
162
+
163
+ @include opacity(100);
164
+ }
165
+ }
166
+ }
167
+
168
+ .vco-slidenav-previous,
169
+ .vco-slidenav-next {
170
+ .vco-slidenav-content-container {
171
+ width: 32px;
172
+ height: 32px;
173
+
174
+ .vco-slidenav-icon,
175
+ .vco-slidenav-title,
176
+ .vco-slidenav-description {
177
+ // color:$color-background;
178
+ }
179
+
180
+ &.vco-slidenav-inverted {
181
+ .vco-slidenav-icon,
182
+ .vco-slidenav-title,
183
+ .vco-slidenav-description {
184
+ color: $color-background;
185
+
186
+ // color: $color-foreground;
187
+ }
188
+ }
189
+ }
190
+
191
+ .vco-slidenav-title,
192
+ .vco-slidenav-description {
193
+ display: none;
194
+ }
195
+
196
+ .vco-slidenav-icon {
197
+ @include opacity(33);
198
+ }
199
+ }
200
+ }
201
+
202
+ /* Mobile and Landscape
203
+ ================================================== */
204
+ .vco-layout-landscape.vco-mobile {
205
+ .vco-slidenav-next {
206
+ &:hover {
207
+ right: 70px;
208
+
209
+ .vco-slidenav-icon {
210
+ margin-left: 32 - 24px;
211
+
212
+ @include opacity(100);
213
+ }
214
+ }
215
+
216
+ &:active {
217
+ .vco-slidenav-icon {
218
+ margin-left: 0;
219
+
220
+ @include opacity(100);
221
+ }
222
+ }
223
+ }
224
+
225
+ .vco-slidenav-previous {
226
+ &:hover {
227
+ .vco-slidenav-icon {
228
+ // margin-left: 0px;
229
+ margin-left: 100 - 20px;
230
+
231
+ @include opacity(100);
232
+ }
233
+ }
234
+
235
+ &:active {
236
+ .vco-slidenav-icon {
237
+ @include opacity(100);
238
+ }
239
+ }
240
+ }
241
+ }
242
+
243
+ /* Mobile and Portrait
244
+ ================================================== */
245
+ .vco-layout-portrait.vco-mobile {
246
+ .vco-slidenav-next,
247
+ .vco-slidenav-previous {
248
+ &:hover {
249
+ .vco-slidenav-icon {
250
+ @include opacity(33);
251
+ }
252
+ }
253
+
254
+ &:active {
255
+ .vco-slidenav-icon {
256
+ @include opacity(100);
257
+ }
258
+ }
259
+ }
260
+ }
261
+
262
+ /* Mobile
263
+ ================================================== */
264
+ .vco-mobile,
265
+ .vco-skinny.vco-mobile,
266
+ .vco-skinny.vco-layout-landscape.vco-mobile,
267
+ .vco-skinny.vco-layout-portrait.vco-mobile {
268
+ .vco-slidenav-previous,
269
+ .vco-slidenav-next {
270
+ display: none;
271
+ }
272
+ }
273
+
274
+ /* Landscape
275
+ ================================================== */
276
+ .vco-layout-landscape {
277
+ .vco-storyslider {
278
+ .vco-slidenav-next,
279
+ .vco-slidenav-previous {
280
+ .vco-slidenav-icon {
281
+ &::before {
282
+ // background-color:$color-background;
283
+ background-color: $color-foreground;
284
+
285
+ // .translucent-background($color-background, .85);
286
+ // .box-shadow(1px 1px 7px rgba(0,0,0,.30));
287
+ padding: 20px;
288
+ border: 1px solid color.adjust($color-background, $lightness: -30%);
289
+ }
290
+ }
291
+
292
+ .vco-slidenav-icon,
293
+ .vco-slidenav-title,
294
+ .vco-slidenav-description {
295
+ text-shadow: none;
296
+ }
297
+
298
+ .vco-slidenav-title,
299
+ .vco-slidenav-description {
300
+ display: none;
301
+ }
302
+ }
303
+
304
+ .vco-slidenav-previous {
305
+ left: -100%;
306
+ margin-left: 0;
307
+
308
+ // z-index:26;
309
+ .vco-slidenav-icon {
310
+ &::before {
311
+ @include border-right-radius(7px);
312
+
313
+ // the tap-target padding (10px) pushes the black box
314
+ // right — pull it flush against the left edge like the
315
+ // original design (square left corners)
316
+ margin-left: -10px;
317
+ }
318
+ }
319
+
320
+ &:hover {
321
+ .vco-slidenav-icon {
322
+ margin-left: -4px;
323
+ }
324
+ }
325
+ }
326
+
327
+ .vco-slidenav-next {
328
+ // margin-left:0px;
329
+ right: 130px;
330
+
331
+ .vco-slidenav-icon {
332
+ &::before {
333
+ @include border-left-radius(7px);
334
+ }
335
+ }
336
+ }
337
+ }
338
+ }
@@ -0,0 +1,64 @@
1
+ @use "../core/Mixins" as *;
2
+
3
+ /* StorySlider
4
+ ================================================== */
5
+
6
+ /* SLIDER CONTAINERS
7
+ ================================================== */
8
+ .vco-storyslider {
9
+ width: 100%;
10
+ height: 100%;
11
+ overflow: hidden;
12
+
13
+ @include user-select(none);
14
+
15
+ position: relative;
16
+
17
+ img,
18
+ embed,
19
+ object,
20
+ video,
21
+ iframe {
22
+ max-width: 100%;
23
+ position: relative;
24
+ }
25
+
26
+ .vco-slider-background {
27
+ position: absolute;
28
+ top: 0;
29
+ left: 0;
30
+ width: 100%;
31
+ height: 100%;
32
+ z-index: 1;
33
+ pointer-events: none;
34
+ }
35
+
36
+ .vco-slider-touch-mask {
37
+ z-index: 25;
38
+ top: 0;
39
+ left: 0;
40
+ }
41
+
42
+ .vco-slider-container-mask {
43
+ text-align: center;
44
+
45
+ // overflow: scroll;
46
+ z-index: 5;
47
+
48
+ .vco-slider-container {
49
+ position: absolute;
50
+ top: 0;
51
+ left: 0;
52
+ width: 100%;
53
+ height: 100%;
54
+ text-align: center;
55
+
56
+ .vco-slider-item-container {
57
+ width: 100%;
58
+ height: 100%;
59
+ display: table-cell;
60
+ vertical-align: middle;
61
+ }
62
+ }
63
+ }
64
+ }
@@ -0,0 +1,103 @@
1
+ @use "sass:color";
2
+ @use "../Variables" as *;
3
+
4
+ .vco-storymap {
5
+ h2.vco-headline-title {
6
+ .vco-snapmap-instagram,
7
+ .vco-snapmap-flickr {
8
+ text-align: center;
9
+ display: block;
10
+ text-transform: none !important;
11
+
12
+ a {
13
+ color: color.adjust($color-dark, $lightness: 40%);
14
+ }
15
+ }
16
+ }
17
+
18
+ .vco-media-instagram-likes {
19
+ display: inline-block;
20
+ font-family: $font-main;
21
+ font-weight: bold;
22
+ margin-top: 10px;
23
+ font-size: 12px;
24
+ color: color.adjust($color-dark, $lightness: 40%);
25
+
26
+ /*
27
+ &:before {
28
+ content:'\2665';
29
+ margin-right:3px;
30
+ font-weight:normal;
31
+ font-size:14px;
32
+ }
33
+ */
34
+ &::after {
35
+ content: "Likes";
36
+ margin-left: 3px;
37
+ color: #999;
38
+ margin-right: 10px;
39
+ }
40
+ }
41
+
42
+ .vco-snapmap-user-description,
43
+ .vco-snapmap-user-location {
44
+ // font-size:12px;
45
+ // width:50%;
46
+ display: block;
47
+ }
48
+
49
+ .vco-snapmap-instagram-text {
50
+ text-align: center;
51
+ display: none;
52
+
53
+ a {
54
+ color: #000;
55
+ }
56
+
57
+ .vco-snapmap-instagram-posts,
58
+ .vco-snapmap-instagram-followed-by,
59
+ .vco-snapmap-instagram-follows,
60
+ .vco-snapmap-instagram-website,
61
+ .vco-snapmap-instagram-website a {
62
+ display: inline-block;
63
+ font-family: $font-main;
64
+ font-weight: bold;
65
+ margin-top: 10px;
66
+ font-size: 12px;
67
+ margin-left: 20px;
68
+
69
+ &::after {
70
+ margin-left: 3px;
71
+ color: #999;
72
+ font-weight: normal;
73
+ }
74
+ }
75
+
76
+ .vco-snapmap-instagram-posts::after {
77
+ content: "Posts";
78
+ }
79
+
80
+ .vco-snapmap-instagram-followed-by::after {
81
+ content: "Followers";
82
+ }
83
+
84
+ .vco-snapmap-instagram-follows::after {
85
+ content: "Following";
86
+ }
87
+
88
+ .vco-snapmap-instagram-website,
89
+ .vco-snapmap-instagram-website a {
90
+ margin: 0;
91
+
92
+ &::after {
93
+ margin-left: 0;
94
+ }
95
+ }
96
+ }
97
+
98
+ .vco-snapmap-flickr-views {
99
+ &::after {
100
+ content: "Views";
101
+ }
102
+ }
103
+ }
@@ -0,0 +1,77 @@
1
+ @use "../Variables" as *;
2
+
3
+ /* GDPR consent ask (consent_required option)
4
+ ================================================== */
5
+
6
+ .vco-consent {
7
+ position: absolute;
8
+ inset: 0;
9
+ z-index: 60;
10
+ display: flex;
11
+ flex-direction: column;
12
+ align-items: center;
13
+ justify-content: center;
14
+ gap: 8px;
15
+ padding: 20px;
16
+ background-color: rgb(255 255 255 / 94%);
17
+ font-family: $font-sanserif;
18
+ text-align: center;
19
+
20
+ .vco-consent-title {
21
+ margin: 0;
22
+ font-weight: bold;
23
+ color: $color-foreground;
24
+ }
25
+
26
+ .vco-consent-message {
27
+ margin: 0;
28
+ color: $color-dark;
29
+ }
30
+
31
+ .vco-consent-buttons {
32
+ display: flex;
33
+ gap: 10px;
34
+ margin-top: 6px;
35
+
36
+ button {
37
+ padding: 8px 18px;
38
+ border: 1px solid $color-dark;
39
+ border-radius: 4px;
40
+ background-color: transparent;
41
+ color: $color-dark;
42
+ font-family: $font-sanserif;
43
+ cursor: pointer;
44
+
45
+ &:hover {
46
+ background-color: $color-dark;
47
+ color: $color-background;
48
+ }
49
+
50
+ &.vco-consent-allow {
51
+ background-color: $color-theme;
52
+ border-color: $color-theme;
53
+ color: $color-background;
54
+
55
+ &:hover {
56
+ background-color: $color-theme-dark;
57
+ border-color: $color-theme-dark;
58
+ }
59
+ }
60
+ }
61
+ }
62
+ }
63
+
64
+ .vco-consent-blocked {
65
+ display: flex;
66
+ align-items: center;
67
+ justify-content: center;
68
+ width: 100%;
69
+ height: 100%;
70
+ min-height: 120px;
71
+ padding: 20px;
72
+ background-color: $color-background;
73
+ color: $color-dark;
74
+ font-family: $font-sanserif;
75
+ font-size: $base-font-size;
76
+ text-align: center;
77
+ }
@@ -0,0 +1,99 @@
1
+ @use "sass:color";
2
+ @use "../Variables" as *;
3
+
4
+ /* MenuBar Button
5
+ ================================================== */
6
+
7
+ .vco-menubar-button {
8
+ border-left: 1px solid color.adjust($color-background, $lightness: -10%);
9
+ font-size: 14px;
10
+ padding: 6px 12px;
11
+
12
+ // position:relative;
13
+ // top:-24px;
14
+ background-color: fadeout($ui-background-color, 10%);
15
+ background-color: $color-background;
16
+ cursor: pointer;
17
+ font-weight: bold;
18
+ color: $color-text;
19
+
20
+ .vco-icon-arrow-up,
21
+ .vco-icon-arrow-down {
22
+ display: inline-block;
23
+ height: 14px;
24
+ overflow: hidden;
25
+ font-size: 20px;
26
+ position: relative;
27
+ top: -2px;
28
+ }
29
+
30
+ &:hover {
31
+ background: $color-theme;
32
+ color: $color-background;
33
+ }
34
+ }
35
+
36
+ .vco-mobile {
37
+ .vco-menubar-button {
38
+ &:hover {
39
+ background-color: fadeout($ui-background-color, 33%);
40
+ color: $color-text;
41
+ }
42
+
43
+ &:active {
44
+ background: $color-theme;
45
+ color: $color-background;
46
+ }
47
+ }
48
+ }
49
+
50
+ @keyframes invert-to-black {
51
+ from {
52
+ background-color: #fff;
53
+ }
54
+
55
+ to {
56
+ background-color: #000;
57
+ }
58
+ }
59
+
60
+ @keyframes invert-to-white {
61
+ from {
62
+ background-color: #000;
63
+ }
64
+
65
+ to {
66
+ background-color: #fff;
67
+ }
68
+ }
69
+
70
+ /* Progress indicator (issue #247)
71
+ ================================================== */
72
+ .vco-menubar-progress {
73
+ display: inline-block;
74
+ width: 80px;
75
+ height: 6px;
76
+ margin: 0 12px;
77
+ vertical-align: middle;
78
+ background-color: color.adjust($color-background, $lightness: -10%);
79
+ border-radius: 3px;
80
+ overflow: hidden;
81
+
82
+ .vco-menubar-progress-fill {
83
+ display: block;
84
+ height: 100%;
85
+ width: 0;
86
+ background-color: $color-theme;
87
+ border-radius: 3px;
88
+ }
89
+ }
90
+
91
+ /* Route distance display (issue #341)
92
+ ================================================== */
93
+ .vco-menubar-distance {
94
+ display: inline-block;
95
+ margin: 0 12px;
96
+ vertical-align: middle;
97
+ font-size: $base-font-size-small;
98
+ color: $color-dark;
99
+ }
@@ -0,0 +1,20 @@
1
+ @use "sass:color";
2
+ @use "../Variables" as *;
3
+
4
+ /* MenuBar
5
+ ================================================== */
6
+
7
+ .vco-menubar {
8
+ position: absolute;
9
+ z-index: 11;
10
+ text-align: left;
11
+ overflow: hidden;
12
+ border-bottom: 1px solid color.adjust($color-background, $lightness: -10%);
13
+ border-right: 1px solid color.adjust($color-background, $lightness: -10%);
14
+ border-bottom-right-radius: 7px;
15
+ left: 0;
16
+
17
+ .vco-menubar-button:first-child {
18
+ border-left: 0;
19
+ }
20
+ }