mirror of
				https://github.com/house-of-abbey/GarminHomeAssistant.git
				synced 2025-10-30 23:38:15 +00:00 
			
		
		
		
	Select schema version in web (#300)
To test the schema on a specific version: ```url https://house-of-abbey.github.io/web/?version=v1.4 ``` To test the schema on a specific branch: ```url https://house-of-abbey.github.io/web/?branch=numeric-item-json-schema ``` To test the schema on an arbitrary URL (may be affected by cors): ```url https://house-of-abbey.github.io/web/?schema={url} ```
This commit is contained in:
		| @@ -7,7 +7,7 @@ | ||||
|     <link | ||||
|       rel="stylesheet" | ||||
|       data-name="vs/editor/editor.main" | ||||
|       href="https://www.unpkg.com/monaco-editor@0.45.0/min/vs/editor/editor.main.css" /> | ||||
|       href="https://www.unpkg.com/monaco-editor@0.52.2/min/vs/editor/editor.main.css" /> | ||||
|     <link | ||||
|       rel="stylesheet" | ||||
|       type="text/css" | ||||
|   | ||||
							
								
								
									
										30
									
								
								web/main.js
									
									
									
									
									
								
							
							
						
						
									
										30
									
								
								web/main.js
									
									
									
									
									
								
							| @@ -141,10 +141,32 @@ async function get_services() { | ||||
|  * @returns {Promise<{}>} | ||||
|  */ | ||||
| async function get_schema() { | ||||
|   const res = await fetch( | ||||
|     'https://raw.githubusercontent.com/house-of-abbey/GarminHomeAssistant/main/config.schema.json' | ||||
|   ); | ||||
|   return res.json(); | ||||
|   const searchParams = new URL(window.location).searchParams; | ||||
|  | ||||
|   const url = searchParams.get('schema'); | ||||
|   if (url) return (await fetch(url)).json(); | ||||
|  | ||||
|   const branch = searchParams.get('branch'); | ||||
|   if (branch) | ||||
|     return ( | ||||
|       await fetch( | ||||
|         `https://raw.githubusercontent.com/house-of-abbey/GarminHomeAssistant/refs/heads/${branch}/config.schema.json` | ||||
|       ) | ||||
|     ).json(); | ||||
|  | ||||
|   const version = searchParams.get('version'); | ||||
|   if (version) | ||||
|     return ( | ||||
|       await fetch( | ||||
|         `https://raw.githubusercontent.com/house-of-abbey/GarminHomeAssistant/refs/tags/${version}/config.schema.json` | ||||
|       ) | ||||
|     ).json(); | ||||
|  | ||||
|   return ( | ||||
|     await fetch( | ||||
|       `https://raw.githubusercontent.com/house-of-abbey/GarminHomeAssistant/main/config.schema.json` | ||||
|     ) | ||||
|   ).json(); | ||||
| } | ||||
|  | ||||
| /** | ||||
|   | ||||
| @@ -10,7 +10,7 @@ | ||||
|   "author": "", | ||||
|   "license": "ISC", | ||||
|   "devDependencies": { | ||||
|     "@types/toastify-js": "^1.12.4", | ||||
|     "@types/toastify-js": "1.12.0", | ||||
|     "@vscode/webview-ui-toolkit": "1.4.0", | ||||
|     "json-ast-comments": "1.1.1", | ||||
|     "monaco-editor": "0.52.2", | ||||
|   | ||||
							
								
								
									
										8
									
								
								web/pnpm-lock.yaml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										8
									
								
								web/pnpm-lock.yaml
									
									
									
										generated
									
									
									
								
							| @@ -6,8 +6,8 @@ settings: | ||||
|  | ||||
| devDependencies: | ||||
|   '@types/toastify-js': | ||||
|     specifier: ^1.12.4 | ||||
|     version: 1.12.4 | ||||
|     specifier: 1.12.0 | ||||
|     version: 1.12.0 | ||||
|   '@vscode/webview-ui-toolkit': | ||||
|     specifier: 1.4.0 | ||||
|     version: 1.4.0(react@18.2.0) | ||||
| @@ -55,8 +55,8 @@ packages: | ||||
|       exenv-es6: 1.1.1 | ||||
|     dev: true | ||||
|  | ||||
|   /@types/toastify-js@1.12.4: | ||||
|     resolution: {integrity: sha512-zfZHU4tKffPCnZRe7pjv/eFKzTVHozKewFCKaCjZ4gFinKgJRz/t0bkZiMCXJxPhv/ZoeDGNOeRD09R0kQZ/nw==} | ||||
|   /@types/toastify-js@1.12.0: | ||||
|     resolution: {integrity: sha512-fqpDHaKhFukN9KRm24bbH0wozvHmSwjvkaLjBUrWcSfSS4zysIwTYqNLG3XbSNhRlsTNRNLGS23tp/VhPwsfHQ==} | ||||
|     dev: true | ||||
|  | ||||
|   /@vscode/webview-ui-toolkit@1.4.0(react@18.2.0): | ||||
|   | ||||
		Reference in New Issue
	
	Block a user