From b0489e84a2dae0756abefe0a0580282fda58dc61 Mon Sep 17 00:00:00 2001 From: Jeremy Herve Date: Tue, 18 Apr 2023 09:40:32 +0200 Subject: [PATCH] Markdown block: add support for footnotes. Fixes #11849 Also see #18035 and #11881. This involves bringing in a new dependency to the Jetpack plugin: - https://github.com/markdown-it/markdown-it-footnote - MIT License --- pnpm-lock.yaml | 7 +++++++ .../jetpack/changelog/update-markdown-block-footnotes | 4 ++++ .../plugins/jetpack/extensions/blocks/markdown/renderer.js | 3 ++- projects/plugins/jetpack/package.json | 1 + 4 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 projects/plugins/jetpack/changelog/update-markdown-block-footnotes diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 60cffefa79859..3964f28d21660 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -2787,6 +2787,9 @@ importers: markdown-it: specifier: 12.3.2 version: 12.3.2 + markdown-it-footnote: + specifier: 3.0.3 + version: 3.0.3 photon: specifier: 4.0.0 version: 4.0.0 @@ -17206,6 +17209,10 @@ packages: resolution: {integrity: sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==} dev: true + /markdown-it-footnote@3.0.3: + resolution: {integrity: sha512-YZMSuCGVZAjzKMn+xqIco9d1cLGxbELHZ9do/TSYVzraooV8ypsppKNmUJ0fVH5ljkCInQAtFpm8Rb3eXSrt5w==} + dev: false + /markdown-it@12.3.2: resolution: {integrity: sha512-TchMembfxfNVpHkbtriWltGWc+m3xszaRD0CZup7GFFhzIgQqxIfn3eGj1yZpfuflzPvfkt611B2Q/Bsk1YnGg==} hasBin: true diff --git a/projects/plugins/jetpack/changelog/update-markdown-block-footnotes b/projects/plugins/jetpack/changelog/update-markdown-block-footnotes new file mode 100644 index 0000000000000..ae36b0a3b7278 --- /dev/null +++ b/projects/plugins/jetpack/changelog/update-markdown-block-footnotes @@ -0,0 +1,4 @@ +Significance: patch +Type: enhancement + +Markdown Block: add support for footnotes diff --git a/projects/plugins/jetpack/extensions/blocks/markdown/renderer.js b/projects/plugins/jetpack/extensions/blocks/markdown/renderer.js index d2f855301ded3..dc0a4a633be8b 100644 --- a/projects/plugins/jetpack/extensions/blocks/markdown/renderer.js +++ b/projects/plugins/jetpack/extensions/blocks/markdown/renderer.js @@ -2,11 +2,12 @@ import { __experimentalGetSpacingClassesAndStyles as getSpacingClassesAndStyles import { RawHTML } from '@wordpress/element'; import { __ } from '@wordpress/i18n'; import MarkdownIt from 'markdown-it'; +import footnote_plugin from 'markdown-it-footnote'; /** * Module variables */ -const markdownConverter = new MarkdownIt(); +const markdownConverter = new MarkdownIt().use( footnote_plugin ); const handleLinkClick = event => { if ( event.target.nodeName === 'A' ) { const hasConfirmed = window.confirm( diff --git a/projects/plugins/jetpack/package.json b/projects/plugins/jetpack/package.json index 736d074b8e0ea..1d7617e891afa 100644 --- a/projects/plugins/jetpack/package.json +++ b/projects/plugins/jetpack/package.json @@ -90,6 +90,7 @@ "jsdom": "20.0.3", "mapbox-gl": "1.13.0", "markdown-it": "12.3.2", + "markdown-it-footnote": "3.0.3", "photon": "4.0.0", "postcss-custom-properties": "12.1.7", "prop-types": "15.7.2",