🎉 initiate project *astro_rewrite*
This commit is contained in:
		
							parent
							
								
									ffd4d5e86c
								
							
						
					
					
						commit
						2ba37bfbe3
					
				
					 8658 changed files with 2268794 additions and 2538 deletions
				
			
		
							
								
								
									
										77
									
								
								node_modules/vscode-html-languageservice/lib/esm/languageFacts/dataManager.js
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										77
									
								
								node_modules/vscode-html-languageservice/lib/esm/languageFacts/dataManager.js
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,77 @@ | |||
| /*--------------------------------------------------------------------------------------------- | ||||
|  *  Copyright (c) Microsoft Corporation. All rights reserved. | ||||
|  *  Licensed under the MIT License. See License.txt in the project root for license information. | ||||
|  *--------------------------------------------------------------------------------------------*/ | ||||
| import { HTMLDataProvider } from './dataProvider'; | ||||
| import { htmlData } from './data/webCustomData'; | ||||
| import * as arrays from '../utils/arrays'; | ||||
| export class HTMLDataManager { | ||||
|     constructor(options) { | ||||
|         this.dataProviders = []; | ||||
|         this.setDataProviders(options.useDefaultDataProvider !== false, options.customDataProviders || []); | ||||
|     } | ||||
|     setDataProviders(builtIn, providers) { | ||||
|         this.dataProviders = []; | ||||
|         if (builtIn) { | ||||
|             this.dataProviders.push(new HTMLDataProvider('html5', htmlData)); | ||||
|         } | ||||
|         this.dataProviders.push(...providers); | ||||
|     } | ||||
|     getDataProviders() { | ||||
|         return this.dataProviders; | ||||
|     } | ||||
|     isVoidElement(e, voidElements) { | ||||
|         return !!e && arrays.binarySearch(voidElements, e.toLowerCase(), (s1, s2) => s1.localeCompare(s2)) >= 0; | ||||
|     } | ||||
|     getVoidElements(languageOrProviders) { | ||||
|         const dataProviders = Array.isArray(languageOrProviders) ? languageOrProviders : this.getDataProviders().filter(p => p.isApplicable(languageOrProviders)); | ||||
|         const voidTags = []; | ||||
|         dataProviders.forEach((provider) => { | ||||
|             provider.provideTags().filter(tag => tag.void).forEach(tag => voidTags.push(tag.name)); | ||||
|         }); | ||||
|         return voidTags.sort(); | ||||
|     } | ||||
|     isPathAttribute(tag, attr) { | ||||
|         // should eventually come from custom data
 | ||||
|         if (attr === 'src' || attr === 'href') { | ||||
|             return true; | ||||
|         } | ||||
|         const a = PATH_TAG_AND_ATTR[tag]; | ||||
|         if (a) { | ||||
|             if (typeof a === 'string') { | ||||
|                 return a === attr; | ||||
|             } | ||||
|             else { | ||||
|                 return a.indexOf(attr) !== -1; | ||||
|             } | ||||
|         } | ||||
|         return false; | ||||
|     } | ||||
| } | ||||
| // Selected from https://stackoverflow.com/a/2725168/1780148
 | ||||
| const PATH_TAG_AND_ATTR = { | ||||
|     // HTML 4
 | ||||
|     a: 'href', | ||||
|     area: 'href', | ||||
|     body: 'background', | ||||
|     blockquote: 'cite', | ||||
|     del: 'cite', | ||||
|     form: 'action', | ||||
|     frame: ['src', 'longdesc'], | ||||
|     img: ['src', 'longdesc'], | ||||
|     ins: 'cite', | ||||
|     link: 'href', | ||||
|     object: 'data', | ||||
|     q: 'cite', | ||||
|     script: 'src', | ||||
|     // HTML 5
 | ||||
|     audio: 'src', | ||||
|     button: 'formaction', | ||||
|     command: 'icon', | ||||
|     embed: 'src', | ||||
|     html: 'manifest', | ||||
|     input: ['src', 'formaction'], | ||||
|     source: 'src', | ||||
|     track: 'src', | ||||
|     video: ['src', 'poster'] | ||||
| }; | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 sindrekjelsrud
						sindrekjelsrud