mirror of
				https://github.com/s00500/ESPUI.git
				synced 2025-10-30 20:53:24 +00:00 
			
		
		
		
	Update Roadmap
This commit is contained in:
		
							
								
								
									
										17
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										17
									
								
								README.md
									
									
									
									
									
								
							| @@ -29,24 +29,25 @@ THIS IS THE 2.0.0 DEVELOPMENT BRANCH, NOT GUARANTIED TO WORK | |||||||
| - API changes by @eringerli ✅ | - API changes by @eringerli ✅ | ||||||
|   - less updateControl functions ✅ |   - less updateControl functions ✅ | ||||||
|   - proper wrappers for all create/update actions ✅ |   - proper wrappers for all create/update actions ✅ | ||||||
| - OptionList by @eringerli |  | ||||||
| - Min Max on slider by @eringerli ✅ | - Min Max on slider by @eringerli ✅ | ||||||
| - Public Access to ESPAsyncServer | - OptionList by @eringerli ✅ | ||||||
| - Accelerometer Widget | - Public Access to ESPAsyncServer ✅ | ||||||
| - Graph Widget | - Graph Widget ✅ | ||||||
| - |  | ||||||
| - Cleanup Example, DNS and autojoin | * Cleanup Example, DNS and autojoin | ||||||
| - Cleanup and extend Documentation | * Cleanup and extend Documentation | ||||||
|   - Number field ✅ |   - Number field ✅ | ||||||
|   - Text field ✅ |   - Text field ✅ | ||||||
|   - Data directory ✅ |   - Data directory ✅ | ||||||
|   - Graph Usage |   - Graph Usage | ||||||
|   - Accelerometer |  | ||||||
|   - Slider |   - Slider | ||||||
|   - OptionList |   - OptionList | ||||||
|   - Tab usage |   - Tab usage | ||||||
|   - Verbosity setting |   - Verbosity setting | ||||||
|  |  | ||||||
|  | To check: | ||||||
|  | data upload new info to doc? | ||||||
|  |  | ||||||
| ## OLD Roadmap : | ## OLD Roadmap : | ||||||
|  |  | ||||||
| - Datagraph output -> _WIP_ | - Datagraph output -> _WIP_ | ||||||
|   | |||||||
							
								
								
									
										61
									
								
								data/js/controls.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										61
									
								
								data/js/controls.js
									
									
									
									
										vendored
									
									
								
							| @@ -70,6 +70,8 @@ const C_NONE = 255; | |||||||
|  |  | ||||||
| var graphData = new Array(); | var graphData = new Array(); | ||||||
|  |  | ||||||
|  | var hasAccel = false; | ||||||
|  |  | ||||||
| function colorClass(colorId) { | function colorClass(colorId) { | ||||||
|   colorId = Number(colorId); |   colorId = Number(colorId); | ||||||
|   switch (colorId) { |   switch (colorId) { | ||||||
| @@ -104,6 +106,57 @@ function colorClass(colorId) { | |||||||
| var websock; | var websock; | ||||||
| var websockConnected = false; | var websockConnected = false; | ||||||
|  |  | ||||||
|  | function requestOrientationPermission() { | ||||||
|  |   /* | ||||||
|  |   // Currently this fails, since it needs secure context on IOS safari | ||||||
|  |   if (typeof DeviceMotionEvent.requestPermission === "function") { | ||||||
|  |     DeviceOrientationEvent.requestPermission() | ||||||
|  |       .then(response => { | ||||||
|  |         if (response == "granted") { | ||||||
|  |           window.addEventListener("deviceorientation", handleOrientation); | ||||||
|  |         } | ||||||
|  |       }) | ||||||
|  |       .catch(console.error); | ||||||
|  |   } else { | ||||||
|  |     // Non IOS 13 | ||||||
|  |     window.addEventListener("deviceorientation", handleOrientation); | ||||||
|  |   } | ||||||
|  |   */ | ||||||
|  | } | ||||||
|  | /* | ||||||
|  | function handleOrientation(event) { | ||||||
|  |   var x = event.beta; // In degree in the range [-180,180] | ||||||
|  |   var y = event.gamma; // In degree in the range [-90,90] | ||||||
|  |  | ||||||
|  |   var output = document.querySelector(".output"); | ||||||
|  |   output.innerHTML = "beta : " + x + "\n"; | ||||||
|  |   output.innerHTML += "gamma: " + y + "\n"; | ||||||
|  |  | ||||||
|  |   // Because we don't want to have the device upside down | ||||||
|  |   // We constrain the x value to the range [-90,90] | ||||||
|  |   if (x > 90) { | ||||||
|  |     x = 90; | ||||||
|  |   } | ||||||
|  |   if (x < -90) { | ||||||
|  |     x = -90; | ||||||
|  |   } | ||||||
|  |  | ||||||
|  |   // To make computation easier we shift the range of | ||||||
|  |   // x and y to [0,180] | ||||||
|  |   x += 90; | ||||||
|  |   y += 90; | ||||||
|  |  | ||||||
|  |   // 10 is half the size of the ball | ||||||
|  |   // It center the positioning point to the center of the ball | ||||||
|  |   var ball = document.querySelector(".ball"); | ||||||
|  |   var garden = document.querySelector(".garden"); | ||||||
|  |   var maxX = garden.clientWidth - ball.clientWidth; | ||||||
|  |   var maxY = garden.clientHeight - ball.clientHeight; | ||||||
|  |   ball.style.top = (maxY * y) / 180 - 10 + "px"; | ||||||
|  |   ball.style.left = (maxX * x) / 180 - 10 + "px"; | ||||||
|  | } | ||||||
|  | */ | ||||||
|  |  | ||||||
| function restart() { | function restart() { | ||||||
|   $(document) |   $(document) | ||||||
|     .add("*") |     .add("*") | ||||||
| @@ -157,7 +210,7 @@ function start() { | |||||||
|     var center = ""; |     var center = ""; | ||||||
|     switch (data.type) { |     switch (data.type) { | ||||||
|       case UI_INITIAL_GUI: |       case UI_INITIAL_GUI: | ||||||
|         data.controls.forEach((element) => { |         data.controls.forEach(element => { | ||||||
|           var fauxEvent = { |           var fauxEvent = { | ||||||
|             data: JSON.stringify(element) |             data: JSON.stringify(element) | ||||||
|           }; |           }; | ||||||
| @@ -628,12 +681,14 @@ function start() { | |||||||
|         break; |         break; | ||||||
|  |  | ||||||
|       case UI_ACCEL: |       case UI_ACCEL: | ||||||
|  |         if (hasAccel) break; | ||||||
|         var parent; |         var parent; | ||||||
|         if (data.parentControl) { |         if (data.parentControl) { | ||||||
|           parent = $("#tab" + data.parentControl); |           parent = $("#tab" + data.parentControl); | ||||||
|         } else { |         } else { | ||||||
|           parent = $("#row"); |           parent = $("#row"); | ||||||
|         } |         } | ||||||
|  |         hasAccel = true; | ||||||
|         parent.append( |         parent.append( | ||||||
|           "<div id='id" + |           "<div id='id" + | ||||||
|             data.id + |             data.id + | ||||||
| @@ -643,7 +698,7 @@ function start() { | |||||||
|             "<h5>" + |             "<h5>" + | ||||||
|             data.label + |             data.label + | ||||||
|             "</h5><hr/>" + |             "</h5><hr/>" + | ||||||
|             "WILL BE A ACCEL<div class='accelerometer' id='accel" + |             "ACCEL // Not implemented fully!<div class='accelerometer' id='accel" + | ||||||
|             data.id + |             data.id + | ||||||
|             "' ><div class='ball" + |             "' ><div class='ball" + | ||||||
|             data.id + |             data.id + | ||||||
| @@ -652,6 +707,8 @@ function start() { | |||||||
|             "'></pre>" + |             "'></pre>" + | ||||||
|             "</div>" |             "</div>" | ||||||
|         ); |         ); | ||||||
|  |  | ||||||
|  |         requestOrientationPermission(); | ||||||
|         break; |         break; | ||||||
|  |  | ||||||
|       case UPDATE_LABEL: |       case UPDATE_LABEL: | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user