merge commit

This commit is contained in:
Philipinho
2026-03-24 10:52:09 +00:00
parent 975b4dcaab
commit 6d6f3a8a8e
3 changed files with 11 additions and 6 deletions
+2 -1
View File
@@ -1,6 +1,7 @@
import bytes from "bytes";
import { castToBoolean } from "@/lib/utils.tsx";
import { AvatarIconType } from "@/features/attachments/types/attachment.types.ts";
import { sanitizeUrl } from "@docmost/editor-ext";
declare global {
interface Window {
@@ -66,7 +67,7 @@ export function getFileUrl(src: string) {
if (src.startsWith("/files/")) {
return getBackendUrl() + src;
}
return src;
return sanitizeUrl(src);
}
export function getFileUploadSizeLimit() {
@@ -70,8 +70,8 @@ export class AttachmentService {
}
if (
existingAttachment.pageId !== pageId &&
existingAttachment.fileExt !== preparedFile.fileExtension &&
existingAttachment.pageId !== pageId ||
existingAttachment.fileExt !== preparedFile.fileExtension ||
existingAttachment.workspaceId !== workspaceId
) {
throw new BadRequestException('File attachment does not match');
@@ -1,5 +1,6 @@
import { Node, mergeAttributes } from "@tiptap/core";
import { ReactNodeViewRenderer } from "@tiptap/react";
import { sanitizeUrl } from "../utils";
export interface AttachmentOptions {
HTMLAttributes: Record<string, any>;
@@ -42,9 +43,12 @@ export const Attachment = Node.create<AttachmentOptions>({
return {
url: {
default: "",
parseHTML: (element) => element.getAttribute("data-attachment-url"),
parseHTML: (element) => {
const url = element.getAttribute("data-attachment-url");
return sanitizeUrl(url);
},
renderHTML: (attributes) => ({
"data-attachment-url": attributes.url,
"data-attachment-url": sanitizeUrl(attributes.url),
}),
},
name: {
@@ -101,7 +105,7 @@ export const Attachment = Node.create<AttachmentOptions>({
[
"a",
{
href: HTMLAttributes["data-attachment-url"],
href: sanitizeUrl(HTMLAttributes["data-attachment-url"]),
class: "attachment",
target: "blank",
},