v5.2.0: undo/redo, version history, embedded AI assistant, mobile builder & more (#3205)

This commit is contained in:
Amruth Pillai
2026-07-04 14:57:25 +02:00
committed by GitHub
parent 09bc6ec521
commit 57e9c8c487
181 changed files with 46794 additions and 11348 deletions
@@ -26,6 +26,8 @@ describe("getSourceSectionTitle", () => {
icon: "",
columns: 1,
hidden: false,
keepTogether: false,
startOnNewPage: false,
items: [],
});
});
@@ -58,6 +60,8 @@ describe("getCompatibleMoveTargets", () => {
icon: "",
columns: 1,
hidden: false,
keepTogether: false,
startOnNewPage: false,
items: [],
});
draft.metadata.layout.pages[0].main.push("ext-1");
@@ -125,6 +129,8 @@ describe("removeItemFromSource", () => {
icon: "",
columns: 1,
hidden: false,
keepTogether: false,
startOnNewPage: false,
items: [{ id: "i1" } as never],
});
});
@@ -177,6 +183,8 @@ describe("addItemToSection", () => {
icon: "",
columns: 1,
hidden: false,
keepTogether: false,
startOnNewPage: false,
items: [],
});
});
+4
View File
@@ -231,6 +231,8 @@ export function createCustomSectionWithItem(
icon: "",
columns: 1,
hidden: false,
keepTogether: false,
startOnNewPage: false,
items: [item as never],
};
@@ -269,6 +271,8 @@ export function createPageWithSection(
icon: "",
columns: 1,
hidden: false,
keepTogether: false,
startOnNewPage: false,
items: [item as never],
};
@@ -21,6 +21,8 @@ describe("createSectionItem", () => {
icon: "",
columns: 1,
hidden: false,
keepTogether: false,
startOnNewPage: false,
items: [],
});
});
@@ -79,6 +81,8 @@ describe("updateSectionItem", () => {
icon: "",
columns: 1,
hidden: false,
keepTogether: false,
startOnNewPage: false,
items: [{ id: "x", value: "old" } as never],
});
});
+2 -2
View File
@@ -80,13 +80,13 @@ export const leftSidebarSections: LeftSidebarSection[] = [
export const rightSidebarSections: RightSidebarSection[] = [
"template",
"layout",
"sharing",
"statistics",
"typography",
"design",
"styles",
"page",
"notes",
"sharing",
"statistics",
"analysis",
"export",
"information",
+19
View File
@@ -17,6 +17,25 @@ export const getCanonicalRootUrl = (origin?: string): string => {
export const createNoindexFollowMeta = () => ({ name: "robots", content: "noindex, follow" });
type ResumeSocialMetaOptions = {
canonicalUrl: string;
title: string;
description: string;
imageUrl: string;
};
export const createResumeSocialMeta = ({ canonicalUrl, title, description, imageUrl }: ResumeSocialMetaOptions) => [
{ property: "og:type", content: "profile" },
{ property: "og:title", content: title },
{ property: "og:description", content: description },
{ property: "og:url", content: canonicalUrl },
{ property: "og:image", content: imageUrl },
{ property: "twitter:card", content: "summary_large_image" },
{ property: "twitter:title", content: title },
{ property: "twitter:description", content: description },
{ property: "twitter:image", content: imageUrl },
];
const serializeJsonLdForScript = (data: JsonLd) =>
JSON.stringify(data).replace(/[<>&\u2028\u2029]/g, (character) => {
switch (character) {