From 772bf771514d2fffa6e2b9f4f7cc5c9fa65b3a05 Mon Sep 17 00:00:00 2001 From: Paul Slaughter Date: Thu, 16 Jul 2020 20:39:39 +0000 Subject: [PATCH] Revert "Merge branch 'bw-surround-text-wth-char' into 'master'" This reverts merge request !25748 --- .../javascripts/lib/utils/text_markdown.js | 34 ------------------- .../unreleased/bw-surround-text-wth-char.yml | 5 --- spec/frontend/lib/utils/text_markdown_spec.js | 34 +++---------------- 3 files changed, 5 insertions(+), 68 deletions(-) delete mode 100644 changelogs/unreleased/bw-surround-text-wth-char.yml diff --git a/app/assets/javascripts/lib/utils/text_markdown.js b/app/assets/javascripts/lib/utils/text_markdown.js index 05e2b6dca7e330..4d25ee9e4bd0f7 100644 --- a/app/assets/javascripts/lib/utils/text_markdown.js +++ b/app/assets/javascripts/lib/utils/text_markdown.js @@ -303,40 +303,7 @@ function updateText({ textArea, tag, cursorOffset, blockTag, wrap, select, tagCo }); } -/* eslint-disable @gitlab/require-i18n-strings */ -export function keypressNoteText(e) { - if (this.selectionStart === this.selectionEnd) { - return; - } - const keys = { - '*': '**{text}**', // wraps with bold character - _: '_{text}_', // wraps with italic character - '`': '`{text}`', // wraps with inline character - "'": "'{text}'", // single quotes - '"': '"{text}"', // double quotes - '[': '[{text}]', // brackets - '{': '{{text}}', // braces - '(': '({text})', // parentheses - '<': '<{text}>', // angle brackets - }; - const tag = keys[e.key]; - - if (tag) { - updateText({ - tag, - textArea: this, - blockTag: '', - wrap: true, - select: '', - tagContent: '', - }); - e.preventDefault(); - } -} -/* eslint-enable @gitlab/require-i18n-strings */ - export function addMarkdownListeners(form) { - $('.markdown-area').on('keydown', keypressNoteText); return $('.js-md', form) .off('click') .on('click', function() { @@ -373,6 +340,5 @@ export function addEditorMarkdownListeners(editor) { } export function removeMarkdownListeners(form) { - $('.markdown-area').off('keydown'); return $('.js-md', form).off('click'); } diff --git a/changelogs/unreleased/bw-surround-text-wth-char.yml b/changelogs/unreleased/bw-surround-text-wth-char.yml deleted file mode 100644 index 7395bb9c26b977..00000000000000 --- a/changelogs/unreleased/bw-surround-text-wth-char.yml +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Surround selected text in markdown fields on certain key presses -merge_request: 25748 -author: -type: added diff --git a/spec/frontend/lib/utils/text_markdown_spec.js b/spec/frontend/lib/utils/text_markdown_spec.js index 1aaae80dcdf3b4..2e52958a8289f7 100644 --- a/spec/frontend/lib/utils/text_markdown_spec.js +++ b/spec/frontend/lib/utils/text_markdown_spec.js @@ -1,4 +1,4 @@ -import { insertMarkdownText, keypressNoteText } from '~/lib/utils/text_markdown'; +import { insertMarkdownText } from '~/lib/utils/text_markdown'; describe('init markdown', () => { let textArea; @@ -115,15 +115,14 @@ describe('init markdown', () => { describe('with selection', () => { const text = 'initial selected value'; const selected = 'selected'; - let selectedIndex; - beforeEach(() => { textArea.value = text; - selectedIndex = text.indexOf(selected); + const selectedIndex = text.indexOf(selected); textArea.setSelectionRange(selectedIndex, selectedIndex + selected.length); }); it('applies the tag to the selected value', () => { + const selectedIndex = text.indexOf(selected); const tag = '*'; insertMarkdownText({ @@ -154,29 +153,6 @@ describe('init markdown', () => { expect(textArea.value).toEqual(text.replace(selected, `[${selected}](url)`)); }); - it.each` - key | expected - ${'['} | ${`[${selected}]`} - ${'*'} | ${`**${selected}**`} - ${"'"} | ${`'${selected}'`} - ${'_'} | ${`_${selected}_`} - ${'`'} | ${`\`${selected}\``} - ${'"'} | ${`"${selected}"`} - ${'{'} | ${`{${selected}}`} - ${'('} | ${`(${selected})`} - ${'<'} | ${`<${selected}>`} - `('generates $expected when $key is pressed', ({ key, expected }) => { - const event = new KeyboardEvent('keydown', { key }); - - textArea.addEventListener('keydown', keypressNoteText); - textArea.dispatchEvent(event); - - expect(textArea.value).toEqual(text.replace(selected, expected)); - - // cursor placement should be after selection + 2 tag lengths - expect(textArea.selectionStart).toBe(selectedIndex + expected.length); - }); - describe('and text to be selected', () => { const tag = '[{text}](url)'; const select = 'url'; @@ -202,7 +178,7 @@ describe('init markdown', () => { it('selects the right text when multiple tags are present', () => { const initialValue = `${tag} ${tag} ${selected}`; textArea.value = initialValue; - selectedIndex = initialValue.indexOf(selected); + const selectedIndex = initialValue.indexOf(selected); textArea.setSelectionRange(selectedIndex, selectedIndex + selected.length); insertMarkdownText({ textArea, @@ -228,7 +204,7 @@ describe('init markdown', () => { const initialValue = `text ${expectedUrl} text`; textArea.value = initialValue; - selectedIndex = initialValue.indexOf(expectedUrl); + const selectedIndex = initialValue.indexOf(expectedUrl); textArea.setSelectionRange(selectedIndex, selectedIndex + expectedUrl.length); insertMarkdownText({ -- GitLab