attempt at html and note instead of article and markdown
This commit is contained in:
parent
be53008a8c
commit
c380a178f0
|
@ -1,4 +1,5 @@
|
||||||
import { readFileSync } from "node:fs";
|
import { readFileSync } from "node:fs";
|
||||||
|
import markdownit from "markdown-it";
|
||||||
import { Article } from "./article.js";
|
import { Article } from "./article.js";
|
||||||
import { User, getByActor } from "./user.js";
|
import { User, getByActor } from "./user.js";
|
||||||
import { fillRoute } from "./router.js";
|
import { fillRoute } from "./router.js";
|
||||||
|
@ -13,6 +14,8 @@ export const CONTEXT = "https://www.w3.org/ns/activitystreams";
|
||||||
export const PUBLIC = CONTEXT + "#Public";
|
export const PUBLIC = CONTEXT + "#Public";
|
||||||
export const TYPE = "application/activity+json";
|
export const TYPE = "application/activity+json";
|
||||||
|
|
||||||
|
const md = markdownit();
|
||||||
|
|
||||||
export const handleInboxPost = async (req: Request, res: Response) => {
|
export const handleInboxPost = async (req: Request, res: Response) => {
|
||||||
try {
|
try {
|
||||||
if (!req.body) {
|
if (!req.body) {
|
||||||
|
@ -34,9 +37,13 @@ export const handleInboxPost = async (req: Request, res: Response) => {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log("inbox POST:", req.url, req.body);
|
console.log("inbox POST:", activity.type);
|
||||||
|
|
||||||
if (activity.type === "Follow") {
|
if (activity.type === "Delete") {
|
||||||
|
res.status(202).end();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
else if (activity.type === "Follow") {
|
||||||
console.log(JSON.stringify(activity, null, 4));
|
console.log(JSON.stringify(activity, null, 4));
|
||||||
const actor = await getByActor(activity.object);
|
const actor = await getByActor(activity.object);
|
||||||
|
|
||||||
|
@ -151,13 +158,17 @@ export const createArticleActivity = (article: Article, user: User) => {
|
||||||
id: objectId,
|
id: objectId,
|
||||||
actor,
|
actor,
|
||||||
attributedTo: actor,
|
attributedTo: actor,
|
||||||
type: "Article",
|
type: "Note",
|
||||||
context,
|
context,
|
||||||
content,
|
content: md.render(content),
|
||||||
to: [PUBLIC],
|
to: [PUBLIC],
|
||||||
cc: [followers],
|
cc: [followers],
|
||||||
url: canonicalUrl,
|
url: canonicalUrl,
|
||||||
mediaType: "text/markdown",
|
mediaType: "text/html",
|
||||||
|
source: {
|
||||||
|
mediaType: "text/markdown",
|
||||||
|
content
|
||||||
|
},
|
||||||
published
|
published
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -177,13 +188,17 @@ export const createArticleObject = (article: Article, nickname: string) => {
|
||||||
id: objectId,
|
id: objectId,
|
||||||
actor,
|
actor,
|
||||||
attributedTo: actor,
|
attributedTo: actor,
|
||||||
type: "Article",
|
type: "Note",
|
||||||
context,
|
context,
|
||||||
content,
|
content: md.render(content),
|
||||||
to: [PUBLIC],
|
to: [PUBLIC],
|
||||||
cc: [followers],
|
cc: [followers],
|
||||||
url: canonicalUrl,
|
url: canonicalUrl,
|
||||||
mediaType: "text/markdown",
|
mediaType: "text/html",
|
||||||
|
source: {
|
||||||
|
mediaType: "text/markdown",
|
||||||
|
content
|
||||||
|
},
|
||||||
published
|
published
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue