From 6d1e64d9ff4f02e78c9e5f88ccd9a792537c032a Mon Sep 17 00:00:00 2001 From: Titus Wormer Date: Tue, 24 Oct 2023 16:53:45 +0200 Subject: [PATCH] Refactor some more --- docs/blog/v2.mdx | 4 +- docs/community/sponsor.mdx | 2 +- docs/community/support.mdx | 2 +- docs/docs/getting-started.mdx | 2 +- docs/docs/troubleshooting-mdx.mdx | 4 +- docs/index.mdx | 11 +- docs/migrating/v2.mdx | 2 +- package-lock.json | 143 +++++++++------------- packages/loader/lib/index.js | 2 +- packages/mdx/lib/core.js | 4 +- packages/mdx/lib/plugin/recma-document.js | 2 + packages/mdx/readme.md | 6 +- packages/remark-mdx/license | 31 +++-- 13 files changed, 89 insertions(+), 126 deletions(-) diff --git a/docs/blog/v2.mdx b/docs/blog/v2.mdx index b6ecde4cc..8ab4fb81c 100644 --- a/docs/blog/v2.mdx +++ b/docs/blog/v2.mdx @@ -232,13 +232,13 @@ We’re grateful for these contributions and all those individual insights, but over the years it did result in some inconsistencies and duplicated content. For version 2, we rewrote our docs from beginning to end to tell a consistent -story for new users, folks wanting to do complex AST and compiler stuff, and +story for new users, folks that do complex AST and compiler stuff, and anyone in between. We also made a new website. It’s built on MDX of course, [unified][] itself, and [React Server Components (RSC)][rsc]. -While we have to dogfood the former two as they’re projects we maintain, and the +While we dogfood the former two as they’re projects we maintain, and the latter is extremely experimental, we think compiling things ahead of time and betting on hybrid models, compared to completely server-side sites or completely client-side apps, is the smart choice for us and the web’s future. diff --git a/docs/community/sponsor.mdx b/docs/community/sponsor.mdx index d9d19214c..4a543d853 100644 --- a/docs/community/sponsor.mdx +++ b/docs/community/sponsor.mdx @@ -16,7 +16,7 @@ This article explains how to contribute financially to MDX. It’s possible to support us financially by becoming a backer or sponsor of unified through either [Open Collective][oc] or [GitHub Sponsors][gh]. With this support, we can pay for project leadership, finance non-coding work, -or to do fun things for the community like getting stickers for contributors. +or for fun things for the community like getting stickers for contributors. You’ll be helping unified’s maintainers manage and improve existing projects, and additionally support our work to develop new and exciting projects, such as [micromark][]. diff --git a/docs/community/support.mdx b/docs/community/support.mdx index add450063..66cd44169 100644 --- a/docs/community/support.mdx +++ b/docs/community/support.mdx @@ -37,7 +37,7 @@ Here are some tips: * Don’t fall for the [XY problem][xy] * Search to find out if a similar question has been asked * Try to define what you need help with: - * Is there something in particular you want to do? + * Is there something in particular you want? * What problem are you encountering and what steps have you taken to try and fix it? * Is there a concept you don’t understand? diff --git a/docs/docs/getting-started.mdx b/docs/docs/getting-started.mdx index 334b9cd57..e66350eba 100644 --- a/docs/docs/getting-started.mdx +++ b/docs/docs/getting-started.mdx @@ -92,7 +92,7 @@ Now you’ve set up an integration or `@mdx-js/mdx` itself, it’s time to configure your JSX runtime. * if you use **React**, - you don’t need to do anything; + that’s the default; optionally install and configure [`@mdx-js/react`][mdx-react] * if you use **Preact**, set [`jsxImportSource` in `ProcessorOptions`][api-processor-options] to diff --git a/docs/docs/troubleshooting-mdx.mdx b/docs/docs/troubleshooting-mdx.mdx index eefd4090a..33bb4976c 100644 --- a/docs/docs/troubleshooting-mdx.mdx +++ b/docs/docs/troubleshooting-mdx.mdx @@ -97,7 +97,7 @@ one short-term solution is to use a bundler to make a CJS version. ## Problems using MDX -Problems that occur when using MDX typically have to do with the APIs of +Problems that occur when using MDX typically relate to the APIs of [our packages](/packages/) and how to use them. Please see the documentation of the packages, functions, and options you are using for more info and examples. @@ -215,7 +215,7 @@ Likely set to `import.meta.url` (or `window.location.href`). ## Problems writing MDX -Problems that occur when writing MDX typically have to do with how to combine +Problems that occur when writing MDX typically have relate to how to combine JS(X) and markdown. It’s an odd mix of two languages: markdown is **whitespace sensitive** and **forgiving** (what you type may not exactly work but it won’t crash) whereas diff --git a/docs/index.mdx b/docs/index.mdx index c8612998a..d0ced4e5e 100644 --- a/docs/index.mdx +++ b/docs/index.mdx @@ -137,16 +137,11 @@ You’re using React, Preact, or Vue. during the build stage -{/* To do: quotes. */} - -> It’s extremely useful for using design system components to render markdown -> and weaving interactive components in with existing markdown. +> lol mdx is so good > -> — [**@chrisbiscardi**][quote] - -{/* [v3]: /blog/v3/ */} +> — [**@dan\_abramov**][quote] -[quote]: https://twitter.com/chrisbiscardi/status/1022304288326864896 +[quote]: https://twitter.com/dan_abramov/status/1286411354996449281 [what]: /docs/what-is-mdx/ diff --git a/docs/migrating/v2.mdx b/docs/migrating/v2.mdx index bb9ffb0d2..a1ae803ab 100644 --- a/docs/migrating/v2.mdx +++ b/docs/migrating/v2.mdx @@ -607,7 +607,7 @@ We turned off GFM features in MDX by default. GFM extends CommonMark to add autolink literals, footnotes, strikethrough, tables, and task lists. If you do want these features, you can use a plugin. -How to do so is described in [our guide on GFM][guide-gfm]. +See [our guide on GFM][guide-gfm]. ## Update MDX content diff --git a/package-lock.json b/package-lock.json index 1a56382e6..3c42a299e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1541,9 +1541,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "20.8.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.8.7.tgz", - "integrity": "sha512-21TKHHh3eUHIi2MloeptJWALuCu5H7HQTdTrWIFReA8ad+aggoX+lRes3ex7/FtpC+sVUpFMQ+QTfYr74mruiQ==", + "version": "20.8.8", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.8.8.tgz", + "integrity": "sha512-YRsdVxq6OaLfmR9Hy816IMp33xOBjfyOgUd77ehqg96CFywxAPbDbXvAsuN2KVg2HOT8Eh6uAfU+l4WffwPVrQ==", "dependencies": { "undici-types": "~5.25.1" } @@ -1644,16 +1644,16 @@ } }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.8.0.tgz", - "integrity": "sha512-GosF4238Tkes2SHPQ1i8f6rMtG6zlKwMEB0abqSJ3Npvos+doIlc/ATG+vX1G9coDF3Ex78zM3heXHLyWEwLUw==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.9.0.tgz", + "integrity": "sha512-lgX7F0azQwRPB7t7WAyeHWVfW1YJ9NIgd9mvGhfQpRY56X6AVf8mwM8Wol+0z4liE7XX3QOt8MN1rUKCfSjRIA==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.8.0", - "@typescript-eslint/type-utils": "6.8.0", - "@typescript-eslint/utils": "6.8.0", - "@typescript-eslint/visitor-keys": "6.8.0", + "@typescript-eslint/scope-manager": "6.9.0", + "@typescript-eslint/type-utils": "6.9.0", + "@typescript-eslint/utils": "6.9.0", + "@typescript-eslint/visitor-keys": "6.9.0", "debug": "^4.3.4", "graphemer": "^1.4.0", "ignore": "^5.2.4", @@ -1706,15 +1706,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.8.0.tgz", - "integrity": "sha512-5tNs6Bw0j6BdWuP8Fx+VH4G9fEPDxnVI7yH1IAPkQH5RUtvKwRoqdecAPdQXv4rSOADAaz1LFBZvZG7VbXivSg==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.9.0.tgz", + "integrity": "sha512-GZmjMh4AJ/5gaH4XF2eXA8tMnHWP+Pm1mjQR2QN4Iz+j/zO04b9TOvJYOX2sCNIQHtRStKTxRY1FX7LhpJT4Gw==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "6.8.0", - "@typescript-eslint/types": "6.8.0", - "@typescript-eslint/typescript-estree": "6.8.0", - "@typescript-eslint/visitor-keys": "6.8.0", + "@typescript-eslint/scope-manager": "6.9.0", + "@typescript-eslint/types": "6.9.0", + "@typescript-eslint/typescript-estree": "6.9.0", + "@typescript-eslint/visitor-keys": "6.9.0", "debug": "^4.3.4" }, "engines": { @@ -1734,13 +1734,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.8.0.tgz", - "integrity": "sha512-xe0HNBVwCph7rak+ZHcFD6A+q50SMsFwcmfdjs9Kz4qDh5hWhaPhFjRs/SODEhroBI5Ruyvyz9LfwUJ624O40g==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.9.0.tgz", + "integrity": "sha512-1R8A9Mc39n4pCCz9o79qRO31HGNDvC7UhPhv26TovDsWPBDx+Sg3rOZdCELIA3ZmNoWAuxaMOT7aWtGRSYkQxw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.8.0", - "@typescript-eslint/visitor-keys": "6.8.0" + "@typescript-eslint/types": "6.9.0", + "@typescript-eslint/visitor-keys": "6.9.0" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -1751,13 +1751,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.8.0.tgz", - "integrity": "sha512-RYOJdlkTJIXW7GSldUIHqc/Hkto8E+fZN96dMIFhuTJcQwdRoGN2rEWA8U6oXbLo0qufH7NPElUb+MceHtz54g==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.9.0.tgz", + "integrity": "sha512-XXeahmfbpuhVbhSOROIzJ+b13krFmgtc4GlEuu1WBT+RpyGPIA4Y/eGnXzjbDj5gZLzpAXO/sj+IF/x2GtTMjQ==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "6.8.0", - "@typescript-eslint/utils": "6.8.0", + "@typescript-eslint/typescript-estree": "6.9.0", + "@typescript-eslint/utils": "6.9.0", "debug": "^4.3.4", "ts-api-utils": "^1.0.1" }, @@ -1778,9 +1778,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.8.0.tgz", - "integrity": "sha512-p5qOxSum7W3k+llc7owEStXlGmSl8FcGvhYt8Vjy7FqEnmkCVlM3P57XQEGj58oqaBWDQXbJDZxwUWMS/EAPNQ==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.9.0.tgz", + "integrity": "sha512-+KB0lbkpxBkBSiVCuQvduqMJy+I1FyDbdwSpM3IoBS7APl4Bu15lStPjgBIdykdRqQNYqYNMa8Kuidax6phaEw==", "dev": true, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -1791,13 +1791,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.8.0.tgz", - "integrity": "sha512-ISgV0lQ8XgW+mvv5My/+iTUdRmGspducmQcDw5JxznasXNnZn3SKNrTRuMsEXv+V/O+Lw9AGcQCfVaOPCAk/Zg==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.9.0.tgz", + "integrity": "sha512-NJM2BnJFZBEAbCfBP00zONKXvMqihZCrmwCaik0UhLr0vAgb6oguXxLX1k00oQyD+vZZ+CJn3kocvv2yxm4awQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.8.0", - "@typescript-eslint/visitor-keys": "6.8.0", + "@typescript-eslint/types": "6.9.0", + "@typescript-eslint/visitor-keys": "6.9.0", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -1874,17 +1874,17 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.8.0.tgz", - "integrity": "sha512-dKs1itdE2qFG4jr0dlYLQVppqTE+Itt7GmIf/vX6CSvsW+3ov8PbWauVKyyfNngokhIO9sKZeRGCUo1+N7U98Q==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.9.0.tgz", + "integrity": "sha512-5Wf+Jsqya7WcCO8me504FBigeQKVLAMPmUzYgDbWchINNh1KJbxCgVya3EQ2MjvJMVeXl3pofRmprqX6mfQkjQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.8.0", - "@typescript-eslint/types": "6.8.0", - "@typescript-eslint/typescript-estree": "6.8.0", + "@typescript-eslint/scope-manager": "6.9.0", + "@typescript-eslint/types": "6.9.0", + "@typescript-eslint/typescript-estree": "6.9.0", "semver": "^7.5.4" }, "engines": { @@ -1926,12 +1926,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.8.0.tgz", - "integrity": "sha512-oqAnbA7c+pgOhW2OhGvxm0t1BULX5peQI/rLsNDpGM78EebV3C9IGbX5HNZabuZ6UQrYveCLjKo8Iy/lLlBkkg==", + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.9.0.tgz", + "integrity": "sha512-dGtAfqjV6RFOtIP8I0B4ZTBRrlTT8NHHlZZSchQx3qReaoDeXhYM++M4So2AgFK9ZB0emRPA6JI1HkafzA2Ibg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.8.0", + "@typescript-eslint/types": "6.9.0", "eslint-visitor-keys": "^3.4.1" }, "engines": { @@ -3973,9 +3973,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.563", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.563.tgz", - "integrity": "sha512-dg5gj5qOgfZNkPNeyKBZQAQitIQ/xwfIDmEQJHCbXaD9ebTZxwJXUsDYcBlAvZGZLi+/354l35J1wkmP6CqYaw==" + "version": "1.4.565", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.565.tgz", + "integrity": "sha512-XbMoT6yIvg2xzcbs5hCADi0dXBh4//En3oFXmtPX+jiyyiCTiM9DGFT2SLottjpEs9Z8Mh8SqahbR96MaHfuSg==" }, "node_modules/emoji-regex": { "version": "9.2.2", @@ -3983,17 +3983,6 @@ "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", "dev": true }, - "node_modules/encoding": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", - "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "iconv-lite": "^0.6.2" - } - }, "node_modules/end-of-stream": { "version": "1.4.4", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", @@ -6678,20 +6667,6 @@ "node": ">=10.17.0" } }, - "node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/ieee754": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", @@ -11791,24 +11766,24 @@ } }, "node_modules/puppeteer": { - "version": "21.4.0", - "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-21.4.0.tgz", - "integrity": "sha512-KkiDe39NJxlw7fyiN6fieM9SVsewzt037nUZRoffNuFtYdAl5rRLVtleBuVZ5i1swK/R4CmA6Pbka/ytpFCu4Q==", + "version": "21.4.1", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-21.4.1.tgz", + "integrity": "sha512-opJqQeYMjAB3ICG8lCF3wtSs9k05dozmrEMrHgo3ZWbISiy8qbv/yAJz/6Io221qSh3yURfVf6Z7crrlzKZjLQ==", "dev": true, "hasInstallScript": true, "dependencies": { "@puppeteer/browsers": "1.8.0", "cosmiconfig": "8.3.6", - "puppeteer-core": "21.4.0" + "puppeteer-core": "21.4.1" }, "engines": { "node": ">=16.3.0" } }, "node_modules/puppeteer-core": { - "version": "21.4.0", - "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-21.4.0.tgz", - "integrity": "sha512-ONYjYgHItm6i9WdJf+MnRTRPB4HegwPbPfi1jjNN0LCW3rnNich/5hXgZFcn2oWvgFc8DWLDIcwly7C8z+EvIw==", + "version": "21.4.1", + "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-21.4.1.tgz", + "integrity": "sha512-Lh0e+oGhUquxVOi1U701gTfFLFvw5gDBFh3CWpnfAvtItmyZKUce4R54VNfOJfi+KKnzhVPdB/lDrg65gdRIng==", "dev": true, "dependencies": { "@puppeteer/browsers": "1.8.0", @@ -25088,14 +25063,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true, - "optional": true, - "peer": true - }, "node_modules/scheduler": { "version": "0.23.0", "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", diff --git a/packages/loader/lib/index.js b/packages/loader/lib/index.js index 6aa72b808..4a8e101ba 100644 --- a/packages/loader/lib/index.js +++ b/packages/loader/lib/index.js @@ -61,7 +61,7 @@ export function loader(value, callback) { /* c8 ignore next -- some loaders set `undefined` (see `TypeStrong/ts-loader`). */ const compiler = this._compiler || marker - // To do: next major (MDX 4?): remove. + // To do: next major: remove. if ('renderer' in config) { callback( new Error( diff --git a/packages/mdx/lib/core.js b/packages/mdx/lib/core.js index 258a250dc..325ed2536 100644 --- a/packages/mdx/lib/core.js +++ b/packages/mdx/lib/core.js @@ -62,8 +62,8 @@ * in most cases `'program'` should be used, it results in a whole program; * internally `evaluate` uses `'function-body'` to compile to * code that can be passed to `run`; - * in some cases, you might want to do what `evaluate` does in separate steps - * yourself, such as when compiling on the server and running on the client. + * in some cases, you might want what `evaluate` does in separate steps, such + * as when compiling on the server and running on the client. * @property {string | null | undefined} [pragma='React.createElement'] * Pragma for JSX, used in the classic runtime as an identifier for function * calls: `` to `React.createElement('x')` (default: diff --git a/packages/mdx/lib/plugin/recma-document.js b/packages/mdx/lib/plugin/recma-document.js index 516158423..fec6ce0b8 100644 --- a/packages/mdx/lib/plugin/recma-document.js +++ b/packages/mdx/lib/plugin/recma-document.js @@ -390,6 +390,8 @@ export function recmaDocument(options) { return } + // To do: add support for `import.meta.resolve`. + if ( node.type === 'MemberExpression' && 'object' in node && diff --git a/packages/mdx/readme.md b/packages/mdx/readme.md index a04d5908d..64d26bf3b 100644 --- a/packages/mdx/readme.md +++ b/packages/mdx/readme.md @@ -743,8 +743,8 @@ Configuration for `createProcessor` (TypeScript type). in most cases `'program'` should be used, it results in a whole program; internally [`evaluate`][api-evaluate] uses `'function-body'` to compile to code that can be passed to [`run`][api-run]; - in some cases, you might want to do what `evaluate` does in separate steps - yourself, such as when compiling on the server and running on the client. + in some cases, you might want what `evaluate` does in separate steps, such + as when compiling on the server and running on the client.
Expand example @@ -1114,7 +1114,7 @@ respectively. After markdown, we go to [hast][] (HTML). This transformation is done by [`syntax-tree/mdast-util-to-hast`][mdast-util-to-hast]. -Wait, why, what does HTML have to do with it? +Wait, why, what is HTML needed? Part of the reason is that we care about HTML semantics: we want to know that something is an ``, not whether it’s a link with a resource (`[text](url)`) or a reference to a defined link definition (`[text][id]\n\n[id]: url`). diff --git a/packages/remark-mdx/license b/packages/remark-mdx/license index 39372356c..a87704dd3 100644 --- a/packages/remark-mdx/license +++ b/packages/remark-mdx/license @@ -2,21 +2,20 @@ Copyright (c) 2020 Titus Wormer -Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -'Software'), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions: +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be -included in all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, -TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE -SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE.