From 39cba1f36cdbdb815f8865668447cbe3700b4e94 Mon Sep 17 00:00:00 2001 From: Eric Chen Date: Mon, 13 Nov 2023 21:45:17 +0800 Subject: [PATCH] feat: docusaurus v3 --- README.md | 18 +- lib/auto-tabs.mjs | 162 +- lib/doc-card-list.mjs | 83 +- lib/draft-admonition.mjs | 93 +- package.json | 25 +- pnpm-lock.yaml | 817 ++++++- test/auto-tabs.mjs | 10 +- test/doc-card-list.mjs | 20 +- test/draft-admonition.mjs | 39 +- test/helper/lib.mjs | 54 +- test/snapshots/auto-tabs.mjs.md | 2672 ++++++++++++++++++++-- test/snapshots/auto-tabs.mjs.snap | Bin 2015 -> 5380 bytes test/snapshots/doc-card-list.mjs.md | 112 +- test/snapshots/doc-card-list.mjs.snap | Bin 1136 -> 1369 bytes test/snapshots/draft-admonition.mjs.md | 242 +- test/snapshots/draft-admonition.mjs.snap | Bin 1041 -> 1959 bytes 16 files changed, 3884 insertions(+), 463 deletions(-) diff --git a/README.md b/README.md index e428593..5ed62d9 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,7 @@ module.exports = async () => { 'classic', { docs: { - remarkPlugins: [autoTabs, docCardList] + beforeDefaultRemarkPlugins: [autoTabs, docCardList] } } ] @@ -42,11 +42,12 @@ module.exports = async () => { ### DocCardList -#### Options.placeholder +#### Options.version -- type: `string` -- minLength: 5 -- default: `:docusaurus-doc-card-list` +- type: `integer` +- enum: [2, 3] +- default: 2 +- description: Docusaurus version Turn: @@ -78,6 +79,13 @@ foo bar - default: {} - description: Will merge with default presets +#### Options.version + +- type: `integer` +- enum: [2, 3] +- default: 2 +- description: Docusaurus version + Turn: ````markdown diff --git a/lib/auto-tabs.mjs b/lib/auto-tabs.mjs index 62e0bb6..07c7236 100644 --- a/lib/auto-tabs.mjs +++ b/lib/auto-tabs.mjs @@ -10,14 +10,22 @@ function isTab({ type, meta }, _, parent) { ); } -function needImport(nodes, text) { +function matchStatement(value, target) { + return value === target || value === target.replaceAll("'", '"'); +} + +function needImport(version, nodes, target) { return !nodes.some( - ({ type, value }) => type === 'import' && value.includes(text), + ({ type, value }) => + (version === 2 ? type === 'import' : type === 'mdxjsEsm') && + matchStatement(value, target), ); } -function importStatement(value) { - return { type: 'import', value }; +function importStatement(version, value) { + return version === 2 + ? { type: 'import', value } + : { type: 'mdxjsEsm', value }; } const presets = { @@ -31,6 +39,36 @@ const presets = { toml: 'TOML', }; +function isFirstItem(node, index, parent) { + if ( + parent?.type !== 'root' || + parent?.is === 'Tabs-tag' || + node.is !== 'TabItem-tag' + ) { + return false; + } + + const prev = parent.children[index - 1]; + + return !prev || prev.is !== 'TabItem-tag'; +} + +function isEndItem(startIndex) { + return (node, index, parent) => { + if ( + parent?.type !== 'root' || + node.is !== 'TabItem-tag' || + index < startIndex + ) { + return false; + } + + const next = parent.children[index + 1]; + + return !next || next.is !== 'TabItem-tag'; + }; +} + function isFirst(node, index, parent) { if (parent?.type !== 'root') { return false; @@ -51,22 +89,21 @@ function isLast(node, index, parent) { return false; } - const prev = parent.children[index + 1]; + const next = parent.children[index + 1]; return ( node.is === 'TabItem-end-tag' && - (prev - ? prev.is !== 'TabItem-begin-tag' && prev.is !== 'Tabs-end-tag' - : true) + (!next || (next.is !== 'TabItem-begin-tag' && next.is !== 'Tabs-end-tag')) ); } /* eslint-disable no-param-reassign */ -export function autoTabs({ labels = {} } = {}) { +export function autoTabs({ labels = {}, version = 2 } = {}) { assert( labels && typeof labels === 'object' && !Array.isArray(labels), new TypeError('`labels` should be object'), ); + assert([2, 3].includes(version), new TypeError('`version` should be 2 or 3')); const allLabels = { ...presets, ...labels }; @@ -93,43 +130,94 @@ export function autoTabs({ labels = {} } = {}) { node.meta = stringify(meta); - parent.children.splice(index + 1, 0, { - type: 'jsx', - is: 'TabItem-end-tag', - value: '', - }); - - parent.children.splice(index, 0, { - type: 'jsx', - is: 'TabItem-begin-tag', - value: ``, - }); + if (version === 2) { + parent.children.splice(index + 1, 0, { + type: 'jsx', + is: 'TabItem-end-tag', + value: '', + }); + + parent.children.splice(index, 0, { + type: 'jsx', + is: 'TabItem-begin-tag', + value: ``, + }); + } else { + parent.children[index] = { + type: 'mdxJsxFlowElement', + name: 'TabItem', + is: 'TabItem-tag', + attributes: [ + { + type: 'mdxJsxAttribute', + name: 'label', + value: label, + }, + { + type: 'mdxJsxAttribute', + name: 'value', + value: `tab-${label}-${lang}`, + }, + ], + children: [ + { type: 'text', value: '' }, + node, + { type: 'text', value: '' }, + ], + }; + } }); - visit(tree, isFirst, (node, index, parent) => { - haveTabs = true; - parent.children.splice(index, 0, { - type: 'jsx', - is: 'Tabs-begin-tag', - value: '', + if (version === 2) { + visit(tree, isFirst, (node, index, parent) => { + haveTabs = true; + parent.children.splice(index, 0, { + type: 'jsx', + is: 'Tabs-begin-tag', + value: '', + }); }); - }); - visit(tree, isLast, (node, index, parent) => { - parent.children.splice(index + 1, 0, { - type: 'jsx', - is: 'Tabs-end-tag', - value: '', + visit(tree, isLast, (node, index, parent) => { + parent.children.splice(index + 1, 0, { + type: 'jsx', + is: 'Tabs-end-tag', + value: '', + }); }); - }); + } else { + visit( + tree, + isFirstItem, + (node, startIndex, parent) => { + haveTabs = true; + + visit(tree, isEndItem(startIndex), (_, endIndex) => { + parent.children.splice(startIndex, endIndex - startIndex - 1, { + type: 'mdxJsxFlowElement', + name: 'Tabs', + is: 'Tabs-tag', + children: [ + { type: 'text', value: '' }, + ...parent.children.slice(startIndex, endIndex + 1), + { type: 'text', value: '' }, + ], + }); + }); + }, + true, + ); + } - if (haveTabs && needImport(tree.children, '@theme/Tabs')) { - tree.children.unshift(importStatement("import Tabs from '@theme/Tabs'")); + if (haveTabs && needImport(version, tree.children, '@theme/Tabs')) { + tree.children.unshift( + importStatement(version, "import Tabs from '@theme/Tabs';"), + ); } - if (haveTabItem && needImport(tree.children, '@theme/TabItem')) { + if (haveTabItem && needImport(version, tree.children, '@theme/TabItem')) { tree.children.unshift( - importStatement("import TabItem from '@theme/TabItem';"), + importStatement(version, "import TabItem from '@theme/TabItem';"), ); } }; diff --git a/lib/doc-card-list.mjs b/lib/doc-card-list.mjs index 017e410..0cab0b1 100644 --- a/lib/doc-card-list.mjs +++ b/lib/doc-card-list.mjs @@ -1,60 +1,73 @@ -import { strict as assert } from 'assert'; +import { strict as assert } from 'node:assert'; import { visit } from 'unist-util-visit'; -function needImport(nodes, text) { - return !nodes.some( - ({ type, value }) => type === 'import' && value.includes(text), +const placeholder = 'docusaurus-doc-card-list'; + +function isDirective({ type, children: [line] = [] }, _, parent) { + return ( + parent?.type === 'root' && + type === 'paragraph' && + line && + ((line.type === 'textDirective' && line.name === placeholder) || + (line.type === 'text' && line.value === `:${placeholder}`)) ); } -function importStatement(value) { - return { type: 'import', value }; -} +const importStatement = "import DocCardList from '@theme/DocCardList';"; -function isDirective(placeholder) { - return ({ type, children: [line] = [] }, _, parent) => { - return ( - parent?.type === 'root' && - type === 'paragraph' && - line?.type === 'text' && - line?.value === placeholder - ); - }; +function matchStatement(value) { + return ( + value === importStatement || value === importStatement.replaceAll("'", '"') + ); } /* eslint-disable no-param-reassign */ -export function docCardList({ - placeholder = ':docusaurus-doc-card-list', -} = {}) { - assert( - typeof placeholder === 'string', - new TypeError('`placeholder` should be string'), - ); - - assert( - placeholder.length > 5, - new TypeError('`placeholder` should be longer than 5 characters'), - ); +export function docCardList({ version = 2 } = {}) { + assert([2, 3].includes(version), new TypeError('`version` should be 2 or 3')); return (tree) => { let haveDirective = false; - visit(tree, isDirective(placeholder), (_, index, parent) => { + visit(tree, isDirective, (_, index, parent) => { if (!haveDirective) { haveDirective = true; } parent.children[index] = { - type: 'jsx', - value: '', + ...(version === 2 + ? { type: 'jsx', value: '' } + : { + type: 'mdxJsxFlowElement', + name: 'DocCardList', + }), }; }); - if (haveDirective && needImport(tree.children, '@theme/DocCardList')) { - tree.children.unshift( - importStatement("import DocCardList from '@theme/DocCardList';"), - ); + if (haveDirective) { + if ( + version === 2 && + !tree.children.some( + ({ type, value }) => type === 'import' && matchStatement(value), + ) + ) { + tree.children.unshift({ + type: 'import', + value: importStatement, + }); + } + + if ( + version === 3 && + !tree.children.some( + ({ type, value }) => type === 'mdxjsEsm' && matchStatement(value), + ) + ) { + tree.children.unshift({ + type: 'mdxjsEsm', + value: "import DocCardList from '@theme/DocCardList';", + }); + } } }; } diff --git a/lib/draft-admonition.mjs b/lib/draft-admonition.mjs index 6ecb2bb..88bf443 100644 --- a/lib/draft-admonition.mjs +++ b/lib/draft-admonition.mjs @@ -1,53 +1,78 @@ -import { strict as assert } from 'assert'; +import { strict as assert } from 'node:assert'; + +import { parse } from 'yaml'; + +const _meta = { draftSAdmonition: true }; + +function isDraft(input) { + try { + return parse(input).draft === true; + } catch { + return false; + } +} export function draftSAdmonition({ text = '', - type = 'info', + type = '_meta', title = 'Drafted', + version = 2, } = {}) { assert(typeof title === 'string', new TypeError('`title` should be string')); assert(typeof type === 'string', new TypeError('`type` should be string')); assert(typeof text === 'string', new TypeError('`text` should be string')); + assert([2, 3].includes(version), new TypeError('`version` should be 2 or 3')); return (tree) => { - if (!tree.children.some((node) => node.meta?.draftSAdmonition)) { + if ( + text && + (version === 2 || + tree.children.some( + (node) => node.type === 'yaml' && isDraft(node.value), + )) && + !tree.children.some((node) => node._meta?.draftSAdmonition) + ) { const index = tree.children.findIndex( (node) => node.type === 'heading' && node.depth === 1, ) || 0; - tree.children.splice( - index + 1, - 0, - { - type: 'jsx', - meta: { draftSAdmonition: true }, - value: '', - }, - ); + ); + } else { + tree.children.splice(index + 1, 0, { + type: 'containerDirective', + name: type, + children: [context], + }); + } } }; } diff --git a/package.json b/package.json index a3626f2..ec09d52 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "remark-docusaurus", - "version": "0.2.3", + "version": "0.3.9", "description": "Remark plugin for docusaurus features", "license": "MIT", "author": { @@ -37,26 +37,33 @@ "lint:staged": "nice-move lint staged", "prepare": "nice-move git hooks", "prepublishOnly": "pnpm run lint:staged && pnpm test", - "snapshot": "ava --fail-fast -u -w", - "test": "ava --fail-fast" + "snapshot": "ava --fail-fast -u -w -T 10s", + "test": "ava --fail-fast -T 10s" }, "dependencies": { "markdown-code-block-meta": "^0.0.2", "titleize": "^4.0.0", - "unist-util-visit": "^5.0.0" + "unist-util-visit": "^5.0.0", + "yaml": "^2.3.4" }, "devDependencies": { "@bring-it/npm": "^0.3.9", - "@nice-move/cli": "^0.10.14", + "@nice-move/cli": "^0.11.1", "@nice-move/eslint-config-base": "^0.9.23", "@nice-move/prettier-config": "^0.9.8", "ava": "^5.3.1", "eslint": "^8.53.0", "eslint-plugin-ava": "^14.0.0", "garou": "^0.6.17", - "prettier": "^3.0.3", - "remark": "^12.0.1", - "remark-mdx": "^1.6.22", + "lodash": "^4.17.21", + "prettier": "^3.1.0", + "remark": "^15.0.1", + "remark-12": "npm:remark@12", + "remark-admonitions": "^1.2.1", + "remark-directive": "^3.0.0", + "remark-frontmatter": "^5.0.0", + "remark-mdx": "^3.0.0", + "remark-mdx-1": "npm:remark-mdx@^1.6.22", "unist-util-remove-position": "^5.0.0" }, "engines": { @@ -66,7 +73,7 @@ "access": "public", "registry": "https://registry.npmjs.org/" }, - "packageManager": "pnpm@8.8.0", + "packageManager": "pnpm@8.10.3", "eslintConfig": { "extends": "@nice-move/eslint-config-base" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 86e4e35..aad2388 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -14,20 +14,23 @@ dependencies: unist-util-visit: specifier: ^5.0.0 version: 5.0.0 + yaml: + specifier: ^2.3.4 + version: 2.3.4 devDependencies: '@bring-it/npm': specifier: ^0.3.9 version: 0.3.9 '@nice-move/cli': - specifier: ^0.10.14 - version: 0.10.14 + specifier: ^0.11.1 + version: 0.11.1 '@nice-move/eslint-config-base': specifier: ^0.9.23 version: 0.9.23(eslint@8.53.0)(typescript@5.2.2) '@nice-move/prettier-config': specifier: ^0.9.8 - version: 0.9.8(prettier@3.0.3) + version: 0.9.8(prettier@3.1.0) ava: specifier: ^5.3.1 version: 5.3.1 @@ -40,15 +43,33 @@ devDependencies: garou: specifier: ^0.6.17 version: 0.6.17(eslint@8.53.0)(typescript@5.2.2) + lodash: + specifier: ^4.17.21 + version: 4.17.21 prettier: - specifier: ^3.0.3 - version: 3.0.3 + specifier: ^3.1.0 + version: 3.1.0 remark: - specifier: ^12.0.1 - version: 12.0.1 + specifier: ^15.0.1 + version: 15.0.1 + remark-12: + specifier: npm:remark@12 + version: /remark@12.0.1 + remark-admonitions: + specifier: ^1.2.1 + version: 1.2.1 + remark-directive: + specifier: ^3.0.0 + version: 3.0.0 + remark-frontmatter: + specifier: ^5.0.0 + version: 5.0.0 remark-mdx: - specifier: ^1.6.22 - version: 1.6.22 + specifier: ^3.0.0 + version: 3.0.0 + remark-mdx-1: + specifier: npm:remark-mdx@^1.6.22 + version: /remark-mdx@1.6.22 unist-util-remove-position: specifier: ^5.0.0 version: 5.0.0 @@ -291,7 +312,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.10.4 + '@babel/helper-plugin-utils': 7.22.5 '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.12.9) '@babel/plugin-transform-parameters': 7.22.15(@babel/core@7.12.9) dev: true @@ -312,7 +333,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.10.4 + '@babel/helper-plugin-utils': 7.22.5 dev: true /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.12.9): @@ -321,7 +342,7 @@ packages: '@babel/core': ^7.0.0-0 dependencies: '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.10.4 + '@babel/helper-plugin-utils': 7.22.5 dev: true /@babel/plugin-transform-parameters@7.22.15(@babel/core@7.12.9): @@ -469,9 +490,9 @@ packages: resolution: {integrity: sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA==} dev: true - /@nice-move/cli@0.10.14: - resolution: {integrity: sha512-Mp67t0H1G8Nt55nAz87js+8K0taVpsCoxWO1Xx77pWsFuSGaWf8n8LsJchlgfNeMwcdZg3QazbsT/jee8+Owtw==} - engines: {node: ^16.17.0 || ^18.12.0 || ^20.0.0} + /@nice-move/cli@0.11.1: + resolution: {integrity: sha512-cMSIU/s/YR/CXicOpwZwmtyX0VpEcdzNU7Z/GjS1hgGVX9oCCCdiadZunJTy+8q+AfXyKIUO7n+r7eSPj6UKwA==} + engines: {node: ^18.12.0 || ^20.0.0} hasBin: true dependencies: eslint-formatter-pretty: 5.0.0 @@ -520,26 +541,26 @@ packages: node-html-parser: 5.4.2 dev: true - /@nice-move/prettier-config@0.9.8(prettier@3.0.3): + /@nice-move/prettier-config@0.9.8(prettier@3.1.0): resolution: {integrity: sha512-DN9qjzPofVjLzdS0OeBUcvRtKlP8jceATrmK5/Q1EBB4227Nli8KLA2s02Y/kLti9hO4Y1vCNsUUSNhq35YyXw==} engines: {node: ^16.17.0 || ^18.12.0 || ^20.0.0} peerDependencies: prettier: ^2.8.8 || ^3.0.3 dependencies: - '@nice-move/prettier-plugin-package-json': 0.7.5(prettier@3.0.3) - '@prettier/plugin-xml': 3.2.2(prettier@3.0.3) - prettier: 3.0.3 + '@nice-move/prettier-plugin-package-json': 0.7.5(prettier@3.1.0) + '@prettier/plugin-xml': 3.2.2(prettier@3.1.0) + prettier: 3.1.0 prettier-plugin-ini: 1.1.0 settingz: 0.2.0 dev: true - /@nice-move/prettier-plugin-package-json@0.7.5(prettier@3.0.3): + /@nice-move/prettier-plugin-package-json@0.7.5(prettier@3.1.0): resolution: {integrity: sha512-pa+ePwX406But9gKhxbATU+SUFsKXj4HAIDJWAM+SelmTwp/C+8DrDufJGfgVedezNGIFrTRqm+H5mIEOtvjIg==} engines: {node: '>=19.0.0 || ^16.15.0 || ^18.12.0'} peerDependencies: prettier: ^2.8.8 || ^3 dependencies: - prettier: 3.0.3 + prettier: 3.1.0 dev: true /@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1: @@ -569,13 +590,25 @@ packages: fastq: 1.15.0 dev: true - /@prettier/plugin-xml@3.2.2(prettier@3.0.3): + /@prettier/plugin-xml@3.2.2(prettier@3.1.0): resolution: {integrity: sha512-SoE70SQF1AKIvK7LVK80JcdAe6wrDcbodFFjcoqb1FkOqV0G0oSlgAFDwoRXPqkUE5p/YF2nGsnUbnfm6471sw==} peerDependencies: prettier: ^3.0.0 dependencies: '@xml-tools/parser': 1.0.11 - prettier: 3.0.3 + prettier: 3.1.0 + dev: true + + /@types/acorn@4.0.6: + resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==} + dependencies: + '@types/estree': 1.0.2 + dev: true + + /@types/debug@4.1.12: + resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} + dependencies: + '@types/ms': 0.7.34 dev: true /@types/eslint@8.44.4: @@ -585,10 +618,22 @@ packages: '@types/json-schema': 7.0.13 dev: true + /@types/estree-jsx@1.0.3: + resolution: {integrity: sha512-pvQ+TKeRHeiUGRhvYwRrQ/ISnohKkSJR14fT2yqyZ4e9K5vqc7hrtY2Y1Dw0ZwAzQ6DQsxsaCUuSIIi8v0Cq6w==} + dependencies: + '@types/estree': 1.0.2 + dev: true + /@types/estree@1.0.2: resolution: {integrity: sha512-VeiPZ9MMwXjO32/Xu7+OwflfmeoRwkE/qzndw42gGtgJwZopBnzy2gD//NN1+go1mADzkDcqf/KnFRSjTJ8xJA==} dev: true + /@types/hast@3.0.3: + resolution: {integrity: sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==} + dependencies: + '@types/unist': 3.0.0 + dev: true + /@types/json-schema@7.0.13: resolution: {integrity: sha512-RbSSoHliUbnXj3ny0CNFOoxrIDV6SUGyStHsvDqosw6CkdPV8TtWGlfecuK4ToyMEAql6pzNxgCFKanovUzlgQ==} dev: true @@ -603,6 +648,16 @@ packages: '@types/unist': 2.0.8 dev: true + /@types/mdast@4.0.3: + resolution: {integrity: sha512-LsjtqsyF+d2/yFOYaN22dHZI1Cpwkrj+g06G8+qtUKlhovPW89YhqSnfKtMbkgmEtYpH2gydRNULd6y8mciAFg==} + dependencies: + '@types/unist': 3.0.0 + dev: true + + /@types/ms@0.7.34: + resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} + dev: true + /@types/normalize-package-data@2.4.2: resolution: {integrity: sha512-lqa4UEhhv/2sjjIQgjX8B+RBjj47eo0mzGasklVJ78UKGQY1r0VpB9XHDaZZO9qzEFDdy4MrXLuEaSmPrPSe/A==} dev: true @@ -1064,6 +1119,10 @@ packages: resolution: {integrity: sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==} dev: true + /bail@2.0.2: + resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} + dev: true + /balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} dev: true @@ -1149,6 +1208,10 @@ packages: resolution: {integrity: sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==} dev: true + /ccount@2.0.1: + resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} + dev: true + /chalk@2.4.2: resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} engines: {node: '>=4'} @@ -1175,18 +1238,34 @@ packages: resolution: {integrity: sha512-HRcDxZuZqMx3/a+qrzxdBKBPUpxWEq9xw2OPZ3a/174ihfrQKVsFhqtthBInFy1zZ9GgZyFXOatNujm8M+El3g==} dev: true + /character-entities-html4@2.1.0: + resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==} + dev: true + /character-entities-legacy@1.1.4: resolution: {integrity: sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==} dev: true + /character-entities-legacy@3.0.0: + resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==} + dev: true + /character-entities@1.2.4: resolution: {integrity: sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==} dev: true + /character-entities@2.0.2: + resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} + dev: true + /character-reference-invalid@1.1.4: resolution: {integrity: sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==} dev: true + /character-reference-invalid@2.0.1: + resolution: {integrity: sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==} + dev: true + /chevrotain@7.1.1: resolution: {integrity: sha512-wy3mC1x4ye+O+QkEinVJkPf5u2vsrDIYW9G7ZuwFl6v/Yu0LwUuT2POsb+NUWApebyxfkQq6+yDfRExbnI5rcw==} dependencies: @@ -1289,6 +1368,10 @@ packages: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} dev: true + /comma-separated-tokens@1.0.8: + resolution: {integrity: sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==} + dev: true + /common-path-prefix@3.0.0: resolution: {integrity: sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==} dev: true @@ -1389,6 +1472,12 @@ packages: ms: 2.1.2 dev: true + /decode-named-character-reference@1.0.2: + resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} + dependencies: + character-entities: 2.0.2 + dev: true + /deep-is@0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} dev: true @@ -1411,6 +1500,17 @@ packages: object-keys: 1.1.1 dev: true + /dequal@2.0.3: + resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} + engines: {node: '>=6'} + dev: true + + /devlop@1.1.0: + resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} + dependencies: + dequal: 2.0.3 + dev: true + /dir-glob@3.0.1: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} @@ -1971,6 +2071,17 @@ packages: engines: {node: '>=4.0'} dev: true + /estree-util-is-identifier-name@3.0.0: + resolution: {integrity: sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==} + dev: true + + /estree-util-visit@2.0.0: + resolution: {integrity: sha512-m5KgiH85xAhhW8Wta0vShLcUvOsh3LLPI2YVwcbio1l7E09NTLL1EyMZFM1OyWowoH0skScNbhOPl4kcBgzTww==} + dependencies: + '@types/estree-jsx': 1.0.3 + '@types/unist': 3.0.0 + dev: true + /esutils@2.0.3: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} engines: {node: '>=0.10.0'} @@ -2013,6 +2124,12 @@ packages: reusify: 1.0.4 dev: true + /fault@2.0.1: + resolution: {integrity: sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==} + dependencies: + format: 0.2.2 + dev: true + /figures@5.0.0: resolution: {integrity: sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==} engines: {node: '>=14'} @@ -2078,6 +2195,11 @@ packages: is-callable: 1.2.7 dev: true + /format@0.2.2: + resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==} + engines: {node: '>=0.4.x'} + dev: true + /fs.realpath@1.0.0: resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} dev: true @@ -2293,6 +2415,29 @@ packages: function-bind: 1.1.2 dev: true + /hast-util-from-parse5@5.0.3: + resolution: {integrity: sha512-gOc8UB99F6eWVWFtM9jUikjN7QkWxB3nY0df5Z0Zq1/Nkwl5V4hAAsl0tmwlgWl/1shlTF8DnNYLO8X6wRV9pA==} + dependencies: + ccount: 1.1.0 + hastscript: 5.1.2 + property-information: 5.6.0 + web-namespaces: 1.1.4 + xtend: 4.0.2 + dev: true + + /hast-util-parse-selector@2.2.5: + resolution: {integrity: sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==} + dev: true + + /hastscript@5.1.2: + resolution: {integrity: sha512-WlztFuK+Lrvi3EggsqOkQ52rKbxkXL3RwB6t5lwoa8QLMemoWfBuL43eDrwOamJyR7uKQKdmKYaBH1NZBiIRrQ==} + dependencies: + comma-separated-tokens: 1.0.8 + hast-util-parse-selector: 2.2.5 + property-information: 5.6.0 + space-separated-tokens: 1.1.5 + dev: true + /he@1.2.0: resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} hasBin: true @@ -2369,6 +2514,10 @@ packages: resolution: {integrity: sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==} dev: true + /is-alphabetical@2.0.1: + resolution: {integrity: sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==} + dev: true + /is-alphanumeric@1.0.0: resolution: {integrity: sha512-ZmRL7++ZkcMOfDuWZuMJyIVLr2keE1o/DeNWh1EmgqGhUcV+9BIVsx0BcSBOHTZqzjs4+dISzr2KAeBEWGgXeA==} engines: {node: '>=0.10.0'} @@ -2381,6 +2530,13 @@ packages: is-decimal: 1.0.4 dev: true + /is-alphanumerical@2.0.1: + resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==} + dependencies: + is-alphabetical: 2.0.1 + is-decimal: 2.0.1 + dev: true + /is-array-buffer@3.0.2: resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} dependencies: @@ -2454,6 +2610,10 @@ packages: resolution: {integrity: sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==} dev: true + /is-decimal@2.0.1: + resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==} + dev: true + /is-error@2.2.2: resolution: {integrity: sha512-IOQqts/aHWbiisY5DuPJQ0gcbvaLFCa7fBa9xoLfxBZvQ+ZI/Zh9xoI7Gk+G64N0FdK4AbibytHht2tWgpJWLg==} dev: true @@ -2484,6 +2644,10 @@ packages: resolution: {integrity: sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==} dev: true + /is-hexadecimal@2.0.1: + resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==} + dev: true + /is-negative-zero@2.0.2: resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} engines: {node: '>= 0.4'} @@ -2511,6 +2675,11 @@ packages: engines: {node: '>=8'} dev: true + /is-plain-obj@4.1.0: + resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} + engines: {node: '>=12'} + dev: true + /is-plain-object@5.0.0: resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==} engines: {node: '>=0.10.0'} @@ -2721,6 +2890,10 @@ packages: resolution: {integrity: sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg==} dev: true + /longest-streak@3.1.0: + resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} + dev: true + /lru-cache@5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} dependencies: @@ -2776,6 +2949,21 @@ packages: unist-util-visit: 2.0.3 dev: true + /mdast-util-directive@3.0.0: + resolution: {integrity: sha512-JUpYOqKI4mM3sZcNxmF/ox04XYFFkNwr0CFlrQIkCwbvH0xzMCqkMqAde9wRd80VAhaUrwFwKm2nxretdT1h7Q==} + dependencies: + '@types/mdast': 4.0.3 + '@types/unist': 3.0.0 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.0 + mdast-util-to-markdown: 2.1.0 + parse-entities: 4.0.1 + stringify-entities: 4.0.3 + unist-util-visit-parents: 6.0.1 + transitivePeerDependencies: + - supports-color + dev: true + /mdast-util-from-markdown@0.8.5: resolution: {integrity: sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==} dependencies: @@ -2788,10 +2976,126 @@ packages: - supports-color dev: true + /mdast-util-from-markdown@2.0.0: + resolution: {integrity: sha512-n7MTOr/z+8NAX/wmhhDji8O3bRvPTV/U0oTCaZJkjhPSKTPhS3xufVhKGF8s1pJ7Ox4QgoIU7KHseh09S+9rTA==} + dependencies: + '@types/mdast': 4.0.3 + '@types/unist': 3.0.0 + decode-named-character-reference: 1.0.2 + devlop: 1.1.0 + mdast-util-to-string: 4.0.0 + micromark: 4.0.0 + micromark-util-decode-numeric-character-reference: 2.0.1 + micromark-util-decode-string: 2.0.0 + micromark-util-normalize-identifier: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + unist-util-stringify-position: 4.0.0 + transitivePeerDependencies: + - supports-color + dev: true + + /mdast-util-frontmatter@2.0.1: + resolution: {integrity: sha512-LRqI9+wdgC25P0URIJY9vwocIzCcksduHQ9OF2joxQoyTNVduwLAFUzjoopuRJbJAReaKrNQKAZKL3uCMugWJA==} + dependencies: + '@types/mdast': 4.0.3 + devlop: 1.1.0 + escape-string-regexp: 5.0.0 + mdast-util-from-markdown: 2.0.0 + mdast-util-to-markdown: 2.1.0 + micromark-extension-frontmatter: 2.0.0 + transitivePeerDependencies: + - supports-color + dev: true + + /mdast-util-mdx-expression@2.0.0: + resolution: {integrity: sha512-fGCu8eWdKUKNu5mohVGkhBXCXGnOTLuFqOvGMvdikr+J1w7lDJgxThOKpwRWzzbyXAU2hhSwsmssOY4yTokluw==} + dependencies: + '@types/estree-jsx': 1.0.3 + '@types/hast': 3.0.3 + '@types/mdast': 4.0.3 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.0 + mdast-util-to-markdown: 2.1.0 + transitivePeerDependencies: + - supports-color + dev: true + + /mdast-util-mdx-jsx@3.0.0: + resolution: {integrity: sha512-XZuPPzQNBPAlaqsTTgRrcJnyFbSOBovSadFgbFu8SnuNgm+6Bdx1K+IWoitsmj6Lq6MNtI+ytOqwN70n//NaBA==} + dependencies: + '@types/estree-jsx': 1.0.3 + '@types/hast': 3.0.3 + '@types/mdast': 4.0.3 + '@types/unist': 3.0.0 + ccount: 2.0.1 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.0 + mdast-util-to-markdown: 2.1.0 + parse-entities: 4.0.1 + stringify-entities: 4.0.3 + unist-util-remove-position: 5.0.0 + unist-util-stringify-position: 4.0.0 + vfile-message: 4.0.2 + transitivePeerDependencies: + - supports-color + dev: true + + /mdast-util-mdx@3.0.0: + resolution: {integrity: sha512-JfbYLAW7XnYTTbUsmpu0kdBUVe+yKVJZBItEjwyYJiDJuZ9w4eeaqks4HQO+R7objWgS2ymV60GYpI14Ug554w==} + dependencies: + mdast-util-from-markdown: 2.0.0 + mdast-util-mdx-expression: 2.0.0 + mdast-util-mdx-jsx: 3.0.0 + mdast-util-mdxjs-esm: 2.0.1 + mdast-util-to-markdown: 2.1.0 + transitivePeerDependencies: + - supports-color + dev: true + + /mdast-util-mdxjs-esm@2.0.1: + resolution: {integrity: sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==} + dependencies: + '@types/estree-jsx': 1.0.3 + '@types/hast': 3.0.3 + '@types/mdast': 4.0.3 + devlop: 1.1.0 + mdast-util-from-markdown: 2.0.0 + mdast-util-to-markdown: 2.1.0 + transitivePeerDependencies: + - supports-color + dev: true + + /mdast-util-phrasing@4.0.0: + resolution: {integrity: sha512-xadSsJayQIucJ9n053dfQwVu1kuXg7jCTdYsMK8rqzKZh52nLfSH/k0sAxE0u+pj/zKZX+o5wB+ML5mRayOxFA==} + dependencies: + '@types/mdast': 4.0.3 + unist-util-is: 6.0.0 + dev: true + + /mdast-util-to-markdown@2.1.0: + resolution: {integrity: sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==} + dependencies: + '@types/mdast': 4.0.3 + '@types/unist': 3.0.0 + longest-streak: 3.1.0 + mdast-util-phrasing: 4.0.0 + mdast-util-to-string: 4.0.0 + micromark-util-decode-string: 2.0.0 + unist-util-visit: 5.0.0 + zwitch: 2.0.4 + dev: true + /mdast-util-to-string@2.0.0: resolution: {integrity: sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==} dev: true + /mdast-util-to-string@4.0.0: + resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==} + dependencies: + '@types/mdast': 4.0.3 + dev: true + /mem@9.0.2: resolution: {integrity: sha512-F2t4YIv9XQUBHt6AOJ0y7lSmP1+cY7Fm1DRh9GClTGzKST7UWLMx6ly9WZdLH/G/ppM5RL4MlQfRT71ri9t19A==} engines: {node: '>=12.20'} @@ -2809,6 +3113,265 @@ packages: resolution: {integrity: sha512-lkJ3Rj/mtjlRcHk6YyCbvZhyWTOzdBvTHsxMmZSk5jxN1YyVSQ+JETAom55mdzfcyDrY/49Z7UCW760BK30crg==} dev: true + /micromark-core-commonmark@2.0.0: + resolution: {integrity: sha512-jThOz/pVmAYUtkroV3D5c1osFXAMv9e0ypGDOIZuCeAe91/sD6BoE2Sjzt30yuXtwOYUmySOhMas/PVyh02itA==} + dependencies: + decode-named-character-reference: 1.0.2 + devlop: 1.1.0 + micromark-factory-destination: 2.0.0 + micromark-factory-label: 2.0.0 + micromark-factory-space: 2.0.0 + micromark-factory-title: 2.0.0 + micromark-factory-whitespace: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-chunked: 2.0.0 + micromark-util-classify-character: 2.0.0 + micromark-util-html-tag-name: 2.0.0 + micromark-util-normalize-identifier: 2.0.0 + micromark-util-resolve-all: 2.0.0 + micromark-util-subtokenize: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + dev: true + + /micromark-extension-directive@3.0.0: + resolution: {integrity: sha512-61OI07qpQrERc+0wEysLHMvoiO3s2R56x5u7glHq2Yqq6EHbH4dW25G9GfDdGCDYqA21KE6DWgNSzxSwHc2hSg==} + dependencies: + devlop: 1.1.0 + micromark-factory-space: 2.0.0 + micromark-factory-whitespace: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + parse-entities: 4.0.1 + dev: true + + /micromark-extension-frontmatter@2.0.0: + resolution: {integrity: sha512-C4AkuM3dA58cgZha7zVnuVxBhDsbttIMiytjgsM2XbHAB2faRVaHRle40558FBN+DJcrLNCoqG5mlrpdU4cRtg==} + dependencies: + fault: 2.0.1 + micromark-util-character: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + dev: true + + /micromark-extension-mdx-expression@3.0.0: + resolution: {integrity: sha512-sI0nwhUDz97xyzqJAbHQhp5TfaxEvZZZ2JDqUo+7NvyIYG6BZ5CPPqj2ogUoPJlmXHBnyZUzISg9+oUmU6tUjQ==} + dependencies: + '@types/estree': 1.0.2 + devlop: 1.1.0 + micromark-factory-mdx-expression: 2.0.1 + micromark-factory-space: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-events-to-acorn: 2.0.2 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + dev: true + + /micromark-extension-mdx-jsx@3.0.0: + resolution: {integrity: sha512-uvhhss8OGuzR4/N17L1JwvmJIpPhAd8oByMawEKx6NVdBCbesjH4t+vjEp3ZXft9DwvlKSD07fCeI44/N0Vf2w==} + dependencies: + '@types/acorn': 4.0.6 + '@types/estree': 1.0.2 + devlop: 1.1.0 + estree-util-is-identifier-name: 3.0.0 + micromark-factory-mdx-expression: 2.0.1 + micromark-factory-space: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + vfile-message: 4.0.2 + dev: true + + /micromark-extension-mdx-md@2.0.0: + resolution: {integrity: sha512-EpAiszsB3blw4Rpba7xTOUptcFeBFi+6PY8VnJ2hhimH+vCQDirWgsMpz7w1XcZE7LVrSAUGb9VJpG9ghlYvYQ==} + dependencies: + micromark-util-types: 2.0.0 + dev: true + + /micromark-extension-mdxjs-esm@3.0.0: + resolution: {integrity: sha512-DJFl4ZqkErRpq/dAPyeWp15tGrcrrJho1hKK5uBS70BCtfrIFg81sqcTVu3Ta+KD1Tk5vAtBNElWxtAa+m8K9A==} + dependencies: + '@types/estree': 1.0.2 + devlop: 1.1.0 + micromark-core-commonmark: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-events-to-acorn: 2.0.2 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + unist-util-position-from-estree: 2.0.0 + vfile-message: 4.0.2 + dev: true + + /micromark-extension-mdxjs@3.0.0: + resolution: {integrity: sha512-A873fJfhnJ2siZyUrJ31l34Uqwy4xIFmvPY1oj+Ean5PHcPBYzEsvqvWGaWcfEIr11O5Dlw3p2y0tZWpKHDejQ==} + dependencies: + acorn: 8.10.0 + acorn-jsx: 5.3.2(acorn@8.10.0) + micromark-extension-mdx-expression: 3.0.0 + micromark-extension-mdx-jsx: 3.0.0 + micromark-extension-mdx-md: 2.0.0 + micromark-extension-mdxjs-esm: 3.0.0 + micromark-util-combine-extensions: 2.0.0 + micromark-util-types: 2.0.0 + dev: true + + /micromark-factory-destination@2.0.0: + resolution: {integrity: sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==} + dependencies: + micromark-util-character: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + dev: true + + /micromark-factory-label@2.0.0: + resolution: {integrity: sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==} + dependencies: + devlop: 1.1.0 + micromark-util-character: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + dev: true + + /micromark-factory-mdx-expression@2.0.1: + resolution: {integrity: sha512-F0ccWIUHRLRrYp5TC9ZYXmZo+p2AM13ggbsW4T0b5CRKP8KHVRB8t4pwtBgTxtjRmwrK0Irwm7vs2JOZabHZfg==} + dependencies: + '@types/estree': 1.0.2 + devlop: 1.1.0 + micromark-util-character: 2.0.1 + micromark-util-events-to-acorn: 2.0.2 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + unist-util-position-from-estree: 2.0.0 + vfile-message: 4.0.2 + dev: true + + /micromark-factory-space@2.0.0: + resolution: {integrity: sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==} + dependencies: + micromark-util-character: 2.0.1 + micromark-util-types: 2.0.0 + dev: true + + /micromark-factory-title@2.0.0: + resolution: {integrity: sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==} + dependencies: + micromark-factory-space: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + dev: true + + /micromark-factory-whitespace@2.0.0: + resolution: {integrity: sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==} + dependencies: + micromark-factory-space: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + dev: true + + /micromark-util-character@2.0.1: + resolution: {integrity: sha512-3wgnrmEAJ4T+mGXAUfMvMAbxU9RDG43XmGce4j6CwPtVxB3vfwXSZ6KhFwDzZ3mZHhmPimMAXg71veiBGzeAZw==} + dependencies: + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + dev: true + + /micromark-util-chunked@2.0.0: + resolution: {integrity: sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==} + dependencies: + micromark-util-symbol: 2.0.0 + dev: true + + /micromark-util-classify-character@2.0.0: + resolution: {integrity: sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==} + dependencies: + micromark-util-character: 2.0.1 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + dev: true + + /micromark-util-combine-extensions@2.0.0: + resolution: {integrity: sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==} + dependencies: + micromark-util-chunked: 2.0.0 + micromark-util-types: 2.0.0 + dev: true + + /micromark-util-decode-numeric-character-reference@2.0.1: + resolution: {integrity: sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==} + dependencies: + micromark-util-symbol: 2.0.0 + dev: true + + /micromark-util-decode-string@2.0.0: + resolution: {integrity: sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==} + dependencies: + decode-named-character-reference: 1.0.2 + micromark-util-character: 2.0.1 + micromark-util-decode-numeric-character-reference: 2.0.1 + micromark-util-symbol: 2.0.0 + dev: true + + /micromark-util-encode@2.0.0: + resolution: {integrity: sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==} + dev: true + + /micromark-util-events-to-acorn@2.0.2: + resolution: {integrity: sha512-Fk+xmBrOv9QZnEDguL9OI9/NQQp6Hz4FuQ4YmCb/5V7+9eAh1s6AYSvL20kHkD67YIg7EpE54TiSlcsf3vyZgA==} + dependencies: + '@types/acorn': 4.0.6 + '@types/estree': 1.0.2 + '@types/unist': 3.0.0 + devlop: 1.1.0 + estree-util-visit: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + vfile-message: 4.0.2 + dev: true + + /micromark-util-html-tag-name@2.0.0: + resolution: {integrity: sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==} + dev: true + + /micromark-util-normalize-identifier@2.0.0: + resolution: {integrity: sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==} + dependencies: + micromark-util-symbol: 2.0.0 + dev: true + + /micromark-util-resolve-all@2.0.0: + resolution: {integrity: sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==} + dependencies: + micromark-util-types: 2.0.0 + dev: true + + /micromark-util-sanitize-uri@2.0.0: + resolution: {integrity: sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==} + dependencies: + micromark-util-character: 2.0.1 + micromark-util-encode: 2.0.0 + micromark-util-symbol: 2.0.0 + dev: true + + /micromark-util-subtokenize@2.0.0: + resolution: {integrity: sha512-vc93L1t+gpR3p8jxeVdaYlbV2jTYteDje19rNSS/H5dlhxUYll5Fy6vJ2cDwP8RnsXi818yGty1ayP55y3W6fg==} + dependencies: + devlop: 1.1.0 + micromark-util-chunked: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + dev: true + + /micromark-util-symbol@2.0.0: + resolution: {integrity: sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==} + dev: true + + /micromark-util-types@2.0.0: + resolution: {integrity: sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==} + dev: true + /micromark@2.11.4: resolution: {integrity: sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==} dependencies: @@ -2818,6 +3381,30 @@ packages: - supports-color dev: true + /micromark@4.0.0: + resolution: {integrity: sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==} + dependencies: + '@types/debug': 4.1.12 + debug: 4.3.4 + decode-named-character-reference: 1.0.2 + devlop: 1.1.0 + micromark-core-commonmark: 2.0.0 + micromark-factory-space: 2.0.0 + micromark-util-character: 2.0.1 + micromark-util-chunked: 2.0.0 + micromark-util-combine-extensions: 2.0.0 + micromark-util-decode-numeric-character-reference: 2.0.1 + micromark-util-encode: 2.0.0 + micromark-util-normalize-identifier: 2.0.0 + micromark-util-resolve-all: 2.0.0 + micromark-util-sanitize-uri: 2.0.0 + micromark-util-subtokenize: 2.0.0 + micromark-util-symbol: 2.0.0 + micromark-util-types: 2.0.0 + transitivePeerDependencies: + - supports-color + dev: true + /micromatch@4.0.5: resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} engines: {node: '>=8.6'} @@ -3056,6 +3643,19 @@ packages: is-hexadecimal: 1.0.4 dev: true + /parse-entities@4.0.1: + resolution: {integrity: sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==} + dependencies: + '@types/unist': 2.0.8 + character-entities: 2.0.2 + character-entities-legacy: 3.0.0 + character-reference-invalid: 2.0.1 + decode-named-character-reference: 1.0.2 + is-alphanumerical: 2.0.1 + is-decimal: 2.0.1 + is-hexadecimal: 2.0.1 + dev: true + /parse-json@5.2.0: resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} engines: {node: '>=8'} @@ -3071,6 +3671,10 @@ packages: engines: {node: '>=12'} dev: true + /parse5@5.1.1: + resolution: {integrity: sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==} + dev: true + /path-exists@4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} @@ -3151,11 +3755,11 @@ packages: /prettier-plugin-ini@1.1.0: resolution: {integrity: sha512-xlWM//GrLYU5CX3Qdn5isOlxz1LHnTi4fdSHZX/UYV/C5ipbcFfdCglENoOPGp4N5EvtA5Q1FuVhg95K58TMRg==} dependencies: - prettier: 3.0.3 + prettier: 3.1.0 dev: true - /prettier@3.0.3: - resolution: {integrity: sha512-L/4pUDMxcNa8R/EthV08Zt42WBO4h1rarVtK0K+QJG0X187OLo7l699jWw0GKuwzkPQ//jMFA/8Xm6Fh3J/DAg==} + /prettier@3.1.0: + resolution: {integrity: sha512-TQLvXjq5IAibjh8EpBIkNKxO749UEWABoiIZehEPiY4GNpVdhaFKqSTu+QrlU6D2dPAfubRmtJTi4K4YkQ5eXw==} engines: {node: '>=14'} hasBin: true dev: true @@ -3167,6 +3771,12 @@ packages: parse-ms: 3.0.0 dev: true + /property-information@5.6.0: + resolution: {integrity: sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==} + dependencies: + xtend: 4.0.2 + dev: true + /punycode@2.3.0: resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} engines: {node: '>=6'} @@ -3227,6 +3837,44 @@ packages: jsesc: 0.5.0 dev: true + /rehype-parse@6.0.2: + resolution: {integrity: sha512-0S3CpvpTAgGmnz8kiCyFLGuW5yA4OQhyNTm/nwPopZ7+PI11WnGl1TTWTGv/2hPEe/g2jRLlhVVSsoDH8waRug==} + dependencies: + hast-util-from-parse5: 5.0.3 + parse5: 5.1.1 + xtend: 4.0.2 + dev: true + + /remark-admonitions@1.2.1: + resolution: {integrity: sha512-Ji6p68VDvD+H1oS95Fdx9Ar5WA2wcDA4kwrrhVU7fGctC6+d3uiMICu7w7/2Xld+lnU7/gi+432+rRbup5S8ow==} + dependencies: + rehype-parse: 6.0.2 + unified: 8.4.2 + unist-util-visit: 2.0.3 + dev: true + + /remark-directive@3.0.0: + resolution: {integrity: sha512-l1UyWJ6Eg1VPU7Hm/9tt0zKtReJQNOA4+iDMAxTyZNWnJnFlbS/7zhiel/rogTLQ2vMYwDzSJa4BiVNqGlqIMA==} + dependencies: + '@types/mdast': 4.0.3 + mdast-util-directive: 3.0.0 + micromark-extension-directive: 3.0.0 + unified: 11.0.4 + transitivePeerDependencies: + - supports-color + dev: true + + /remark-frontmatter@5.0.0: + resolution: {integrity: sha512-XTFYvNASMe5iPN0719nPrdItC9aU0ssC4v14mH1BCi1u0n1gAocqcujWUrByftZTbLhRtiKRyjYTSIOcr69UVQ==} + dependencies: + '@types/mdast': 4.0.3 + mdast-util-frontmatter: 2.0.1 + micromark-extension-frontmatter: 2.0.0 + unified: 11.0.4 + transitivePeerDependencies: + - supports-color + dev: true + /remark-mdx@1.6.22: resolution: {integrity: sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ==} dependencies: @@ -3242,6 +3890,26 @@ packages: - supports-color dev: true + /remark-mdx@3.0.0: + resolution: {integrity: sha512-O7yfjuC6ra3NHPbRVxfflafAj3LTwx3b73aBvkEFU5z4PsD6FD4vrqJAkE5iNGLz71GdjXfgRqm3SQ0h0VuE7g==} + dependencies: + mdast-util-mdx: 3.0.0 + micromark-extension-mdxjs: 3.0.0 + transitivePeerDependencies: + - supports-color + dev: true + + /remark-parse@11.0.0: + resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==} + dependencies: + '@types/mdast': 4.0.3 + mdast-util-from-markdown: 2.0.0 + micromark-util-types: 2.0.0 + unified: 11.0.4 + transitivePeerDependencies: + - supports-color + dev: true + /remark-parse@8.0.3: resolution: {integrity: sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==} dependencies: @@ -3263,6 +3931,14 @@ packages: xtend: 4.0.2 dev: true + /remark-stringify@11.0.0: + resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==} + dependencies: + '@types/mdast': 4.0.3 + mdast-util-to-markdown: 2.1.0 + unified: 11.0.4 + dev: true + /remark-stringify@8.1.1: resolution: {integrity: sha512-q4EyPZT3PcA3Eq7vPpT6bIdokXzFGp9i85igjmhRyXWmPs0Y6/d2FYwUNotKAWyLch7g0ASZJn/KHHcHZQ163A==} dependencies: @@ -3290,6 +3966,17 @@ packages: unified: 9.2.2 dev: true + /remark@15.0.1: + resolution: {integrity: sha512-Eht5w30ruCXgFmxVUSlNWQ9iiimq07URKeFS3hNc8cUWy1llX4KDWfyEDZRycMc+znsN9Ux5/tJ/BFdgdOwA3A==} + dependencies: + '@types/mdast': 4.0.3 + remark-parse: 11.0.0 + remark-stringify: 11.0.0 + unified: 11.0.4 + transitivePeerDependencies: + - supports-color + dev: true + /repeat-string@1.6.1: resolution: {integrity: sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==} engines: {node: '>=0.10'} @@ -3458,6 +4145,10 @@ packages: engines: {node: '>=0.10.0'} dev: true + /space-separated-tokens@1.1.5: + resolution: {integrity: sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==} + dev: true + /spdx-correct@3.2.0: resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} dependencies: @@ -3546,6 +4237,13 @@ packages: xtend: 4.0.2 dev: true + /stringify-entities@4.0.3: + resolution: {integrity: sha512-BP9nNHMhhfcMbiuQKCqMjhDP5yBCAxsPu4pHFFzJ6Alo9dZgY4VLDPutXqIjpRiMoKdp7Av85Gr73Q5uH9k7+g==} + dependencies: + character-entities-html4: 2.1.0 + character-entities-legacy: 3.0.0 + dev: true + /strip-ansi@6.0.1: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} engines: {node: '>=8'} @@ -3678,6 +4376,10 @@ packages: resolution: {integrity: sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==} dev: true + /trough@2.1.0: + resolution: {integrity: sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==} + dev: true + /ts-api-utils@1.0.3(typescript@5.2.2): resolution: {integrity: sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==} engines: {node: '>=16.13.0'} @@ -3788,6 +4490,29 @@ packages: xtend: 4.0.2 dev: true + /unified@11.0.4: + resolution: {integrity: sha512-apMPnyLjAX+ty4OrNap7yumyVAMlKx5IWU2wlzzUdYJO9A8f1p9m/gywF/GM2ZDFcjQPrx59Mc90KwmxsoklxQ==} + dependencies: + '@types/unist': 3.0.0 + bail: 2.0.2 + devlop: 1.1.0 + extend: 3.0.2 + is-plain-obj: 4.1.0 + trough: 2.1.0 + vfile: 6.0.1 + dev: true + + /unified@8.4.2: + resolution: {integrity: sha512-JCrmN13jI4+h9UAyKEoGcDZV+i1E7BLFuG7OsaDvTXI5P0qhHX+vZO/kOhz9jn8HGENDKbwSeB0nVOg4gVStGA==} + dependencies: + '@types/unist': 2.0.8 + bail: 1.0.5 + extend: 3.0.2 + is-plain-obj: 2.1.0 + trough: 1.0.5 + vfile: 4.2.1 + dev: true + /unified@9.2.0: resolution: {integrity: sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==} dependencies: @@ -3821,6 +4546,12 @@ packages: dependencies: '@types/unist': 3.0.0 + /unist-util-position-from-estree@2.0.0: + resolution: {integrity: sha512-KaFVRjoqLyF6YXCbVLNad/eS4+OfPQQn2yOd7zF/h5T/CSL2v8NpN6a5TPvtbXthAGw5nG+PuTtq+DdIZr+cRQ==} + dependencies: + '@types/unist': 3.0.0 + dev: true + /unist-util-remove-position@2.0.1: resolution: {integrity: sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==} dependencies: @@ -3840,6 +4571,12 @@ packages: '@types/unist': 2.0.8 dev: true + /unist-util-stringify-position@4.0.0: + resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} + dependencies: + '@types/unist': 3.0.0 + dev: true + /unist-util-visit-parents@3.1.1: resolution: {integrity: sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==} dependencies: @@ -3903,6 +4640,13 @@ packages: unist-util-stringify-position: 2.0.3 dev: true + /vfile-message@4.0.2: + resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==} + dependencies: + '@types/unist': 3.0.0 + unist-util-stringify-position: 4.0.0 + dev: true + /vfile@4.2.1: resolution: {integrity: sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==} dependencies: @@ -3912,6 +4656,14 @@ packages: vfile-message: 2.0.4 dev: true + /vfile@6.0.1: + resolution: {integrity: sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==} + dependencies: + '@types/unist': 3.0.0 + unist-util-stringify-position: 4.0.0 + vfile-message: 4.0.2 + dev: true + /vue-eslint-parser@9.3.2(eslint@8.53.0): resolution: {integrity: sha512-q7tWyCVaV9f8iQyIA5Mkj/S6AoJ9KBN8IeUSf3XEmBrOtxOZnfTg5s4KClbZBCK3GtnT/+RyCLZyDHuZwTuBjg==} engines: {node: ^14.17.0 || >=16.0.0} @@ -3930,6 +4682,10 @@ packages: - supports-color dev: true + /web-namespaces@1.1.4: + resolution: {integrity: sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==} + dev: true + /well-known-symbols@2.0.0: resolution: {integrity: sha512-ZMjC3ho+KXo0BfJb7JgtQ5IBuvnShdlACNkKkdsqBmYw3bPAaJfPeYUo6tLUaT5tG/Gkh7xkpBhKRQ9e7pyg9Q==} engines: {node: '>=6'} @@ -4003,6 +4759,11 @@ packages: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} dev: true + /yaml@2.3.4: + resolution: {integrity: sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==} + engines: {node: '>= 14'} + dev: false + /yargs-parser@21.1.1: resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} engines: {node: '>=12'} @@ -4030,3 +4791,7 @@ packages: resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==} engines: {node: '>=12.20'} dev: true + + /zwitch@2.0.4: + resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} + dev: true diff --git a/test/auto-tabs.mjs b/test/auto-tabs.mjs index be84d78..e734952 100644 --- a/test/auto-tabs.mjs +++ b/test/auto-tabs.mjs @@ -8,6 +8,7 @@ test('validate', ErrorSnapshot, [ () => autoTabs({ labels: '' }), () => autoTabs({ labels: [] }), () => autoTabs({ labels: null }), + () => autoTabs({ version: null }), ]); async function TransformMacro(t, input, options) { @@ -23,6 +24,11 @@ test( \`\`\`ts tab \`\`\` + +--- + +\`\`\`css tab +\`\`\` `, ); @@ -52,10 +58,10 @@ test( ); test( - 'child', + 'ignore child', TransformMacro, ` -- \`\`\`js +- \`\`\`js tab \`\`\` `, ); diff --git a/test/doc-card-list.mjs b/test/doc-card-list.mjs index 723d9dc..26e0cb5 100644 --- a/test/doc-card-list.mjs +++ b/test/doc-card-list.mjs @@ -4,17 +4,14 @@ import { docCardList } from '../lib/index.mjs'; import { ErrorSnapshot, TransformSnapshot } from './helper/lib.mjs'; -test('validate', ErrorSnapshot, [ - () => docCardList({ placeholder: true }), - () => docCardList({ placeholder: '12345' }), -]); +test('validate', ErrorSnapshot, [() => docCardList({ version: 4 })]); async function TransformMacro(t, input, options) { return TransformSnapshot(t, input, docCardList, options); } test( - 'default placeholder', + 'default', TransformMacro, ` # heading @@ -25,19 +22,6 @@ foo bar `, ); -test( - 'custom placeholder', - TransformMacro, - ` -# heading - -:doc-card-list - -foo bar -`, - { placeholder: ':doc-card-list' }, -); - test( 'ignore placeholder as child', TransformMacro, diff --git a/test/draft-admonition.mjs b/test/draft-admonition.mjs index 80fca8a..1cf48f0 100644 --- a/test/draft-admonition.mjs +++ b/test/draft-admonition.mjs @@ -8,16 +8,39 @@ test('validate', ErrorSnapshot, [ () => draftSAdmonition({ title: 0 }), () => draftSAdmonition({ title: '', type: [] }), () => draftSAdmonition({ title: '', text: {} }), + () => draftSAdmonition({ version: 4 }), ]); -async function TransformMacro(t, options = {}) { - return TransformSnapshot(t, '# 55', draftSAdmonition, options, false); +async function TransformMacro(t, input) { + return TransformSnapshot( + t, + input, + draftSAdmonition, + { title: 'example', type: 'success', text: '56565656' }, + false, + ); } -test('default', TransformMacro); +test( + 'none', + TransformMacro, + ` +# 55 -test('custom', TransformMacro, { - title: 'example', - type: 'success', - text: '56565656', -}); +32131 +`, +); + +test( + 'default', + TransformMacro, + ` +--- + draft: true +--- + +# 55 + +32131 +`, +); diff --git a/test/helper/lib.mjs b/test/helper/lib.mjs index fb7875e..dad76ed 100644 --- a/test/helper/lib.mjs +++ b/test/helper/lib.mjs @@ -1,11 +1,19 @@ -import remark from 'remark'; +import cloneDeep from 'lodash/cloneDeep.js'; +import { format } from 'prettier'; +import { remark } from 'remark'; +import remark12 from 'remark-12'; +import remarkDirective from 'remark-directive'; +import remarkFrontmatter from 'remark-frontmatter'; import remarkMdx from 'remark-mdx'; +import remarkMdx1 from 'remark-mdx-1'; import { removePosition } from 'unist-util-remove-position'; function removePST(ast) { - removePosition(ast, { force: true }); + const io = cloneDeep(ast); - return ast.children; + removePosition(io, { force: true }); + + return io.children; } export async function TransformSnapshot( @@ -15,23 +23,41 @@ export async function TransformSnapshot( option = {}, show = true, ) { - const instance = remark().use(remarkMdx).use(plugin, option); + t.snapshot(input); - const ast = instance.parse(input); + async function runner(version) { + const instance = + version === 2 + ? remark12() + .use(remarkMdx1) + .use(plugin, { ...option, version }) + : remark() + .use(remarkFrontmatter, ['yaml']) + .use(remarkMdx) + .use(remarkDirective) + .use(plugin, { ...option, version }); - t.snapshot(input); - t.snapshot(removePST(ast)); + const ast = instance.parse(input.trimStart()); + + t.snapshot(removePST(ast)); - const tree = removePST(await instance.run(ast)); + const tree = await instance.run(ast); - t.snapshot(tree); + t.snapshot(removePST(tree)); - if (show) { - const output = await instance - .process(input) - .then((file) => file.toString().trim()); - t.snapshot(output); + if (show) { + const output = await instance + .process(input.trimStart()) + .then((file) => file.toString()) + .then((file) => format(file, { parser: 'mdx', singleQuote: true })); + + t.snapshot(output); + } } + + await runner(2); + + await runner(3); } export function ErrorSnapshot(t, funcs) { diff --git a/test/snapshots/auto-tabs.mjs.md b/test/snapshots/auto-tabs.mjs.md index c4f2d8b..f43edb8 100644 --- a/test/snapshots/auto-tabs.mjs.md +++ b/test/snapshots/auto-tabs.mjs.md @@ -24,6 +24,12 @@ Generated by [AVA](https://avajs.dev). message: '`labels` should be object', } +> Snapshot 4 + + TypeError { + message: '`version` should be 2 or 3', + } + ## default > Snapshot 1 @@ -34,6 +40,11 @@ Generated by [AVA](https://avajs.dev). ␊ \`\`\`ts tab␊ \`\`\`␊ + ␊ + ---␊ + ␊ + \`\`\`css tab␊ + \`\`\`␊ ` > Snapshot 2 @@ -51,6 +62,15 @@ Generated by [AVA](https://avajs.dev). type: 'code', value: '', }, + { + type: 'thematicBreak', + }, + { + lang: 'css', + meta: 'tab', + type: 'code', + value: '', + }, ] > Snapshot 3 @@ -62,7 +82,7 @@ Generated by [AVA](https://avajs.dev). }, { type: 'import', - value: 'import Tabs from \'@theme/Tabs\'', + value: 'import Tabs from \'@theme/Tabs\';', }, { is: 'Tabs-begin-tag', @@ -106,86 +126,8 @@ Generated by [AVA](https://avajs.dev). type: 'jsx', value: '', }, - ] - -> Snapshot 4 - - `import TabItem from '@theme/TabItem';␊ - ␊ - import Tabs from '@theme/Tabs'␊ - ␊ - ␊ - ␊ - ␊ - ␊ - \`\`\`js␊ - ␊ - \`\`\`␊ - ␊ - ␊ - ␊ - ␊ - ␊ - \`\`\`ts␊ - ␊ - \`\`\`␊ - ␊ - ␊ - ␊ - ` - -## lang - -> Snapshot 1 - - `␊ - ## rre␊ - ␊ - \`\`\`any tab␊ - \`\`\`␊ - ` - -> Snapshot 2 - - [ - { - children: [ - { - type: 'text', - value: 'rre', - }, - ], - depth: 2, - type: 'heading', - }, - { - lang: 'any', - meta: 'tab', - type: 'code', - value: '', - }, - ] - -> Snapshot 3 - - [ - { - type: 'import', - value: 'import TabItem from \'@theme/TabItem\';', - }, { - type: 'import', - value: 'import Tabs from \'@theme/Tabs\'', - }, - { - children: [ - { - type: 'text', - value: 'rre', - }, - ], - depth: 2, - type: 'heading', + type: 'thematicBreak', }, { is: 'Tabs-begin-tag', @@ -195,10 +137,10 @@ Generated by [AVA](https://avajs.dev). { is: 'TabItem-begin-tag', type: 'jsx', - value: '', + value: '', }, { - lang: 'any', + lang: 'css', meta: '', type: 'code', value: '', @@ -219,198 +161,2408 @@ Generated by [AVA](https://avajs.dev). `import TabItem from '@theme/TabItem';␊ ␊ - import Tabs from '@theme/Tabs'␊ - ␊ - ## rre␊ + import Tabs from '@theme/Tabs';␊ ␊ ␊ ␊ - ␊ + ␊ ␊ - \`\`\`any␊ + \`\`\`js␊ ␊ \`\`\`␊ ␊ ␊ ␊ - ` - -## custom - -> Snapshot 1 - - `␊ - \`\`\`js tab="54654 E pd"␊ + ␊ + ␊ + \`\`\`ts␊ + ␊ \`\`\`␊ ␊ - ## fds␊ + ␊ + ␊ + ␊ + ␊ + ---␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`css␊ ␊ - \`\`\`js tab=ppp␊ \`\`\`␊ + ␊ + ␊ + ␊ + ␊ ` -> Snapshot 2 +> Snapshot 5 [ { lang: 'js', - meta: 'tab="54654 E pd"', + meta: 'tab', type: 'code', value: '', }, { - children: [ - { - type: 'text', - value: 'fds', - }, - ], - depth: 2, - type: 'heading', + lang: 'ts', + meta: 'tab', + type: 'code', + value: '', }, { - lang: 'js', - meta: 'tab=ppp', + type: 'thematicBreak', + }, + { + lang: 'css', + meta: 'tab', type: 'code', value: '', }, ] -> Snapshot 3 +> Snapshot 6 [ { - type: 'import', + type: 'mdxjsEsm', value: 'import TabItem from \'@theme/TabItem\';', }, { - type: 'import', - value: 'import Tabs from \'@theme/Tabs\'', - }, - { - is: 'Tabs-begin-tag', - type: 'jsx', - value: '', - }, - { - is: 'TabItem-begin-tag', - type: 'jsx', - value: '', - }, - { - lang: 'js', - meta: '', - type: 'code', - value: '', - }, - { - is: 'TabItem-end-tag', - type: 'jsx', - value: '', - }, - { - is: 'Tabs-end-tag', - type: 'jsx', - value: '', + type: 'mdxjsEsm', + value: 'import Tabs from \'@theme/Tabs\';', }, { children: [ { type: 'text', - value: 'fds', + value: '', }, - ], - depth: 2, - type: 'heading', - }, - { - is: 'Tabs-begin-tag', - type: 'jsx', - value: '', - }, - { - is: 'TabItem-begin-tag', - type: 'jsx', - value: '', - }, - { - lang: 'js', - meta: '', - type: 'code', - value: '', - }, - { - is: 'TabItem-end-tag', - type: 'jsx', - value: '', - }, - { - is: 'Tabs-end-tag', - type: 'jsx', - value: '', - }, - ] - -> Snapshot 4 - - `import TabItem from '@theme/TabItem';␊ - ␊ - import Tabs from '@theme/Tabs'␊ - ␊ - ␊ - ␊ - ␊ - ␊ - \`\`\`js␊ - ␊ - \`\`\`␊ - ␊ - ␊ - ␊ - ␊ - ␊ - ## fds␊ - ␊ - ␊ - ␊ - ␊ - ␊ - \`\`\`js␊ - ␊ - \`\`\`␊ - ␊ - ␊ - ␊ - ` - -## child - -> Snapshot 1 - - `␊ - - \`\`\`js␊ - \`\`\`␊ - ` - -> Snapshot 2 - - [ - { - children: [ { - checked: null, children: [ { - lang: 'js', - meta: null, - type: 'code', + type: 'text', value: '', }, - ], - spread: false, - type: 'listItem', - }, - ], + { + children: [ + { + type: 'text', + value: '', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'JavaScript', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-JavaScript-js', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'js', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'TypeScript', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-TypeScript-ts', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'ts', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'JavaScript', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-JavaScript-js', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'js', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'TypeScript', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-TypeScript-ts', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'ts', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'JavaScript', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-JavaScript-js', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'js', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'TypeScript', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-TypeScript-ts', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'ts', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'thematicBreak', + }, + { + children: [ + { + type: 'text', + value: '', + }, + { + children: [ + { + type: 'text', + value: '', + }, + { + children: [ + { + type: 'text', + value: '', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'Css', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-Css-css', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'css', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'Css', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-Css-css', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'css', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + children: [ + { + type: 'text', + value: '', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'Css', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-Css-css', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'css', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'Css', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-Css-css', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'css', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + children: [ + { + type: 'text', + value: '', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'Css', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-Css-css', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'css', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'Css', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-Css-css', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'css', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + children: [ + { + type: 'text', + value: '', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'Css', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-Css-css', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'css', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'Css', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-Css-css', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'css', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + ] + +> Snapshot 7 + + `import TabItem from '@theme/TabItem';␊ + ␊ + import Tabs from '@theme/Tabs';␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`js␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`ts␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`js␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`ts␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`js␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`ts␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ---␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`css␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`css␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`css␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`css␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`css␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`css␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`css␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`css␊ + ␊ + \`\`\`␊ + ␊ + ␊ + ` + +## lang + +> Snapshot 1 + + `␊ + ## rre␊ + ␊ + \`\`\`any tab␊ + \`\`\`␊ + ` + +> Snapshot 2 + + [ + { + children: [ + { + type: 'text', + value: 'rre', + }, + ], + depth: 2, + type: 'heading', + }, + { + lang: 'any', + meta: 'tab', + type: 'code', + value: '', + }, + ] + +> Snapshot 3 + + [ + { + type: 'import', + value: 'import TabItem from \'@theme/TabItem\';', + }, + { + type: 'import', + value: 'import Tabs from \'@theme/Tabs\';', + }, + { + children: [ + { + type: 'text', + value: 'rre', + }, + ], + depth: 2, + type: 'heading', + }, + { + is: 'Tabs-begin-tag', + type: 'jsx', + value: '', + }, + { + is: 'TabItem-begin-tag', + type: 'jsx', + value: '', + }, + { + lang: 'any', + meta: '', + type: 'code', + value: '', + }, + { + is: 'TabItem-end-tag', + type: 'jsx', + value: '', + }, + { + is: 'Tabs-end-tag', + type: 'jsx', + value: '', + }, + ] + +> Snapshot 4 + + `import TabItem from '@theme/TabItem';␊ + ␊ + import Tabs from '@theme/Tabs';␊ + ␊ + ## rre␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`any␊ + ␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ` + +> Snapshot 5 + + [ + { + children: [ + { + type: 'text', + value: 'rre', + }, + ], + depth: 2, + type: 'heading', + }, + { + lang: 'any', + meta: 'tab', + type: 'code', + value: '', + }, + ] + +> Snapshot 6 + + [ + { + type: 'mdxjsEsm', + value: 'import TabItem from \'@theme/TabItem\';', + }, + { + type: 'mdxjsEsm', + value: 'import Tabs from \'@theme/Tabs\';', + }, + { + children: [ + { + type: 'text', + value: 'rre', + }, + ], + depth: 2, + type: 'heading', + }, + { + children: [ + { + type: 'text', + value: '', + }, + { + children: [ + { + type: 'text', + value: '', + }, + { + children: [ + { + type: 'text', + value: '', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'Any', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-Any-any', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'any', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'Any', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-Any-any', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'any', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + children: [ + { + type: 'text', + value: '', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'Any', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-Any-any', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'any', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'Any', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-Any-any', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'any', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + children: [ + { + type: 'text', + value: '', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'Any', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-Any-any', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'any', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'Any', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-Any-any', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'any', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + ] + +> Snapshot 7 + + `import TabItem from '@theme/TabItem';␊ + ␊ + import Tabs from '@theme/Tabs';␊ + ␊ + ## rre␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`any␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`any␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`any␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`any␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`any␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`any␊ + ␊ + \`\`\`␊ + ␊ + ␊ + ` + +## custom + +> Snapshot 1 + + `␊ + \`\`\`js tab="54654 E pd"␊ + \`\`\`␊ + ␊ + ## fds␊ + ␊ + \`\`\`js tab=ppp␊ + \`\`\`␊ + ` + +> Snapshot 2 + + [ + { + lang: 'js', + meta: 'tab="54654 E pd"', + type: 'code', + value: '', + }, + { + children: [ + { + type: 'text', + value: 'fds', + }, + ], + depth: 2, + type: 'heading', + }, + { + lang: 'js', + meta: 'tab=ppp', + type: 'code', + value: '', + }, + ] + +> Snapshot 3 + + [ + { + type: 'import', + value: 'import TabItem from \'@theme/TabItem\';', + }, + { + type: 'import', + value: 'import Tabs from \'@theme/Tabs\';', + }, + { + is: 'Tabs-begin-tag', + type: 'jsx', + value: '', + }, + { + is: 'TabItem-begin-tag', + type: 'jsx', + value: '', + }, + { + lang: 'js', + meta: '', + type: 'code', + value: '', + }, + { + is: 'TabItem-end-tag', + type: 'jsx', + value: '', + }, + { + is: 'Tabs-end-tag', + type: 'jsx', + value: '', + }, + { + children: [ + { + type: 'text', + value: 'fds', + }, + ], + depth: 2, + type: 'heading', + }, + { + is: 'Tabs-begin-tag', + type: 'jsx', + value: '', + }, + { + is: 'TabItem-begin-tag', + type: 'jsx', + value: '', + }, + { + lang: 'js', + meta: '', + type: 'code', + value: '', + }, + { + is: 'TabItem-end-tag', + type: 'jsx', + value: '', + }, + { + is: 'Tabs-end-tag', + type: 'jsx', + value: '', + }, + ] + +> Snapshot 4 + + `import TabItem from '@theme/TabItem';␊ + ␊ + import Tabs from '@theme/Tabs';␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`js␊ + ␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ## fds␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`js␊ + ␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ` + +> Snapshot 5 + + [ + { + lang: 'js', + meta: 'tab="54654 E pd"', + type: 'code', + value: '', + }, + { + children: [ + { + type: 'text', + value: 'fds', + }, + ], + depth: 2, + type: 'heading', + }, + { + lang: 'js', + meta: 'tab=ppp', + type: 'code', + value: '', + }, + ] + +> Snapshot 6 + + [ + { + type: 'mdxjsEsm', + value: 'import TabItem from \'@theme/TabItem\';', + }, + { + type: 'mdxjsEsm', + value: 'import Tabs from \'@theme/Tabs\';', + }, + { + children: [ + { + type: 'text', + value: '', + }, + { + children: [ + { + type: 'text', + value: '', + }, + { + children: [ + { + type: 'text', + value: '', + }, + { + children: [ + { + type: 'text', + value: '', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: '54654 E pd', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-54654 E pd-js', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'js', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: '54654 E pd', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-54654 E pd-js', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'js', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + children: [ + { + type: 'text', + value: '', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: '54654 E pd', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-54654 E pd-js', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'js', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: '54654 E pd', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-54654 E pd-js', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'js', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + children: [ + { + type: 'text', + value: '', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: '54654 E pd', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-54654 E pd-js', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'js', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: '54654 E pd', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-54654 E pd-js', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'js', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + children: [ + { + type: 'text', + value: 'fds', + }, + ], + depth: 2, + type: 'heading', + }, + { + children: [ + { + type: 'text', + value: '', + }, + { + children: [ + { + type: 'text', + value: '', + }, + { + children: [ + { + type: 'text', + value: '', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'ppp', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-ppp-js', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'js', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'ppp', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-ppp-js', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'js', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + children: [ + { + type: 'text', + value: '', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'ppp', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-ppp-js', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'js', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'ppp', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-ppp-js', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'js', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + children: [ + { + type: 'text', + value: '', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'ppp', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-ppp-js', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'js', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'ppp', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-ppp-js', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'js', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + children: [ + { + type: 'text', + value: '', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'ppp', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-ppp-js', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'js', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + { + type: 'text', + value: '', + }, + ], + is: 'Tabs-tag', + name: 'Tabs', + type: 'mdxJsxFlowElement', + }, + { + attributes: [ + { + name: 'label', + type: 'mdxJsxAttribute', + value: 'ppp', + }, + { + name: 'value', + type: 'mdxJsxAttribute', + value: 'tab-ppp-js', + }, + ], + children: [ + { + type: 'text', + value: '', + }, + { + lang: 'js', + meta: '', + type: 'code', + value: '', + }, + { + type: 'text', + value: '', + }, + ], + is: 'TabItem-tag', + name: 'TabItem', + type: 'mdxJsxFlowElement', + }, + ] + +> Snapshot 7 + + `import TabItem from '@theme/TabItem';␊ + ␊ + import Tabs from '@theme/Tabs';␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`js␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`js␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`js␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`js␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`js␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`js␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ## fds␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`js␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`js␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`js␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`js␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`js␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`js␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`js␊ + \`\`\`␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + \`\`\`js␊ + ␊ + \`\`\`␊ + ␊ + ␊ + ` + +## ignore child + +> Snapshot 1 + + `␊ + - \`\`\`js tab␊ + \`\`\`␊ + ` + +> Snapshot 2 + + [ + { + children: [ + { + checked: null, + children: [ + { + lang: 'js', + meta: 'tab', + type: 'code', + value: '', + }, + ], + spread: false, + type: 'listItem', + }, + ], ordered: false, spread: false, start: null, @@ -428,7 +2580,7 @@ Generated by [AVA](https://avajs.dev). children: [ { lang: 'js', - meta: null, + meta: 'tab', type: 'code', value: '', }, @@ -446,6 +2598,66 @@ Generated by [AVA](https://avajs.dev). > Snapshot 4 - `- \`\`\`js␊ + `- \`\`\`js tab␊ + ␊ + \`\`\`␊ + ` + +> Snapshot 5 + + [ + { + children: [ + { + checked: null, + children: [ + { + lang: 'js', + meta: 'tab', + type: 'code', + value: '', + }, + ], + spread: false, + type: 'listItem', + }, + ], + ordered: false, + spread: false, + start: null, + type: 'list', + }, + ] + +> Snapshot 6 + + [ + { + children: [ + { + checked: null, + children: [ + { + lang: 'js', + meta: 'tab', + type: 'code', + value: '', + }, + ], + spread: false, + type: 'listItem', + }, + ], + ordered: false, + spread: false, + start: null, + type: 'list', + }, + ] + +> Snapshot 7 + + `- \`\`\`js tab␊ ␊ - \`\`\`` + \`\`\`␊ + ` diff --git a/test/snapshots/auto-tabs.mjs.snap b/test/snapshots/auto-tabs.mjs.snap index 6b2b61be71ad2ec44939e9e1fb39599c9d390a0f..77e6c9d75ac977f7af4f1b8623b98552ff31f950 100644 GIT binary patch literal 5380 zcmV+f75nNzRzVSHo&&_+zJ7I;edvo?q*)4Aw^G`%rgNZNOI<^fgr01goOi zt6;9;rc7K#$^1pZa3s`FAA1=?eGOsXFx6(N1HlFUrrM}sGON`KoTy)*$a(o;?)mfQ z*F=0#f2EXiOaDY;K9-l4%fG9N7{62sy2|#RUXqI!N8#sqa2c2l=E==QJH?6Nuz#uC zMmbebP{8qSj<<8Xhv!2|0Z2V8{p983|4K=loIE8Z1-XU+JjV?NGeJFA%d0gwX31ZG zbdS}fd>@hJNl2anZ-V2XgNLj0@;OTew*F0dYK0Z)USpc(7~2f<-*9GnJD z$qadmzELRKeh*&j8<+8V--z&f-`LD6eFI6!z||gQx5-^wN)D5f4mnvVC7p8eUMcC4 zldnn1969-klyu9<5<#j}PEM7QxpH!epnQQyJ|QLZ<>Ub=Ss>jNA;->f1z@P%s$U9C zkSqrqsFdlC_JfeT3)~{d4HT{VrF|wObHGaQ2$hRWH~tusQ=pTB<1PeOI7k);Q$qtJ zO<*I~P32BTegu+#f?}A@XeW`om_YffQj2MYLqTBrC5BR)^}#qyFkd zmm}0fmL$9u$5^Sb@m5uO)mxCFT8EC+?z2358&^8bzsNtkDjaHzmilC6?61meBBkTo z`pD)|@T^R5g9@}86s!-l`S!TSY9@EqzZhv!OuiW7SLM;d4=w^y^Ii{n@7^uaxHEW?sTBtfX=f54hq_s`qlX|wg-4>5U zw_7nX?N%1i#yw)ovL5i%HF>f(Eld;kR4ZeQ>X3$w@n`^x_guwH(+>H$_dht#6H>ZyY@< z=o?3e1%2b_BSGIdIw2?mmR?LPy+w{2049S4U^U(Q@wIH^XwT0fe-XS*vkhTv2ERoW#~JL)A)y`xq*m5!?CZFFjRA2Ra3VdUL!M%^$>w6|#PxWYlm-vu_hz1Nd@nDv6B512xwrOZWDK@tMDf*-3Jh^8#P z6ZZ2@A^!q&r#phf(%8>OyW3GON$H)bX-{_s*7*?Hvk5!_o&&GA&BK6)j2+@{A$SYC z4UT{lBtu#J<{mK32MM9@HlvbX6wX^5~m@t$lo zfNCo3!we{^Ah{E40eiqvnx!u@peRF0=K>5PU|a#oFf=Vgi70oNs|$<{2{|Knlaqp3z`(p?RFk zCj+B>CIoZ9JP;ycFA)n-2$q3WMA(^@x)y?a!A9^n5f@YO&mnjbG=qIa+>egS$}oDc zP#b35US*hdYjd#CUhPi-uRa3b?^Q-%y?|GB)p1&YuY>ld=^gX}R&>w{P*mG=)qX?e z>8PmCsF6sH1@pk29W75$pMhitH~<_)R;Q@K2uLml*HUQ*X53v0$xUDb*a;5OEFGEB zKZE2ypjRg%En=>FEF_aa0NhRGT^RWeNOplkAh$D-cV#Z*Vn`-}N-8a3nt2l>w}CC- zW$-S|(v2zoKakkFU`E`9NV_xANswFyLR8wHdFb8_$r|tz@G3Y8a=Vgj1DG1dKr#XN zsq{kTDJLWvbVPYGI?)JHpo}^bwFgAvV+UiuJ&C&ItSPJ88}(O~oA&!tIq09w^X61E zA){7coRpj$D=?kZWXKBAez<+E%z%{H{tvi|&EoR-6O>NH+VtSkVluyo=zrQ!tj`?YEY@cZr;)Uka9kOQ7PJHVf*bjVqKiV2e= zk&F*q9%DWM#nJp^a@&kN+GMCP#vij#N7m_t6>*A|Jw`0eF%tWYC-N(a8BVj$QUT_}IDCw_)I7Y6--P^?9)W%h$|QOZuYG?fkopW1Te#q~c}Bwvuqka;vmnNVawNySnP4ucQr}}*3RZ!& z;6W?XQr;Zes+-n6!@=nb!@+5w;ox+Y@ov)hc-_V1MP7F?`H)v!OmKsw8`BF+qBn^3 zfRbGDz7L+VboR4LZZyY%N8q^rLgHHw`3y*|0L#HcRL;KPvm26Ta2$B4rwaRq&m2gu z2Ft*G;CY&beZyxzBnN<9#PW-JsIYJN%z)$yuoSGPa!>0l?W_7O3kINFNx0XX;Q&O} zYwg?1ePaDm{Sk-v#oRaBG0hfbo zzyfdsxY5d_lu6NQ-K3r|CRl$lCRn+~1nUxGf>ohTuy6~eBl#_`$l96w1xR*-zgs$! z+t0%d?FS};dDibw+ycq>z-G`44$~|xIsYc{-F#(z&y{XlB&4(3N^XZqRFEO(c3VBJ zC7RHA-NidrK(Gqj1=fQt;AxV{6~E{2R6O2w=h*jk5BNg6-g_q7_1-hpuJ@iqNr4`qKNv>*ygk%Bm0@|j?&mFem#gOZutPV;%?{oDaxap<11IU6jd8ye zy?EGk0T+Tfpozwc$YTskF{wu(+@=PYFl8uCqZjlMXS*^5dy$LdN@u4{J~abn zs2StZ%pmA8%)q4`u?llfP( zL2?*~HjWzrrqRs>cAK*;!5IqaoleaLHYP#UNxX)hjvYLU20K-=Nx>%G8nkeo&1_fp z_)GbRZQ3T@9;EhyW7a`8+Pd;ZUs3yoyL(K($iJ3T!amf3#o!honfn7kitO+dcmccy zq;Mt&!24GHM+u_%vEF~W8POf57||V@j19gm#s=RXjT2Od5#4cw5#2FhM0fm=5#8}s zBf8_KQc{WTSf)mI#J!%42w5f+1iAsH2NYCd{J!PDt(s zJHY|VHK<*Bv)cs*gIN}9&-QxG+lDI8Ln>VO*6qb-h3t(qkAZqqKq7b$ac zXvw+3dhAUQaZp>LYHPxlDv8$vtc%UAC$sCx?0T}rp`xTR8&Xg@b}WyUyWNE*N$;7PDI*^q+DW8n+Cd{taGFpBOO zF!30~YayuwH-e4eWtydD%f>Ff*$Vkd^*=F@fjB{m6%IXz0`sZQq$IAWP3}%>&Y>o! zA{OB*XwM$-CU_f2{~?hR7O@CzUqT=_&7$tq&niz6fF7W~y8kquWa<_FAv9GFIv6#A z4nAfC9o%jN9emaZSg6R}ahiR!a&&Kq;f6OvwM#Ec+OSf~in#O#+6E-IfM)9ehJS

WkZv3ZjN(+el!B1kGcL!A(;jOU^Vy& z&2nDCf#(luT)8i4Ha2ui>IR+?Pdn;`shJ3-_zq8RPj?trek0m*3s?j02b(?Sk%)ZR3T@MrdOrM^SjGXH5cj*n;#>23Uu*W zI&2PyWDK|xG=lrUPMVE%*gOi!F;LLKGAi95NQQ#hRN9xhm_|qzfpy?X@D?~lv-M+Y zDC@{^1Hp6}IB;-U`n=*jy0Bx*-lIS4*zUYXQ+n@qCAfD-+TXo{i53-cTnQ*EG7kfc z=j~t!q;Qp&fN4ZrM8v|kA-DzviLgH{wGo0vU?uoI5uYF5pZC5ZZH#FyBL2K5^*>1= zFV*4aicb0X<- zG~^`f5L~53ro59%S%=`qAlVLnt45~Gq2VT3hv2@D3BMwliJKx#qsagd?wmv z`mvrB#^{x1V^5;eG?{mrYi?ClDKz19)RkQMmS&p7Yc8oOJ-ISl@ETHIaj6Ye*EfWN zK6%;6zUWeBdeNn`yIj3KIXIqnjoJ%e@5K05*aqR}P%D25b?aAm%7}1E2(%x8p8?6K z!YW{kzQpz<5q-tk5Do;x!GQePR!IKph%| z3utFo8^`q|K0sppcJ|kNfW&K%@`IJ&5%5ZSeY{fkUnb3(dDhI^znRZH&ouIPERPxY i-PvJ3+aJDW{UK}SSu_6{n0XSz{{I6$(P6O^lK=oE$zj3( literal 2015 zcmV<52O#)CRzV)Yz4aIYIgd_uh-!ydJ`L=DqUgC7$P ziC9dmvLA~G00000000B+ntg~AWgN%nnU{T;^KS3bNRezfwJY&Fk@F%w-$KI_G*iMW zi<{k@yW4YbciEXcy~8w1p~w)F@GTY1;0P2XNF}u}L;FJugyMqejmrGP#4viH=sVBM z?Cd^s?yTKif}ZekezW^~=6UDV< zTiVcHJ`l$T>dN&37v#);WHjOD;JN^eBzzSKujtNb3$odCb|eYp-x5+qBx+SwR&u1A zBZMOnv(P9aa73yi!46H=)mF{9AJd#vqgqmLR#10mGOk25B^_g&ebNneUo$Tlej7}PHt{)Zr2qZA&aeou-2PbVm?DU3iBBF9Q+3EBlfcbOKCUE@v==iCMZ%5 zml>c5bc5Y&5uvaMhEZgOQB10-R_BIq*V(T-G(&Z61dIXuy@46a-Ne#yjd76higY?2 zTnSAuhPVm#`~^4W&0pD*xIPV29GrV8C2$H~YWnhX> zJWfJHY==t*>;flPchTei6hyw z826yZy$deuKrcAYx`#Xs8Xe%cabOl`0zCnyNZ3=u4!G_yX8w#K&dEf}M_HjppD?rzr6rs0P-^BHZCZy`XMb2Tb8zY!=hmfr zD$;9cB?9vVKA}5ih3Qor)mjs&T0?Cu)*7K*Ut6>(fkyLTv;C^9vPWQ$YMs{T3^Pqa zv#J-VUFz~!Hjy!^73!J)QEj_kJ$s<5F*gV+aghOvI0K}m;sYKYxzUNZ+deU-!eA!G z{ixO`ZDNY%s5^9GM$ngZFe(kwO7+>c`uaOxeeqYhlGZI*F23Z*vb7Fa*IRotWlI3c zmilu?$onk+V6xR?f6uZ8!4{`+Grqja^uYpUI$9n-Udd)P`ZP7w&1zD9#-M1@o}4BX zP0jNzxB#wjzIwC*vSk!7b?FMw$?8$bljjf;6@+Y~1+DN1#o7|dcvefXK@`_AMjO2o zi>It$o2JGSsaF3tS->a`wc-sC{usJ7cp z;>zLoT{(P(SaKKxWDd*&;4y#UyBRL8fg`M|SNL9m%QYZF&DQt}-^FlQ27175*4-;h zPs8ObxCSa&(d(6^%i+=ly1^UZJ+_EfmR^EO9}pmV$FsuMD@zx{Wf@otcCzkwhb+bV zb4nVr_2-V(y%X7tI4{+mONFp&vA&j~sC?GpVM$e@q@vm8I|TD(sc>bM`p-7kB`4e5 zj~(oIFrVGY28J%%tUO#G{q_x(^mA0w%_LyILF$MqU#Zp->(q^OhgYmEC=hFpxW|aI zs;AdCOs`iKD4BS*^>{R~C9cbPKAB7=U&{%RyhJS4<2nP(2TT2uu9Zoj$tB&_-K2Zc zPP#}fzreh~S$b_Ai25EkiW}gv8SDoqeU2JY!#8mG5lG0U4}(Q)^7V$+Ku#ws*^wTc zMFZKPmA^ge)ThHiJ8T9)pl(4AxABE>CHB8$yvaLD#yMCQz*Tl$y()j8O9tK*`@N9I z=Dimct8k5iBv=Dp0%o}H1aE;O-~>1eJ_TQbAN<~*a@x;px%X!*$-O_1yJxtau4p~v ziqGLTl?(zhG~{ja{@#n89~Q-Im{-oj+K~Rt@{C7 zJ_eWl4|yj*Cr$#U%+y(F>D9VB;IbEd0)F;CFeXM)LM~305EY zlg&T3c(im&8j*ww_LYAO^-l`^OK*{%6zc4UIy=IfRnp%J;QLs6%c{|p$Gc-y3U;jb z$hC@MJy21omHT0#FHdyylX0EqC!(!DXmkn%bo=OdJ23y!1kL04Uum004tD-(3Iz diff --git a/test/snapshots/doc-card-list.mjs.md b/test/snapshots/doc-card-list.mjs.md index 26e5354..bc78d61 100644 --- a/test/snapshots/doc-card-list.mjs.md +++ b/test/snapshots/doc-card-list.mjs.md @@ -9,16 +9,10 @@ Generated by [AVA](https://avajs.dev). > Snapshot 1 TypeError { - message: '`placeholder` should be string', + message: '`version` should be 2 or 3', } -> Snapshot 2 - - TypeError { - message: '`placeholder` should be longer than 5 characters', - } - -## default placeholder +## default > Snapshot 1 @@ -103,21 +97,10 @@ Generated by [AVA](https://avajs.dev). ␊ ␊ ␊ - foo bar` - -## custom placeholder - -> Snapshot 1 - - `␊ - # heading␊ - ␊ - :doc-card-list␊ - ␊ foo bar␊ ` -> Snapshot 2 +> Snapshot 5 [ { @@ -133,8 +116,10 @@ Generated by [AVA](https://avajs.dev). { children: [ { - type: 'text', - value: ':doc-card-list', + attributes: {}, + children: [], + name: 'docusaurus-doc-card-list', + type: 'textDirective', }, ], type: 'paragraph', @@ -150,11 +135,11 @@ Generated by [AVA](https://avajs.dev). }, ] -> Snapshot 3 +> Snapshot 6 [ { - type: 'import', + type: 'mdxjsEsm', value: 'import DocCardList from \'@theme/DocCardList\';', }, { @@ -168,8 +153,8 @@ Generated by [AVA](https://avajs.dev). type: 'heading', }, { - type: 'jsx', - value: '', + name: 'DocCardList', + type: 'mdxJsxFlowElement', }, { children: [ @@ -182,7 +167,7 @@ Generated by [AVA](https://avajs.dev). }, ] -> Snapshot 4 +> Snapshot 7 `import DocCardList from '@theme/DocCardList';␊ ␊ @@ -190,7 +175,8 @@ Generated by [AVA](https://avajs.dev). ␊ ␊ ␊ - foo bar` + foo bar␊ + ` ## ignore placeholder as child @@ -258,4 +244,72 @@ Generated by [AVA](https://avajs.dev). > Snapshot 4 - '- :docusaurus-doc-card-list' + `- :docusaurus-doc-card-list␊ + ` + +> Snapshot 5 + + [ + { + children: [ + { + checked: null, + children: [ + { + children: [ + { + attributes: {}, + children: [], + name: 'docusaurus-doc-card-list', + type: 'textDirective', + }, + ], + type: 'paragraph', + }, + ], + spread: false, + type: 'listItem', + }, + ], + ordered: false, + spread: false, + start: null, + type: 'list', + }, + ] + +> Snapshot 6 + + [ + { + children: [ + { + checked: null, + children: [ + { + children: [ + { + attributes: {}, + children: [], + name: 'docusaurus-doc-card-list', + type: 'textDirective', + }, + ], + type: 'paragraph', + }, + ], + spread: false, + type: 'listItem', + }, + ], + ordered: false, + spread: false, + start: null, + type: 'list', + }, + ] + +> Snapshot 7 + + `- :docusaurus-doc-card-list␊ + ` diff --git a/test/snapshots/doc-card-list.mjs.snap b/test/snapshots/doc-card-list.mjs.snap index a5fdd3cbd4d6149dde77b47c960bd534b29cecd6..a38979e84387b2319410b0ea1fcb4f6c34eb0780 100644 GIT binary patch literal 1369 zcmV-f1*ZBzRzV`vNEtb`4G%$dwLch0%zo-^N_Jvp7X?82P$^83^^U5ggyb;~q#mzqvluQ)~9 zbzVAY;2-+ri;|EQyg$-U#0PL31GW*dk90k`SfOK#*=!q0MNbLoBZ_bJ_Vx;-M<7HX zS?{Ksh$IlDkEBb~ar7BlKfh&ao-)U@%TpR2UbPG@Pqkf|&9r+14`&QItye8~)xl$d zgZo1V6`_v|sXMhI)eW;eqpEuhyHIuXDyupG+2qpPAbeTM0kVq}z?#WqIC5OFW= zKOi8oq-Q|TIZ_wD3~Cvl6a8fno*(DVzYv2pCjAQQcW+RMOPd_a z@NQ6sf#-N?Iz~MX%Dcd4JXMV?2C>y#$}U}S`89ziQEi&{cE;M?v`{z1)1cPtrG7S2 z>dI~$hk=KI3EvV@XmJ7tzCHfufKxf(|swF?g+kB5*(ZJOC7ZE(ab z(h?ntTo~LNX-vn~QSsN_n3^-CS!bbTMA?1OScZlpUFxGYyVQ5M{|BzO$b17j2f{BL zDYJG1y2Le{0jb__4#IjIDD$l${z_Q_YE!yoO2)#hGv<^wN4&iG zABvag8t;xc)M~^&g#W0sFmBn;k68$$>_+7jKV0h@3{}h# zSd+kFvWj^Rln;QfJ1VA?iU~fjEbK66$~L1~#nKD3Xj=wln(k=+YKVVzxvRmiTXUMG zHQmJ3yVp~Z?j_!h^qj@){IQPNX&HZGv-M(p#HA%a&VDh{>4P|xwd1@a6gd;Hjsi}? zDT9#>Yx2&9SKdIb z`3o=nRpI+iMRqE3YgMFzp@cNB6W9;1@PTwP;3 b-YM@+d3VZtiP$2*Sybzx` literal 1136 zcmV-$1dsbcRzVWF^&g7}00000000B+SWjpiRUDo-e|9%p(oLvHi?t3YRL~`*sFbwER$Hs66s=&Z zpm~{j*_mc`XL;|fBv&nps0WEw3SR2LlO8Ib1O>4tk$|Tji-HIug{l`%^_$t*>CBt# zY-+3+*ucm9Ugmpme*fPuxv;npgwB#U`!SQg44C&S4SbhM=8F#P3NMu6wF@qOK~KGI zXjLuxAv=lw2%g7)9Ymid6VI=7*)h&TzJpYF*+H@N+G-6GY zYMTi`TWql2Gv5uU!@MwX8K1YIKre9Z1!fD${Z1=U<%9o1m3_lh3Bpc`aa(${V?Ss+ z9_7@LjElsD!exuJ7f3s^{f0NsCMGC;dh)sub zw;A|C*6WL5XfIG+?;mp7_$fW5M$8BBoCS^oCt`=d1J)7F=}K&UEHxSpjnuWs#%+YW z*xwB4t>{T&@ry{*<0G#?{290o>?X;Pl@kkRm?I;1Ct~c<8Zi!o@;ETBQmq2@4N%?z zK2fQ)JasZwbvq&7gE$CH&GG!e<*cKG&~jN4&<2?VN;Ce$?OM|??-(;!`+ zQ`X<;Nsbx6LHa#9)KJ1^79xBAlsVuPm0B%O&w=t0@Rdrf7m`6Q^Q9@-vQ%>d9j!Ms z?wdJl*U&=!S2Rs(eNgIGGNo=Ez;h0G0yqi0JgVHyIF5c=?(g3y_ivMOhj=v-jW{H` zPz`qhkB+Q*^IcF@fzN>NRJu_J_Ek{+jA~6+sFeaWDumF~sp{gwbB)VcXt&SbD6@W->4K9?UeRH#bo6|GY5`XBub3a;Zg)Ls?s9<}zLC z(@l1%AF%(j(pyZm0sRQVFAAx)egnFuG@RYWpy3>c^bF8ZTSM_mSq0@h@TE$f_&;}% ze4U?~&&>tT-BeQ6vr~i;{B(9mrWB6OC2>&ckg`9g%suLmQZ|`f9#1CY$znPlI5Hkb#^cCV8Aq1y@LQdbv+O)#Q(?!+P#jF|%c*r|)3)uQe~b+} z)(e@ArQeU|{!v}3AN)guO%;LX3a|=X1lE9Gwep5E8L1fM__hsP;?T`TkG3-Z#qt#gmfAZBd&$Chn?SK z5BnPXFDY79*Vl3_)$%V$*8yAYF~wQ+mi@D1Twmk*8rRpYuCJTA^8N<+y7Il&82|vh Cw>5 Snapshot 4 + + TypeError { + message: '`version` should be 2 or 3', + } + +## none > Snapshot 1 - '# 55' + `␊ + # 55␊ + ␊ + 32131␊ + ` > Snapshot 2 @@ -43,6 +53,15 @@ Generated by [AVA](https://avajs.dev). depth: 1, type: 'heading', }, + { + children: [ + { + type: 'text', + value: '32131', + }, + ], + type: 'paragraph', + }, ] > Snapshot 3 @@ -59,43 +78,132 @@ Generated by [AVA](https://avajs.dev). type: 'heading', }, { - meta: { + _meta: { draftSAdmonition: true, }, type: 'jsx', value: '

', }, + { + children: [ + { + type: 'text', + value: '32131', + }, + ], + type: 'paragraph', + }, + ] + +> Snapshot 4 + + [ + { + children: [ + { + type: 'text', + value: '55', + }, + ], + depth: 1, + type: 'heading', + }, + { + children: [ + { + type: 'text', + value: '32131', + }, + ], + type: 'paragraph', + }, + ] + +> Snapshot 5 + + [ + { + children: [ + { + type: 'text', + value: '55', + }, + ], + depth: 1, + type: 'heading', + }, + { + children: [ + { + type: 'text', + value: '32131', + }, + ], + type: 'paragraph', + }, ] -## custom +## default > Snapshot 1 - '# 55' + `␊ + ---␊ + draft: true␊ + ---␊ + ␊ + # 55␊ + ␊ + 32131␊ + ` > Snapshot 2 [ + { + type: 'thematicBreak', + }, + { + children: [ + { + type: 'text', + value: 'draft: true', + }, + ], + depth: 2, + type: 'heading', + }, { children: [ { @@ -106,11 +214,33 @@ Generated by [AVA](https://avajs.dev). depth: 1, type: 'heading', }, + { + children: [ + { + type: 'text', + value: '32131', + }, + ], + type: 'paragraph', + }, ] > Snapshot 3 [ + { + type: 'thematicBreak', + }, + { + children: [ + { + type: 'text', + value: 'draft: true', + }, + ], + depth: 2, + type: 'heading', + }, { children: [ { @@ -122,13 +252,16 @@ Generated by [AVA](https://avajs.dev). type: 'heading', }, { - meta: { + _meta: { draftSAdmonition: true, }, type: 'jsx', value: '', }, + { + children: [ + { + type: 'text', + value: '32131', + }, + ], + type: 'paragraph', + }, + ] + +> Snapshot 4 + + [ + { + type: 'yaml', + value: ' draft: true', + }, + { + children: [ + { + type: 'text', + value: '55', + }, + ], + depth: 1, + type: 'heading', + }, + { + children: [ + { + type: 'text', + value: '32131', + }, + ], + type: 'paragraph', + }, + ] + +> Snapshot 5 + + [ + { + type: 'yaml', + value: ' draft: true', + }, + { + children: [ + { + type: 'text', + value: '55', + }, + ], + depth: 1, + type: 'heading', + }, + { + children: [ + { + children: [ + { + type: 'text', + value: '56565656', + }, + ], + type: 'paragraph', + }, + ], + name: 'success', + type: 'containerDirective', + }, + { + children: [ + { + type: 'text', + value: '32131', + }, + ], + type: 'paragraph', + }, ] diff --git a/test/snapshots/draft-admonition.mjs.snap b/test/snapshots/draft-admonition.mjs.snap index 3177cd7bff1a2599bbff3e747a6da1a73015fb24..6c232803e0b5d78a27870a4bca72f6bf2eb5767e 100644 GIT binary patch literal 1959 zcmV;Y2Uz$)RzVbBY}wQfp#CN&pI8aWL>YCYy~Gpa?24( zV=X3!7axlV00000000B+S!-+*RTQ2(uYI)JCn}GqOCXql6-z0Wrc@v;K^~%MQ87R} z?M}M`+ubrdEiHl&UcnHf5<(0<0vaHS5{$%Gf{%b2Fh(VU24WN1MYGrj##pclW!mbIv{YoHKhn+Cq``mC;Qv$(o{tSm{*R0#?7et40_B7)C7$N~Zn;raBWgJjtse;~C4$i^DJfxyk0FF1 z#d@a^gky+MN?cuXG%9tBUKjJZ02DJ4GdIDd7u*IPBE zvZ~S>qby-xFgb3*-HqooV5YGPEL)hRs#3qPWTRDFT+9$JLs*6s5Hdg35v?`)ljvjc z`_McHd<WAm6&Bn(psOdu3hNTotfkVX+93qVXr#@!xNLIG6{ zQxX&ca<>*VKJhm3^14--vJT2p0Qxj0V2ue@4Pt_nF+AOpDs`$-cTnFEy9@oFC#eGD zQUnOneh^-xNFps|V#xL_Vo2Hie4ZrKRmd_-8BoPivg2)HZUSWqu!g3(Y+`0J?UmP$ z11)Vhs~(fVR#)d^7{M^pxRtt^ELJMk;W-;v06Yw|0bNcOD;TotGcEQ&++xu@qc>v~ z?SX9d1)y1@H+jRP+tE~jO~4-7PHiU59|z?mpeu^d@)l^iFcXwHz%pPp@T7x^FvB~b zybqiP{-WtcHsz1v80L0hI!9592RLIb+>o8I*aVv`69_F`vLjFxz zKd1x(a(KpLV>{GHSX(G*nylUxP^AuSUA-|kZ_Ir#&D{9}d8+9otZNMg)S~`R`1EjQH%)wgI>BNYHOrIn7NnPC`Iip{S_O!Pn)XLv= zWtit@*w|NMs(E_To98((VFn_uw?d%8MQNcR-&$~2PmBExM}Wf-;0+T24qNH4m0rhI z8qdQ!19FGd6VmLd_|%kCe1f;4qQdL<8!+aEX+gP5(v z2FeNG7nm4cJH1ZJvlf0m>I~0~cunv!z}_BPjEMHefBVgYHsbo8c%Zx(S~JuF&){n+e|r z(;W}g(Ug}Gegdwgk zRSLP?HxHrzQo-TA=>Q=lINUeAAgraUAYNO!$ZL>a2JsbY#6r3V^(F}K0_W*bO9mMA z9}sye%O8>c$}196uej-A4n?Ve**UwS)Kj8kQR+Rj8gUV=U&UBO!r|(@2b3AWa++$t zdLIX6Gw>o!wHKw1gK`r1gQk|+sO4^k83ok3De6r()P)WeEpz`*D`Fe5v2E_uvr?4) ztn6?nZ15;r$ABMcz1m+|1UeEAfv~mj z(Yy$V&Y?{eDAR!^pxZIY;&y_v8#v;SU^xn{U+M~F6k0Kry;?4!vqN3^xSC_-V>}|c ziB5^nR1j)2CO)RoHc&ZDgiRRnZnX9QA344Twlke1!Bm*=pb!;E;2j;uI*~0+)fC9kTPOZbtzNd}&$tQ}#rq=aR)K~W(mrB}8b^3yq1H?HW1kaIZXNPd|T&LP?y z4T7J`6hN9MeiKm4vG}SkRP6W!@ tn9Hl@yv7>(TjbZNm&2a)%6gkmDB}WJKLZ|zoFb30#=qhbTZr-}0074Mk_`X= literal 1041 zcmV+s1n&DmRzV;~7 zCFc8diq${woDgYDzS@He#19`Oh`JwRugDvT8bh8(FNq|@ES*j(Bq@?i5i(F;q|add z1-Jz~tuHoDPfoKu5A?50>l&e?i;!gy>#7oY+bLQeD@*DPi&eNSKIxIt=s`EaI@yd` zsDlvk4qN{#iO`yhz)%yR?Z>Pa7$cGZJt9DDm5ClSNY;VZry4TUu=d7iL+y=zjDx^& zUw_*NIJFHhTL{LQu2;cS71Mu$sU{k=2io=l!@#7hQ)(3G*FpImSOi|mbR$AX zJf#Ep1~{Zj^o|I9925)q6}T_cQ|p|X7ixP>O&H)!Ljb+RIBm6FoA&2gwz_A)a%OY3 zV_B^H)8(Fm=a%^h<(zp3ERPoW)xn0)Nv$Dta6ZJhecC1x>Y`T3Ej!$C%g4`+oNCzo z;%2sq)nyJGgs?&Jw#{Sb8(OQk4Wzpu+|#5coAQ~^{s3hOcq>yAGF46KijvhOS~5cG z2W3#EZCgtVZv&=_SE=XJY{kZh@8Y|sdG5&B!LsWv)-KWaeeM50 LT`GR`FcAO%vMTb7