@projektemacher/storymapjs 0.10.8 → 0.11.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 (195) hide show
  1. package/CHANGELOG +81 -0
  2. package/README.md +129 -12
  3. package/dist/assets/{demo-DBpeF31K.js → demo-bWnOyfUw.js} +1 -1
  4. package/dist/assets/harness-C3JUv5Ii.js +1 -0
  5. package/dist/assets/{harness-multi-CYHgI0a9.js → harness-multi-XZNex3tb.js} +1 -1
  6. package/dist/assets/{harness-support-Do7sIp2j.js → harness-support-CjfZIVeb.js} +1 -1
  7. package/dist/assets/main-DQ32hWBM.js +17 -0
  8. package/dist/context.json +13 -2
  9. package/dist/css/storymap.css +1 -1
  10. package/dist/demo.html +3 -2
  11. package/dist/docs/api/assets/navigation.js +1 -1
  12. package/dist/docs/api/assets/search.js +1 -1
  13. package/dist/docs/api/classes/StoryMap.html +777 -269
  14. package/dist/docs/api/functions/MediaType.html +1 -1
  15. package/dist/docs/api/functions/isPresentation3Collection.html +1 -1
  16. package/dist/docs/api/functions/isPresentation3Manifest.html +1 -1
  17. package/dist/docs/api/functions/isSlideshowCollection.html +51 -0
  18. package/dist/docs/api/functions/loadCSS.html +1 -1
  19. package/dist/docs/api/functions/manifestToStorymapData.html +1 -1
  20. package/dist/docs/api/functions/setLanguage.html +1 -1
  21. package/dist/docs/api/functions/slideshowToStorymapData.html +51 -0
  22. package/dist/docs/api/functions/slideshowVersion.html +48 -0
  23. package/dist/docs/api/functions/storymapToManifest.html +1 -1
  24. package/dist/docs/api/functions/validateStorymap.html +1 -1
  25. package/dist/docs/api/functions/validateStorymapAndReport.html +1 -1
  26. package/dist/docs/api/index.html +115 -12
  27. package/dist/docs/api/interfaces/AnimationHandle.html +2 -2
  28. package/dist/docs/api/interfaces/ImagereadyPayload.html +4 -4
  29. package/dist/docs/api/interfaces/LanguageEntry.html +6 -6
  30. package/dist/docs/api/interfaces/LatLngLiteral.html +4 -4
  31. package/dist/docs/api/interfaces/LoadOptions.html +2 -2
  32. package/dist/docs/api/interfaces/MapEvents.html +116 -0
  33. package/dist/docs/api/interfaces/MapMarkerEvents.html +66 -0
  34. package/dist/docs/api/interfaces/MarkerEventPayload.html +57 -0
  35. package/dist/docs/api/interfaces/MediaEvents.html +78 -0
  36. package/dist/docs/api/interfaces/MenuBarEvents.html +114 -0
  37. package/dist/docs/api/interfaces/MessageEvents.html +72 -0
  38. package/dist/docs/api/interfaces/OlLayer.html +1 -1
  39. package/dist/docs/api/interfaces/OlMap.html +1 -1
  40. package/dist/docs/api/interfaces/OlSource.html +1 -1
  41. package/dist/docs/api/interfaces/OlTileLayer.html +1 -1
  42. package/dist/docs/api/interfaces/OlVectorLayer.html +1 -1
  43. package/dist/docs/api/interfaces/OlView.html +1 -1
  44. package/dist/docs/api/interfaces/SlideBackgroundState.html +66 -0
  45. package/dist/docs/api/interfaces/SlideEvents.html +78 -0
  46. package/dist/docs/api/interfaces/SlideNavEvents.html +72 -0
  47. package/dist/docs/api/interfaces/SlideshowPlayerSettings.html +182 -0
  48. package/dist/docs/api/interfaces/SlideshowToStorymapResult.html +60 -0
  49. package/dist/docs/api/interfaces/SlideshowTranslatorOptions.html +65 -0
  50. package/dist/docs/api/interfaces/SlideshowWarning.html +72 -0
  51. package/dist/docs/api/interfaces/StoryMapEvents.html +146 -0
  52. package/dist/docs/api/interfaces/StoryMapMarker.html +763 -0
  53. package/dist/docs/api/interfaces/StorySliderEvents.html +102 -0
  54. package/dist/docs/api/interfaces/StorymapBasemap.html +69 -0
  55. package/dist/docs/api/interfaces/StorymapData.html +12 -6
  56. package/dist/docs/api/interfaces/StorymapDataWrapper.html +2 -2
  57. package/dist/docs/api/interfaces/StorymapDocument.html +2 -2
  58. package/dist/docs/api/interfaces/StorymapError.html +3 -3
  59. package/dist/docs/api/interfaces/StorymapGeoreference.html +5 -5
  60. package/dist/docs/api/interfaces/StorymapGeoreferenceBody.html +4 -4
  61. package/dist/docs/api/interfaces/StorymapGroundControlPoint.html +4 -4
  62. package/dist/docs/api/interfaces/StorymapLanguageMap.html +2 -2
  63. package/dist/docs/api/interfaces/StorymapManifest.html +12 -12
  64. package/dist/docs/api/interfaces/StorymapManifestAnnotation.html +43 -11
  65. package/dist/docs/api/interfaces/StorymapManifestBackground.html +6 -6
  66. package/dist/docs/api/interfaces/StorymapManifestCanvas.html +65 -17
  67. package/dist/docs/api/interfaces/StorymapManifestContentResource.html +8 -8
  68. package/dist/docs/api/interfaces/StorymapManifestFeatureCollection.html +4 -4
  69. package/dist/docs/api/interfaces/StorymapManifestGeoreferencing.html +7 -7
  70. package/dist/docs/api/interfaces/StorymapManifestImageService.html +4 -4
  71. package/dist/docs/api/interfaces/StorymapManifestRange.html +5 -5
  72. package/dist/docs/api/interfaces/StorymapManifestService.html +4 -4
  73. package/dist/docs/api/interfaces/StorymapManifestSpecificResource.html +4 -4
  74. package/dist/docs/api/interfaces/StorymapManifestStatement.html +3 -3
  75. package/dist/docs/api/interfaces/StorymapMapOptions.html +5 -5
  76. package/dist/docs/api/interfaces/StorymapOptions.html +277 -75
  77. package/dist/docs/api/interfaces/StorymapOverlayLayer.html +42 -11
  78. package/dist/docs/api/interfaces/StorymapSlide.html +70 -16
  79. package/dist/docs/api/interfaces/StorymapSlideBackground.html +4 -4
  80. package/dist/docs/api/interfaces/StorymapSlideLocation.html +58 -14
  81. package/dist/docs/api/interfaces/StorymapSlideMarker.html +8 -9
  82. package/dist/docs/api/interfaces/StorymapSlideMedia.html +49 -10
  83. package/dist/docs/api/interfaces/StorymapSlideNarration.html +61 -9
  84. package/dist/docs/api/interfaces/StorymapSlideText.html +4 -4
  85. package/dist/docs/api/interfaces/StorymapTilejson.html +8 -8
  86. package/dist/docs/api/interfaces/SwipableEvents.html +102 -0
  87. package/dist/docs/api/interfaces/TextEvents.html +66 -0
  88. package/dist/docs/api/media/events.md +66 -0
  89. package/dist/docs/api/media/migration-from-knightlab.md +89 -49
  90. package/dist/docs/api/media/slideshow.md +109 -0
  91. package/dist/docs/api/media/storymap-as-iiif-manifest.md +1007 -0
  92. package/dist/docs/api/modules.html +6 -6
  93. package/dist/docs/api/types/ContentState.html +3 -3
  94. package/dist/docs/api/types/FiredEvent.html +43 -0
  95. package/dist/docs/api/types/ImagereadyKind.html +1 -1
  96. package/dist/docs/api/types/MediaTypeMatch.html +5 -5
  97. package/dist/docs/api/types/SwipeDirection.html +36 -0
  98. package/dist/docs/api/types/TileSourceFactory.html +1 -1
  99. package/dist/docs/authoring.html +20 -7
  100. package/dist/docs/events.html +263 -0
  101. package/dist/docs/iiif.html +136 -22
  102. package/dist/docs/migration.html +66 -19
  103. package/dist/docs/readme.html +113 -12
  104. package/dist/embed/index.html +7 -0
  105. package/dist/examples/font-css-false.json +33 -0
  106. package/dist/examples/issue-image-region.json +1 -1
  107. package/dist/examples/layers-control.json +60 -0
  108. package/dist/examples/map-template-provider.json +36 -0
  109. package/dist/examples/multi-media.json +71 -0
  110. package/dist/examples-iiif/annotated-image.json +16 -0
  111. package/dist/examples-iiif/font-css-false.json +114 -0
  112. package/dist/examples-iiif/issue-image-region.json +1 -1
  113. package/dist/examples-iiif/layers-control.json +226 -0
  114. package/dist/examples-iiif/map-template-provider.json +133 -0
  115. package/dist/examples-iiif/multi-media.json +237 -0
  116. package/dist/examples-slideshow/single.json +79 -0
  117. package/dist/examples-slideshow/static/pixel.png +0 -0
  118. package/dist/examples-slideshow/static.json +44 -0
  119. package/dist/harness-multi.html +3 -3
  120. package/dist/harness.html +4 -3
  121. package/dist/index.html +3 -2
  122. package/dist/js/storymap.d.ts +1326 -289
  123. package/dist/js/storymap.js +6690 -4784
  124. package/dist/js/storymap.js.map +1 -1
  125. package/dist/navplace-properties.json +14 -0
  126. package/dist/site.css +54 -36
  127. package/docs/migration-from-knightlab.md +89 -49
  128. package/docs/storymap-as-iiif-manifest.md +199 -126
  129. package/package.json +4 -2
  130. package/schema/storymap.schema.json +334 -34
  131. package/src/core/Util.ts +3 -1
  132. package/src/core/mixins.ts +42 -28
  133. package/src/language/Language.ts +7 -0
  134. package/src/language/locale/.expected-gaps.json +287 -27
  135. package/src/language/locale/de.json +11 -1
  136. package/src/language/locale/en.json +11 -1
  137. package/src/main.ts +51 -0
  138. package/src/map/Map.ts +44 -6
  139. package/src/map/MapMarker.ts +16 -3
  140. package/src/map/openlayers/Map.OpenLayers.ts +787 -62
  141. package/src/map/openlayers/MapMarker.OpenLayers.ts +113 -13
  142. package/src/map/slideView.ts +149 -0
  143. package/src/map/types.ts +2 -0
  144. package/src/media/EmbedUtil.ts +27 -2
  145. package/src/media/Media.ts +27 -4
  146. package/src/media/embedId.ts +6 -0
  147. package/src/media/types/Flickr.ts +14 -3
  148. package/src/media/types/HtmlMedia.ts +66 -0
  149. package/src/media/types/Image.ts +15 -3
  150. package/src/media/types/SoundCloud.ts +1 -1
  151. package/src/media/types/Text.ts +27 -8
  152. package/src/media/types/Twitter.ts +9 -7
  153. package/src/media/types/Vimeo.ts +1 -1
  154. package/src/media/types/YouTube.ts +2 -2
  155. package/src/scss/Typography.scss +15 -15
  156. package/src/scss/VCO.StoryMap.scss +173 -8
  157. package/src/scss/core/Reset.scss +5 -18
  158. package/src/scss/map/VCO.Map.scss +1 -1
  159. package/src/scss/map/VCO.MapMarker.scss +20 -9
  160. package/src/scss/map/openlayers/VCO.Map.OpenLayers.scss +7 -4
  161. package/src/scss/media/VCO.Media.scss +7 -7
  162. package/src/scss/media/types/VCO.Media.Blockquote.scss +1 -1
  163. package/src/scss/media/types/VCO.Media.Text.scss +5 -5
  164. package/src/scss/media/types/VCO.Media.Twitter.scss +4 -4
  165. package/src/scss/media/types/VCO.Media.Wikipedia.scss +2 -19
  166. package/src/scss/site/site.scss +55 -36
  167. package/src/scss/slider/VCO.Slide.scss +49 -11
  168. package/src/scss/slider/VCO.SlideNav.scss +23 -7
  169. package/src/scss/slider/VCO.StorySlider.scss +50 -0
  170. package/src/scss/snapmap/VCO.SnapMap.scss +3 -3
  171. package/src/scss/ui/VCO.Consent.scss +20 -14
  172. package/src/scss/ui/VCO.Layers.scss +119 -0
  173. package/src/scss/ui/VCO.MenuBar.Button.scss +140 -19
  174. package/src/scss/ui/VCO.MenuBar.scss +9 -2
  175. package/src/scss/ui/VCO.Message.scss +14 -0
  176. package/src/slider/Slide.ts +232 -74
  177. package/src/slider/SlideNav.ts +15 -4
  178. package/src/slider/StorySlider.ts +203 -22
  179. package/src/storymap/Consent.ts +22 -0
  180. package/src/storymap/StoryMap.ts +944 -131
  181. package/src/storymap/content-state.ts +3 -8
  182. package/src/storymap/font-css.ts +72 -0
  183. package/src/storymap/from-slideshow.ts +785 -0
  184. package/src/storymap/iiif-shared.ts +228 -0
  185. package/src/storymap/iiif.ts +289 -100
  186. package/src/storymap/to-iiif.ts +131 -44
  187. package/src/types.ts +382 -17
  188. package/src/ui/LayersControl.ts +302 -0
  189. package/src/ui/MenuBar.ts +232 -21
  190. package/src/ui/Message.ts +36 -3
  191. package/src/ui/Swipable.ts +25 -7
  192. package/dist/assets/harness-Cr0rYpvt.js +0 -1
  193. package/dist/assets/main-DXalctuR.js +0 -17
  194. package/src/scss/VCO.StoryMap.Dark.scss +0 -150
  195. package/src/scss/Variables.Dark.scss +0 -57
@@ -1,150 +0,0 @@
1
- /*!
2
- StoryMap
3
-
4
- Designed and built by Zach Wise for the Northwestern University Knight Lab
5
-
6
- This Source Code Form is subject to the terms of the Mozilla Public
7
- License, v. 2.0. If a copy of the MPL was not distributed with this
8
- file, You can obtain one at http://mozilla.org/MPL/2.0/.
9
-
10
- */
11
-
12
- /* Includes
13
- ================================================== */
14
- @use "sass:color";
15
- @use "Variables.Dark" as *; // Variables (easy way to make style changes)
16
- @use "core/Mixins" as *; // Less shortcuts and functions
17
- @use "core/Reset" as *; // CSS Reset
18
- @use "Typography" as *;
19
-
20
- // Icons
21
- @use "icons/Icons" as *;
22
-
23
- // Components
24
- @use "ui/VCO.MenuBar" as *;
25
- @use "ui/VCO.MenuBar.Button" as *;
26
- @use "ui/VCO.Message" as *;
27
- @use "slider/VCO.Slide" as *;
28
- @use "slider/VCO.SlideNav" as *;
29
- @use "slider/VCO.StorySlider" as *;
30
- @use "media/VCO.Media" as *;
31
- @use "media/types/VCO.Media.Text" as *;
32
- @use "media/types/VCO.Media.Image" as *;
33
- @use "media/types/VCO.Media.Twitter" as *;
34
- @use "media/types/VCO.Media.Blockquote" as *;
35
- @use "media/types/VCO.Media.IFrame" as *;
36
- @use "media/types/VCO.Media.Wikipedia" as *;
37
- @use "map/openlayers/VCO.Map.OpenLayers" as *;
38
- @use "map/VCO.MapMarker" as *;
39
- @use "map/VCO.ImageMarker" as *;
40
- @use "map/VCO.Map" as *;
41
- @use "snapmap/VCO.SnapMap" as *;
42
-
43
- /* StoryMap
44
- ================================================== */
45
- .vco-storymap {
46
- width: 100%;
47
- height: 100%;
48
- font-size: 16px;
49
- line-height: normal;
50
- overflow: hidden;
51
- position: relative;
52
- user-select: none;
53
- }
54
-
55
- /* Portrait
56
- ================================================== */
57
- .vco-layout-portrait {
58
- .vco-storyslider {
59
- padding-top: 10px;
60
- box-shadow: 0 -3px 6px rgb(0 0 0 / 20%);
61
- }
62
- }
63
-
64
- /* Landscape
65
- ================================================== */
66
- .vco-layout-landscape {
67
- .vco-storyslider {
68
- padding-top: 0;
69
- position: absolute;
70
- width: 50%;
71
- left: 50%;
72
- overflow: visible;
73
-
74
- .vco-slider-background {
75
- margin-left: -20%;
76
- width: 120%;
77
- overflow: hidden;
78
-
79
- @include gradient-horizontal(
80
- rgba(255, 255, 255, 0.0001),
81
- rgba(255, 255, 255, 0.85),
82
- 0%,
83
- 15%
84
- );
85
- }
86
-
87
- .vco-slider-container-mask {
88
- overflow: visible;
89
- }
90
-
91
- .vco-slidenav-next,
92
- .vco-slidenav-previous {
93
- .vco-slidenav-icon::before {
94
- background-color: $color-background;
95
- padding: 20px;
96
- border: 1px solid color.adjust($color-background, $lightness: -30%);
97
- }
98
-
99
- .vco-slidenav-icon,
100
- .vco-slidenav-title,
101
- .vco-slidenav-description {
102
- text-shadow: none;
103
- }
104
-
105
- .vco-slidenav-title,
106
- .vco-slidenav-description {
107
- display: none;
108
- }
109
- }
110
-
111
- .vco-slidenav-previous {
112
- left: -100%;
113
- margin-left: 0;
114
-
115
- .vco-slidenav-icon::before {
116
- @include border-right-radius(7px);
117
- }
118
- }
119
-
120
- .vco-slidenav-next {
121
- right: 130px;
122
-
123
- .vco-slidenav-icon::before {
124
- @include border-left-radius(7px);
125
- }
126
- }
127
-
128
- .vco-slidenav-previous:hover {
129
- .vco-slidenav-icon {
130
- margin-left: -4px;
131
- }
132
- }
133
- }
134
- }
135
-
136
- /* No map (map_type: "none")
137
- ================================================== */
138
- .vco-layout-no-map {
139
- .vco-storyslider {
140
- position: absolute;
141
- top: 0;
142
- left: 0;
143
- width: 100%;
144
- background-color: $color-background;
145
-
146
- .vco-slider-background {
147
- display: none;
148
- }
149
- }
150
- }
@@ -1,57 +0,0 @@
1
- @use "sass:color";
2
-
3
- /* VARIABLES
4
- ----------------------------------------------------- */
5
-
6
- /* UI
7
- ================================================== */
8
- $axis-height: 35px;
9
-
10
- /* TYPEFACE
11
- ================================================== */
12
- $font-serif:
13
- "Georgia",
14
- times new roman,
15
- times,
16
- serif;
17
- $font-sanserif: "Helvetica Neue", helvetica, arial, sans-serif;
18
- $font-main: $font-sanserif;
19
- $font-secondary: $font-serif;
20
- $base-font-size: 15px;
21
- $base-font-size-small: 11px;
22
- $base-font-size-large: 24px;
23
- $base-font-size-xlarge: 36px;
24
- $base-line-height: 1.4286;
25
-
26
- /* COLOR SCHEME
27
- ================================================== */
28
- $color-background: #222;
29
- $color-foreground: #ccc;
30
- $color-dark: #fff;
31
- $color-theme: #c34528; // #DA0000;
32
-
33
- $color-theme-dark: color.adjust($color-theme, $lightness: -15%);
34
- $color-text: color.adjust($color-dark, $lightness: -50%);
35
- $color-header-text: $color-dark;
36
- $color-text-inverted: color.adjust($color-dark, $lightness: -25%);
37
- $color-header-text-inverted: $color-dark;
38
-
39
- /* UI COLOR
40
- ================================================== */
41
- $ui-background-color: color.adjust($color-foreground, $lightness: -50%);
42
- $marker-color: color.adjust($ui-background-color, $lightness: -15%);
43
- $marker-selected-text-color: $color-dark;
44
- $minor-ticks-color: color.adjust($color-dark, $lightness: -66%);
45
- $major-ticks-color: color.adjust($color-dark, $lightness: -33%);
46
-
47
- /* UI
48
- ================================================== */
49
- $base-spacing: 15px;
50
- $arrow-size: 20px;
51
- $time-marker-border-radius: 10px;
52
-
53
- /* Animation
54
- The animation curves live in src/animation/easings.ts, not here: the
55
- widget animates through OpenLayers and the Web Animations API, not CSS
56
- transitions. See that file.
57
- ================================================== */