Render Patchwork-Classic/patchfoo-style mentions
Render feed mentions made by Patchwork Classic and patchfoo.
These mentions consist of an ASCII name beginning with @
, mapping to a feed id in the mentions array via a link object with matching name property.
References regarding the regex: %eR1NloNHgdoX4h+khZk+LJtsAAsymIGwRvtR6/csNeo=.sha256
, %NM8tXGBBDKKcpRbbyd/5uN1p/2OtBMFDylLMDPGoq8Q=.sha256
(from @cel
)
Example message
Markdown
## Vote for SSB projects to be funded
- %cBoVhpkwrQLZa7YVQ9zbjVNE4Jpfg3Sk7Tvs5As7orc=.sha256 - Handshake Grants Community Vote, Budget, and Disbursement Schedule (2nd Batch) [@elavoie]
- %DjS1mvvnktfiYYuFpvWROxdGoW7UBpf8E3rjC5go/p4=.sha256 - Improving Patchfox (2nd Phase), lead by @SoapDog
- %EB23M3gZ15C/EMI6F/E6T0rZjoeXGcXuJdxzncSP4e8=.sha256 - MadeFromScratch, Recipes and Inventory Management on SSB by @nanomonkey
- %zk2gaso2pReUrg81fFEzKD2zg+OEv9o6V3qKTlCHI78=.sha256 - PeachPub, led by @glyph, @cblgh, and @notplants
Note: the square-bracketed mention in this message, [@elavoie]
, is not rendered at all in Manyverse currently - but this MR does not address that.
JSON
{
"key": "%toP9ctnkf4gTq5olbI/PQgeqfSf7Wg0an5HKeskpidk=.sha256",
"value": {
"previous": "%p+MXUcl1kKIMaDyb7jiMZPlW87OQg7JPO7PUjlT/u80=.sha256",
"sequence": 17075,
"author": "@f/6sQ6d2CMxRUhLpspgGIulDxDCwYD7DzFzPNr7u5AU=.ed25519",
"timestamp": 1635543664525,
"hash": "sha256",
"content": {
"type": "post",
"text": "## Vote for SSB projects to be funded\n\n- %cBoVhpkwrQLZa7YVQ9zbjVNE4Jpfg3Sk7Tvs5As7orc=.sha256 - Handshake Grants Community Vote, Budget, and Disbursement Schedule (2nd Batch) [@elavoie]\n - %DjS1mvvnktfiYYuFpvWROxdGoW7UBpf8E3rjC5go/p4=.sha256 - Improving Patchfox (2nd Phase), lead by @SoapDog\n - %EB23M3gZ15C/EMI6F/E6T0rZjoeXGcXuJdxzncSP4e8=.sha256 - MadeFromScratch, Recipes and Inventory Management on SSB by @nanomonkey\n - %zk2gaso2pReUrg81fFEzKD2zg+OEv9o6V3qKTlCHI78=.sha256 - PeachPub, led by @glyph, @cblgh, and @notplants\n\nLike/upvote the above linked messages to vote for each project.\n\nVoting period ends in ~2 days.",
"mentions": [
{
"link": "%cBoVhpkwrQLZa7YVQ9zbjVNE4Jpfg3Sk7Tvs5As7orc=.sha256"
},
{
"link": "@IgYpd+tCtXnlE2tYX/8rR2AGt+P8svC98WH3MdYAa8Y=.ed25519",
"name": "elavoie"
},
{
"link": "%DjS1mvvnktfiYYuFpvWROxdGoW7UBpf8E3rjC5go/p4=.sha256"
},
{
"link": "@qv10rF4IsmxRZb7g5ekJ33EakYBpdrmV/vtP1ij5BS4=.ed25519",
"name": "SoapDog"
},
{
"link": "%EB23M3gZ15C/EMI6F/E6T0rZjoeXGcXuJdxzncSP4e8=.sha256"
},
{
"link": "@+D0ku/LReK6kqd3PSrcVCfbLYbDtTmS4Bd21rqhpYNA=.ed25519",
"name": "nanomonkey"
},
{
"link": "%zk2gaso2pReUrg81fFEzKD2zg+OEv9o6V3qKTlCHI78=.sha256"
},
{
"link": "@HEqy940T6uB+T+d9Jaa58aNfRzLx9eRWqkZljBmnkmk=.ed25519",
"name": "glyph"
},
{
"link": "@C6fAmdXgqTDbmZGAohUaYuyKdz3m6GBoLLtml3fUn+o=.ed25519",
"name": "cblgh"
},
{
"link": "@5Pt3dKy2HTJ0mWuS78oIiklIX0gBz6BTfEnXsbvke9c=.ed25519",
"name": "notplants"
}
]
},
"signature": "dQRXLKB6CY4iFenPLuHj6UN03TumKF6YI6gp0ez66eHGYULggOrvEegvIMKRuvyPLmQ9LINfj/dRjAMaceg9CQ==.sig.ed25519"
}
}