@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,73 @@
1
+ @use "pkg:@fontsource-utils/scss" as fontsource;
2
+ @use "pkg:@fontsource/rufina/scss" as rufina;
3
+ @use "../Variables" as *;
4
+ @use "font.base" as base;
5
+ @include fontsource.faces(
6
+ $metadata: rufina.$metadata,
7
+ $weights: all,
8
+ $styles: all,
9
+ $subsets: (
10
+ latin,
11
+ latin-ext,
12
+ ),
13
+ $formats: woff2
14
+ );
15
+
16
+ /* Font Rufina & Sintony
17
+
18
+ https: //fonts.google.com/specimen/Rufina
19
+ https: //fonts.google.com/specimen/Sintony
20
+ ----------------------------------------------------- */
21
+
22
+ // Font Import
23
+
24
+ // Font Variables
25
+ $font-main: "Sintony", sans-serif;
26
+ $font-secondary: "Rufina", serif;
27
+ $font-navigation: $font-main;
28
+ $font-marker: $font-main;
29
+ $font-headline-date: $font-navigation;
30
+ $base-font-size: 15px;
31
+ $base-font-weight: 400;
32
+
33
+ // Blockquote
34
+ $font-blockquote: $font-main;
35
+ $font-blockquote-weight: 400;
36
+ $font-blockquote-style: normal;
37
+
38
+ // Headings
39
+ $font-size-headings: 46px;
40
+ $font-headings-lineheight: $font-size-headings;
41
+ $font-headings-text-transform: none;
42
+ $font-size-headings-small: 24px;
43
+ $font-headings-weight: 700;
44
+ $font-size-headline-title: 58px;
45
+
46
+ // Marker
47
+ $font-marker-text-transform: $font-headings-text-transform;
48
+
49
+ // Navigation
50
+ $font-navigation-text-transform: none;
51
+
52
+ @include base.font-base(
53
+ (
54
+ font-main: $font-main,
55
+ font-secondary: $font-secondary,
56
+ font-navigation: $font-navigation,
57
+ font-marker: $font-marker,
58
+ font-headline-date: $font-headline-date,
59
+ base-font-size: $base-font-size,
60
+ base-font-weight: $base-font-weight,
61
+ font-blockquote: $font-blockquote,
62
+ font-blockquote-weight: $font-blockquote-weight,
63
+ font-blockquote-style: $font-blockquote-style,
64
+ font-size-headings: $font-size-headings,
65
+ font-headings-lineheight: $font-headings-lineheight,
66
+ font-headings-text-transform: $font-headings-text-transform,
67
+ font-headings-weight: $font-headings-weight,
68
+ font-size-headings-small: $font-size-headings-small,
69
+ font-size-headline-title: $font-size-headline-title,
70
+ font-navigation-text-transform: $font-navigation-text-transform,
71
+ font-marker-text-transform: $font-marker-text-transform,
72
+ )
73
+ );
@@ -0,0 +1,78 @@
1
+ @use "pkg:@fontsource-utils/scss" as fontsource;
2
+ @use "pkg:@fontsource/ubuntu/scss" as ubuntu;
3
+ @use "../Variables" as *;
4
+ @use "font.base" as base;
5
+ @include fontsource.faces(
6
+ $metadata: ubuntu.$metadata,
7
+ $weights: all,
8
+ $styles: all,
9
+ $subsets: (
10
+ latin,
11
+ latin-ext,
12
+ ),
13
+ $formats: woff2
14
+ );
15
+
16
+ /* Font Ubuntu
17
+ https://fonts.google.com/specimen/Ubuntu
18
+ ----------------------------------------------------- */
19
+
20
+ // Font Import
21
+
22
+ // Font Variables
23
+ $font-main: "Ubuntu", "Helvetica Neue", helvetica, arial, "MS Trebuchet", sans-serif;
24
+ $font-secondary: "Ubuntu", "Helvetica Neue", helvetica, arial, "MS Trebuchet", sans-serif;
25
+ $font-navigation: $font-secondary;
26
+ $font-marker: $font-secondary;
27
+ $font-headline-date: $font-navigation;
28
+ $base-font-size: 17px;
29
+ $base-font-weight: 300;
30
+
31
+ // Blockquote
32
+ $font-blockquote: $font-main;
33
+ $font-blockquote-weight: 300;
34
+ $font-blockquote-style: italic;
35
+
36
+ // Headings
37
+ $font-size-headings: 40px;
38
+ $font-headings-lineheight: $font-size-headings;
39
+ $font-headings-text-transform: none;
40
+ $font-size-headings-small: 24px;
41
+ $font-headings-weight: 500;
42
+ $font-size-headline-title: 58px;
43
+
44
+ // Marker
45
+ $font-marker-text-transform: $font-headings-text-transform;
46
+
47
+ // Navigation
48
+ $font-navigation-text-transform: none;
49
+
50
+ @include base.font-base(
51
+ (
52
+ font-main: $font-main,
53
+ font-secondary: $font-secondary,
54
+ font-navigation: $font-navigation,
55
+ font-marker: $font-marker,
56
+ font-headline-date: $font-headline-date,
57
+ base-font-size: $base-font-size,
58
+ base-font-weight: $base-font-weight,
59
+ font-blockquote: $font-blockquote,
60
+ font-blockquote-weight: $font-blockquote-weight,
61
+ font-blockquote-style: $font-blockquote-style,
62
+ font-size-headings: $font-size-headings,
63
+ font-headings-lineheight: $font-headings-lineheight,
64
+ font-headings-text-transform: $font-headings-text-transform,
65
+ font-headings-weight: $font-headings-weight,
66
+ font-size-headings-small: $font-size-headings-small,
67
+ font-size-headline-title: $font-size-headline-title,
68
+ font-navigation-text-transform: $font-navigation-text-transform,
69
+ font-marker-text-transform: $font-marker-text-transform,
70
+ )
71
+ );
72
+
73
+ .vco-timeline {
74
+ .vco-headline-date,
75
+ h3.vco-headline-date {
76
+ margin-bottom: 5px !important;
77
+ }
78
+ }
@@ -0,0 +1,85 @@
1
+ @use "pkg:@fontsource-utils/scss" as fontsource;
2
+ @use "pkg:@fontsource/unica-one/scss" as unica_one;
3
+ @use "pkg:@fontsource-variable/vollkorn/scss" as vollkorn;
4
+ @use "../Variables" as *;
5
+ @use "font.base" as base;
6
+ @include fontsource.faces(
7
+ $metadata: unica_one.$metadata,
8
+ $weights: all,
9
+ $styles: all,
10
+ $subsets: (
11
+ latin,
12
+ latin-ext,
13
+ ),
14
+ $formats: woff2
15
+ );
16
+ @include fontsource.faces(
17
+ $metadata: vollkorn.$metadata,
18
+ $family: "Vollkorn",
19
+ $weights: all,
20
+ $styles: all,
21
+ $subsets: (
22
+ latin,
23
+ latin-ext,
24
+ ),
25
+ $formats: woff2
26
+ );
27
+
28
+ /* Font Unica One & Vollkorn
29
+
30
+ https://fonts.google.com/specimen/Vollkorn
31
+ https://fonts.google.com/specimen/Unica+One
32
+ ----------------------------------------------------- */
33
+
34
+ // Font Import
35
+
36
+ // Font Variables
37
+ $font-main: "Vollkorn", georgia, serif;
38
+ $font-secondary: "Unica One", "Helvetica Neue", helvetica, arial, "MS Trebuchet", sans-serif;
39
+ $font-navigation: $font-secondary;
40
+ $font-marker: $font-secondary;
41
+ $font-headline-date: $font-navigation;
42
+ $base-font-size: 17px;
43
+ $base-font-weight: 400;
44
+
45
+ // Blockquote
46
+ $font-blockquote: $font-secondary;
47
+ $font-blockquote-weight: 400;
48
+ $font-blockquote-style: italic;
49
+
50
+ // Headings
51
+ $font-size-headings: 46px;
52
+ $font-headings-lineheight: $font-size-headings;
53
+ $font-headings-text-transform: uppercase;
54
+ $font-size-headings-small: 24px;
55
+ $font-headings-weight: 400;
56
+ $font-size-headline-title: 58px;
57
+
58
+ // Marker
59
+ $font-marker-text-transform: $font-headings-text-transform;
60
+
61
+ // Navigation
62
+ $font-navigation-text-transform: uppercase;
63
+
64
+ @include base.font-base(
65
+ (
66
+ font-main: $font-main,
67
+ font-secondary: $font-secondary,
68
+ font-navigation: $font-navigation,
69
+ font-marker: $font-marker,
70
+ font-headline-date: $font-headline-date,
71
+ base-font-size: $base-font-size,
72
+ base-font-weight: $base-font-weight,
73
+ font-blockquote: $font-blockquote,
74
+ font-blockquote-weight: $font-blockquote-weight,
75
+ font-blockquote-style: $font-blockquote-style,
76
+ font-size-headings: $font-size-headings,
77
+ font-headings-lineheight: $font-headings-lineheight,
78
+ font-headings-text-transform: $font-headings-text-transform,
79
+ font-headings-weight: $font-headings-weight,
80
+ font-size-headings-small: $font-size-headings-small,
81
+ font-size-headline-title: $font-size-headline-title,
82
+ font-navigation-text-transform: $font-navigation-text-transform,
83
+ font-marker-text-transform: $font-marker-text-transform,
84
+ )
85
+ );
@@ -0,0 +1,239 @@
1
+ /* Icons
2
+ ================================================== */
3
+
4
+ /* Icon font binaries live in public/css/icons/ (copied to dist/css/icons/ at
5
+ build time). The source uses the absolute public path so `vite dev` serves
6
+ them directly; buildLibraryCss() in vite.config.ts rewrites these to relative
7
+ ./icons/... for dist/css/storymap.css so subpath, bundler and Electron
8
+ consumers keep resolving them. */
9
+ @font-face {
10
+ font-family: vco-icons;
11
+ src:
12
+ url("/css/icons/vco-icons.woff2") format("woff2"),
13
+ url("/css/icons/vco-icons.woff") format("woff"),
14
+ url("/css/icons/vco-icons.ttf") format("truetype");
15
+ font-weight: normal;
16
+ font-style: normal;
17
+ }
18
+
19
+ [class^="vco-icon-"],
20
+ [class*=" vco-icon-"] {
21
+ /* icon font only: a generic fallback would render glyph codepoints as tofu */
22
+ font-family: vco-icons; /* stylelint-disable-line font-family-no-missing-generic-family-keyword */
23
+ speak: none;
24
+ font-variant: normal;
25
+ text-transform: none;
26
+ line-height: 1;
27
+ }
28
+
29
+ .vco-icon-wikipedia::after {
30
+ content: "\e64e";
31
+ }
32
+
33
+ .vco-icon-chevron-right::after {
34
+ content: "\e64f";
35
+ }
36
+
37
+ .vco-icon-chevron-left::after {
38
+ content: "\e650";
39
+ }
40
+
41
+ .vco-icon-youtube-logo::after {
42
+ content: "\e651";
43
+ }
44
+
45
+ .vco-icon-foursquare::after {
46
+ content: "\e652";
47
+ }
48
+
49
+ .vco-icon-camera-retro::after {
50
+ content: "\e653";
51
+ }
52
+
53
+ .vco-icon-doc::after {
54
+ content: "\e654";
55
+ }
56
+
57
+ .vco-icon-weibo::after {
58
+ content: "\e655";
59
+ }
60
+
61
+ .vco-icon-resize-horizontal::after {
62
+ content: "\e656";
63
+ }
64
+
65
+ .vco-icon-resize-vertical::after {
66
+ content: "\e657";
67
+ }
68
+
69
+ .vco-icon-resize-full::after {
70
+ content: "\e658";
71
+ }
72
+
73
+ .vco-icon-resize-small::after {
74
+ content: "\e659";
75
+ }
76
+
77
+ .vco-icon-twitter::after {
78
+ content: "\e62b";
79
+ }
80
+
81
+ .vco-icon-google-plus::after {
82
+ content: "\e62c";
83
+ }
84
+
85
+ .vco-icon-video::after {
86
+ content: "\e62d";
87
+ }
88
+
89
+ .vco-icon-plaintext::after {
90
+ content: "\e62e";
91
+ }
92
+
93
+ .vco-icon-image-v2::after {
94
+ content: "\e62f";
95
+ }
96
+
97
+ .vco-icon-quote-v2::after {
98
+ content: "\e630";
99
+ }
100
+
101
+ .vco-icon-zoom-in::after {
102
+ content: "\e631";
103
+ }
104
+
105
+ .vco-icon-zoom-out::after {
106
+ content: "\e632";
107
+ }
108
+
109
+ .vco-icon-list::after {
110
+ content: "\e633";
111
+ }
112
+
113
+ .vco-icon-music::after {
114
+ content: "\e634";
115
+ }
116
+
117
+ .vco-icon-location::after {
118
+ content: "\e635";
119
+ }
120
+
121
+ .vco-icon-web::after {
122
+ content: "\e636";
123
+ }
124
+
125
+ .vco-icon-share-v2::after {
126
+ content: "\e637";
127
+ }
128
+
129
+ .vco-icon-soundcloud::after {
130
+ content: "\e639";
131
+ }
132
+
133
+ .vco-icon-video-v2::after {
134
+ content: "\e63a";
135
+ }
136
+
137
+ .vco-icon-youtube::after {
138
+ content: "\e63a";
139
+ }
140
+
141
+ .vco-icon-tumblr::after {
142
+ content: "\e63b";
143
+ }
144
+
145
+ .vco-icon-lastfm::after {
146
+ content: "\e63c";
147
+ }
148
+
149
+ .vco-icon-github::after {
150
+ content: "\e63d";
151
+ }
152
+
153
+ .vco-icon-goback::after {
154
+ content: "\e63e";
155
+ }
156
+
157
+ .vco-icon-doc-v2::after {
158
+ content: "\e63f";
159
+ }
160
+
161
+ .vco-icon-googledrive::after {
162
+ content: "\e640";
163
+ }
164
+
165
+ .vco-icon-facebook::after {
166
+ content: "\e641";
167
+ }
168
+
169
+ .vco-icon-flickr::after {
170
+ content: "\e642";
171
+ }
172
+
173
+ .vco-icon-dribbble::after {
174
+ content: "\e643";
175
+ }
176
+
177
+ .vco-icon-image::after {
178
+ content: "\e605";
179
+ }
180
+
181
+ .vco-icon-vimeo::after {
182
+ content: "\e606";
183
+ }
184
+
185
+ .vco-icon-instagram::after {
186
+ content: "\e644";
187
+ }
188
+
189
+ .vco-icon-pinterest::after {
190
+ content: "\e645";
191
+ }
192
+
193
+ .vco-icon-arrow-left::after {
194
+ content: "\e646";
195
+ }
196
+
197
+ .vco-icon-arrow-down::after {
198
+ content: "\e647";
199
+ }
200
+
201
+ .vco-icon-arrow-up::after {
202
+ content: "\e648";
203
+ }
204
+
205
+ .vco-icon-arrow-right::after {
206
+ content: "\e649";
207
+ }
208
+
209
+ .vco-icon-share::after {
210
+ content: "\e64a";
211
+ }
212
+
213
+ .vco-icon-blockquote::after {
214
+ content: "\e64b";
215
+ }
216
+
217
+ .vco-icon-evernote::after {
218
+ content: "\e64c";
219
+ }
220
+
221
+ .vco-icon-mappin::after {
222
+ content: "\e600";
223
+ }
224
+
225
+ .vco-icon-swipe-right::after {
226
+ content: "\e601";
227
+ }
228
+
229
+ .vco-icon-swipe-left::after {
230
+ content: "\e602";
231
+ }
232
+
233
+ .vco-icon-touch-spread::after {
234
+ content: "\e603";
235
+ }
236
+
237
+ .vco-icon-touch-pinch::after {
238
+ content: "\e604";
239
+ }
@@ -0,0 +1,23 @@
1
+ /* Requires Variables.less
2
+ ================================================== */
3
+ $leaflet-offset: 6px;
4
+ $map-icon-size: 44px; // 52
5
+ $map-icon-width: 32px; // 38
6
+ $map-icon-size: 52px;
7
+ $map-icon-width: 38px;
8
+
9
+ .vco-map {
10
+ .vco-mapimage-display:hover {
11
+ .vco-mapmarker,
12
+ .vco-mapmarker-active {
13
+ display: block;
14
+ }
15
+ }
16
+
17
+ .vco-mapimage-display {
18
+ .vco-mapmarker,
19
+ .vco-mapmarker-active {
20
+ display: none;
21
+ }
22
+ }
23
+ }
@@ -0,0 +1,21 @@
1
+ @use "../Variables" as *;
2
+
3
+ /* Requires Variables.less
4
+ ================================================== */
5
+ .vco-map {
6
+ height: 100%;
7
+ overflow: hidden;
8
+ top: 0;
9
+ background-color: $color-foreground;
10
+
11
+ .vco-map-mask {
12
+ width: 100%;
13
+ height: 100%;
14
+ overflow: hidden;
15
+
16
+ .vco-map-display {
17
+ width: 100%;
18
+ height: 100%;
19
+ }
20
+ }
21
+ }
@@ -0,0 +1,147 @@
1
+ @use "../Variables" as *;
2
+ @use "../core/Mixins" as *;
3
+
4
+ /* Requires Variables.less
5
+ ================================================== */
6
+ $map-icon-size: 44px; // 52
7
+ $map-icon-width: 32px; // 38
8
+ $map-icon-size: 52px;
9
+ $map-icon-width: 38px;
10
+
11
+ .vco-map {
12
+ .vco-mapmarker,
13
+ .vco-mapmarker-active {
14
+ font-family: vco-icons, sans-serif;
15
+ speak: none;
16
+ font-style: normal;
17
+ font-weight: normal;
18
+ font-variant: normal;
19
+ line-height: 1;
20
+ width: $map-icon-width !important;
21
+ height: $map-icon-size !important;
22
+
23
+ // NB: the pin alignment is handled by the overlay positioning
24
+ // (bottom-center + offset, see MapMarker.OpenLayers._addTo) —
25
+ // OL's inline styles would override any CSS top/left here anyway.
26
+ }
27
+
28
+ // Map Pin
29
+ .vco-mapmarker::before,
30
+ .vco-mapmarker-active::before {
31
+ content: "\e600";
32
+ font-size: $map-icon-size;
33
+ text-shadow: rgb(0 0 0 / 66%) 0 2px 5px;
34
+ }
35
+
36
+ .vco-mapmarker,
37
+ .vco-mapmarker-active {
38
+ // enlarged invisible tap target (issue #434); the negative margins
39
+ // keep the pin glyph exactly where it was
40
+ padding: 4px;
41
+ margin: -4px;
42
+ }
43
+
44
+ .vco-mapmarker {
45
+ color: #a5a5a5;
46
+ }
47
+
48
+ .vco-mapmarker-active {
49
+ color: $color-theme;
50
+ }
51
+
52
+ // Custom icon markers render only their image (no vco-mapmarker class,
53
+ // so none of the pin rules above apply): belt and braces against the
54
+ // default pin glyph, and the pointer cursor that pins get elsewhere.
55
+ .vco-mapmarker-custom {
56
+ cursor: pointer;
57
+ }
58
+
59
+ .vco-mapmarker-custom::before {
60
+ content: none;
61
+ }
62
+
63
+ .vco-mapmarker-image-icon,
64
+ .vco-mapmarker-image-icon-active {
65
+ border: 2px solid #a5a5a5;
66
+ box-shadow: 2px 2px 2px #000;
67
+ opacity: 1;
68
+ }
69
+
70
+ .vco-mapmarker-image-icon {
71
+ filter: grayscale(100%);
72
+ }
73
+
74
+ .vco-mapmarker-image-icon-active {
75
+ border: 4px solid $color-theme;
76
+ filter: grayscale(0);
77
+ }
78
+
79
+ /* Place-name label on the active marker (issue #243)
80
+ ================================================== */
81
+ .vco-marker-label {
82
+ position: absolute;
83
+ left: 50%;
84
+ bottom: 100%;
85
+ transform: translateX(-50%);
86
+ margin-bottom: 6px;
87
+ padding: 3px 8px;
88
+ white-space: nowrap;
89
+ font-family: $font-sanserif;
90
+ font-size: 12px;
91
+ font-weight: bold;
92
+ color: $color-text;
93
+ background-color: $color-background;
94
+ border: 1px solid $color-theme;
95
+ border-radius: 4px;
96
+ box-shadow: 2px 2px 2px rgb(0 0 0 / 30%);
97
+ pointer-events: none;
98
+ }
99
+
100
+ /* Marker Media Icons
101
+ ================================================== */
102
+ .vco-mapmarker-icon::after {
103
+ // font-size:20px;
104
+ font-size: 24px;
105
+ color: #fff;
106
+ text-align: center;
107
+ width: $map-icon-width;
108
+ height: 24px;
109
+ overflow: hidden;
110
+
111
+ // content:'';
112
+ display: block;
113
+ position: absolute;
114
+
115
+ // top:4px;
116
+ top: 8px;
117
+ left: 0;
118
+
119
+ @include opacity(75);
120
+ }
121
+
122
+ .vco-mapmarker-active.vco-mapmarker-icon::after {
123
+ @include opacity(100);
124
+ }
125
+
126
+ .vco-mapmarker-icon.vco-icon-youtube::after {
127
+ // content: "\e63a";
128
+ // font-size:22px;
129
+ }
130
+
131
+ .vco-icon-wikipedia::after {
132
+ // font-size:14px;
133
+ font-size: 16px;
134
+
135
+ // top:10px;
136
+ top: 12px;
137
+ }
138
+
139
+ .vco-icon-image::after {
140
+ top: 6px;
141
+ }
142
+
143
+ .vco-icon-vimeo::after,
144
+ .vco-icon-twitter::after {
145
+ // top: 6px;
146
+ }
147
+ }