فهرست منبع

separate public/internal reveal.js apis

Hakim El Hattab 5 سال پیش
والد
کامیت
6ff28af1b3
6فایلهای تغییر یافته به همراه41 افزوده شده و 35 حذف شده
  1. 0 0
      dist/reveal.es5.js
  2. 0 0
      dist/reveal.es5.js.map
  3. 0 0
      dist/reveal.js
  4. 0 0
      dist/reveal.js.map
  5. 7 1
      examples/multiple-presentations.html
  6. 34 34
      js/reveal.js

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 0
dist/reveal.es5.js


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 0
dist/reveal.es5.js.map


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 0
dist/reveal.js


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 0
dist/reveal.js.map


+ 7 - 1
examples/multiple-instances.html → examples/multiple-presentations.html

@@ -4,7 +4,7 @@
 	<head>
 		<meta charset="utf-8">
 
-		<title>reveal.js - Multiple Instances</title>
+		<title>reveal.js - Multiple Presentations</title>
 
 		<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
 
@@ -37,6 +37,9 @@
 				embedded: true,
 				keyboard: false
 			} );
+			r1.on( 'slidechanged', () => {
+				console.log( 'Deck 1 slide changed' );
+			} );
 			r1.initialize();
 
 			let r2 = new Reveal( document.querySelector( '.deck2' ), {
@@ -46,6 +49,9 @@
 			r2.initialize().then( () => {
 				r2.slide(1);
 			} );
+			r2.on( 'slidechanged', () => {
+				console.log( 'Deck 2 slide changed' );
+			} );
 
 		</script>
 

+ 34 - 34
js/reveal.js

@@ -488,8 +488,8 @@ export default function( revealElement, options ) {
 
 		if( config.touch ) touch.bind();
 		if( config.keyboard ) keyboard.bind();
+		if( config.progress ) progress.bind();
 		controls.bind();
-		progress.bind();
 
 		dom.pauseOverlay.addEventListener( 'click', resume, false );
 
@@ -2345,8 +2345,8 @@ export default function( revealElement, options ) {
 	// ------------------------------- API --------------------------------//
 	// --------------------------------------------------------------------//
 
-
-	return extend( Reveal, {
+	// The public reveal.js API
+	const API = {
 		VERSION,
 
 		initialize,
@@ -2366,12 +2366,7 @@ export default function( revealElement, options ) {
 		next: navigateNext,
 
 		// Navigation aliases
-		navigateLeft,
-		navigateRight,
-		navigateUp,
-		navigateDown,
-		navigatePrev,
-		navigateNext,
+		navigateLeft, navigateRight, navigateUp, navigateDown, navigatePrev, navigateNext,
 
 		// Fragment methods
 		navigateFragment: fragments.goto.bind( fragments ),
@@ -2423,6 +2418,9 @@ export default function( revealElement, options ) {
 		isOverview: overview.isActive.bind( overview ),
 		isPrintingPDF: print.isPrintingPDF.bind( print ),
 
+		// Checks if reveal.js has been loaded and is ready for use
+		isReady: () => ready,
+
 		// Slide preloading
 		loadSlide: slideContent.load.bind( slideContent ),
 		unloadSlide: slideContent.unload.bind( slideContent ),
@@ -2436,43 +2434,50 @@ export default function( revealElement, options ) {
 		getState,
 		setState,
 
-		// Presentation progress
-		getSlidePastCount,
-
 		// Presentation progress on range of 0-1
 		getProgress,
 
 		// Returns the indices of the current, or specified, slide
 		getIndices,
 
-		// Returns an Array of all slides
-		getSlides,
-
 		// Returns an Array of key:value maps of the attributes of each
 		// slide in the deck
 		getSlidesAttributes,
 
+		// Returns the number of slides that we have passed
+		getSlidePastCount,
+
 		// Returns the total number of slides
 		getTotalSlides,
 
 		// Returns the slide element at the specified index
 		getSlide,
 
+		// Returns the previous slide element, may be null
+		getPreviousSlide: () => previousSlide,
+
+		// Returns the current slide element
+		getCurrentSlide: () => currentSlide,
+
 		// Returns the slide background element at the specified index
 		getSlideBackground,
 
 		// Returns the speaker notes string for a slide, or null
 		getSlideNotes: notes.getSlideNotes.bind( notes ),
 
+		// Returns an Array of all slides
+		getSlides,
+
 		// Returns an array with all horizontal/vertical slides in the deck
 		getHorizontalSlides,
 		getVerticalSlides,
 
-		// Checks if the presentation contains two or more
-		// horizontal/vertical slides
+		// Checks if the presentation contains two or more horizontal
+		// and vertical slides
 		hasHorizontalSlides,
 		hasVerticalSlides,
 
+		// Checks if the deck has navigated on either axis at least once
 		hasNavigatedHorizontally: () => navigationHistory.hasNavigatedHorizontally,
 		hasNavigatedVertically: () => navigationHistory.hasNavigatedVertically,
 
@@ -2486,20 +2491,8 @@ export default function( revealElement, options ) {
 		// Registers a new shortcut to include in the help overlay
 		registerKeyboardShortcut: keyboard.registerKeyboardShortcut.bind( keyboard ),
 
-		// API for registering and retrieving plugins
-		registerPlugin: plugins.registerPlugin.bind( plugins ),
-		hasPlugin: plugins.hasPlugin.bind( plugins ),
-		getPlugin: plugins.getPlugin.bind( plugins ),
-		getPlugins: plugins.getRegisteredPlugins.bind( plugins ),
-
 		getComputedSlideSize,
 
-		// Returns the previous slide element, may be null
-		getPreviousSlide: () => previousSlide,
-
-		// Returns the current slide element
-		getCurrentSlide: () => currentSlide,
-
 		// Returns the current scale of the presentation content
 		getScale: () => scale,
 
@@ -2514,17 +2507,23 @@ export default function( revealElement, options ) {
 		getSlidesElement: () => dom.slides,
 		getBackgroundsElement: () => backgrounds.element,
 
-		// Checks if reveal.js has been loaded and is ready for use
-		isReady: () => ready,
+		// API for registering and retrieving plugins
+		registerPlugin: plugins.registerPlugin.bind( plugins ),
+		hasPlugin: plugins.hasPlugin.bind( plugins ),
+		getPlugin: plugins.getPlugin.bind( plugins ),
+		getPlugins: plugins.getRegisteredPlugins.bind( plugins )
 
+	};
 
-		// The following API methods are primarily intended for use
-		// by reveal.js controllers
+	// Our internal API which controllers have access to
+	extend( Reveal, {
+		...API,
 
 		// Methods for announcing content to screen readers
 		announceStatus,
 		getStatusText,
 
+		// Controllers
 		print,
 		progress,
 		controls,
@@ -2541,7 +2540,8 @@ export default function( revealElement, options ) {
 		transformSlides,
 		cueAutoSlide,
 		cancelAutoSlide
-
 	} );
 
+	return API;
+
 };

برخی فایل ها در این مقایسه diff نمایش داده نمی شوند زیرا تعداد فایل ها بسیار زیاد است