diff --git a/packages/documentation/astro.config.mjs b/packages/documentation/astro.config.mjs index f2c28d4c61..85aac97ee2 100644 --- a/packages/documentation/astro.config.mjs +++ b/packages/documentation/astro.config.mjs @@ -4,6 +4,7 @@ import starlight from '@astrojs/starlight' import remarkMath from 'remark-math' import rehypeMathjax from 'rehype-mathjax' import starlightLinksValidator from 'starlight-links-validator' +import starlightLlmsTxt from 'starlight-llms-txt' import starlightFullViewMode from 'starlight-fullview-mode' import { rehypeHeadingIds } from '@astrojs/markdown-remark' import rehypeAutolinkHeadings from 'rehype-autolink-headings' @@ -378,6 +379,70 @@ export default defineConfig({ } ], plugins: [ + starlightLlmsTxt({ + details: `Rafiki documentation is for Account Servicing Entities (ASEs) — regulated institutions such as banks, digital wallet providers, and mobile money operators — who want to run Rafiki to add Interledger and Open Payments functionality to their users' accounts. It is not documentation for an end-user product or a payment app. + +Rafiki exposes several separate HTTP services rather than a single API surface: a GraphQL Admin API for managing the backend (peers, assets, wallet addresses, liquidity), a GraphQL Admin API for the auth service, an ILP connector, an auto-peering server, and REST APIs implementing the three parts of the Open Payments protocol. The backend serves the wallet address server and resource server together as a single Open Payments API. The auth service serves the authorization server (GNAP) separately. Questions about configuring or operating a Rafiki instance are answered by the Admin APIs; questions about initiating or receiving payments, or about grant negotiation, are answered by the Open Payments APIs, which are specified independently at openpayments.dev. + +Rafiki supports two interchangeable accounting backends: TigerBeetle (the default, purpose-built for financial accounting) and PostgreSQL (an alternative for deployments that prefer a single database). Integration guidance does not change based on which is used. + +This site publishes documentation for multiple Rafiki versions. Prefer the current/default version unless the user explicitly asks about an older release — content under a version prefix such as v1-beta describes a prior API surface and may no longer be accurate. + +Key terminology notes: + +- Rafiki is the reference implementation of the Open Payments protocol; ASEs deploy and operate it themselves, on their own infrastructure +- Wallet addresses are URL-based identifiers for financial accounts — not cryptocurrency wallets +- An Account Servicing Entity (ASE) is the regulated institution that holds and manages accounts on behalf of its users and runs Rafiki +- Peering is the trust relationship two Rafiki instances (run by different ASEs) establish to exchange payments directly — distinct from a payment between two end users +- Grants and GNAP (Grant Negotiation and Authorization Protocol) refer to Open Payments' authorization flow, distinct from OAuth`, + exclude: ['v1-beta/**'], + optionalLinks: [ + { + label: 'GitHub repository', + url: 'https://github.com/interledger/rafiki', + description: + 'Source code, issues, and contributions for the Rafiki project' + }, + { + label: 'Open Payments documentation', + url: 'https://openpayments.dev', + description: + 'Specification and SDKs for the Open Payments API that Rafiki implements' + } + ], + customSets: [ + { + label: 'Overview and concepts', + description: + 'Introduction to Rafiki and core concepts such as account servicing entities, multi-tenancy, accounting, clearing and settlement, and Interledger', + paths: ['overview/**'] + }, + { + label: 'Integration', + description: + 'Requirements, services, and deployment guidance for integrating Rafiki, including tenants, assets, peers, wallet addresses, exchange rates, sending fees, and testing locally', + paths: ['integration/**'] + }, + { + label: 'Administration', + description: + 'Using Rafiki Admin to manage asset, peer, and payment liquidity', + paths: ['admin/**'] + }, + { + label: 'APIs', + description: + 'GraphQL Admin API documentation for the backend and auth services — the Open Payments REST API itself is specified separately at openpayments.dev', + paths: ['apis/**'] + }, + { + label: 'Resources', + description: + 'Glossary, architecture, environment variables, webhook event types, and release notes', + paths: ['resources/**'] + } + ] + }), starlightVersions({ current: { label: 'v2-beta' diff --git a/packages/documentation/package.json b/packages/documentation/package.json index 20833c1ac4..d951cd6938 100644 --- a/packages/documentation/package.json +++ b/packages/documentation/package.json @@ -22,6 +22,7 @@ "remark-math": "^6.0.0", "starlight-fullview-mode": "^0.2.6", "starlight-links-validator": "^0.24.0", + "starlight-llms-txt": "^0.9.0", "starlight-versions": "^0.9.0" }, "devDependencies": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d2b17e7c59..8ef5362de6 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -668,6 +668,9 @@ importers: starlight-links-validator: specifier: ^0.24.0 version: 0.24.0(@astrojs/starlight@0.39.3(astro@6.3.8(@types/node@24.11.0)(jiti@2.4.2)(rollup@4.62.2)(sass@1.89.2)(terser@5.37.0)(yaml@2.8.3))(typescript@5.9.3))(astro@6.3.8(@types/node@24.11.0)(jiti@2.4.2)(rollup@4.62.2)(sass@1.89.2)(terser@5.37.0)(yaml@2.8.3)) + starlight-llms-txt: + specifier: ^0.9.0 + version: 0.9.0(@astrojs/starlight@0.39.3(astro@6.3.8(@types/node@24.11.0)(jiti@2.4.2)(rollup@4.62.2)(sass@1.89.2)(terser@5.37.0)(yaml@2.8.3))(typescript@5.9.3))(astro@6.3.8(@types/node@24.11.0)(jiti@2.4.2)(rollup@4.62.2)(sass@1.89.2)(terser@5.37.0)(yaml@2.8.3)) starlight-versions: specifier: ^0.9.0 version: 0.9.0(@astrojs/starlight@0.39.3(astro@6.3.8(@types/node@24.11.0)(jiti@2.4.2)(rollup@4.62.2)(sass@1.89.2)(terser@5.37.0)(yaml@2.8.3))(typescript@5.9.3)) @@ -5564,6 +5567,9 @@ packages: '@types/body-parser@1.19.5': resolution: {integrity: sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==} + '@types/braces@3.0.5': + resolution: {integrity: sha512-SQFof9H+LXeWNz8wDe7oN5zu7ket0qwMu5vZubW4GCJ8Kkeh6nBWUz87+KTz/G3Kqsrp0j/W253XJb3KMEeg3w==} + '@types/bytes@3.1.1': resolution: {integrity: sha512-lOGyCnw+2JVPKU3wIV0srU0NyALwTBJlVSx5DfMQOFuuohA8y9S8orImpuIQikZ0uIQ8gehrRjxgQC1rLRi11w==} @@ -5729,9 +5735,6 @@ packages: '@types/hast@2.3.4': resolution: {integrity: sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g==} - '@types/hast@3.0.1': - resolution: {integrity: sha512-hs/iBJx2aydugBQx5ETV3ZgeSS0oIreQrFJ4bjBl0XvM4wAmDjFEALY7p0rTSLt2eL+ibjRAAs9dTPiCLtmbqQ==} - '@types/hast@3.0.4': resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} @@ -5822,6 +5825,9 @@ packages: '@types/mdx@2.0.7': resolution: {integrity: sha512-BG4tyr+4amr3WsSEmHn/fXPqaCba/AYZ7dsaQTiavihQunHSIxk+uAtqsjvicNpyHN6cm+B9RVrUOtW9VzIKHw==} + '@types/micromatch@4.0.10': + resolution: {integrity: sha512-5jOhFDElqr4DKTrTEbnW8DZ4Hz5LRUEmyrGpCMrD/NphYv3nUnaF08xmSLx1rGGnyEs/kFnhiw6dCgcDqMr5PQ==} + '@types/mime@1.3.5': resolution: {integrity: sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==} @@ -8960,6 +8966,9 @@ packages: hast-util-to-jsx-runtime@2.3.0: resolution: {integrity: sha512-H/y0+IWPdsLLS738P8tDnrQ8Z+dj12zQQ6WC11TIM21C8WFVoIxcqWXf2H3hiTVZjF1AWqoimGwrTWecWrnmRQ==} + hast-util-to-mdast@10.1.2: + resolution: {integrity: sha512-FiCRI7NmOvM4y+f5w32jPRzcxDIz+PUqDwEqn1A+1q2cdp3B8Gx7aVrXORdOKjMNDQsD1ogOr896+0jJHW1EFQ==} + hast-util-to-parse5@8.0.0: resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==} @@ -11751,15 +11760,24 @@ packages: rehype-mathjax@7.1.0: resolution: {integrity: sha512-mJHNpoqCC5UZ24OKx0wNjlzV18qeJz/Q/LtEjxXzt8vqrZ1Z3GxQnVrHcF5/PogcXUK8cWwJ4U/LWOQWEiABHw==} + rehype-minify-whitespace@6.0.2: + resolution: {integrity: sha512-Zk0pyQ06A3Lyxhe9vGtOtzz3Z0+qZ5+7icZ/PL/2x1SHPbKao5oB/g/rlc6BCTajqBb33JcOe71Ye1oFsuYbnw==} + rehype-parse@9.0.0: resolution: {integrity: sha512-WG7nfvmWWkCR++KEkZevZb/uw41E8TsH4DsY9UxsTbIXCVGbAs4S+r8FrQ+OtH5EEQAs+5UxKC42VinkmpA1Yw==} + rehype-parse@9.0.1: + resolution: {integrity: sha512-ksCzCD0Fgfh7trPDxr2rSylbwq9iYDkSn8TCDmEJ49ljEUBxDVCzCHv7QNzZOfODanX4+bWQ4WZqLCRWYLfhag==} + rehype-raw@7.0.0: resolution: {integrity: sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==} rehype-recma@1.0.0: resolution: {integrity: sha512-lqA4rGUf1JmacCNWWZx0Wv1dHqMwxzsDWYMTowuplHF3xH0N/MmrZ/G3BDZnzAkRmxDadujCjaKM2hqYdCBOGw==} + rehype-remark@10.0.1: + resolution: {integrity: sha512-EmDndlb5NVwXGfUa4c9GPK+lXeItTilLhE6ADSaQuHr4JUlKw9MidzGzx4HpqZrNCt6vnHmEifXQiiA+CEnjYQ==} + rehype-stringify@10.0.1: resolution: {integrity: sha512-k9ecfXHmIPuFVI61B9DeLPN0qFHfawM6RsuX48hoqlaKSF61RskNjSm1lI8PhBEM0MRdLxVVm4WmTqJQccH9mA==} @@ -12311,6 +12329,12 @@ packages: '@astrojs/starlight': '>=0.38.0' astro: '>=6.0.0' + starlight-llms-txt@0.9.0: + resolution: {integrity: sha512-Yd/ZD0iR4U1tPkhW1O2dh1gBsMWueBni7Ht4hJVEUpoczwPy8U+Ii4OCVuYIQQYSI7crHyx60ZC+zYMqZM881Q==} + peerDependencies: + '@astrojs/starlight': '>=0.38.0' + astro: ^6.0.0 + starlight-versions@0.9.0: resolution: {integrity: sha512-x3R9PODRVWuRWk0EDVgMO8OEttiKlGUUY22QMk9XehY8o3nxSkwyMpvapXgFyZQvpbBLgW5/xCvnoJlb87N5og==} engines: {node: '>=22.12.0'} @@ -12727,6 +12751,9 @@ packages: trim-lines@3.0.1: resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} + trim-trailing-lines@2.1.0: + resolution: {integrity: sha512-5UR5Biq4VlVOtzqkm2AZlgvSlDJtME46uV0br0gENbwN4l5+mMKT4b9gJKqWtuL2zAIqajGJGuvbCbcAJUZqBg==} + trough@2.1.0: resolution: {integrity: sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==} @@ -13005,6 +13032,9 @@ packages: unist-util-remove-position@5.0.0: resolution: {integrity: sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==} + unist-util-remove@4.0.0: + resolution: {integrity: sha512-b4gokeGId57UVRX/eVKej5gXqGlc9+trkORhFJpu9raqZkZhU0zm8Doi05+HaiBsMEIJowL+2WtQ5ItjsngPXg==} + unist-util-stringify-position@3.0.3: resolution: {integrity: sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==} @@ -16836,7 +16866,7 @@ snapshots: '@mdx-js/mdx@3.1.1': dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 '@types/estree-jsx': 1.0.0 '@types/hast': 3.0.4 '@types/mdx': 2.0.7 @@ -18590,7 +18620,7 @@ snapshots: '@rollup/pluginutils@5.3.0(rollup@4.62.2)': dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 estree-walker: 2.0.2 picomatch: 4.0.4 optionalDependencies: @@ -18929,6 +18959,8 @@ snapshots: '@types/connect': 3.4.38 '@types/node': 24.11.0 + '@types/braces@3.0.5': {} + '@types/bytes@3.1.1': {} '@types/caseless@0.12.2': {} @@ -19089,11 +19121,11 @@ snapshots: '@types/eslint-scope@3.7.7': dependencies: '@types/eslint': 9.6.1 - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 '@types/eslint@9.6.1': dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 '@types/json-schema': 7.0.15 '@types/esrecurse@4.3.1': {} @@ -19136,10 +19168,6 @@ snapshots: dependencies: '@types/unist': 3.0.3 - '@types/hast@3.0.1': - dependencies: - '@types/unist': 3.0.3 - '@types/hast@3.0.4': dependencies: '@types/unist': 3.0.3 @@ -19235,6 +19263,10 @@ snapshots: '@types/mdx@2.0.7': {} + '@types/micromatch@4.0.10': + dependencies: + '@types/braces': 3.0.5 + '@types/mime@1.3.5': {} '@types/mime@3.0.4': {} @@ -22151,7 +22183,7 @@ snapshots: eslint-scope@9.1.2: dependencies: '@types/esrecurse': 4.3.1 - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 esrecurse: 4.3.0 estraverse: 5.3.0 @@ -22293,7 +22325,7 @@ snapshots: estree-util-attach-comments@3.0.0: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 estree-util-build-jsx@2.2.0: dependencies: @@ -22316,7 +22348,7 @@ snapshots: estree-util-scope@1.0.0: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 devlop: 1.1.0 estree-util-to-js@1.2.0: @@ -23285,7 +23317,7 @@ snapshots: hast-util-to-estree@3.1.0: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 '@types/estree-jsx': 1.0.0 '@types/hast': 3.0.4 comma-separated-tokens: 2.0.2 @@ -23320,7 +23352,7 @@ snapshots: hast-util-to-jsx-runtime@2.3.0: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 '@types/hast': 3.0.4 '@types/unist': 3.0.3 comma-separated-tokens: 2.0.2 @@ -23338,6 +23370,23 @@ snapshots: transitivePeerDependencies: - supports-color + hast-util-to-mdast@10.1.2: + dependencies: + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + '@ungap/structured-clone': 1.2.0 + hast-util-phrasing: 3.0.1 + hast-util-to-html: 9.0.5 + hast-util-to-text: 4.0.2 + hast-util-whitespace: 3.0.0 + mdast-util-phrasing: 4.0.0 + mdast-util-to-hast: 13.2.1 + mdast-util-to-string: 4.0.0 + rehype-minify-whitespace: 6.0.2 + trim-trailing-lines: 2.1.0 + unist-util-position: 5.0.0 + unist-util-visit: 5.1.0 + hast-util-to-parse5@8.0.0: dependencies: '@types/hast': 3.0.4 @@ -24845,7 +24894,7 @@ snapshots: devlop: 1.1.0 escape-string-regexp: 5.0.0 mdast-util-from-markdown: 2.0.2 - mdast-util-to-markdown: 2.1.0 + mdast-util-to-markdown: 2.1.2 micromark-extension-frontmatter: 2.0.0 transitivePeerDependencies: - supports-color @@ -24863,7 +24912,7 @@ snapshots: '@types/mdast': 4.0.4 devlop: 1.1.0 mdast-util-from-markdown: 2.0.2 - mdast-util-to-markdown: 2.1.0 + mdast-util-to-markdown: 2.1.2 micromark-util-normalize-identifier: 2.0.0 transitivePeerDependencies: - supports-color @@ -24872,7 +24921,7 @@ snapshots: dependencies: '@types/mdast': 4.0.4 mdast-util-from-markdown: 2.0.2 - mdast-util-to-markdown: 2.1.0 + mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color @@ -24882,7 +24931,7 @@ snapshots: devlop: 1.1.0 markdown-table: 3.0.3 mdast-util-from-markdown: 2.0.2 - mdast-util-to-markdown: 2.1.0 + mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color @@ -24891,7 +24940,7 @@ snapshots: '@types/mdast': 4.0.4 devlop: 1.1.0 mdast-util-from-markdown: 2.0.2 - mdast-util-to-markdown: 2.1.0 + mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color @@ -24903,13 +24952,13 @@ snapshots: mdast-util-gfm-strikethrough: 2.0.0 mdast-util-gfm-table: 2.0.0 mdast-util-gfm-task-list-item: 2.0.0 - mdast-util-to-markdown: 2.1.0 + mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color mdast-util-math@3.0.0: dependencies: - '@types/hast': 3.0.1 + '@types/hast': 3.0.4 '@types/mdast': 4.0.0 devlop: 1.1.0 longest-streak: 3.0.1 @@ -25067,7 +25116,7 @@ snapshots: 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 + unist-util-visit: 5.1.0 zwitch: 2.0.4 mdast-util-to-markdown@2.1.2: @@ -25534,7 +25583,7 @@ snapshots: micromark-util-events-to-acorn@1.2.0: dependencies: '@types/acorn': 4.0.6 - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 estree-util-visit: 1.2.1 micromark-util-types: 1.1.0 uvu: 0.5.6 @@ -25733,7 +25782,7 @@ snapshots: mlly@1.8.0: dependencies: - acorn: 8.15.0 + acorn: 8.16.0 pathe: 2.0.3 pkg-types: 1.3.1 ufo: 1.6.3 @@ -26947,7 +26996,7 @@ snapshots: recma-build-jsx@1.0.0: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 estree-util-build-jsx: 3.0.1 vfile: 6.0.3 @@ -26963,14 +27012,14 @@ snapshots: recma-parse@1.0.0: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 esast-util-from-js: 2.0.1 unified: 11.0.5 vfile: 6.0.3 recma-stringify@1.0.0: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 estree-util-to-js: 2.0.0 unified: 11.0.5 vfile: 6.0.3 @@ -27077,12 +27126,23 @@ snapshots: unist-util-visit-parents: 6.0.1 vfile: 6.0.3 + rehype-minify-whitespace@6.0.2: + dependencies: + '@types/hast': 3.0.4 + hast-util-minify-whitespace: 1.0.1 + rehype-parse@9.0.0: dependencies: '@types/hast': 3.0.4 hast-util-from-html: 2.0.3 unified: 11.0.5 + rehype-parse@9.0.1: + dependencies: + '@types/hast': 3.0.4 + hast-util-from-html: 2.0.3 + unified: 11.0.5 + rehype-raw@7.0.0: dependencies: '@types/hast': 3.0.4 @@ -27091,12 +27151,20 @@ snapshots: rehype-recma@1.0.0: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 '@types/hast': 3.0.4 hast-util-to-estree: 3.1.0 transitivePeerDependencies: - supports-color + rehype-remark@10.0.1: + dependencies: + '@types/hast': 3.0.4 + '@types/mdast': 4.0.4 + hast-util-to-mdast: 10.1.2 + unified: 11.0.5 + vfile: 6.0.3 + rehype-stringify@10.0.1: dependencies: '@types/hast': 3.0.4 @@ -27226,7 +27294,7 @@ snapshots: remark-stringify@11.0.0: dependencies: '@types/mdast': 4.0.4 - mdast-util-to-markdown: 2.1.0 + mdast-util-to-markdown: 2.1.2 unified: 11.0.5 remark@15.0.1: @@ -27903,6 +27971,25 @@ snapshots: transitivePeerDependencies: - supports-color + starlight-llms-txt@0.9.0(@astrojs/starlight@0.39.3(astro@6.3.8(@types/node@24.11.0)(jiti@2.4.2)(rollup@4.62.2)(sass@1.89.2)(terser@5.37.0)(yaml@2.8.3))(typescript@5.9.3))(astro@6.3.8(@types/node@24.11.0)(jiti@2.4.2)(rollup@4.62.2)(sass@1.89.2)(terser@5.37.0)(yaml@2.8.3)): + dependencies: + '@astrojs/mdx': 5.0.4(astro@6.3.8(@types/node@24.11.0)(jiti@2.4.2)(rollup@4.62.2)(sass@1.89.2)(terser@5.37.0)(yaml@2.8.3)) + '@astrojs/starlight': 0.39.3(astro@6.3.8(@types/node@24.11.0)(jiti@2.4.2)(rollup@4.62.2)(sass@1.89.2)(terser@5.37.0)(yaml@2.8.3))(typescript@5.9.3) + '@types/hast': 3.0.4 + '@types/micromatch': 4.0.10 + astro: 6.3.8(@types/node@24.11.0)(jiti@2.4.2)(rollup@4.62.2)(sass@1.89.2)(terser@5.37.0)(yaml@2.8.3) + github-slugger: 2.0.0 + hast-util-select: 6.0.4 + micromatch: 4.0.8 + rehype-parse: 9.0.1 + rehype-remark: 10.0.1 + remark-gfm: 4.0.1 + remark-stringify: 11.0.0 + unified: 11.0.5 + unist-util-remove: 4.0.0 + transitivePeerDependencies: + - supports-color + starlight-versions@0.9.0(@astrojs/starlight@0.39.3(astro@6.3.8(@types/node@24.11.0)(jiti@2.4.2)(rollup@4.62.2)(sass@1.89.2)(terser@5.37.0)(yaml@2.8.3))(typescript@5.9.3)): dependencies: '@astrojs/starlight': 0.39.3(astro@6.3.8(@types/node@24.11.0)(jiti@2.4.2)(rollup@4.62.2)(sass@1.89.2)(terser@5.37.0)(yaml@2.8.3))(typescript@5.9.3) @@ -28283,7 +28370,7 @@ snapshots: terser@5.37.0: dependencies: '@jridgewell/source-map': 0.3.6 - acorn: 8.15.0 + acorn: 8.16.0 commander: 2.20.3 source-map-support: 0.5.21 @@ -28432,6 +28519,8 @@ snapshots: trim-lines@3.0.1: {} + trim-trailing-lines@2.1.0: {} + trough@2.1.0: {} truncatise@0.0.8: {} @@ -28778,6 +28867,12 @@ snapshots: '@types/unist': 3.0.3 unist-util-visit: 5.0.0 + unist-util-remove@4.0.0: + dependencies: + '@types/unist': 3.0.3 + unist-util-is: 6.0.0 + unist-util-visit-parents: 6.0.2 + unist-util-stringify-position@3.0.3: dependencies: '@types/unist': 2.0.11