mirror of
				https://github.com/theoludwig/markdownlint-rule-relative-links.git
				synced 2025-09-09 19:39:29 +02:00 
			
		
		
		
	build(deps): update latest
	
		
			
	
		
	
	
		
	
		
			All checks were successful
		
		
	
	
		
			
				
	
				Lint / lint (push) Successful in 54s
				
					
					
				
			
		
			
				
	
				Test / test (push) Successful in 33s
				
					
					
				
			
		
		
	
	
				
					
				
			
		
			All checks were successful
		
		
	
	Lint / lint (push) Successful in 54s
				Test / test (push) Successful in 33s
				This commit is contained in:
		
							
								
								
									
										1290
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										1290
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										24
									
								
								package.json
									
									
									
									
									
								
							
							
						
						
									
										24
									
								
								package.json
									
									
									
									
									
								
							| @@ -33,7 +33,7 @@ | ||||
|     "lint:commit": "commitlint", | ||||
|     "lint:editorconfig": "editorconfig-checker", | ||||
|     "lint:markdown": "markdownlint-cli2", | ||||
|     "lint:eslint": "eslint . --ignore-path .gitignore", | ||||
|     "lint:eslint": "eslint . --max-warnings 0 --report-unused-disable-directives --ignore-path .gitignore", | ||||
|     "lint:prettier": "prettier . --check --ignore-path .gitignore", | ||||
|     "lint:staged": "lint-staged", | ||||
|     "test": "node --test ./test", | ||||
| @@ -46,23 +46,23 @@ | ||||
|     "markdown-it": "13.0.1" | ||||
|   }, | ||||
|   "devDependencies": { | ||||
|     "@commitlint/cli": "17.6.5", | ||||
|     "@commitlint/config-conventional": "17.6.5", | ||||
|     "@types/node": "20.3.1", | ||||
|     "editorconfig-checker": "5.0.1", | ||||
|     "eslint": "8.43.0", | ||||
|     "eslint-config-conventions": "9.0.0", | ||||
|     "@commitlint/cli": "17.6.6", | ||||
|     "@commitlint/config-conventional": "17.6.6", | ||||
|     "@types/node": "20.4.2", | ||||
|     "editorconfig-checker": "5.1.1", | ||||
|     "eslint": "8.45.0", | ||||
|     "eslint-config-conventions": "11.0.1", | ||||
|     "eslint-config-prettier": "8.8.0", | ||||
|     "eslint-plugin-import": "2.27.5", | ||||
|     "eslint-plugin-prettier": "4.2.1", | ||||
|     "eslint-plugin-prettier": "5.0.0", | ||||
|     "eslint-plugin-promise": "6.1.1", | ||||
|     "eslint-plugin-unicorn": "47.0.0", | ||||
|     "eslint-plugin-unicorn": "48.0.0", | ||||
|     "husky": "8.0.3", | ||||
|     "lint-staged": "13.2.2", | ||||
|     "lint-staged": "13.2.3", | ||||
|     "markdownlint": "0.29.0", | ||||
|     "markdownlint-cli2": "0.8.1", | ||||
|     "pinst": "3.0.0", | ||||
|     "prettier": "2.8.8", | ||||
|     "semantic-release": "21.0.5" | ||||
|     "prettier": "3.0.0", | ||||
|     "semantic-release": "21.0.7" | ||||
|   } | ||||
| } | ||||
|   | ||||
							
								
								
									
										16
									
								
								src/index.js
									
									
									
									
									
								
							
							
						
						
									
										16
									
								
								src/index.js
									
									
									
									
									
								
							| @@ -16,26 +16,28 @@ const customRule = { | ||||
|   tags: ['links'], | ||||
|   function: (params, onError) => { | ||||
|     filterTokens(params, 'inline', (token) => { | ||||
|       token.children.forEach((child) => { | ||||
|       for (const child of token.children) { | ||||
|         const { lineNumber, type, attrs } = child | ||||
|  | ||||
|         /** @type {string | null} */ | ||||
|         let hrefSrc = null | ||||
|  | ||||
|         if (type === 'link_open') { | ||||
|           attrs.forEach((attr) => { | ||||
|           for (const attr of attrs) { | ||||
|             if (attr[0] === 'href') { | ||||
|               hrefSrc = attr[1] | ||||
|               break | ||||
|             } | ||||
|           } | ||||
|           }) | ||||
|         } | ||||
|  | ||||
|         if (type === 'image') { | ||||
|           attrs.forEach((attr) => { | ||||
|           for (const attr of attrs) { | ||||
|             if (attr[0] === 'src') { | ||||
|               hrefSrc = attr[1] | ||||
|               break | ||||
|             } | ||||
|           } | ||||
|           }) | ||||
|         } | ||||
|  | ||||
|         if (hrefSrc != null) { | ||||
| @@ -51,7 +53,7 @@ const customRule = { | ||||
|                 lineNumber, | ||||
|                 `${detail} should exist in the file system` | ||||
|               ) | ||||
|               return | ||||
|               continue | ||||
|             } | ||||
|  | ||||
|             if (type === 'link_open' && url.hash !== '') { | ||||
| @@ -81,7 +83,7 @@ const customRule = { | ||||
|             } | ||||
|           } | ||||
|         } | ||||
|       }) | ||||
|       } | ||||
|     }) | ||||
|   } | ||||
| } | ||||
|   | ||||
| @@ -3,7 +3,7 @@ const MarkdownIt = require('markdown-it') | ||||
| /** | ||||
|  * Calls the provided function for each matching token. | ||||
|  * | ||||
|  * @param {Object} params RuleParams instance. | ||||
|  * @param {object} params RuleParams instance. | ||||
|  * @param {string} type Token type identifier. | ||||
|  * @param {Function} handler Callback function. | ||||
|  * @returns {void} | ||||
| @@ -19,12 +19,12 @@ const filterTokens = (params, type, handler) => { | ||||
| /** | ||||
|  * Adds a generic error object via the onError callback. | ||||
|  * | ||||
|  * @param {Object} onError RuleOnError instance. | ||||
|  * @param {object} onError RuleOnError instance. | ||||
|  * @param {number} lineNumber Line number. | ||||
|  * @param {string} [detail] Error details. | ||||
|  * @param {string} [context] Error context. | ||||
|  * @param {number[]} [range] Column and length of error. | ||||
|  * @param {Object} [fixInfo] RuleOnErrorFixInfo instance. | ||||
|  * @param {object} [fixInfo] RuleOnErrorFixInfo instance. | ||||
|  * @returns {void} | ||||
|  */ | ||||
| const addError = (onError, lineNumber, detail, context, range, fixInfo) => { | ||||
| @@ -52,7 +52,6 @@ const convertHeadingToHTMLFragment = (inlineText) => { | ||||
|       inlineText | ||||
|         .toLowerCase() | ||||
|         // RegExp source with Ruby's \p{Word} expanded into its General Categories | ||||
|         // eslint-disable-next-line max-len | ||||
|         // https://github.com/gjtorikian/html-pipeline/blob/main/lib/html/pipeline/toc_filter.rb | ||||
|         // https://ruby-doc.org/core-3.0.2/Regexp.html | ||||
|         .replace( | ||||
|   | ||||
		Reference in New Issue
	
	Block a user