payload-richtext-tiptap 0.0.74 → 0.0.76
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/fields/TiptapEditor/extensions/SlashCommand/groups.js +21 -25
- package/dist/src/fields/TiptapEditor/extensions/SlashCommand/groups.js.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/VideoBlock/components/VideoBlockViewClientside.d.ts +33 -0
- package/dist/src/fields/TiptapEditor/extensions/VideoBlock/components/VideoBlockViewClientside.d.ts.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/VideoBlock/components/VideoBlockViewClientside.js +84 -0
- package/dist/src/fields/TiptapEditor/extensions/VideoBlock/components/VideoBlockViewClientside.js.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/extension-kit.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/extension-kit.js +2 -2
- package/dist/src/fields/TiptapEditor/extensions/extension-kit.js.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/index.js +1 -1
- package/dist/src/fields/TiptapEditor/extensions/index.js.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/serverside/ContentEmbedSupport.d.ts +4 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/ContentEmbedSupport.d.ts.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/ContentEmbedSupport.js +91 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/ContentEmbedSupport.js.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/FacebookServerside.d.ts +3 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/FacebookServerside.d.ts.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/FacebookServerside.js +34 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/FacebookServerside.js.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/ImageBlockServerside.d.ts +3 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/ImageBlockServerside.d.ts.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/ImageBlockServerside.js +64 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/ImageBlockServerside.js.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/InstagramServerside.d.ts +3 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/InstagramServerside.d.ts.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/InstagramServerside.js +34 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/InstagramServerside.js.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/LinkedinServerside.d.ts +3 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/LinkedinServerside.d.ts.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/LinkedinServerside.js +34 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/LinkedinServerside.js.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/ServersideTiptapBody.d.ts +7 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/ServersideTiptapBody.d.ts.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/ServersideTiptapBody.js +87 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/ServersideTiptapBody.js.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/TiktokServerside.d.ts +3 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/TiktokServerside.d.ts.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/TiktokServerside.js +34 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/TiktokServerside.js.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/TwitterBlockServerside.d.ts +3 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/TwitterBlockServerside.d.ts.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/TwitterBlockServerside.js +34 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/TwitterBlockServerside.js.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/VideoBlockServerside.d.ts +52 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/VideoBlockServerside.d.ts.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/VideoBlockServerside.js +95 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/VideoBlockServerside.js.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/YouTubeServerside.d.ts +3 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/YouTubeServerside.d.ts.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/YouTubeServerside.js +34 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/YouTubeServerside.js.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/index.d.ts +12 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/index.d.ts.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/index.js +13 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/index.js.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/useAppendIdToClientsideBlocks.d.ts +2 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/useAppendIdToClientsideBlocks.d.ts.map +1 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/useAppendIdToClientsideBlocks.js +23 -0
- package/dist/src/fields/TiptapEditor/extensions/serverside/useAppendIdToClientsideBlocks.js.map +1 -0
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/TextMenu.js +2 -6
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/TextMenu.js.map +1 -1
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuCommands.d.ts +0 -1
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuCommands.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuCommands.js +10 -9
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuCommands.js.map +1 -1
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuContentTypes.js +1 -24
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuContentTypes.js.map +1 -1
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/styles.css +74 -74
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +27 -40
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Node, mergeAttributes } from '@tiptap/core';
|
|
2
|
+
export const InstagramServerside = Node.create({
|
|
3
|
+
name: 'instagram',
|
|
4
|
+
group: 'block',
|
|
5
|
+
content: 'inline*',
|
|
6
|
+
parseHTML () {
|
|
7
|
+
return [
|
|
8
|
+
{
|
|
9
|
+
tag: 'a[data-type="instagram"]'
|
|
10
|
+
}
|
|
11
|
+
];
|
|
12
|
+
},
|
|
13
|
+
addAttributes () {
|
|
14
|
+
return {
|
|
15
|
+
url: {
|
|
16
|
+
default: null
|
|
17
|
+
},
|
|
18
|
+
'data-id': {
|
|
19
|
+
default: null
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
},
|
|
23
|
+
renderHTML ({ HTMLAttributes }) {
|
|
24
|
+
return [
|
|
25
|
+
'a',
|
|
26
|
+
mergeAttributes(HTMLAttributes, {
|
|
27
|
+
'data-type': 'instagram'
|
|
28
|
+
}),
|
|
29
|
+
0
|
|
30
|
+
];
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
//# sourceMappingURL=InstagramServerside.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/fields/TiptapEditor/extensions/serverside/InstagramServerside.ts"],"sourcesContent":["import { Node, mergeAttributes } from '@tiptap/core';\n\nexport const InstagramServerside = Node.create({\n name: 'instagram',\n\n group: 'block',\n content: 'inline*',\n\n parseHTML() {\n return [\n {\n tag: 'a[data-type=\"instagram\"]',\n },\n ];\n },\n addAttributes() {\n return {\n url: { default: null },\n 'data-id': { default: null },\n };\n },\n renderHTML({ HTMLAttributes }) {\n return [\n 'a',\n mergeAttributes(HTMLAttributes, { 'data-type': 'instagram' }),\n 0,\n ];\n },\n});\n"],"names":["Node","mergeAttributes","InstagramServerside","create","name","group","content","parseHTML","tag","addAttributes","url","default","renderHTML","HTMLAttributes"],"mappings":"AAAA,SAASA,IAAI,EAAEC,eAAe,QAAQ,eAAe;AAErD,OAAO,MAAMC,sBAAsBF,KAAKG,MAAM,CAAC;IAC7CC,MAAM;IAENC,OAAO;IACPC,SAAS;IAETC;QACE,OAAO;YACL;gBACEC,KAAK;YACP;SACD;IACH;IACAC;QACE,OAAO;YACLC,KAAK;gBAAEC,SAAS;YAAK;YACrB,WAAW;gBAAEA,SAAS;YAAK;QAC7B;IACF;IACAC,YAAW,EAAEC,cAAc,EAAE;QAC3B,OAAO;YACL;YACAZ,gBAAgBY,gBAAgB;gBAAE,aAAa;YAAY;YAC3D;SACD;IACH;AACF,GAAG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LinkedinServerside.d.ts","sourceRoot":"","sources":["../../../../../../src/fields/TiptapEditor/extensions/serverside/LinkedinServerside.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAmB,MAAM,cAAc,CAAC;AAErD,eAAO,MAAM,kBAAkB,gBA0B7B,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Node, mergeAttributes } from '@tiptap/core';
|
|
2
|
+
export const LinkedinServerside = Node.create({
|
|
3
|
+
name: 'linkedin',
|
|
4
|
+
group: 'block',
|
|
5
|
+
content: 'inline*',
|
|
6
|
+
parseHTML () {
|
|
7
|
+
return [
|
|
8
|
+
{
|
|
9
|
+
tag: 'a[data-type="linkedin"]'
|
|
10
|
+
}
|
|
11
|
+
];
|
|
12
|
+
},
|
|
13
|
+
addAttributes () {
|
|
14
|
+
return {
|
|
15
|
+
url: {
|
|
16
|
+
default: null
|
|
17
|
+
},
|
|
18
|
+
'data-id': {
|
|
19
|
+
default: null
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
},
|
|
23
|
+
renderHTML ({ HTMLAttributes }) {
|
|
24
|
+
return [
|
|
25
|
+
'a',
|
|
26
|
+
mergeAttributes(HTMLAttributes, {
|
|
27
|
+
'data-type': 'linkedin'
|
|
28
|
+
}),
|
|
29
|
+
0
|
|
30
|
+
];
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
//# sourceMappingURL=LinkedinServerside.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/fields/TiptapEditor/extensions/serverside/LinkedinServerside.ts"],"sourcesContent":["import { Node, mergeAttributes } from '@tiptap/core';\n\nexport const LinkedinServerside = Node.create({\n name: 'linkedin',\n\n group: 'block',\n content: 'inline*',\n\n parseHTML() {\n return [\n {\n tag: 'a[data-type=\"linkedin\"]',\n },\n ];\n },\n addAttributes() {\n return {\n url: { default: null },\n 'data-id': { default: null },\n };\n },\n renderHTML({ HTMLAttributes }) {\n return [\n 'a',\n mergeAttributes(HTMLAttributes, { 'data-type': 'linkedin' }),\n 0,\n ];\n },\n});\n"],"names":["Node","mergeAttributes","LinkedinServerside","create","name","group","content","parseHTML","tag","addAttributes","url","default","renderHTML","HTMLAttributes"],"mappings":"AAAA,SAASA,IAAI,EAAEC,eAAe,QAAQ,eAAe;AAErD,OAAO,MAAMC,qBAAqBF,KAAKG,MAAM,CAAC;IAC5CC,MAAM;IAENC,OAAO;IACPC,SAAS;IAETC;QACE,OAAO;YACL;gBACEC,KAAK;YACP;SACD;IACH;IACAC;QACE,OAAO;YACLC,KAAK;gBAAEC,SAAS;YAAK;YACrB,WAAW;gBAAEA,SAAS;YAAK;QAC7B;IACF;IACAC,YAAW,EAAEC,cAAc,EAAE;QAC3B,OAAO;YACL;YACAZ,gBAAgBY,gBAAgB;gBAAE,aAAa;YAAW;YAC1D;SACD;IACH;AACF,GAAG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ServersideTiptapBody.d.ts","sourceRoot":"","sources":["../../../../../../src/fields/TiptapEditor/extensions/serverside/ServersideTiptapBody.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAuE1B,KAAK,KAAK,GAAG;IACX,IAAI,EAAE,GAAG,CAAC;CACX,CAAC;AACF,eAAO,MAAM,oBAAoB,aAAc,KAAK,sBA+EnD,CAAC"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import { generateHTML } from "@tiptap/html";
|
|
4
|
+
import { Text } from "@tiptap/extension-text";
|
|
5
|
+
import { StarterKit, Highlight, Underline, Placeholder, TextAlign, TextStyle, FontFamily, Typography, Subscript, Superscript, HorizontalRule, Heading, Document, BlockquoteFigure, Quote, QuoteCaption, Link, Paragraph } from "../index.js";
|
|
6
|
+
import { TwitterBlockServerside } from "./TwitterBlockServerside.js";
|
|
7
|
+
import { YouTubeServerside } from "./YouTubeServerside.js";
|
|
8
|
+
import { InstagramServerside } from "./InstagramServerside.js";
|
|
9
|
+
import { ImageBlockServerside } from "./ImageBlockServerside.js";
|
|
10
|
+
import { TiktokServerside } from "./TiktokServerside.js";
|
|
11
|
+
import { LinkedinServerside } from "./LinkedinServerside.js";
|
|
12
|
+
import { FacebookServerside } from "./FacebookServerside.js";
|
|
13
|
+
import { VideoBlockServerside } from "./VideoBlockServerside.js";
|
|
14
|
+
export const ServersideTiptapBody = ({ body })=>{
|
|
15
|
+
if (!body) return null;
|
|
16
|
+
return /*#__PURE__*/ _jsx(_Fragment, {
|
|
17
|
+
children: /*#__PURE__*/ _jsx("div", {
|
|
18
|
+
className: "tiptap ProseMirror min-h-full",
|
|
19
|
+
dangerouslySetInnerHTML: {
|
|
20
|
+
__html: generateHTML(body, [
|
|
21
|
+
Text,
|
|
22
|
+
StarterKit.configure({
|
|
23
|
+
document: false,
|
|
24
|
+
dropcursor: false,
|
|
25
|
+
heading: false,
|
|
26
|
+
horizontalRule: false,
|
|
27
|
+
blockquote: false,
|
|
28
|
+
history: false,
|
|
29
|
+
codeBlock: false
|
|
30
|
+
}),
|
|
31
|
+
Highlight,
|
|
32
|
+
// CharacterCount,
|
|
33
|
+
Underline,
|
|
34
|
+
Placeholder,
|
|
35
|
+
// Emoji,
|
|
36
|
+
TextAlign,
|
|
37
|
+
TextStyle,
|
|
38
|
+
FontFamily,
|
|
39
|
+
Typography,
|
|
40
|
+
// Color,
|
|
41
|
+
// Dropcursor,
|
|
42
|
+
// CollaborationCursor,
|
|
43
|
+
// Subscript,
|
|
44
|
+
// TableOfContents,
|
|
45
|
+
// Superscript,
|
|
46
|
+
// CodeBlock,
|
|
47
|
+
// BulletList,
|
|
48
|
+
// OrderedList,
|
|
49
|
+
// Collaboration,
|
|
50
|
+
// TaskItem,
|
|
51
|
+
// TaskList,
|
|
52
|
+
// FileHandler,
|
|
53
|
+
// Selection,
|
|
54
|
+
// Focus,
|
|
55
|
+
// Table,
|
|
56
|
+
HorizontalRule,
|
|
57
|
+
Heading,
|
|
58
|
+
Document,
|
|
59
|
+
// TrailingNode,
|
|
60
|
+
// SlashCommand,
|
|
61
|
+
// FontSize,
|
|
62
|
+
// Figure,
|
|
63
|
+
// Figcaption,
|
|
64
|
+
BlockquoteFigure,
|
|
65
|
+
Quote,
|
|
66
|
+
QuoteCaption,
|
|
67
|
+
ImageBlockServerside,
|
|
68
|
+
VideoBlockServerside,
|
|
69
|
+
// AudioBlock,
|
|
70
|
+
// Columns,
|
|
71
|
+
TwitterBlockServerside,
|
|
72
|
+
InstagramServerside,
|
|
73
|
+
YouTubeServerside,
|
|
74
|
+
Paragraph,
|
|
75
|
+
Superscript,
|
|
76
|
+
Subscript,
|
|
77
|
+
Link,
|
|
78
|
+
TiktokServerside,
|
|
79
|
+
LinkedinServerside,
|
|
80
|
+
FacebookServerside
|
|
81
|
+
])
|
|
82
|
+
}
|
|
83
|
+
})
|
|
84
|
+
});
|
|
85
|
+
};
|
|
86
|
+
|
|
87
|
+
//# sourceMappingURL=ServersideTiptapBody.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/fields/TiptapEditor/extensions/serverside/ServersideTiptapBody.tsx"],"sourcesContent":["import React from \"react\";\nimport { generateHTML } from \"@tiptap/html\";\nimport { Text } from \"@tiptap/extension-text\";\nimport {\n StarterKit,\n Highlight,\n CharacterCount,\n Underline,\n Placeholder,\n Emoji,\n TextAlign,\n TextStyle,\n FontFamily,\n Typography,\n Color,\n Dropcursor,\n CollaborationCursor,\n Subscript,\n TableOfContents,\n Superscript,\n CodeBlock,\n BulletList,\n OrderedList,\n Collaboration,\n TaskItem,\n TaskList,\n FileHandler,\n Selection,\n Focus,\n Table,\n HorizontalRule,\n Heading,\n Document,\n TrailingNode,\n FontSize,\n Figure,\n Figcaption,\n BlockquoteFigure,\n Quote,\n QuoteCaption,\n Link,\n // ImageUpload,\n // ImageBlock,\n // VideoBlock,\n // AudioBlock,\n // Youtube,\n // Instagram,\n Columns,\n Paragraph,\n InsideLinks,\n TableCell,\n TableHeader,\n TableRow,\n Column,\n // Twitter,\n Linkedin,\n Tiktok,\n Facebook,\n // Instagram,\n // Youtube,\n} from \"../index.js\";\n\nimport { TwitterBlockServerside } from \"./TwitterBlockServerside.js\";\nimport { YouTubeServerside } from \"./YouTubeServerside.js\";\nimport { InstagramServerside } from \"./InstagramServerside.js\";\nimport { ImageBlockServerside } from \"./ImageBlockServerside.js\";\nimport { TiktokServerside } from \"./TiktokServerside.js\";\nimport { LinkedinServerside } from \"./LinkedinServerside.js\";\nimport { FacebookServerside } from \"./FacebookServerside.js\";\nimport { VideoBlockServerside } from \"./VideoBlockServerside.js\";\n\ntype Props = {\n body: any;\n};\nexport const ServersideTiptapBody = ({ body }: Props) => {\n if (!body) return null;\n\n return (\n <>\n <div\n className=\"tiptap ProseMirror min-h-full\"\n dangerouslySetInnerHTML={{\n __html: generateHTML(body, [\n Text,\n StarterKit.configure({\n document: false,\n dropcursor: false,\n heading: false,\n horizontalRule: false,\n blockquote: false,\n history: false,\n codeBlock: false,\n }),\n Highlight,\n // CharacterCount,\n Underline,\n Placeholder,\n // Emoji,\n TextAlign,\n TextStyle,\n FontFamily,\n Typography,\n // Color,\n // Dropcursor,\n // CollaborationCursor,\n // Subscript,\n // TableOfContents,\n // Superscript,\n // CodeBlock,\n // BulletList,\n // OrderedList,\n // Collaboration,\n // TaskItem,\n // TaskList,\n // FileHandler,\n // Selection,\n // Focus,\n // Table,\n HorizontalRule,\n Heading,\n Document,\n // TrailingNode,\n // SlashCommand,\n // FontSize,\n // Figure,\n // Figcaption,\n BlockquoteFigure,\n Quote,\n QuoteCaption,\n ImageBlockServerside,\n VideoBlockServerside,\n // AudioBlock,\n // Columns,\n TwitterBlockServerside,\n InstagramServerside,\n YouTubeServerside,\n Paragraph,\n Superscript,\n Subscript,\n Link,\n TiktokServerside,\n LinkedinServerside,\n FacebookServerside,\n // InsideLinks,\n // TableCell,\n // TableHeader,\n // TableRow,\n // Column,\n ]),\n }}\n />\n </>\n );\n};\n"],"names":["React","generateHTML","Text","StarterKit","Highlight","Underline","Placeholder","TextAlign","TextStyle","FontFamily","Typography","Subscript","Superscript","HorizontalRule","Heading","Document","BlockquoteFigure","Quote","QuoteCaption","Link","Paragraph","TwitterBlockServerside","YouTubeServerside","InstagramServerside","ImageBlockServerside","TiktokServerside","LinkedinServerside","FacebookServerside","VideoBlockServerside","ServersideTiptapBody","body","div","className","dangerouslySetInnerHTML","__html","configure","document","dropcursor","heading","horizontalRule","blockquote","history","codeBlock"],"mappings":";AAAA,OAAOA,WAAW,QAAQ;AAC1B,SAASC,YAAY,QAAQ,eAAe;AAC5C,SAASC,IAAI,QAAQ,yBAAyB;AAC9C,SACEC,UAAU,EACVC,SAAS,EAETC,SAAS,EACTC,WAAW,EAEXC,SAAS,EACTC,SAAS,EACTC,UAAU,EACVC,UAAU,EAIVC,SAAS,EAETC,WAAW,EAWXC,cAAc,EACdC,OAAO,EACPC,QAAQ,EAKRC,gBAAgB,EAChBC,KAAK,EACLC,YAAY,EACZC,IAAI,EAQJC,SAAS,QAYJ,cAAc;AAErB,SAASC,sBAAsB,QAAQ,8BAA8B;AACrE,SAASC,iBAAiB,QAAQ,yBAAyB;AAC3D,SAASC,mBAAmB,QAAQ,2BAA2B;AAC/D,SAASC,oBAAoB,QAAQ,4BAA4B;AACjE,SAASC,gBAAgB,QAAQ,wBAAwB;AACzD,SAASC,kBAAkB,QAAQ,0BAA0B;AAC7D,SAASC,kBAAkB,QAAQ,0BAA0B;AAC7D,SAASC,oBAAoB,QAAQ,4BAA4B;AAKjE,OAAO,MAAMC,uBAAuB,CAAC,EAAEC,IAAI,EAAS;IAClD,IAAI,CAACA,MAAM,OAAO;IAElB,qBACE;kBACE,cAAA,KAACC;YACCC,WAAU;YACVC,yBAAyB;gBACvBC,QAAQjC,aAAa6B,MAAM;oBACzB5B;oBACAC,WAAWgC,SAAS,CAAC;wBACnBC,UAAU;wBACVC,YAAY;wBACZC,SAAS;wBACTC,gBAAgB;wBAChBC,YAAY;wBACZC,SAAS;wBACTC,WAAW;oBACb;oBACAtC;oBACA,kBAAkB;oBAClBC;oBACAC;oBACA,SAAS;oBACTC;oBACAC;oBACAC;oBACAC;oBACA,SAAS;oBACT,cAAc;oBACd,uBAAuB;oBACvB,aAAa;oBACb,mBAAmB;oBACnB,eAAe;oBACf,aAAa;oBACb,cAAc;oBACd,eAAe;oBACf,iBAAiB;oBACjB,YAAY;oBACZ,YAAY;oBACZ,eAAe;oBACf,aAAa;oBACb,SAAS;oBACT,SAAS;oBACTG;oBACAC;oBACAC;oBACA,gBAAgB;oBAChB,gBAAgB;oBAChB,YAAY;oBACZ,UAAU;oBACV,cAAc;oBACdC;oBACAC;oBACAC;oBACAM;oBACAI;oBACA,cAAc;oBACd,WAAW;oBACXP;oBACAE;oBACAD;oBACAF;oBACAR;oBACAD;oBACAQ;oBACAM;oBACAC;oBACAC;iBAMD;YACH;;;AAIR,EAAE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TiktokServerside.d.ts","sourceRoot":"","sources":["../../../../../../src/fields/TiptapEditor/extensions/serverside/TiktokServerside.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAmB,MAAM,cAAc,CAAC;AAErD,eAAO,MAAM,gBAAgB,gBAsB3B,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Node, mergeAttributes } from '@tiptap/core';
|
|
2
|
+
export const TiktokServerside = Node.create({
|
|
3
|
+
name: 'tiktok',
|
|
4
|
+
group: 'block',
|
|
5
|
+
content: 'inline*',
|
|
6
|
+
parseHTML () {
|
|
7
|
+
return [
|
|
8
|
+
{
|
|
9
|
+
tag: 'a[data-type="tiktok"]'
|
|
10
|
+
}
|
|
11
|
+
];
|
|
12
|
+
},
|
|
13
|
+
addAttributes () {
|
|
14
|
+
return {
|
|
15
|
+
url: {
|
|
16
|
+
default: null
|
|
17
|
+
},
|
|
18
|
+
'data-id': {
|
|
19
|
+
default: null
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
},
|
|
23
|
+
renderHTML ({ HTMLAttributes }) {
|
|
24
|
+
return [
|
|
25
|
+
'a',
|
|
26
|
+
mergeAttributes(HTMLAttributes, {
|
|
27
|
+
'data-type': 'tiktok'
|
|
28
|
+
}),
|
|
29
|
+
0
|
|
30
|
+
];
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
//# sourceMappingURL=TiktokServerside.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/fields/TiptapEditor/extensions/serverside/TiktokServerside.ts"],"sourcesContent":["import { Node, mergeAttributes } from '@tiptap/core';\n\nexport const TiktokServerside = Node.create({\n name: 'tiktok',\n\n group: 'block',\n content: 'inline*',\n\n parseHTML() {\n return [\n {\n tag: 'a[data-type=\"tiktok\"]',\n },\n ];\n },\n addAttributes() {\n return {\n url: { default: null },\n 'data-id': { default: null },\n };\n },\n renderHTML({ HTMLAttributes }) {\n return ['a', mergeAttributes(HTMLAttributes, { 'data-type': 'tiktok' }), 0];\n },\n});\n"],"names":["Node","mergeAttributes","TiktokServerside","create","name","group","content","parseHTML","tag","addAttributes","url","default","renderHTML","HTMLAttributes"],"mappings":"AAAA,SAASA,IAAI,EAAEC,eAAe,QAAQ,eAAe;AAErD,OAAO,MAAMC,mBAAmBF,KAAKG,MAAM,CAAC;IAC1CC,MAAM;IAENC,OAAO;IACPC,SAAS;IAETC;QACE,OAAO;YACL;gBACEC,KAAK;YACP;SACD;IACH;IACAC;QACE,OAAO;YACLC,KAAK;gBAAEC,SAAS;YAAK;YACrB,WAAW;gBAAEA,SAAS;YAAK;QAC7B;IACF;IACAC,YAAW,EAAEC,cAAc,EAAE;QAC3B,OAAO;YAAC;YAAKZ,gBAAgBY,gBAAgB;gBAAE,aAAa;YAAS;YAAI;SAAE;IAC7E;AACF,GAAG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TwitterBlockServerside.d.ts","sourceRoot":"","sources":["../../../../../../src/fields/TiptapEditor/extensions/serverside/TwitterBlockServerside.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAmB,MAAM,cAAc,CAAC;AAErD,eAAO,MAAM,sBAAsB,gBAyBjC,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Node, mergeAttributes } from '@tiptap/core';
|
|
2
|
+
export const TwitterBlockServerside = Node.create({
|
|
3
|
+
name: 'twitter',
|
|
4
|
+
group: 'block',
|
|
5
|
+
content: 'inline*',
|
|
6
|
+
parseHTML () {
|
|
7
|
+
return [
|
|
8
|
+
{
|
|
9
|
+
tag: 'a[data-type="twitter"]'
|
|
10
|
+
}
|
|
11
|
+
];
|
|
12
|
+
},
|
|
13
|
+
addAttributes () {
|
|
14
|
+
return {
|
|
15
|
+
url: {
|
|
16
|
+
default: null
|
|
17
|
+
},
|
|
18
|
+
'data-id': {
|
|
19
|
+
default: null
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
},
|
|
23
|
+
renderHTML ({ HTMLAttributes }) {
|
|
24
|
+
return [
|
|
25
|
+
'a',
|
|
26
|
+
mergeAttributes(HTMLAttributes, {
|
|
27
|
+
'data-type': 'twitter'
|
|
28
|
+
}),
|
|
29
|
+
0
|
|
30
|
+
];
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
//# sourceMappingURL=TwitterBlockServerside.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/fields/TiptapEditor/extensions/serverside/TwitterBlockServerside.ts"],"sourcesContent":["import { Node, mergeAttributes } from '@tiptap/core';\n\nexport const TwitterBlockServerside = Node.create({\n name: 'twitter',\n group: 'block',\n content: 'inline*',\n\n parseHTML() {\n return [\n {\n tag: 'a[data-type=\"twitter\"]',\n },\n ];\n },\n addAttributes() {\n return {\n url: { default: null },\n 'data-id': { default: null },\n };\n },\n renderHTML({ HTMLAttributes }) {\n return [\n 'a',\n mergeAttributes(HTMLAttributes, { 'data-type': 'twitter' }),\n 0,\n ];\n },\n});\n"],"names":["Node","mergeAttributes","TwitterBlockServerside","create","name","group","content","parseHTML","tag","addAttributes","url","default","renderHTML","HTMLAttributes"],"mappings":"AAAA,SAASA,IAAI,EAAEC,eAAe,QAAQ,eAAe;AAErD,OAAO,MAAMC,yBAAyBF,KAAKG,MAAM,CAAC;IAChDC,MAAM;IACNC,OAAO;IACPC,SAAS;IAETC;QACE,OAAO;YACL;gBACEC,KAAK;YACP;SACD;IACH;IACAC;QACE,OAAO;YACLC,KAAK;gBAAEC,SAAS;YAAK;YACrB,WAAW;gBAAEA,SAAS;YAAK;QAC7B;IACF;IACAC,YAAW,EAAEC,cAAc,EAAE;QAC3B,OAAO;YACL;YACAZ,gBAAgBY,gBAAgB;gBAAE,aAAa;YAAU;YACzD;SACD;IACH;AACF,GAAG"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { Node } from "@tiptap/core";
|
|
2
|
+
export interface VideoOptions {
|
|
3
|
+
/**
|
|
4
|
+
* Controls if the image node should be inline or not.
|
|
5
|
+
* @default false
|
|
6
|
+
* @example true
|
|
7
|
+
*/
|
|
8
|
+
inline: boolean;
|
|
9
|
+
/**
|
|
10
|
+
* Controls if base64 images are allowed. Enable this if you want to allow
|
|
11
|
+
* base64 image urls in the `src` attribute.
|
|
12
|
+
* @default false
|
|
13
|
+
* @example true
|
|
14
|
+
*/
|
|
15
|
+
allowBase64: boolean;
|
|
16
|
+
/**
|
|
17
|
+
* HTML attributes to add to the image element.
|
|
18
|
+
* @default {}
|
|
19
|
+
* @example { class: 'foo' }
|
|
20
|
+
*/
|
|
21
|
+
HTMLAttributes: Record<string, any>;
|
|
22
|
+
}
|
|
23
|
+
declare module "@tiptap/core" {
|
|
24
|
+
interface Commands<ReturnType> {
|
|
25
|
+
video: {
|
|
26
|
+
/**
|
|
27
|
+
* Add an image
|
|
28
|
+
* @param options The image attributes
|
|
29
|
+
* @example
|
|
30
|
+
* editor
|
|
31
|
+
* .commands
|
|
32
|
+
* .setVideo({ src: 'https://tiptap.dev/logo.png', alt: 'tiptap', title: 'tiptap logo' })
|
|
33
|
+
*/
|
|
34
|
+
setVideo: (options: {
|
|
35
|
+
src: string;
|
|
36
|
+
alt?: string;
|
|
37
|
+
title?: string;
|
|
38
|
+
poster?: string;
|
|
39
|
+
}) => ReturnType;
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Matches an image to a  on input.
|
|
45
|
+
*/
|
|
46
|
+
export declare const inputRegex: RegExp;
|
|
47
|
+
/**
|
|
48
|
+
* This extension allows you to insert images.
|
|
49
|
+
* @see https://www.tiptap.dev/api/nodes/image
|
|
50
|
+
*/
|
|
51
|
+
export declare const VideoBlockServerside: Node<VideoOptions, any>;
|
|
52
|
+
//# sourceMappingURL=VideoBlockServerside.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VideoBlockServerside.d.ts","sourceRoot":"","sources":["../../../../../../src/fields/TiptapEditor/extensions/serverside/VideoBlockServerside.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,IAAI,EAAE,MAAM,cAAc,CAAC;AAErD,MAAM,WAAW,YAAY;IAC3B;;;;OAIG;IACH,MAAM,EAAE,OAAO,CAAC;IAEhB;;;;;OAKG;IACH,WAAW,EAAE,OAAO,CAAC;IAErB;;;;OAIG;IACH,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACrC;AAED,OAAO,QAAQ,cAAc,CAAC;IAC5B,UAAU,QAAQ,CAAC,UAAU;QAC3B,KAAK,EAAE;YACL;;;;;;;eAOG;YACH,QAAQ,EAAE,CAAC,OAAO,EAAE;gBAClB,GAAG,EAAE,MAAM,CAAC;gBACZ,GAAG,CAAC,EAAE,MAAM,CAAC;gBACb,KAAK,CAAC,EAAE,MAAM,CAAC;gBACf,MAAM,CAAC,EAAE,MAAM,CAAC;aACjB,KAAK,UAAU,CAAC;SAClB,CAAC;KACH;CACF;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,QACqC,CAAC;AAE7D;;;GAGG;AACH,eAAO,MAAM,oBAAoB,yBA4F/B,CAAC"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { mergeAttributes, Node } from "@tiptap/core";
|
|
2
|
+
/**
|
|
3
|
+
* Matches an image to a  on input.
|
|
4
|
+
*/ export const inputRegex = /(?:^|\s)(!\[(.+|:?)]\((\S+)(?:(?:\s+)["'](\S+)["'])?\))$/;
|
|
5
|
+
/**
|
|
6
|
+
* This extension allows you to insert images.
|
|
7
|
+
* @see https://www.tiptap.dev/api/nodes/image
|
|
8
|
+
*/ export const VideoBlockServerside = Node.create({
|
|
9
|
+
name: "videoBlock",
|
|
10
|
+
addOptions () {
|
|
11
|
+
return {
|
|
12
|
+
inline: false,
|
|
13
|
+
allowBase64: false,
|
|
14
|
+
HTMLAttributes: {}
|
|
15
|
+
};
|
|
16
|
+
},
|
|
17
|
+
inline () {
|
|
18
|
+
return this.options.inline;
|
|
19
|
+
},
|
|
20
|
+
group () {
|
|
21
|
+
return this.options.inline ? "inline" : "block";
|
|
22
|
+
},
|
|
23
|
+
draggable: true,
|
|
24
|
+
addAttributes () {
|
|
25
|
+
return {
|
|
26
|
+
"data-id": {
|
|
27
|
+
default: null
|
|
28
|
+
},
|
|
29
|
+
src: {
|
|
30
|
+
default: "",
|
|
31
|
+
parseHTML: (element)=>element.getAttribute("src"),
|
|
32
|
+
renderHTML: (attributes)=>({
|
|
33
|
+
src: attributes.src
|
|
34
|
+
})
|
|
35
|
+
},
|
|
36
|
+
poster: {
|
|
37
|
+
default: "",
|
|
38
|
+
parseHTML: (element)=>element.getAttribute("poster"),
|
|
39
|
+
renderHTML: (attributes)=>({
|
|
40
|
+
poster: attributes.poster
|
|
41
|
+
})
|
|
42
|
+
},
|
|
43
|
+
playlistUrl: {
|
|
44
|
+
default: "",
|
|
45
|
+
parseHTML: (element)=>element.getAttribute("data-playlist-url"),
|
|
46
|
+
renderHTML: (attributes)=>({
|
|
47
|
+
"data-playlist-url": attributes.playlistUrl
|
|
48
|
+
})
|
|
49
|
+
},
|
|
50
|
+
width: {
|
|
51
|
+
default: "100%",
|
|
52
|
+
parseHTML: (element)=>element.getAttribute("data-width"),
|
|
53
|
+
renderHTML: (attributes)=>({
|
|
54
|
+
"data-width": attributes.width
|
|
55
|
+
})
|
|
56
|
+
},
|
|
57
|
+
align: {
|
|
58
|
+
default: "center",
|
|
59
|
+
parseHTML: (element)=>element.getAttribute("data-align"),
|
|
60
|
+
renderHTML: (attributes)=>({
|
|
61
|
+
"data-align": attributes.align
|
|
62
|
+
})
|
|
63
|
+
},
|
|
64
|
+
alt: {
|
|
65
|
+
default: undefined,
|
|
66
|
+
parseHTML: (element)=>element.getAttribute("alt"),
|
|
67
|
+
renderHTML: (attributes)=>({
|
|
68
|
+
alt: attributes.alt
|
|
69
|
+
})
|
|
70
|
+
},
|
|
71
|
+
caption: {
|
|
72
|
+
default: true,
|
|
73
|
+
parseHTML: (element)=>element.getAttribute("data-caption") === "true",
|
|
74
|
+
renderHTML: (attributes)=>({
|
|
75
|
+
"data-caption": attributes.caption
|
|
76
|
+
})
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
},
|
|
80
|
+
parseHTML () {
|
|
81
|
+
return [
|
|
82
|
+
{
|
|
83
|
+
tag: this.options.allowBase64 ? "div[src]" : 'div[src]:not([src^="data:"])'
|
|
84
|
+
}
|
|
85
|
+
];
|
|
86
|
+
},
|
|
87
|
+
renderHTML ({ HTMLAttributes }) {
|
|
88
|
+
return [
|
|
89
|
+
"div",
|
|
90
|
+
mergeAttributes(this.options.HTMLAttributes, HTMLAttributes)
|
|
91
|
+
];
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
|
|
95
|
+
//# sourceMappingURL=VideoBlockServerside.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/fields/TiptapEditor/extensions/serverside/VideoBlockServerside.ts"],"sourcesContent":["import { mergeAttributes, Node } from \"@tiptap/core\";\n\nexport interface VideoOptions {\n /**\n * Controls if the image node should be inline or not.\n * @default false\n * @example true\n */\n inline: boolean;\n\n /**\n * Controls if base64 images are allowed. Enable this if you want to allow\n * base64 image urls in the `src` attribute.\n * @default false\n * @example true\n */\n allowBase64: boolean;\n\n /**\n * HTML attributes to add to the image element.\n * @default {}\n * @example { class: 'foo' }\n */\n HTMLAttributes: Record<string, any>;\n}\n\ndeclare module \"@tiptap/core\" {\n interface Commands<ReturnType> {\n video: {\n /**\n * Add an image\n * @param options The image attributes\n * @example\n * editor\n * .commands\n * .setVideo({ src: 'https://tiptap.dev/logo.png', alt: 'tiptap', title: 'tiptap logo' })\n */\n setVideo: (options: {\n src: string;\n alt?: string;\n title?: string;\n poster?: string;\n }) => ReturnType;\n };\n }\n}\n\n/**\n * Matches an image to a  on input.\n */\nexport const inputRegex =\n /(?:^|\\s)(!\\[(.+|:?)]\\((\\S+)(?:(?:\\s+)[\"'](\\S+)[\"'])?\\))$/;\n\n/**\n * This extension allows you to insert images.\n * @see https://www.tiptap.dev/api/nodes/image\n */\nexport const VideoBlockServerside = Node.create<VideoOptions>({\n name: \"videoBlock\",\n\n addOptions() {\n return {\n inline: false,\n allowBase64: false,\n HTMLAttributes: {},\n };\n },\n\n inline() {\n return this.options.inline;\n },\n\n group() {\n return this.options.inline ? \"inline\" : \"block\";\n },\n\n draggable: true,\n\n addAttributes() {\n return {\n \"data-id\": { default: null },\n src: {\n default: \"\",\n parseHTML: (element) => element.getAttribute(\"src\"),\n renderHTML: (attributes) => ({\n src: attributes.src,\n }),\n },\n poster: {\n default: \"\",\n parseHTML: (element) => element.getAttribute(\"poster\"),\n renderHTML: (attributes) => ({\n poster: attributes.poster,\n }),\n },\n playlistUrl: {\n default: \"\",\n parseHTML: (element) => element.getAttribute(\"data-playlist-url\"),\n renderHTML: (attributes) => ({\n \"data-playlist-url\": attributes.playlistUrl,\n }),\n },\n width: {\n default: \"100%\",\n parseHTML: (element) => element.getAttribute(\"data-width\"),\n renderHTML: (attributes) => ({\n \"data-width\": attributes.width,\n }),\n },\n align: {\n default: \"center\",\n parseHTML: (element) => element.getAttribute(\"data-align\"),\n renderHTML: (attributes) => ({\n \"data-align\": attributes.align,\n }),\n },\n alt: {\n default: undefined,\n parseHTML: (element) => element.getAttribute(\"alt\"),\n renderHTML: (attributes) => ({\n alt: attributes.alt,\n }),\n },\n caption: {\n default: true,\n parseHTML: (element) => element.getAttribute(\"data-caption\") === \"true\",\n renderHTML: (attributes) => ({\n \"data-caption\": attributes.caption,\n }),\n },\n };\n },\n\n parseHTML() {\n return [\n {\n tag: this.options.allowBase64\n ? \"div[src]\"\n : 'div[src]:not([src^=\"data:\"])',\n },\n ];\n },\n\n renderHTML({ HTMLAttributes }) {\n return [\n \"div\",\n mergeAttributes(this.options.HTMLAttributes, HTMLAttributes),\n ];\n },\n});\n"],"names":["mergeAttributes","Node","inputRegex","VideoBlockServerside","create","name","addOptions","inline","allowBase64","HTMLAttributes","options","group","draggable","addAttributes","default","src","parseHTML","element","getAttribute","renderHTML","attributes","poster","playlistUrl","width","align","alt","undefined","caption","tag"],"mappings":"AAAA,SAASA,eAAe,EAAEC,IAAI,QAAQ,eAAe;AA+CrD;;CAEC,GACD,OAAO,MAAMC,aACX,2DAA2D;AAE7D;;;CAGC,GACD,OAAO,MAAMC,uBAAuBF,KAAKG,MAAM,CAAe;IAC5DC,MAAM;IAENC;QACE,OAAO;YACLC,QAAQ;YACRC,aAAa;YACbC,gBAAgB,CAAC;QACnB;IACF;IAEAF;QACE,OAAO,IAAI,CAACG,OAAO,CAACH,MAAM;IAC5B;IAEAI;QACE,OAAO,IAAI,CAACD,OAAO,CAACH,MAAM,GAAG,WAAW;IAC1C;IAEAK,WAAW;IAEXC;QACE,OAAO;YACL,WAAW;gBAAEC,SAAS;YAAK;YAC3BC,KAAK;gBACHD,SAAS;gBACTE,WAAW,CAACC,UAAYA,QAAQC,YAAY,CAAC;gBAC7CC,YAAY,CAACC,aAAgB,CAAA;wBAC3BL,KAAKK,WAAWL,GAAG;oBACrB,CAAA;YACF;YACAM,QAAQ;gBACNP,SAAS;gBACTE,WAAW,CAACC,UAAYA,QAAQC,YAAY,CAAC;gBAC7CC,YAAY,CAACC,aAAgB,CAAA;wBAC3BC,QAAQD,WAAWC,MAAM;oBAC3B,CAAA;YACF;YACAC,aAAa;gBACXR,SAAS;gBACTE,WAAW,CAACC,UAAYA,QAAQC,YAAY,CAAC;gBAC7CC,YAAY,CAACC,aAAgB,CAAA;wBAC3B,qBAAqBA,WAAWE,WAAW;oBAC7C,CAAA;YACF;YACAC,OAAO;gBACLT,SAAS;gBACTE,WAAW,CAACC,UAAYA,QAAQC,YAAY,CAAC;gBAC7CC,YAAY,CAACC,aAAgB,CAAA;wBAC3B,cAAcA,WAAWG,KAAK;oBAChC,CAAA;YACF;YACAC,OAAO;gBACLV,SAAS;gBACTE,WAAW,CAACC,UAAYA,QAAQC,YAAY,CAAC;gBAC7CC,YAAY,CAACC,aAAgB,CAAA;wBAC3B,cAAcA,WAAWI,KAAK;oBAChC,CAAA;YACF;YACAC,KAAK;gBACHX,SAASY;gBACTV,WAAW,CAACC,UAAYA,QAAQC,YAAY,CAAC;gBAC7CC,YAAY,CAACC,aAAgB,CAAA;wBAC3BK,KAAKL,WAAWK,GAAG;oBACrB,CAAA;YACF;YACAE,SAAS;gBACPb,SAAS;gBACTE,WAAW,CAACC,UAAYA,QAAQC,YAAY,CAAC,oBAAoB;gBACjEC,YAAY,CAACC,aAAgB,CAAA;wBAC3B,gBAAgBA,WAAWO,OAAO;oBACpC,CAAA;YACF;QACF;IACF;IAEAX;QACE,OAAO;YACL;gBACEY,KAAK,IAAI,CAAClB,OAAO,CAACF,WAAW,GACzB,aACA;YACN;SACD;IACH;IAEAW,YAAW,EAAEV,cAAc,EAAE;QAC3B,OAAO;YACL;YACAT,gBAAgB,IAAI,CAACU,OAAO,CAACD,cAAc,EAAEA;SAC9C;IACH;AACF,GAAG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"YouTubeServerside.d.ts","sourceRoot":"","sources":["../../../../../../src/fields/TiptapEditor/extensions/serverside/YouTubeServerside.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAmB,MAAM,cAAc,CAAC;AAErD,eAAO,MAAM,iBAAiB,gBA0B5B,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Node, mergeAttributes } from '@tiptap/core';
|
|
2
|
+
export const YouTubeServerside = Node.create({
|
|
3
|
+
name: 'youtube',
|
|
4
|
+
group: 'block',
|
|
5
|
+
content: 'inline*',
|
|
6
|
+
parseHTML () {
|
|
7
|
+
return [
|
|
8
|
+
{
|
|
9
|
+
tag: 'a[data-type="youtube"]'
|
|
10
|
+
}
|
|
11
|
+
];
|
|
12
|
+
},
|
|
13
|
+
addAttributes () {
|
|
14
|
+
return {
|
|
15
|
+
url: {
|
|
16
|
+
default: null
|
|
17
|
+
},
|
|
18
|
+
'data-id': {
|
|
19
|
+
default: null
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
},
|
|
23
|
+
renderHTML ({ HTMLAttributes }) {
|
|
24
|
+
return [
|
|
25
|
+
'a',
|
|
26
|
+
mergeAttributes(HTMLAttributes, {
|
|
27
|
+
'data-type': 'youtube'
|
|
28
|
+
}),
|
|
29
|
+
0
|
|
30
|
+
];
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
//# sourceMappingURL=YouTubeServerside.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/fields/TiptapEditor/extensions/serverside/YouTubeServerside.ts"],"sourcesContent":["import { Node, mergeAttributes } from '@tiptap/core';\n\nexport const YouTubeServerside = Node.create({\n name: 'youtube',\n\n group: 'block',\n content: 'inline*',\n\n parseHTML() {\n return [\n {\n tag: 'a[data-type=\"youtube\"]',\n },\n ];\n },\n addAttributes() {\n return {\n url: { default: null },\n 'data-id': { default: null },\n };\n },\n renderHTML({ HTMLAttributes }) {\n return [\n 'a',\n mergeAttributes(HTMLAttributes, { 'data-type': 'youtube' }),\n 0,\n ];\n },\n});\n"],"names":["Node","mergeAttributes","YouTubeServerside","create","name","group","content","parseHTML","tag","addAttributes","url","default","renderHTML","HTMLAttributes"],"mappings":"AAAA,SAASA,IAAI,EAAEC,eAAe,QAAQ,eAAe;AAErD,OAAO,MAAMC,oBAAoBF,KAAKG,MAAM,CAAC;IAC3CC,MAAM;IAENC,OAAO;IACPC,SAAS;IAETC;QACE,OAAO;YACL;gBACEC,KAAK;YACP;SACD;IACH;IACAC;QACE,OAAO;YACLC,KAAK;gBAAEC,SAAS;YAAK;YACrB,WAAW;gBAAEA,SAAS;YAAK;QAC7B;IACF;IACAC,YAAW,EAAEC,cAAc,EAAE;QAC3B,OAAO;YACL;YACAZ,gBAAgBY,gBAAgB;gBAAE,aAAa;YAAU;YACzD;SACD;IACH;AACF,GAAG"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export * from "./FacebookServerside.js";
|
|
2
|
+
export * from "./ImageBlockServerside.js";
|
|
3
|
+
export * from "./InstagramServerside.js";
|
|
4
|
+
export * from "./LinkedinServerside.js";
|
|
5
|
+
export * from "./TiktokServerside.js";
|
|
6
|
+
export * from "./TwitterBlockServerside.js";
|
|
7
|
+
export * from "./VideoBlockServerside.js";
|
|
8
|
+
export * from "./YouTubeServerside.js";
|
|
9
|
+
export * from "./ContentEmbedSupport.js";
|
|
10
|
+
export * from "./ServersideTiptapBody.js";
|
|
11
|
+
export * from "./useAppendIdToClientsideBlocks.js";
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/fields/TiptapEditor/extensions/serverside/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oCAAoC,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export * from "./FacebookServerside.js";
|
|
2
|
+
export * from "./ImageBlockServerside.js";
|
|
3
|
+
export * from "./InstagramServerside.js";
|
|
4
|
+
export * from "./LinkedinServerside.js";
|
|
5
|
+
export * from "./TiktokServerside.js";
|
|
6
|
+
export * from "./TwitterBlockServerside.js";
|
|
7
|
+
export * from "./VideoBlockServerside.js";
|
|
8
|
+
export * from "./YouTubeServerside.js";
|
|
9
|
+
export * from "./ContentEmbedSupport.js";
|
|
10
|
+
export * from "./ServersideTiptapBody.js";
|
|
11
|
+
export * from "./useAppendIdToClientsideBlocks.js";
|
|
12
|
+
|
|
13
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/fields/TiptapEditor/extensions/serverside/index.ts"],"sourcesContent":["export * from \"./FacebookServerside.js\";\nexport * from \"./ImageBlockServerside.js\";\nexport * from \"./InstagramServerside.js\";\nexport * from \"./LinkedinServerside.js\";\nexport * from \"./TiktokServerside.js\";\nexport * from \"./TwitterBlockServerside.js\";\nexport * from \"./VideoBlockServerside.js\";\nexport * from \"./YouTubeServerside.js\";\nexport * from \"./ContentEmbedSupport.js\";\nexport * from \"./ServersideTiptapBody.js\";\nexport * from \"./useAppendIdToClientsideBlocks.js\";\n"],"names":[],"mappings":"AAAA,cAAc,0BAA0B;AACxC,cAAc,4BAA4B;AAC1C,cAAc,2BAA2B;AACzC,cAAc,0BAA0B;AACxC,cAAc,wBAAwB;AACtC,cAAc,8BAA8B;AAC5C,cAAc,4BAA4B;AAC1C,cAAc,yBAAyB;AACvC,cAAc,2BAA2B;AACzC,cAAc,4BAA4B;AAC1C,cAAc,qCAAqC"}
|
package/dist/src/fields/TiptapEditor/extensions/serverside/useAppendIdToClientsideBlocks.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useAppendIdToClientsideBlocks.d.ts","sourceRoot":"","sources":["../../../../../../src/fields/TiptapEditor/extensions/serverside/useAppendIdToClientsideBlocks.ts"],"names":[],"mappings":"AAYA,wBAAgB,0BAA0B,CAAC,IAAI,KAAA,OAW9C"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
const SOCIAL_MEDIA = [
|
|
2
|
+
"twitter",
|
|
3
|
+
"youtube",
|
|
4
|
+
"facebook",
|
|
5
|
+
"instagram",
|
|
6
|
+
"linkedin",
|
|
7
|
+
"tiktok",
|
|
8
|
+
"imageBlock",
|
|
9
|
+
"videoBlock"
|
|
10
|
+
];
|
|
11
|
+
export function appendIdToClientsideBlocks(body) {
|
|
12
|
+
return {
|
|
13
|
+
...body,
|
|
14
|
+
content: body.content.map((c, index)=>{
|
|
15
|
+
if (SOCIAL_MEDIA.includes(c.type)) {
|
|
16
|
+
c.attrs["data-id"] = index;
|
|
17
|
+
}
|
|
18
|
+
return c;
|
|
19
|
+
})
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
//# sourceMappingURL=useAppendIdToClientsideBlocks.js.map
|
package/dist/src/fields/TiptapEditor/extensions/serverside/useAppendIdToClientsideBlocks.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/fields/TiptapEditor/extensions/serverside/useAppendIdToClientsideBlocks.ts"],"sourcesContent":["import { useCallback } from \"react\";\n\nconst SOCIAL_MEDIA = [\n \"twitter\",\n \"youtube\",\n \"facebook\",\n \"instagram\",\n \"linkedin\",\n \"tiktok\",\n \"imageBlock\",\n \"videoBlock\",\n];\nexport function appendIdToClientsideBlocks(body) {\n return {\n ...body,\n content: body.content.map((c, index) => {\n if (SOCIAL_MEDIA.includes(c.type)) {\n c.attrs[\"data-id\"] = index;\n }\n\n return c;\n }),\n };\n}\n"],"names":["SOCIAL_MEDIA","appendIdToClientsideBlocks","body","content","map","c","index","includes","type","attrs"],"mappings":"AAEA,MAAMA,eAAe;IACnB;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACD;AACD,OAAO,SAASC,2BAA2BC,IAAI;IAC7C,OAAO;QACL,GAAGA,IAAI;QACPC,SAASD,KAAKC,OAAO,CAACC,GAAG,CAAC,CAACC,GAAGC;YAC5B,IAAIN,aAAaO,QAAQ,CAACF,EAAEG,IAAI,GAAG;gBACjCH,EAAEI,KAAK,CAAC,UAAU,GAAGH;YACvB;YAEA,OAAOD;QACT;IACF;AACF"}
|
|
@@ -10,7 +10,7 @@ import { Surface } from "../../ui/Surface.js";
|
|
|
10
10
|
import { Toolbar } from "../../ui/Toolbar.js";
|
|
11
11
|
import { ContentTypePicker } from "./components/ContentTypePicker.js";
|
|
12
12
|
import { EditLinkPopover } from "./components/EditLinkPopover.js";
|
|
13
|
-
import { FontFamilyPicker } from "./components/FontFamilyPicker.js";
|
|
13
|
+
// import { FontFamilyPicker } from "./components/FontFamilyPicker.js";
|
|
14
14
|
import { FontSizePicker } from "./components/FontSizePicker.js";
|
|
15
15
|
import { useTextmenuCommands } from "./hooks/useTextmenuCommands.js";
|
|
16
16
|
import { useTextmenuContentTypes } from "./hooks/useTextmenuContentTypes.js";
|
|
@@ -20,7 +20,7 @@ import i18next from "i18next";
|
|
|
20
20
|
// on every editor state change
|
|
21
21
|
const MemoButton = /*#__PURE__*/ memo(Toolbar.Button);
|
|
22
22
|
const MemoColorPicker = /*#__PURE__*/ memo(ColorPicker);
|
|
23
|
-
const MemoFontFamilyPicker =
|
|
23
|
+
// const MemoFontFamilyPicker = memo(FontFamilyPicker);
|
|
24
24
|
const MemoFontSizePicker = /*#__PURE__*/ memo(FontSizePicker);
|
|
25
25
|
const MemoContentTypePicker = /*#__PURE__*/ memo(ContentTypePicker);
|
|
26
26
|
export const TextMenu = ({ editor, dir })=>{
|
|
@@ -65,10 +65,6 @@ export const TextMenu = ({ editor, dir })=>{
|
|
|
65
65
|
/*#__PURE__*/ _jsx(MemoContentTypePicker, {
|
|
66
66
|
options: blockOptions
|
|
67
67
|
}),
|
|
68
|
-
/*#__PURE__*/ _jsx(MemoFontFamilyPicker, {
|
|
69
|
-
onChange: commands.onSetFont,
|
|
70
|
-
value: states.currentFont || ""
|
|
71
|
-
}),
|
|
72
68
|
/*#__PURE__*/ _jsx(MemoFontSizePicker, {
|
|
73
69
|
onChange: commands.onSetFontSize,
|
|
74
70
|
value: states.currentSize || ""
|