diff --git a/index.js b/index.js
index 76f8f12..839a505 100644
--- a/index.js
+++ b/index.js
@@ -45,6 +45,10 @@ class MarkdownHeaderButtonElement extends MarkdownButtonElement {
super()
const level = parseInt(this.getAttribute('level') || 3, 10)
+ if (level < 1 || level > 6) {
+ return
+ }
+
const prefix = `${'#'.repeat(level)} `
styles.set(this, {
prefix
diff --git a/test/test.js b/test/test.js
index 6675d0b..25990b3 100644
--- a/test/test.js
+++ b/test/test.js
@@ -71,6 +71,7 @@ describe('markdown-toolbar-element', function() {
bold
header
h1
+ h1
italic
quote
code
@@ -497,11 +498,18 @@ describe('markdown-toolbar-element', function() {
clickToolbar('md-header')
assert.equal('### |title|', visualValue())
})
+
it('inserts header 1 syntax with cursor in description', function() {
setVisualValue('|title|')
clickToolbar('md-header[level="1"]')
assert.equal('# |title|', visualValue())
})
+
+ it('does not insert header for invalid level', function() {
+ setVisualValue('|title|')
+ clickToolbar('md-header[level="10"]')
+ assert.equal('|title|', visualValue())
+ })
})
})
})