From daa37b07d5ebcb7930315b3c819c8ca74630f8b1 Mon Sep 17 00:00:00 2001
From: Chen Hui Jing <1461498+huijing@users.noreply.github.com>
Date: Wed, 29 May 2024 11:38:49 +0800
Subject: [PATCH] Add links validator and update links
---
astro.config.mjs | 7 +++++++
package.json | 11 ++++++-----
src/content/docs/docs.mdx | 2 +-
.../docs/docs/references/attributes/amount.mdx | 2 +-
.../docs/docs/references/attributes/assetcode.mdx | 2 +-
.../docs/docs/references/attributes/assetscale.mdx | 2 +-
.../docs/references/attributes/incomingpayment.mdx | 2 +-
.../docs/docs/references/attributes/receipt.mdx | 2 +-
src/content/docs/es/docs.mdx | 8 ++++----
9 files changed, 23 insertions(+), 15 deletions(-)
diff --git a/astro.config.mjs b/astro.config.mjs
index c3aa9ac3..10680bf8 100644
--- a/astro.config.mjs
+++ b/astro.config.mjs
@@ -2,6 +2,7 @@ import { defineConfig } from 'astro/config'
import starlight from '@astrojs/starlight'
import astroI18next from 'astro-i18next'
import react from '@astrojs/react'
+import starlightLinksValidator from 'starlight-links-validator'
// https://astro.build/config
export default defineConfig({
@@ -15,6 +16,12 @@ export default defineConfig({
'./node_modules/@interledger/docs-design-system/src/styles/teal-theme.css',
'./node_modules/@interledger/docs-design-system/src/styles/ilf-docs.css',
],
+ plugins: [
+ starlightLinksValidator({
+ errorOnFallbackPages: false,
+ exclude: ['/prob-revshare'],
+ }),
+ ],
expressiveCode: {
styleOverrides: {
borderColor: 'transparent',
diff --git a/package.json b/package.json
index 4bece2bb..03016ed4 100644
--- a/package.json
+++ b/package.json
@@ -8,12 +8,12 @@
"astro": "astro"
},
"dependencies": {
- "@astrojs/react": "^3.3.2",
- "@astrojs/starlight": "^0.22.2",
+ "@astrojs/react": "^3.4.0",
+ "@astrojs/starlight": "^0.23.2",
"@interledger/docs-design-system": "^0.5.0",
- "@types/react": "^18.3.1",
+ "@types/react": "^18.3.3",
"@types/react-dom": "^18.3.0",
- "astro": "4.7.1",
+ "astro": "4.9.2",
"astro-i18next": "^1.0.0-beta.21",
"prettier": "^3.2.5",
"prism-react-renderer": "^2.3.1",
@@ -22,6 +22,7 @@
"react-minimal-pie-chart": "^8.4.0",
"remark-mermaidjs": "^6.0.0",
"respec": "^35.0.2",
- "sharp": "^0.33.3"
+ "sharp": "^0.33.4",
+ "starlight-links-validator": "^0.9.0"
}
}
diff --git a/src/content/docs/docs.mdx b/src/content/docs/docs.mdx
index 0e69b2fc..fb2a83f3 100644
--- a/src/content/docs/docs.mdx
+++ b/src/content/docs/docs.mdx
@@ -64,5 +64,5 @@ Web Monetization communicates with the sending and receiving accounts to obtain
A new version of the Web Monetization specification was published in June 2023. Users of the previous version should be aware of the following:
- The previous version only used Interledger's Simple Payment Setup Protocol (SPSP). The new version uses Open Payments.
-- The `` element is deprecated in favor of the [``](./references/html-link-rel-monetization/) element.
+- The `` element is deprecated in favor of the [``](/docs/references/html-link-rel-monetization/) element.
- The `` element does not support the shorthand form of a payment pointer (e.g., `$wallet.example/alice`). You must use the endpoint URL that the payment pointer resolves to (e.g., `https://wallet.example/alice`). If you need help converting a payment pointer from shorthand to its equivalent URL, enter your payment pointer into the input field on paymentpointers.org. In most cases, you can simply replace the `$` with `https://`.
diff --git a/src/content/docs/docs/references/attributes/amount.mdx b/src/content/docs/docs/references/attributes/amount.mdx
index 13b6f884..7ac493f5 100644
--- a/src/content/docs/docs/references/attributes/amount.mdx
+++ b/src/content/docs/docs/references/attributes/amount.mdx
@@ -7,7 +7,7 @@ import BrowserCompat from '/src/components/docs/BrowserCompat.astro'
import data from '/src/data/browser-compat-data/amount.json'
:::danger[Caution - Deprecated Attribute]
-The `amount` attribute is deprecated. Consider using the [amountSent](../amountsent/) attribute instead.
+The `amount` attribute is deprecated. Consider using the [amountSent](/docs/references/attributes/amountsent) attribute instead.
:::
The `MonetizationEvent` `amount` attribute returned the amount of money that was successfully received on the last payment.
diff --git a/src/content/docs/docs/references/attributes/assetcode.mdx b/src/content/docs/docs/references/attributes/assetcode.mdx
index 0fa5a60f..b05c8bf7 100644
--- a/src/content/docs/docs/references/attributes/assetcode.mdx
+++ b/src/content/docs/docs/references/attributes/assetcode.mdx
@@ -7,7 +7,7 @@ import BrowserCompat from '/src/components/docs/BrowserCompat.astro'
import data from '/src/data/browser-compat-data/assetCode.json'
:::danger[Caution - Deprecated Attribute]
-The `assetCode` attribute is deprecated. Consider using the [amountSent](../amountsent/) attribute instead.
+The `assetCode` attribute is deprecated. Consider using the [amountSent](/docs/references/attributes/amountsent) attribute instead.
:::
The `MonetizationEvent` `assetCode` attribute returned the currency code of the last payment received.
diff --git a/src/content/docs/docs/references/attributes/assetscale.mdx b/src/content/docs/docs/references/attributes/assetscale.mdx
index f7085081..261f056d 100644
--- a/src/content/docs/docs/references/attributes/assetscale.mdx
+++ b/src/content/docs/docs/references/attributes/assetscale.mdx
@@ -7,7 +7,7 @@ import BrowserCompat from '/src/components/docs/BrowserCompat.astro'
import data from '/src/data/browser-compat-data/assetScale.json'
:::danger[Caution - Deprecated Attribute]
-The `assetScale` attribute is deprecated. Consider using the [amountSent](../amountsent/) attribute instead.
+The `assetScale` attribute is deprecated. Consider using the [amountSent](/docs/references/attributes/amountsent) attribute instead.
:::
The `MonetizationEvent` `assetScale` attribute returned the scale of the paid amount
diff --git a/src/content/docs/docs/references/attributes/incomingpayment.mdx b/src/content/docs/docs/references/attributes/incomingpayment.mdx
index 384c3f14..06645da7 100644
--- a/src/content/docs/docs/references/attributes/incomingpayment.mdx
+++ b/src/content/docs/docs/references/attributes/incomingpayment.mdx
@@ -8,7 +8,7 @@ import data from '/src/data/browser-compat-data/incomingPayment.json'
import { LinkOut, Hidden } from '@interledger/docs-design-system'
:::tip[Experimental Attribute]
-`incomingPayment` is an experimental technology.Check the [Browser compatibility table](#browser-compatibility) before using.
+`incomingPayment` is an experimental technology.
:::
The `monetization` event's `incomingPayment` attribute can be used to verify the receipt of a payment. Today, the `monetization` event fires when the WM agent successfully creates an outgoing payment request at the WM provider. Since it's only a request to send an outgoing payment, there's no guarantee at this point that a payment has been received.
diff --git a/src/content/docs/docs/references/attributes/receipt.mdx b/src/content/docs/docs/references/attributes/receipt.mdx
index 2e31de24..4b417e63 100644
--- a/src/content/docs/docs/references/attributes/receipt.mdx
+++ b/src/content/docs/docs/references/attributes/receipt.mdx
@@ -7,7 +7,7 @@ import BrowserCompat from '/src/components/docs/BrowserCompat.astro'
import data from '/src/data/browser-compat-data/receipt.json'
:::danger[Caution - Deprecated Attribute]
-Receipts and its associated `receipt` attribute are deprecated. Consider using the [incomingPayment](../incomingpayment/) attribute instead.
+Receipts and its associated `receipt` attribute are deprecated. Consider using the [incomingPayment](/docs/references/attributes/incomingpayment) attribute instead.
:::
The `MonetizationEvent` `receipt` attribute returned an optional proof-of-payment receipt. It was issued from the monetization receiver to the monetization provider as proof of the total current amount received in a stream.
diff --git a/src/content/docs/es/docs.mdx b/src/content/docs/es/docs.mdx
index a2a8cc7c..1e82e8a3 100644
--- a/src/content/docs/es/docs.mdx
+++ b/src/content/docs/es/docs.mdx
@@ -28,18 +28,18 @@ Es un estándar propuesto que permite a los visitantes pagar una cantidad de su
- Obtención de autorización para iniciar el pago.
- Recopilar detalles y emitir instrucciones para iniciar el proceso de movimiento de dinero.
- Crear una sesión de pago.
-- Comunicar eventos de pago al sitio para que el sitio pueda responder opcionalmente. Por ejemplo, el sitio podría [eliminar anuncios](/docs/guides/remove-ads) o proporcionar [acceso a contenido exclusivo](/docs/guides/provide-exclusive-content) para los visitantes que pagan.
+- Comunicar eventos de pago al sitio para que el sitio pueda responder opcionalmente. Por ejemplo, el sitio podría [eliminar anuncios](/es/docs/guides/remove-ads) o proporcionar [acceso a contenido exclusivo](/es/docs/guides/provide-exclusive-content) para los visitantes que pagan.
### Flujo de alto nivel
-La siguiente imagen muestra el flujo de monetización web en un nivel alto. Algunos pasos se han combinado o excluido. Se proporciona una explicación más detallada en la página [Flujo de monetización web](/docs/intro/web-monetization-flow).
+La siguiente imagen muestra el flujo de monetización web en un nivel alto. Algunos pasos se han combinado o excluido. Se proporciona una explicación más detallada en la página [Flujo de monetización web](/es/docs/intro/web-monetization-flow).
-1. Bob visita una [página web monetizada](/docs/guides/monetize-page). El elemento de monetización `` es la forma en que el sitio web indica su aceptación de pagos al navegador.
+1. Bob visita una [página web monetizada](/es/docs/guides/monetize-page). El elemento de monetización `` es la forma en que el sitio web indica su aceptación de pagos al navegador.
2. El navegador de Bob, ya sea de forma nativa o mediante una extensión del navegador, analiza el elemento `` para obtener dirección de billetera de Alice, la propietaria del sitio.
3. El navegador/extensión de Bob envía solicitudes a la dirección de la billetera de Alice para obtener autorización e instrucciones para enviar un pago.
4. Con la autorización concedida y las instrucciones de pago recibidas, el navegador/extensión envía solicitudes a la dirección de la billetera de Bob para iniciar el pago.
@@ -64,5 +64,5 @@ La monetización web se comunica con las cuentas emisoras y receptoras para obte
En junio de 2023 se publicó una nueva versión de la especificación de Monetización web. Los usuarios de la versión anterior deben tener en cuenta lo siguiente:
- La versión anterior solo utilizaba el Protocolo de configuración de pago simple (SPSP) de Interledger. La nueva versión utiliza Open Payments.
-- El elemento `` está obsoleto en favor del elemento [``](./references/html-link-rel-monetization/).
+- El elemento `` está obsoleto en favor del elemento [``](/es/docs/references/html-link-rel-monetization/).
- El elemento `` no admite la forma abreviada de un puntero de pago (por ejemplo, `$wallet.example/alice`). Debes utilizar la URL completa a la que se resuelve el puntero de pago (por ejemplo, `https://wallet.example/alice`). Si necesitas ayuda para convertir un indicador de pago de una abreviatura a su URL equivalente, ingresa su indicador de pago en el campo de entrada en paymentpointers.org. En la mayoría de los casos, puedes simplemente reemplazar `$` por `https://`.