Christophe Dervieux | e1893ae | 2021-10-07 17:09:02 +0200 | [diff] [blame] | 1 | /** |
| 2 | * The default reveal.js config object. |
| 3 | */ |
| 4 | export default { |
| 5 | |
| 6 | // The "normal" size of the presentation, aspect ratio will be preserved |
| 7 | // when the presentation is scaled to fit different resolutions |
Marc Kupietz | 9c036a4 | 2024-05-14 13:17:25 +0200 | [diff] [blame^] | 8 | width: 1280, |
| 9 | height: 720 , |
Christophe Dervieux | e1893ae | 2021-10-07 17:09:02 +0200 | [diff] [blame] | 10 | |
| 11 | // Factor of the display size that should remain empty around the content |
| 12 | margin: 0.04, |
| 13 | |
| 14 | // Bounds for smallest/largest possible scale to apply to content |
| 15 | minScale: 0.2, |
| 16 | maxScale: 2.0, |
| 17 | |
| 18 | // Display presentation control arrows |
| 19 | controls: true, |
| 20 | |
| 21 | // Help the user learn the controls by providing hints, for example by |
| 22 | // bouncing the down arrow when they first encounter a vertical slide |
| 23 | controlsTutorial: true, |
| 24 | |
| 25 | // Determines where controls appear, "edges" or "bottom-right" |
| 26 | controlsLayout: 'bottom-right', |
| 27 | |
| 28 | // Visibility rule for backwards navigation arrows; "faded", "hidden" |
| 29 | // or "visible" |
| 30 | controlsBackArrows: 'faded', |
| 31 | |
| 32 | // Display a presentation progress bar |
| 33 | progress: true, |
| 34 | |
| 35 | // Display the page number of the current slide |
| 36 | // - true: Show slide number |
| 37 | // - false: Hide slide number |
| 38 | // |
| 39 | // Can optionally be set as a string that specifies the number formatting: |
| 40 | // - "h.v": Horizontal . vertical slide number (default) |
| 41 | // - "h/v": Horizontal / vertical slide number |
| 42 | // - "c": Flattened slide number |
| 43 | // - "c/t": Flattened slide number / total slides |
| 44 | // |
| 45 | // Alternatively, you can provide a function that returns the slide |
| 46 | // number for the current slide. The function should take in a slide |
| 47 | // object and return an array with one string [slideNumber] or |
| 48 | // three strings [n1,delimiter,n2]. See #formatSlideNumber(). |
| 49 | slideNumber: false, |
| 50 | |
| 51 | // Can be used to limit the contexts in which the slide number appears |
| 52 | // - "all": Always show the slide number |
| 53 | // - "print": Only when printing to PDF |
| 54 | // - "speaker": Only in the speaker view |
| 55 | showSlideNumber: 'all', |
| 56 | |
| 57 | // Use 1 based indexing for # links to match slide number (default is zero |
| 58 | // based) |
| 59 | hashOneBasedIndex: false, |
| 60 | |
| 61 | // Add the current slide number to the URL hash so that reloading the |
| 62 | // page/copying the URL will return you to the same slide |
| 63 | hash: false, |
| 64 | |
| 65 | // Flags if we should monitor the hash and change slides accordingly |
| 66 | respondToHashChanges: true, |
| 67 | |
Marc Kupietz | 09b7575 | 2023-10-07 09:32:19 +0200 | [diff] [blame] | 68 | // Enable support for jump-to-slide navigation shortcuts |
| 69 | jumpToSlide: true, |
| 70 | |
Christophe Dervieux | e1893ae | 2021-10-07 17:09:02 +0200 | [diff] [blame] | 71 | // Push each slide change to the browser history. Implies `hash: true` |
| 72 | history: false, |
| 73 | |
| 74 | // Enable keyboard shortcuts for navigation |
| 75 | keyboard: true, |
| 76 | |
| 77 | // Optional function that blocks keyboard events when retuning false |
| 78 | // |
| 79 | // If you set this to 'focused', we will only capture keyboard events |
| 80 | // for embedded decks when they are in focus |
| 81 | keyboardCondition: null, |
| 82 | |
| 83 | // Disables the default reveal.js slide layout (scaling and centering) |
| 84 | // so that you can use custom CSS layout |
| 85 | disableLayout: false, |
| 86 | |
| 87 | // Enable the slide overview mode |
| 88 | overview: true, |
| 89 | |
| 90 | // Vertical centering of slides |
| 91 | center: true, |
| 92 | |
| 93 | // Enables touch navigation on devices with touch input |
| 94 | touch: true, |
| 95 | |
| 96 | // Loop the presentation |
| 97 | loop: false, |
| 98 | |
| 99 | // Change the presentation direction to be RTL |
| 100 | rtl: false, |
| 101 | |
| 102 | // Changes the behavior of our navigation directions. |
| 103 | // |
| 104 | // "default" |
| 105 | // Left/right arrow keys step between horizontal slides, up/down |
| 106 | // arrow keys step between vertical slides. Space key steps through |
| 107 | // all slides (both horizontal and vertical). |
| 108 | // |
| 109 | // "linear" |
| 110 | // Removes the up/down arrows. Left/right arrows step through all |
| 111 | // slides (both horizontal and vertical). |
| 112 | // |
| 113 | // "grid" |
| 114 | // When this is enabled, stepping left/right from a vertical stack |
| 115 | // to an adjacent vertical stack will land you at the same vertical |
| 116 | // index. |
| 117 | // |
| 118 | // Consider a deck with six slides ordered in two vertical stacks: |
| 119 | // 1.1 2.1 |
| 120 | // 1.2 2.2 |
| 121 | // 1.3 2.3 |
| 122 | // |
| 123 | // If you're on slide 1.3 and navigate right, you will normally move |
| 124 | // from 1.3 -> 2.1. If "grid" is used, the same navigation takes you |
| 125 | // from 1.3 -> 2.3. |
| 126 | navigationMode: 'default', |
| 127 | |
| 128 | // Randomizes the order of slides each time the presentation loads |
| 129 | shuffle: false, |
| 130 | |
| 131 | // Turns fragments on and off globally |
| 132 | fragments: true, |
| 133 | |
| 134 | // Flags whether to include the current fragment in the URL, |
| 135 | // so that reloading brings you to the same fragment position |
| 136 | fragmentInURL: true, |
| 137 | |
| 138 | // Flags if the presentation is running in an embedded mode, |
| 139 | // i.e. contained within a limited portion of the screen |
| 140 | embedded: false, |
| 141 | |
| 142 | // Flags if we should show a help overlay when the question-mark |
| 143 | // key is pressed |
| 144 | help: true, |
| 145 | |
| 146 | // Flags if it should be possible to pause the presentation (blackout) |
| 147 | pause: true, |
| 148 | |
| 149 | // Flags if speaker notes should be visible to all viewers |
| 150 | showNotes: false, |
| 151 | |
| 152 | // Flags if slides with data-visibility="hidden" should be kep visible |
| 153 | showHiddenSlides: false, |
| 154 | |
| 155 | // Global override for autoplaying embedded media (video/audio/iframe) |
| 156 | // - null: Media will only autoplay if data-autoplay is present |
| 157 | // - true: All media will autoplay, regardless of individual setting |
| 158 | // - false: No media will autoplay, regardless of individual setting |
| 159 | autoPlayMedia: null, |
| 160 | |
| 161 | // Global override for preloading lazy-loaded iframes |
| 162 | // - null: Iframes with data-src AND data-preload will be loaded when within |
| 163 | // the viewDistance, iframes with only data-src will be loaded when visible |
| 164 | // - true: All iframes with data-src will be loaded when within the viewDistance |
| 165 | // - false: All iframes with data-src will be loaded only when visible |
| 166 | preloadIframes: null, |
| 167 | |
| 168 | // Can be used to globally disable auto-animation |
| 169 | autoAnimate: true, |
| 170 | |
| 171 | // Optionally provide a custom element matcher that will be |
| 172 | // used to dictate which elements we can animate between. |
| 173 | autoAnimateMatcher: null, |
| 174 | |
| 175 | // Default settings for our auto-animate transitions, can be |
| 176 | // overridden per-slide or per-element via data arguments |
| 177 | autoAnimateEasing: 'ease', |
| 178 | autoAnimateDuration: 1.0, |
| 179 | autoAnimateUnmatched: true, |
| 180 | |
| 181 | // CSS properties that can be auto-animated. Position & scale |
| 182 | // is matched separately so there's no need to include styles |
| 183 | // like top/right/bottom/left, width/height or margin. |
| 184 | autoAnimateStyles: [ |
| 185 | 'opacity', |
| 186 | 'color', |
| 187 | 'background-color', |
| 188 | 'padding', |
| 189 | 'font-size', |
| 190 | 'line-height', |
| 191 | 'letter-spacing', |
| 192 | 'border-width', |
| 193 | 'border-color', |
| 194 | 'border-radius', |
| 195 | 'outline', |
| 196 | 'outline-offset' |
| 197 | ], |
| 198 | |
| 199 | // Controls automatic progression to the next slide |
| 200 | // - 0: Auto-sliding only happens if the data-autoslide HTML attribute |
| 201 | // is present on the current slide or fragment |
| 202 | // - 1+: All slides will progress automatically at the given interval |
| 203 | // - false: No auto-sliding, even if data-autoslide is present |
| 204 | autoSlide: 0, |
| 205 | |
| 206 | // Stop auto-sliding after user input |
| 207 | autoSlideStoppable: true, |
| 208 | |
| 209 | // Use this method for navigation when auto-sliding (defaults to navigateNext) |
| 210 | autoSlideMethod: null, |
| 211 | |
| 212 | // Specify the average time in seconds that you think you will spend |
| 213 | // presenting each slide. This is used to show a pacing timer in the |
| 214 | // speaker view |
| 215 | defaultTiming: null, |
| 216 | |
| 217 | // Enable slide navigation via mouse wheel |
| 218 | mouseWheel: false, |
| 219 | |
| 220 | // Opens links in an iframe preview overlay |
| 221 | // Add `data-preview-link` and `data-preview-link="false"` to customise each link |
| 222 | // individually |
| 223 | previewLinks: false, |
| 224 | |
| 225 | // Exposes the reveal.js API through window.postMessage |
| 226 | postMessage: true, |
| 227 | |
| 228 | // Dispatches all reveal.js events to the parent window through postMessage |
| 229 | postMessageEvents: false, |
| 230 | |
| 231 | // Focuses body when page changes visibility to ensure keyboard shortcuts work |
| 232 | focusBodyOnPageVisibilityChange: true, |
| 233 | |
| 234 | // Transition style |
| 235 | transition: 'slide', // none/fade/slide/convex/concave/zoom |
| 236 | |
| 237 | // Transition speed |
| 238 | transitionSpeed: 'default', // default/fast/slow |
| 239 | |
| 240 | // Transition style for full page slide backgrounds |
| 241 | backgroundTransition: 'fade', // none/fade/slide/convex/concave/zoom |
| 242 | |
| 243 | // Parallax background image |
| 244 | parallaxBackgroundImage: '', // CSS syntax, e.g. "a.jpg" |
| 245 | |
| 246 | // Parallax background size |
| 247 | parallaxBackgroundSize: '', // CSS syntax, e.g. "3000px 2000px" |
| 248 | |
| 249 | // Parallax background repeat |
| 250 | parallaxBackgroundRepeat: '', // repeat/repeat-x/repeat-y/no-repeat/initial/inherit |
| 251 | |
| 252 | // Parallax background position |
| 253 | parallaxBackgroundPosition: '', // CSS syntax, e.g. "top left" |
| 254 | |
| 255 | // Amount of pixels to move the parallax background per slide step |
| 256 | parallaxBackgroundHorizontal: null, |
| 257 | parallaxBackgroundVertical: null, |
| 258 | |
Marc Kupietz | 9c036a4 | 2024-05-14 13:17:25 +0200 | [diff] [blame^] | 259 | // Can be used to initialize reveal.js in one of the following views: |
| 260 | // - print: Render the presentation so that it can be printed to PDF |
| 261 | // - scroll: Show the presentation as a tall scrollable page with scroll |
| 262 | // triggered animations |
| 263 | view: null, |
| 264 | |
| 265 | // Adjusts the height of each slide in the scroll view. |
| 266 | // - full: Each slide is as tall as the viewport |
| 267 | // - compact: Slides are as small as possible, allowing multiple slides |
| 268 | // to be visible in parallel on tall devices |
| 269 | scrollLayout: 'full', |
| 270 | |
| 271 | // Control how scroll snapping works in the scroll view. |
| 272 | // - false: No snapping, scrolling is continuous |
| 273 | // - proximity: Snap when close to a slide |
| 274 | // - mandatory: Always snap to the closest slide |
| 275 | // |
| 276 | // Only applies to presentations in scroll view. |
| 277 | scrollSnap: 'mandatory', |
| 278 | |
| 279 | // Enables and configure the scroll view progress bar. |
| 280 | // - 'auto': Show the scrollbar while scrolling, hide while idle |
| 281 | // - true: Always show the scrollbar |
| 282 | // - false: Never show the scrollbar |
| 283 | scrollProgress: 'auto', |
| 284 | |
| 285 | // Automatically activate the scroll view when we the viewport falls |
| 286 | // below the given width. |
| 287 | scrollActivationWidth: 435, |
| 288 | |
Christophe Dervieux | e1893ae | 2021-10-07 17:09:02 +0200 | [diff] [blame] | 289 | // The maximum number of pages a single slide can expand onto when printing |
| 290 | // to PDF, unlimited by default |
| 291 | pdfMaxPagesPerSlide: Number.POSITIVE_INFINITY, |
| 292 | |
| 293 | // Prints each fragment on a separate slide |
| 294 | pdfSeparateFragments: true, |
| 295 | |
| 296 | // Offset used to reduce the height of content within exported PDF pages. |
| 297 | // This exists to account for environment differences based on how you |
| 298 | // print to PDF. CLI printing options, like phantomjs and wkpdf, can end |
| 299 | // on precisely the total height of the document whereas in-browser |
| 300 | // printing has to end one pixel before. |
| 301 | pdfPageHeightOffset: -1, |
| 302 | |
| 303 | // Number of slides away from the current that are visible |
| 304 | viewDistance: 3, |
| 305 | |
| 306 | // Number of slides away from the current that are visible on mobile |
| 307 | // devices. It is advisable to set this to a lower number than |
| 308 | // viewDistance in order to save resources. |
| 309 | mobileViewDistance: 2, |
| 310 | |
| 311 | // The display mode that will be used to show slides |
| 312 | display: 'block', |
| 313 | |
| 314 | // Hide cursor if inactive |
| 315 | hideInactiveCursor: true, |
| 316 | |
| 317 | // Time before the cursor is hidden (in ms) |
| 318 | hideCursorTime: 5000, |
| 319 | |
Marc Kupietz | 9c036a4 | 2024-05-14 13:17:25 +0200 | [diff] [blame^] | 320 | // Should we automatically sort and set indices for fragments |
Marc Kupietz | 09b7575 | 2023-10-07 09:32:19 +0200 | [diff] [blame] | 321 | // at each sync? (See Reveal.sync) |
| 322 | sortFragmentsOnSync: true, |
| 323 | |
Christophe Dervieux | e1893ae | 2021-10-07 17:09:02 +0200 | [diff] [blame] | 324 | // Script dependencies to load |
| 325 | dependencies: [], |
| 326 | |
| 327 | // Plugin objects to register and use for this presentation |
| 328 | plugins: [] |
| 329 | |
| 330 | } |