add references

This commit is contained in:
tequ
2025-07-15 17:03:17 +09:00
parent 5747a948a6
commit 2a73058eab
4 changed files with 108 additions and 16 deletions

View File

@@ -1,2 +1,9 @@
<!-- Currently, remarkPlugins does not support HMR, so you will need to restart the dev server if you change this file. --> <!-- Currently, remarkPlugins does not support HMR, so you will need to restart the dev server if you change this file. -->
[Internal Type]: /docs/protocol-reference/binary-format [Internal Type]: /docs/protocol-reference/binary-format
[Sequence Number]: /docs/protocol-reference/data-types/#account-sequence
[Index Number]: /docs/protocol-reference/data-types/#index-number
[SHA-512Half]: /docs/protocol-reference/data-types/#hashes
[Specifying Time]: /docs/protocol-reference/data-types/#specifying-time
[seconds since the Ripple Epoch]: /docs/protocol-reference/data-types/#specifying-time
[Ledger Index]: /docs/protocol-reference/data-types/#ledger-index
[ledger index]: /docs/protocol-reference/data-types/#ledger-index

View File

@@ -0,0 +1,5 @@
EnableAmendment
EmitFailure
SetFee
UNLModify
UNLReport

View File

@@ -0,0 +1,38 @@
AccountDelete
AccountSet
CheckCancel
CheckCash
CheckCreate
ClaimReward
Clawback
DepositPreauth
EscrowCancel
EscrowCreate
EscrowFinish
GenesisMint
Import
Invoke
NFTokenAcceptOffer
NFTokenBurn
NFTokenCancelOffer
NFTokenCreateOffer
NFTokenMint
OfferCancel
OfferCreate
Payment
PaymentChannelClaim
PaymentChannelCreate
PaymentChannelFund
Remit
SetHook
SetRegularKey
SetRemarks
SignerListSet
SpinalTap
TicketCreate
TrustSet
URITokenBurn
URITokenBuy
URITokenCancelSellOffer
URITokenCreateSellOffer
URITokenMint

View File

@@ -1,7 +1,59 @@
import { readFileSync } from 'node:fs' import { readFileSync } from 'node:fs'
import { join } from 'node:path'
import { visit } from 'unist-util-visit' import { visit } from 'unist-util-visit'
const parseRules: {
path: string
parse: (content: string) => { label: string; url: string }[]
}[] = [
{
path: 'src/content/references/global.md',
parse: (content: string) => {
const lines = content.split('\n')
const result: { label: string; url: string }[] = []
for (const line of lines) {
const match = line.match(/^\[([^\]]+)\]:\s*(.+)$/)
if (match) {
const [, label, url] = match
result.push({ label, url: url.trim() })
}
}
return result
},
},
{
path: 'src/content/references/transactions.md',
parse: (content: string) => {
const lines = content.split('\n')
const result: { label: string; url: string }[] = []
for (const line of lines) {
if (line.length > 0) {
const url = `/docs/protocol-reference/transactions/transaction-types/${line.toLowerCase()}`
result.push({ label: `${line}`, url })
result.push({ label: `${line} transaction`, url })
result.push({ label: `${line} transactions`, url })
}
}
return result
},
},
{
path: 'src/content/references/pseudo-transactions.md',
parse: (content: string) => {
const lines = content.split('\n')
const result: { label: string; url: string }[] = []
for (const line of lines) {
if (line.length > 0) {
const url = `/docs/protocol-reference/transactions/pseudo-transaction-types/${line.toLowerCase()}`
result.push({ label: `${line}`, url })
result.push({ label: `${line} transaction`, url })
result.push({ label: `${line} transactions`, url })
}
}
return result
},
},
]
/** /**
* Remark plugin to resolve reference-style links from global.md * Remark plugin to resolve reference-style links from global.md
*/ */
@@ -12,25 +64,15 @@ export function remarkGlobalReferences() {
if (globalRefs !== null) return globalRefs if (globalRefs !== null) return globalRefs
try { try {
const globalMdPath = join(
process.cwd(),
'src/content/references/global.md',
)
const content = readFileSync(globalMdPath, 'utf-8')
globalRefs = {} globalRefs = {}
for (const rule of parseRules) {
// Parse reference-style link definitions: [label]: url const content = readFileSync(rule.path, 'utf-8')
const lines = content.split('\n') const refs = rule.parse(content)
for (const line of lines) { for (const ref of refs) {
const match = line.match(/^\[([^\]]+)\]:\s*(.+)$/) globalRefs[ref.label] = ref.url
if (match) {
const [, label, url] = match
globalRefs[label] = url.trim()
} }
} }
console.log('Loaded global references:', globalRefs)
return globalRefs return globalRefs
} catch (error: any) { } catch (error: any) {
console.warn('Could not load global.md references:', error.message) console.warn('Could not load global.md references:', error.message)