Skip to content

Commit

Permalink
Refactor to move implementation to lib/
Browse files Browse the repository at this point in the history
  • Loading branch information
wooorm committed Jan 9, 2023
1 parent 65f0c8b commit 53d7e41
Show file tree
Hide file tree
Showing 3 changed files with 27 additions and 25 deletions.
26 changes: 1 addition & 25 deletions index.js
Original file line number Diff line number Diff line change
@@ -1,25 +1 @@
/**
* @typedef {import('hast').Root} Root
* @typedef {import('hast').Content} Content
*/

/**
* @typedef {Root | Content} Node
*/

// To do next major: return `undefined`.
/**
* Rank of a heading: H1 -> 1, H2 -> 2, etc.
*
* @param {Node} node
* @returns {number | null}
*/
export function headingRank(node) {
const name =
(node && node.type === 'element' && node.tagName.toLowerCase()) || ''
const code =
name.length === 2 && name.charCodeAt(0) === 104 /* `h` */
? name.charCodeAt(1)
: 0
return code > 48 /* `0` */ && code < 55 /* `7` */ ? code - 48 /* `0` */ : null
}
export {headingRank} from './lib/index.js'
25 changes: 25 additions & 0 deletions lib/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
/**
* @typedef {import('hast').Root} Root
* @typedef {import('hast').Content} Content
*/

/**
* @typedef {Root | Content} Node
*/

// To do next major: return `undefined`.
/**
* Rank of a heading: H1 -> 1, H2 -> 2, etc.
*
* @param {Node} node
* @returns {number | null}
*/
export function headingRank(node) {
const name =
(node && node.type === 'element' && node.tagName.toLowerCase()) || ''
const code =
name.length === 2 && name.charCodeAt(0) === 104 /* `h` */
? name.charCodeAt(1)
: 0
return code > 48 /* `0` */ && code < 55 /* `7` */ ? code - 48 /* `0` */ : null
}
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
"main": "index.js",
"types": "index.d.ts",
"files": [
"lib/",
"index.d.ts",
"index.js"
],
Expand Down

0 comments on commit 53d7e41

Please sign in to comment.