payload-richtext-tiptap 0.0.71 → 0.0.72
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/Components.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/Components.js +3 -4
- package/dist/src/fields/TiptapEditor/Components.js.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/AICommand/AICommand.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/AICommand/AICommand.js +2 -2
- package/dist/src/fields/TiptapEditor/extensions/AICommand/AICommand.js.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/AICommand/groups.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/AICommand/groups.js +16 -15
- package/dist/src/fields/TiptapEditor/extensions/AICommand/groups.js.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/AudioBlock/components/AudioBlockMenu.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/AudioBlock/components/AudioBlockMenu.js +5 -4
- package/dist/src/fields/TiptapEditor/extensions/AudioBlock/components/AudioBlockMenu.js.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/Iframe/menus/IframeMenu.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/Iframe/menus/IframeMenu.js +2 -1
- package/dist/src/fields/TiptapEditor/extensions/Iframe/menus/IframeMenu.js.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/ImageBlock/components/ImageBlockMenu.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/ImageBlock/components/ImageBlockMenu.js +4 -3
- package/dist/src/fields/TiptapEditor/extensions/ImageBlock/components/ImageBlockMenu.js.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/MultiColumn/menus/ColumnsMenu.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/MultiColumn/menus/ColumnsMenu.js +4 -3
- package/dist/src/fields/TiptapEditor/extensions/MultiColumn/menus/ColumnsMenu.js.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/SlashCommand/SlashCommand.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/SlashCommand/SlashCommand.js +2 -2
- package/dist/src/fields/TiptapEditor/extensions/SlashCommand/SlashCommand.js.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/SlashCommand/groups.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/SlashCommand/groups.js +30 -29
- package/dist/src/fields/TiptapEditor/extensions/SlashCommand/groups.js.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/VideoBlock/components/VideoBlockMenu.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/extensions/VideoBlock/components/VideoBlockMenu.js +5 -4
- package/dist/src/fields/TiptapEditor/extensions/VideoBlock/components/VideoBlockMenu.js.map +1 -1
- package/dist/src/fields/TiptapEditor/features/BlockEditor/BlockEditor.d.ts +2 -2
- package/dist/src/fields/TiptapEditor/features/BlockEditor/BlockEditor.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/features/BlockEditor/BlockEditor.js +16 -1
- package/dist/src/fields/TiptapEditor/features/BlockEditor/BlockEditor.js.map +1 -1
- package/dist/src/fields/TiptapEditor/features/BlockEditor/components/EditorHeader.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/features/BlockEditor/components/EditorHeader.js +2 -1
- package/dist/src/fields/TiptapEditor/features/BlockEditor/components/EditorHeader.js.map +1 -1
- package/dist/src/fields/TiptapEditor/features/BlockEditor/types.d.ts +7 -0
- package/dist/src/fields/TiptapEditor/features/BlockEditor/types.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/features/BlockEditor/types.js.map +1 -1
- package/dist/src/fields/TiptapEditor/features/menus/ContentItemMenu/ContentItemMenu.js +5 -4
- package/dist/src/fields/TiptapEditor/features/menus/ContentItemMenu/ContentItemMenu.js.map +1 -1
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/TextMenu.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/TextMenu.js +16 -15
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/TextMenu.js.map +1 -1
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/EditIframeLinkPopover.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/EditIframeLinkPopover.js +2 -1
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/EditIframeLinkPopover.js.map +1 -1
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/EditLinkPopover.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/EditLinkPopover.js +2 -1
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/EditLinkPopover.js.map +1 -1
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/FontSizePicker.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/FontSizePicker.js +24 -23
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/FontSizePicker.js.map +1 -1
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/SocialMediaPopover.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/SocialMediaPopover.js +2 -1
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/SocialMediaPopover.js.map +1 -1
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ai-selector-commands.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ai-selector-commands.js +2 -1
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ai-selector-commands.js.map +1 -1
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuContentTypes.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuContentTypes.js +9 -8
- package/dist/src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuContentTypes.js.map +1 -1
- package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/AICommandPanel.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/AICommandPanel.js +2 -1
- package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/AICommandPanel.js.map +1 -1
- package/dist/src/fields/TiptapEditor/features/panels/AIEditorPanel/AIEditorPanel.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/features/panels/AIEditorPanel/AIEditorPanel.js +2 -1
- package/dist/src/fields/TiptapEditor/features/panels/AIEditorPanel/AIEditorPanel.js.map +1 -1
- package/dist/src/fields/TiptapEditor/features/panels/Colorpicker/Colorpicker.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/features/panels/Colorpicker/Colorpicker.js +2 -1
- package/dist/src/fields/TiptapEditor/features/panels/Colorpicker/Colorpicker.js.map +1 -1
- package/dist/src/fields/TiptapEditor/features/panels/IframeLinkEditorPanel/IframeLinkEditorPanel.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/features/panels/IframeLinkEditorPanel/IframeLinkEditorPanel.js +2 -1
- package/dist/src/fields/TiptapEditor/features/panels/IframeLinkEditorPanel/IframeLinkEditorPanel.js.map +1 -1
- package/dist/src/fields/TiptapEditor/features/panels/LinkEditorPanel/LinkEditorPanel.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/features/panels/LinkEditorPanel/LinkEditorPanel.js +2 -1
- package/dist/src/fields/TiptapEditor/features/panels/LinkEditorPanel/LinkEditorPanel.js.map +1 -1
- package/dist/src/fields/TiptapEditor/hooks/useBlockEditor.d.ts.map +1 -1
- package/dist/src/fields/TiptapEditor/hooks/useBlockEditor.js +4 -10
- package/dist/src/fields/TiptapEditor/hooks/useBlockEditor.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +38 -37
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/BlockEditor/components/EditorHeader.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { PanelLeft, PanelLeftClose } from \"lucide-react\";\nimport { Icon } from \"../../ui/Icon.js\";\nimport { Toolbar } from \"../../ui/Toolbar.js\";\nimport { EditorUser } from \"../types.js\";\nimport { EditorInfo } from \"./EditorInfo.js\";\n\nexport type EditorHeaderProps = {\n isSidebarOpen?: boolean;\n toggleSidebar?: () => void;\n characters: number;\n words: number;\n users: EditorUser[];\n};\n\nexport const EditorHeader = ({\n characters,\n users,\n words,\n isSidebarOpen,\n toggleSidebar,\n}: EditorHeaderProps) => {\n return (\n <div className=\"w-full flex flex-row items-center justify-between flex-none py-2 text-black bg-white border-b border-neutral-200 dark:bg-black dark:text-white dark:border-neutral-800\">\n <div className=\"flex flex-row gap-x-1.5 items-center\">\n <div className=\"flex items-center gap-x-1.5\">\n <Toolbar.Button\n type=\"button\"\n tooltip={isSidebarOpen
|
|
1
|
+
{"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/BlockEditor/components/EditorHeader.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { PanelLeft, PanelLeftClose } from \"lucide-react\";\nimport { Icon } from \"../../ui/Icon.js\";\nimport { Toolbar } from \"../../ui/Toolbar.js\";\nimport { EditorUser } from \"../types.js\";\nimport { EditorInfo } from \"./EditorInfo.js\";\nimport i18next from \"i18next\";\n\nexport type EditorHeaderProps = {\n isSidebarOpen?: boolean;\n toggleSidebar?: () => void;\n characters: number;\n words: number;\n users: EditorUser[];\n};\n\nexport const EditorHeader = ({\n characters,\n users,\n words,\n isSidebarOpen,\n toggleSidebar,\n}: EditorHeaderProps) => {\n return (\n <div className=\"w-full flex flex-row items-center justify-between flex-none py-2 text-black bg-white border-b border-neutral-200 dark:bg-black dark:text-white dark:border-neutral-800\">\n <div className=\"flex flex-row gap-x-1.5 items-center\">\n <div className=\"flex items-center gap-x-1.5\">\n <Toolbar.Button\n type=\"button\"\n tooltip={isSidebarOpen ?\n i18next.t(\"closeSidebar\") || \"Close sidebar\" :\n i18next.t(\"openSidebar\") || \"Open sidebar\"}\n onClick={toggleSidebar}\n active={isSidebarOpen}\n className={isSidebarOpen ? \"bg-transparent\" : \"\"}\n >\n <Icon icon={isSidebarOpen ? PanelLeftClose : PanelLeft} />\n </Toolbar.Button>\n </div>\n </div>\n <EditorInfo characters={characters} words={words} users={users} />\n </div>\n );\n};\n"],"names":["React","PanelLeft","PanelLeftClose","Icon","Toolbar","EditorInfo","i18next","EditorHeader","characters","users","words","isSidebarOpen","toggleSidebar","div","className","Button","type","tooltip","t","onClick","active","icon"],"mappings":";AAAA,OAAOA,WAAW,QAAQ;AAE1B,SAASC,SAAS,EAAEC,cAAc,QAAQ,eAAe;AACzD,SAASC,IAAI,QAAQ,mBAAmB;AACxC,SAASC,OAAO,QAAQ,sBAAsB;AAE9C,SAASC,UAAU,QAAQ,kBAAkB;AAC7C,OAAOC,aAAa,UAAU;AAU9B,OAAO,MAAMC,eAAe,CAAC,EAC3BC,UAAU,EACVC,KAAK,EACLC,KAAK,EACLC,aAAa,EACbC,aAAa,EACK;IAClB,qBACE,MAACC;QAAIC,WAAU;;0BACb,KAACD;gBAAIC,WAAU;0BACb,cAAA,KAACD;oBAAIC,WAAU;8BACb,cAAA,KAACV,QAAQW,MAAM;wBACbC,MAAK;wBACLC,SAASN,gBACPL,QAAQY,CAAC,CAAC,mBAAmB,kBAC7BZ,QAAQY,CAAC,CAAC,kBAAkB;wBAC9BC,SAASP;wBACTQ,QAAQT;wBACRG,WAAWH,gBAAgB,mBAAmB;kCAE9C,cAAA,KAACR;4BAAKkB,MAAMV,gBAAgBT,iBAAiBD;;;;;0BAInD,KAACI;gBAAWG,YAAYA;gBAAYE,OAAOA;gBAAOD,OAAOA;;;;AAG/D,EAAE"}
|
|
@@ -29,4 +29,11 @@ export type AiImageStyle = {
|
|
|
29
29
|
label: string;
|
|
30
30
|
value: string;
|
|
31
31
|
};
|
|
32
|
+
export type AdditionalContextType = {
|
|
33
|
+
/** standard langauage code */
|
|
34
|
+
language: string;
|
|
35
|
+
/** translation object for the langauge sent down */
|
|
36
|
+
translations: Record<string, string>;
|
|
37
|
+
[k: string]: any;
|
|
38
|
+
};
|
|
32
39
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/fields/TiptapEditor/features/BlockEditor/types.tsx"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IACnC,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,GAAG,CAAA;KAAE,CAAC;CACtC;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,GAAG,CAAC;CACZ,CAAC;AACF,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,MAAM,GACd,UAAU,GACV,UAAU,GACV,QAAQ,GACR,eAAe,GACf,gBAAgB,GAChB,WAAW,GACX,UAAU,GACV,aAAa,GACb,eAAe,GACf,MAAM,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAC;AAEtE,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/fields/TiptapEditor/features/BlockEditor/types.tsx"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IACnC,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,GAAG,CAAA;KAAE,CAAC;CACtC;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,GAAG,CAAC;CACZ,CAAC;AACF,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,MAAM,GACd,UAAU,GACV,UAAU,GACV,QAAQ,GACR,eAAe,GACf,gBAAgB,GAChB,WAAW,GACX,UAAU,GACV,aAAa,GACb,eAAe,GACf,MAAM,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAC;AAEtE,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,8BAA8B;IAC9B,QAAQ,EAAE,MAAM,CAAA;IAChB,oDAAoD;IACpD,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACpC,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC;CAClB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../src/fields/TiptapEditor/features/BlockEditor/types.tsx"],"sourcesContent":["export interface TiptapProps {\n hasCollab: boolean;\n handleChange: (value: any) => void;\n content: { html: string; json: any };\n}\n\nexport type LanguageOption = {\n name: string;\n label: string;\n value: any;\n};\nexport type EditorUser = {\n clientId: string;\n name: string;\n color: string;\n initials?: string;\n};\n\nexport type AiTone =\n | \"academic\"\n | \"business\"\n | \"casual\"\n | \"childfriendly\"\n | \"conversational\"\n | \"emotional\"\n | \"humorous\"\n | \"informative\"\n | \"inspirational\"\n | string;\n\nexport type AiPromptType = \"SHORTEN\" | \"EXTEND\" | \"SIMPLIFY\" | \"TONE\";\n\nexport type AiToneOption = {\n name: string;\n label: string;\n value: AiTone;\n};\n\nexport type AiImageStyle = {\n name: string;\n label: string;\n value: string;\n};\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/fields/TiptapEditor/features/BlockEditor/types.tsx"],"sourcesContent":["export interface TiptapProps {\n hasCollab: boolean;\n handleChange: (value: any) => void;\n content: { html: string; json: any };\n}\n\nexport type LanguageOption = {\n name: string;\n label: string;\n value: any;\n};\nexport type EditorUser = {\n clientId: string;\n name: string;\n color: string;\n initials?: string;\n};\n\nexport type AiTone =\n | \"academic\"\n | \"business\"\n | \"casual\"\n | \"childfriendly\"\n | \"conversational\"\n | \"emotional\"\n | \"humorous\"\n | \"informative\"\n | \"inspirational\"\n | string;\n\nexport type AiPromptType = \"SHORTEN\" | \"EXTEND\" | \"SIMPLIFY\" | \"TONE\";\n\nexport type AiToneOption = {\n name: string;\n label: string;\n value: AiTone;\n};\n\nexport type AiImageStyle = {\n name: string;\n label: string;\n value: string;\n};\n\nexport type AdditionalContextType = {\n /** standard langauage code */\n language: string\n /** translation object for the langauge sent down */\n translations: Record<string, string>\n [k: string]: any;\n}"],"names":[],"mappings":"AA4CA,WAMC"}
|
|
@@ -10,6 +10,7 @@ import { DropdownButton } from "../../ui/Dropdown/Dropdown.js";
|
|
|
10
10
|
import { Surface } from "../../ui/Surface.js";
|
|
11
11
|
import useContentItemActions from "./hooks/useContentItemActions.js";
|
|
12
12
|
import { useData } from "./hooks/useData.js";
|
|
13
|
+
import i18next from "i18next";
|
|
13
14
|
export const ContentItemMenu = ({ editor })=>{
|
|
14
15
|
const [menuOpen, setMenuOpen] = useState(false);
|
|
15
16
|
const [tippyOptions, setTippyOptions] = useState();
|
|
@@ -74,7 +75,7 @@ export const ContentItemMenu = ({ editor })=>{
|
|
|
74
75
|
/*#__PURE__*/ _jsx(Icon, {
|
|
75
76
|
icon: RemoveFormatting
|
|
76
77
|
}),
|
|
77
|
-
"Clear formatting"
|
|
78
|
+
i18next.t("clearFormatting") || "Clear formatting"
|
|
78
79
|
]
|
|
79
80
|
})
|
|
80
81
|
}),
|
|
@@ -85,7 +86,7 @@ export const ContentItemMenu = ({ editor })=>{
|
|
|
85
86
|
/*#__PURE__*/ _jsx(Icon, {
|
|
86
87
|
icon: Clipboard
|
|
87
88
|
}),
|
|
88
|
-
"Copy to clipboard"
|
|
89
|
+
i18next.t("copyToClipboard") || "Copy to clipboard"
|
|
89
90
|
]
|
|
90
91
|
})
|
|
91
92
|
}),
|
|
@@ -96,7 +97,7 @@ export const ContentItemMenu = ({ editor })=>{
|
|
|
96
97
|
/*#__PURE__*/ _jsx(Icon, {
|
|
97
98
|
icon: Copy
|
|
98
99
|
}),
|
|
99
|
-
"Duplicate"
|
|
100
|
+
i18next.t("duplicate") || "Duplicate"
|
|
100
101
|
]
|
|
101
102
|
})
|
|
102
103
|
}),
|
|
@@ -111,7 +112,7 @@ export const ContentItemMenu = ({ editor })=>{
|
|
|
111
112
|
/*#__PURE__*/ _jsx(Icon, {
|
|
112
113
|
icon: Trash2
|
|
113
114
|
}),
|
|
114
|
-
"Delete"
|
|
115
|
+
i18next.t("delete") || "Delete"
|
|
115
116
|
]
|
|
116
117
|
})
|
|
117
118
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/menus/ContentItemMenu/ContentItemMenu.tsx"],"sourcesContent":["\"use client\";\nimport { DragHandle } from \"@tiptap-pro/extension-drag-handle-react\";\nimport { Editor } from \"@tiptap/react\";\nimport { Icon } from \"../../ui/Icon.js\";\nimport { Toolbar } from \"../../ui/Toolbar.js\";\n\nimport
|
|
1
|
+
{"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/menus/ContentItemMenu/ContentItemMenu.tsx"],"sourcesContent":["\"use client\";\nimport { DragHandle } from \"@tiptap-pro/extension-drag-handle-react\";\nimport { Editor } from \"@tiptap/react\";\nimport { Icon } from \"../../ui/Icon.js\";\nimport { Toolbar } from \"../../ui/Toolbar.js\";\n\nimport * as Popover from \"@radix-ui/react-popover\";\nimport {\n Clipboard,\n Copy,\n GripVertical,\n Plus,\n RemoveFormatting,\n Trash2,\n} from \"lucide-react\";\nimport { useEffect, useState } from \"react\";\nimport { DropdownButton } from \"../../ui/Dropdown/Dropdown.js\";\nimport { Surface } from \"../../ui/Surface.js\";\nimport useContentItemActions from \"./hooks/useContentItemActions.js\";\nimport { useData } from \"./hooks/useData.js\";\nimport i18next from \"i18next\";\n\nexport type ContentItemMenuProps = {\n editor: Editor;\n};\n\nexport const ContentItemMenu = ({ editor }: ContentItemMenuProps) => {\n const [menuOpen, setMenuOpen] = useState(false);\n const [tippyOptions, setTippyOptions] = useState();\n const data = useData();\n const actions = useContentItemActions(\n editor,\n data.currentNode,\n data.currentNodePos\n );\n\n useEffect(() => {\n if (menuOpen) {\n editor.commands.setMeta(\"lockDragHandle\", true);\n } else {\n editor.commands.setMeta(\"lockDragHandle\", false);\n }\n }, [editor, menuOpen]);\n\n return (\n <DragHandle\n pluginKey=\"ContentItemMenu\"\n editor={editor}\n onNodeChange={data.handleNodeChange}\n tippyOptions={{\n placement: \"left\",\n offset: [-12, 2],\n zIndex: 99,\n }}\n >\n <div className=\"flex items-center gap-0.5\">\n <Toolbar.Button type=\"button\" onClick={actions.handleAdd}>\n <Icon icon={Plus} />\n </Toolbar.Button>\n <Popover.Root open={menuOpen} onOpenChange={setMenuOpen}>\n <Popover.Trigger asChild>\n <Toolbar.Button type=\"button\">\n <Icon icon={GripVertical} />\n </Toolbar.Button>\n </Popover.Trigger>\n <Popover.Content side=\"bottom\" align=\"start\" sideOffset={8}>\n <Surface className=\"p-2 flex flex-col min-w-[16rem]\">\n <Popover.Close>\n <DropdownButton onClick={actions.resetTextFormatting}>\n <Icon icon={RemoveFormatting} />\n {i18next.t(\"clearFormatting\") || \"Clear formatting\"}\n </DropdownButton>\n </Popover.Close>\n <Popover.Close>\n <DropdownButton onClick={actions.copyNodeToClipboard}>\n <Icon icon={Clipboard} />\n {i18next.t(\"copyToClipboard\") || \"Copy to clipboard\"}\n </DropdownButton>\n </Popover.Close>\n <Popover.Close>\n <DropdownButton onClick={actions.duplicateNode}>\n <Icon icon={Copy} />\n {i18next.t(\"duplicate\") || \"Duplicate\"}\n </DropdownButton>\n </Popover.Close>\n <Toolbar.Divider horizontal />\n <Popover.Close>\n <DropdownButton\n onClick={actions.deleteNode}\n className=\"text-red-500 bg-red-500 dark:text-red-500 hover:bg-red-500 dark:hover:text-red-500 dark:hover:bg-red-500 bg-opacity-10 hover:bg-opacity-20 dark:hover:bg-opacity-20\"\n >\n <Icon icon={Trash2} />\n {i18next.t(\"delete\") || \"Delete\"}\n </DropdownButton>\n </Popover.Close>\n </Surface>\n </Popover.Content>\n </Popover.Root>\n </div>\n </DragHandle>\n );\n};\n"],"names":["DragHandle","Icon","Toolbar","Popover","Clipboard","Copy","GripVertical","Plus","RemoveFormatting","Trash2","useEffect","useState","DropdownButton","Surface","useContentItemActions","useData","i18next","ContentItemMenu","editor","menuOpen","setMenuOpen","tippyOptions","setTippyOptions","data","actions","currentNode","currentNodePos","commands","setMeta","pluginKey","onNodeChange","handleNodeChange","placement","offset","zIndex","div","className","Button","type","onClick","handleAdd","icon","Root","open","onOpenChange","Trigger","asChild","Content","side","align","sideOffset","Close","resetTextFormatting","t","copyNodeToClipboard","duplicateNode","Divider","horizontal","deleteNode"],"mappings":"AAAA;;AACA,SAASA,UAAU,QAAQ,0CAA0C;AAErE,SAASC,IAAI,QAAQ,mBAAmB;AACxC,SAASC,OAAO,QAAQ,sBAAsB;AAE9C,YAAYC,aAAa,0BAA0B;AACnD,SACEC,SAAS,EACTC,IAAI,EACJC,YAAY,EACZC,IAAI,EACJC,gBAAgB,EAChBC,MAAM,QACD,eAAe;AACtB,SAASC,SAAS,EAAEC,QAAQ,QAAQ,QAAQ;AAC5C,SAASC,cAAc,QAAQ,gCAAgC;AAC/D,SAASC,OAAO,QAAQ,sBAAsB;AAC9C,OAAOC,2BAA2B,mCAAmC;AACrE,SAASC,OAAO,QAAQ,qBAAqB;AAC7C,OAAOC,aAAa,UAAU;AAM9B,OAAO,MAAMC,kBAAkB,CAAC,EAAEC,MAAM,EAAwB;IAC9D,MAAM,CAACC,UAAUC,YAAY,GAAGT,SAAS;IACzC,MAAM,CAACU,cAAcC,gBAAgB,GAAGX;IACxC,MAAMY,OAAOR;IACb,MAAMS,UAAUV,sBACdI,QACAK,KAAKE,WAAW,EAChBF,KAAKG,cAAc;IAGrBhB,UAAU;QACR,IAAIS,UAAU;YACZD,OAAOS,QAAQ,CAACC,OAAO,CAAC,kBAAkB;QAC5C,OAAO;YACLV,OAAOS,QAAQ,CAACC,OAAO,CAAC,kBAAkB;QAC5C;IACF,GAAG;QAACV;QAAQC;KAAS;IAErB,qBACE,KAACnB;QACC6B,WAAU;QACVX,QAAQA;QACRY,cAAcP,KAAKQ,gBAAgB;QACnCV,cAAc;YACZW,WAAW;YACXC,QAAQ;gBAAC,CAAC;gBAAI;aAAE;YAChBC,QAAQ;QACV;kBAEA,cAAA,MAACC;YAAIC,WAAU;;8BACb,KAAClC,QAAQmC,MAAM;oBAACC,MAAK;oBAASC,SAASf,QAAQgB,SAAS;8BACtD,cAAA,KAACvC;wBAAKwC,MAAMlC;;;8BAEd,MAACJ,QAAQuC,IAAI;oBAACC,MAAMxB;oBAAUyB,cAAcxB;;sCAC1C,KAACjB,QAAQ0C,OAAO;4BAACC,OAAO;sCACtB,cAAA,KAAC5C,QAAQmC,MAAM;gCAACC,MAAK;0CACnB,cAAA,KAACrC;oCAAKwC,MAAMnC;;;;sCAGhB,KAACH,QAAQ4C,OAAO;4BAACC,MAAK;4BAASC,OAAM;4BAAQC,YAAY;sCACvD,cAAA,MAACrC;gCAAQuB,WAAU;;kDACjB,KAACjC,QAAQgD,KAAK;kDACZ,cAAA,MAACvC;4CAAe2B,SAASf,QAAQ4B,mBAAmB;;8DAClD,KAACnD;oDAAKwC,MAAMjC;;gDACXQ,QAAQqC,CAAC,CAAC,sBAAsB;;;;kDAGrC,KAAClD,QAAQgD,KAAK;kDACZ,cAAA,MAACvC;4CAAe2B,SAASf,QAAQ8B,mBAAmB;;8DAClD,KAACrD;oDAAKwC,MAAMrC;;gDACXY,QAAQqC,CAAC,CAAC,sBAAsB;;;;kDAGrC,KAAClD,QAAQgD,KAAK;kDACZ,cAAA,MAACvC;4CAAe2B,SAASf,QAAQ+B,aAAa;;8DAC5C,KAACtD;oDAAKwC,MAAMpC;;gDACXW,QAAQqC,CAAC,CAAC,gBAAgB;;;;kDAG/B,KAACnD,QAAQsD,OAAO;wCAACC,UAAU;;kDAC3B,KAACtD,QAAQgD,KAAK;kDACZ,cAAA,MAACvC;4CACC2B,SAASf,QAAQkC,UAAU;4CAC3BtB,WAAU;;8DAEV,KAACnC;oDAAKwC,MAAMhC;;gDACXO,QAAQqC,CAAC,CAAC,aAAa;;;;;;;;;;;;AAS1C,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextMenu.d.ts","sourceRoot":"","sources":["../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/TextMenu.tsx"],"names":[],"mappings":"AACA,OAAO,EAAc,MAAM,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"TextMenu.d.ts","sourceRoot":"","sources":["../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/TextMenu.tsx"],"names":[],"mappings":"AACA,OAAO,EAAc,MAAM,EAAE,MAAM,eAAe,CAAC;AAyCnD,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;CAC7B,CAAC;AAEF,eAAO,MAAM,QAAQ,oBAAqB,aAAa,gCA+MtD,CAAC"}
|
|
@@ -15,6 +15,7 @@ import { FontSizePicker } from "./components/FontSizePicker.js";
|
|
|
15
15
|
import { useTextmenuCommands } from "./hooks/useTextmenuCommands.js";
|
|
16
16
|
import { useTextmenuContentTypes } from "./hooks/useTextmenuContentTypes.js";
|
|
17
17
|
import { useTextmenuStates } from "./hooks/useTextmenuStates.js";
|
|
18
|
+
import i18next from "i18next";
|
|
18
19
|
// We memorize the button so each button is not rerendered
|
|
19
20
|
// on every editor state change
|
|
20
21
|
const MemoButton = /*#__PURE__*/ memo(Toolbar.Button);
|
|
@@ -57,7 +58,7 @@ export const TextMenu = ({ editor, dir })=>{
|
|
|
57
58
|
icon: Sparkles,
|
|
58
59
|
className: "mr-1"
|
|
59
60
|
}),
|
|
60
|
-
"AI Tools"
|
|
61
|
+
i18next.t("aiTools") || "AI Tools"
|
|
61
62
|
]
|
|
62
63
|
}),
|
|
63
64
|
/*#__PURE__*/ _jsx(Toolbar.Divider, {}),
|
|
@@ -75,7 +76,7 @@ export const TextMenu = ({ editor, dir })=>{
|
|
|
75
76
|
/*#__PURE__*/ _jsx(Toolbar.Divider, {}),
|
|
76
77
|
/*#__PURE__*/ _jsx(MemoButton, {
|
|
77
78
|
type: "button",
|
|
78
|
-
tooltip: "Bold",
|
|
79
|
+
tooltip: i18next.t("boldText") || "Bold",
|
|
79
80
|
tooltipShortcut: [
|
|
80
81
|
"Mod",
|
|
81
82
|
"B"
|
|
@@ -88,7 +89,7 @@ export const TextMenu = ({ editor, dir })=>{
|
|
|
88
89
|
}),
|
|
89
90
|
/*#__PURE__*/ _jsx(MemoButton, {
|
|
90
91
|
type: "button",
|
|
91
|
-
tooltip: "Italic",
|
|
92
|
+
tooltip: i18next.t("italicText") || "Italic",
|
|
92
93
|
tooltipShortcut: [
|
|
93
94
|
"Mod",
|
|
94
95
|
"I"
|
|
@@ -101,7 +102,7 @@ export const TextMenu = ({ editor, dir })=>{
|
|
|
101
102
|
}),
|
|
102
103
|
/*#__PURE__*/ _jsx(MemoButton, {
|
|
103
104
|
type: "button",
|
|
104
|
-
tooltip: "Underline",
|
|
105
|
+
tooltip: i18next.t("underlineText") || "Underline",
|
|
105
106
|
tooltipShortcut: [
|
|
106
107
|
"Mod",
|
|
107
108
|
"U"
|
|
@@ -122,7 +123,7 @@ export const TextMenu = ({ editor, dir })=>{
|
|
|
122
123
|
children: /*#__PURE__*/ _jsx(MemoButton, {
|
|
123
124
|
type: "button",
|
|
124
125
|
active: !!states.currentHighlight,
|
|
125
|
-
tooltip: "Highlight text",
|
|
126
|
+
tooltip: i18next.t("highlightText", "Highlight text"),
|
|
126
127
|
children: /*#__PURE__*/ _jsx(Icon, {
|
|
127
128
|
icon: Highlighter
|
|
128
129
|
})
|
|
@@ -150,7 +151,7 @@ export const TextMenu = ({ editor, dir })=>{
|
|
|
150
151
|
children: /*#__PURE__*/ _jsx(MemoButton, {
|
|
151
152
|
type: "button",
|
|
152
153
|
active: !!states.currentColor,
|
|
153
|
-
tooltip: "Text color",
|
|
154
|
+
tooltip: i18next.t("textColor") || "Text color",
|
|
154
155
|
children: /*#__PURE__*/ _jsx(Icon, {
|
|
155
156
|
icon: Palette
|
|
156
157
|
})
|
|
@@ -177,7 +178,7 @@ export const TextMenu = ({ editor, dir })=>{
|
|
|
177
178
|
asChild: true,
|
|
178
179
|
children: /*#__PURE__*/ _jsx(MemoButton, {
|
|
179
180
|
type: "button",
|
|
180
|
-
tooltip: "More options",
|
|
181
|
+
tooltip: i18next.t("moreOptions", "More options"),
|
|
181
182
|
children: /*#__PURE__*/ _jsx(Icon, {
|
|
182
183
|
icon: MoveVertical
|
|
183
184
|
})
|
|
@@ -190,7 +191,7 @@ export const TextMenu = ({ editor, dir })=>{
|
|
|
190
191
|
children: [
|
|
191
192
|
/*#__PURE__*/ _jsx(MemoButton, {
|
|
192
193
|
type: "button",
|
|
193
|
-
tooltip: "Subscript",
|
|
194
|
+
tooltip: i18next.t("subscript", "Subscript"),
|
|
194
195
|
tooltipShortcut: [
|
|
195
196
|
"Mod",
|
|
196
197
|
"."
|
|
@@ -203,7 +204,7 @@ export const TextMenu = ({ editor, dir })=>{
|
|
|
203
204
|
}),
|
|
204
205
|
/*#__PURE__*/ _jsx(MemoButton, {
|
|
205
206
|
type: "button",
|
|
206
|
-
tooltip: "Superscript",
|
|
207
|
+
tooltip: i18next.t("superscript", "Superscript"),
|
|
207
208
|
tooltipShortcut: [
|
|
208
209
|
"Mod",
|
|
209
210
|
","
|
|
@@ -217,7 +218,7 @@ export const TextMenu = ({ editor, dir })=>{
|
|
|
217
218
|
/*#__PURE__*/ _jsx(Toolbar.Divider, {}),
|
|
218
219
|
/*#__PURE__*/ _jsx(MemoButton, {
|
|
219
220
|
type: "button",
|
|
220
|
-
tooltip: "Align left",
|
|
221
|
+
tooltip: i18next.t("alignLeft") || "Align left",
|
|
221
222
|
tooltipShortcut: [
|
|
222
223
|
"Shift",
|
|
223
224
|
"Mod",
|
|
@@ -231,7 +232,7 @@ export const TextMenu = ({ editor, dir })=>{
|
|
|
231
232
|
}),
|
|
232
233
|
/*#__PURE__*/ _jsx(MemoButton, {
|
|
233
234
|
type: "button",
|
|
234
|
-
tooltip: "Align center",
|
|
235
|
+
tooltip: i18next.t("alignCenter") || "Align center",
|
|
235
236
|
tooltipShortcut: [
|
|
236
237
|
"Shift",
|
|
237
238
|
"Mod",
|
|
@@ -245,7 +246,7 @@ export const TextMenu = ({ editor, dir })=>{
|
|
|
245
246
|
}),
|
|
246
247
|
/*#__PURE__*/ _jsx(MemoButton, {
|
|
247
248
|
type: "button",
|
|
248
|
-
tooltip: "Align right",
|
|
249
|
+
tooltip: i18next.t("alignRight", "Align right"),
|
|
249
250
|
tooltipShortcut: [
|
|
250
251
|
"Shift",
|
|
251
252
|
"Mod",
|
|
@@ -259,7 +260,7 @@ export const TextMenu = ({ editor, dir })=>{
|
|
|
259
260
|
}),
|
|
260
261
|
/*#__PURE__*/ _jsx(MemoButton, {
|
|
261
262
|
type: "button",
|
|
262
|
-
tooltip: "Justify",
|
|
263
|
+
tooltip: i18next.t("alignJustify") || "Justify",
|
|
263
264
|
tooltipShortcut: [
|
|
264
265
|
"Shift",
|
|
265
266
|
"Mod",
|
|
@@ -273,7 +274,7 @@ export const TextMenu = ({ editor, dir })=>{
|
|
|
273
274
|
}),
|
|
274
275
|
/*#__PURE__*/ _jsx(MemoButton, {
|
|
275
276
|
type: "button",
|
|
276
|
-
tooltip: "
|
|
277
|
+
tooltip: i18next.t("strikethrough", "Strikethrough"),
|
|
277
278
|
tooltipShortcut: [
|
|
278
279
|
"Mod",
|
|
279
280
|
"Shift",
|
|
@@ -287,7 +288,7 @@ export const TextMenu = ({ editor, dir })=>{
|
|
|
287
288
|
}),
|
|
288
289
|
/*#__PURE__*/ _jsx(MemoButton, {
|
|
289
290
|
type: "button",
|
|
290
|
-
tooltip: "Clear Formatting",
|
|
291
|
+
tooltip: i18next.t("clearFormatting") || "Clear Formatting",
|
|
291
292
|
onClick: commands.onClearFormatting,
|
|
292
293
|
children: /*#__PURE__*/ _jsx(Icon, {
|
|
293
294
|
icon: RemoveFormatting
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/TextMenu.tsx"],"sourcesContent":["import * as Popover from \"@radix-ui/react-popover\";\nimport { BubbleMenu, Editor } from \"@tiptap/react\";\nimport {\n AlignCenter,\n AlignJustify,\n AlignLeft,\n AlignRight,\n Bold,\n Highlighter,\n Italic,\n MoveVertical,\n Palette,\n RemoveFormatting,\n Sparkles,\n Strikethrough,\n Subscript,\n Superscript,\n Underline,\n} from \"lucide-react\";\nimport { memo, useState } from \"react\";\nimport { AIEditorPanel } from \"../../panels/AIEditorPanel/AIEditorPanel.js\";\nimport { ColorPicker } from \"../../panels/index.js\";\nimport { Icon } from \"../../ui/Icon.js\";\nimport { Surface } from \"../../ui/Surface.js\";\nimport { Toolbar } from \"../../ui/Toolbar.js\";\nimport { ContentTypePicker } from \"./components/ContentTypePicker.js\";\nimport { EditLinkPopover } from \"./components/EditLinkPopover.js\";\nimport { FontFamilyPicker } from \"./components/FontFamilyPicker.js\";\nimport { FontSizePicker } from \"./components/FontSizePicker.js\";\nimport { useTextmenuCommands } from \"./hooks/useTextmenuCommands.js\";\nimport { useTextmenuContentTypes } from \"./hooks/useTextmenuContentTypes.js\";\nimport { useTextmenuStates } from \"./hooks/useTextmenuStates.js\";\n\n// We memorize the button so each button is not rerendered\n// on every editor state change\nconst MemoButton = memo(Toolbar.Button);\nconst MemoColorPicker = memo(ColorPicker);\nconst MemoFontFamilyPicker = memo(FontFamilyPicker);\nconst MemoFontSizePicker = memo(FontSizePicker);\nconst MemoContentTypePicker = memo(ContentTypePicker);\n\nexport type TextMenuProps = {\n editor: Editor;\n dir: \"rtl\" | \"ltr\" | \"auto\";\n};\n\nexport const TextMenu = ({ editor, dir }: TextMenuProps) => {\n const commands = useTextmenuCommands(editor);\n const states = useTextmenuStates(editor);\n const blockOptions = useTextmenuContentTypes(editor);\n const [openAi, setOpenAi] = useState(false);\n\n return (\n <BubbleMenu\n tippyOptions={{\n placement: \"auto\",\n popperOptions: {\n placement: \"auto\",\n },\n onHide: () => {\n setOpenAi(false);\n },\n }}\n editor={editor}\n pluginKey=\"textMenu\"\n shouldShow={states.shouldShow}\n updateDelay={100}\n >\n {openAi ? (\n <AIEditorPanel\n editor={editor}\n onOpenChange={(value) => {\n setOpenAi(value);\n }}\n />\n ) : (\n <Toolbar.Wrapper>\n <Toolbar.Button\n className=\"text-purple-500 hover:text-purple-600 active:text-purple-600 dark:text-purple-400 dark:hover:text-purple-300 dark:active:text-purple-400\"\n activeClassname=\"text-purple-600 hover:text-purple-600 dark:text-purple-400 dark:hover:text-purple-200\"\n onClick={() => setOpenAi(true)}\n >\n <Icon icon={Sparkles} className=\"mr-1\" />\n AI Tools\n </Toolbar.Button>\n <Toolbar.Divider />\n\n <MemoContentTypePicker options={blockOptions} />\n <MemoFontFamilyPicker\n onChange={commands.onSetFont}\n value={states.currentFont || \"\"}\n />\n <MemoFontSizePicker\n onChange={commands.onSetFontSize}\n value={states.currentSize || \"\"}\n />\n <Toolbar.Divider />\n <MemoButton\n type=\"button\"\n tooltip=\"Bold\"\n tooltipShortcut={[\"Mod\", \"B\"]}\n onClick={commands.onBold}\n active={states.isBold}\n >\n <Icon icon={Bold} />\n </MemoButton>\n <MemoButton\n type=\"button\"\n tooltip=\"Italic\"\n tooltipShortcut={[\"Mod\", \"I\"]}\n onClick={commands.onItalic}\n active={states.isItalic}\n >\n <Icon icon={Italic} />\n </MemoButton>\n <MemoButton\n type=\"button\"\n tooltip=\"Underline\"\n tooltipShortcut={[\"Mod\", \"U\"]}\n onClick={commands.onUnderline}\n active={states.isUnderline}\n >\n <Icon icon={Underline} />\n </MemoButton>\n\n <EditLinkPopover onSetLink={commands.onLink} />\n <Popover.Root>\n <Popover.Trigger asChild>\n <MemoButton\n type=\"button\"\n active={!!states.currentHighlight}\n tooltip=\"Highlight text\"\n >\n <Icon icon={Highlighter} />\n </MemoButton>\n </Popover.Trigger>\n <Popover.Content side=\"top\" sideOffset={8} asChild>\n <Surface className=\"p-1\">\n <MemoColorPicker\n color={states.currentHighlight}\n onChange={commands.onChangeHighlight}\n onClear={commands.onClearHighlight}\n />\n </Surface>\n </Popover.Content>\n </Popover.Root>\n <Popover.Root>\n <Popover.Trigger asChild>\n <MemoButton\n type=\"button\"\n active={!!states.currentColor}\n tooltip=\"Text color\"\n >\n <Icon icon={Palette} />\n </MemoButton>\n </Popover.Trigger>\n <Popover.Content side=\"top\" sideOffset={8} asChild>\n <Surface className=\"p-1\">\n <MemoColorPicker\n color={states.currentColor}\n onChange={commands.onChangeColor}\n onClear={commands.onClearColor}\n />\n </Surface>\n </Popover.Content>\n </Popover.Root>\n <Popover.Root>\n <Popover.Trigger asChild>\n <MemoButton type=\"button\" tooltip=\"More options\">\n <Icon icon={MoveVertical} />\n </MemoButton>\n </Popover.Trigger>\n <Popover.Content side=\"top\" asChild>\n <Toolbar.Wrapper>\n <MemoButton\n type=\"button\"\n tooltip=\"Subscript\"\n tooltipShortcut={[\"Mod\", \".\"]}\n onClick={commands.onSubscript}\n active={states.isSubscript}\n >\n <Icon icon={Subscript} />\n </MemoButton>\n <MemoButton\n type=\"button\"\n tooltip=\"Superscript\"\n tooltipShortcut={[\"Mod\", \",\"]}\n onClick={commands.onSuperscript}\n active={states.isSuperscript}\n >\n <Icon icon={Superscript} />\n </MemoButton>\n <Toolbar.Divider />\n <MemoButton\n type=\"button\"\n tooltip=\"Align left\"\n tooltipShortcut={[\"Shift\", \"Mod\", \"L\"]}\n onClick={commands.onAlignLeft}\n active={states.isAlignLeft}\n >\n <Icon icon={AlignLeft} />\n </MemoButton>\n <MemoButton\n type=\"button\"\n tooltip=\"Align center\"\n tooltipShortcut={[\"Shift\", \"Mod\", \"E\"]}\n onClick={commands.onAlignCenter}\n active={states.isAlignCenter}\n >\n <Icon icon={AlignCenter} />\n </MemoButton>\n <MemoButton\n type=\"button\"\n tooltip=\"Align right\"\n tooltipShortcut={[\"Shift\", \"Mod\", \"R\"]}\n onClick={commands.onAlignRight}\n active={states.isAlignRight}\n >\n <Icon icon={AlignRight} />\n </MemoButton>\n <MemoButton\n type=\"button\"\n tooltip=\"Justify\"\n tooltipShortcut={[\"Shift\", \"Mod\", \"J\"]}\n onClick={commands.onAlignJustify}\n active={states.isAlignJustify}\n >\n <Icon icon={AlignJustify} />\n </MemoButton>\n <MemoButton\n type=\"button\"\n tooltip=\"Strikehrough\"\n tooltipShortcut={[\"Mod\", \"Shift\", \"S\"]}\n onClick={commands.onStrike}\n active={states.isStrike}\n >\n <Icon icon={Strikethrough} />\n </MemoButton>\n\n <MemoButton\n type=\"button\"\n tooltip=\"Clear Formatting\"\n onClick={commands.onClearFormatting}\n >\n <Icon icon={RemoveFormatting} />\n </MemoButton>\n </Toolbar.Wrapper>\n </Popover.Content>\n </Popover.Root>\n </Toolbar.Wrapper>\n )}\n </BubbleMenu>\n );\n};\n"],"names":["Popover","BubbleMenu","AlignCenter","AlignJustify","AlignLeft","AlignRight","Bold","Highlighter","Italic","MoveVertical","Palette","RemoveFormatting","Sparkles","Strikethrough","Subscript","Superscript","Underline","memo","useState","AIEditorPanel","ColorPicker","Icon","Surface","Toolbar","ContentTypePicker","EditLinkPopover","FontFamilyPicker","FontSizePicker","useTextmenuCommands","useTextmenuContentTypes","useTextmenuStates","MemoButton","Button","MemoColorPicker","MemoFontFamilyPicker","MemoFontSizePicker","MemoContentTypePicker","TextMenu","editor","dir","commands","states","blockOptions","openAi","setOpenAi","tippyOptions","placement","popperOptions","onHide","pluginKey","shouldShow","updateDelay","onOpenChange","value","Wrapper","className","activeClassname","onClick","icon","Divider","options","onChange","onSetFont","currentFont","onSetFontSize","currentSize","type","tooltip","tooltipShortcut","onBold","active","isBold","onItalic","isItalic","onUnderline","isUnderline","onSetLink","onLink","Root","Trigger","asChild","currentHighlight","Content","side","sideOffset","color","onChangeHighlight","onClear","onClearHighlight","currentColor","onChangeColor","onClearColor","onSubscript","isSubscript","onSuperscript","isSuperscript","onAlignLeft","isAlignLeft","onAlignCenter","isAlignCenter","onAlignRight","isAlignRight","onAlignJustify","isAlignJustify","onStrike","isStrike","onClearFormatting"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/TextMenu.tsx"],"sourcesContent":["import * as Popover from \"@radix-ui/react-popover\";\nimport { BubbleMenu, Editor } from \"@tiptap/react\";\nimport {\n AlignCenter,\n AlignJustify,\n AlignLeft,\n AlignRight,\n Bold,\n Highlighter,\n Italic,\n MoveVertical,\n Palette,\n RemoveFormatting,\n Sparkles,\n Strikethrough,\n Subscript,\n Superscript,\n Underline,\n} from \"lucide-react\";\nimport { memo, useState } from \"react\";\nimport { AIEditorPanel } from \"../../panels/AIEditorPanel/AIEditorPanel.js\";\nimport { ColorPicker } from \"../../panels/index.js\";\nimport { Icon } from \"../../ui/Icon.js\";\nimport { Surface } from \"../../ui/Surface.js\";\nimport { Toolbar } from \"../../ui/Toolbar.js\";\nimport { ContentTypePicker } from \"./components/ContentTypePicker.js\";\nimport { EditLinkPopover } from \"./components/EditLinkPopover.js\";\nimport { FontFamilyPicker } from \"./components/FontFamilyPicker.js\";\nimport { FontSizePicker } from \"./components/FontSizePicker.js\";\nimport { useTextmenuCommands } from \"./hooks/useTextmenuCommands.js\";\nimport { useTextmenuContentTypes } from \"./hooks/useTextmenuContentTypes.js\";\nimport { useTextmenuStates } from \"./hooks/useTextmenuStates.js\";\nimport i18next from \"i18next\";\n\n// We memorize the button so each button is not rerendered\n// on every editor state change\nconst MemoButton = memo(Toolbar.Button);\nconst MemoColorPicker = memo(ColorPicker);\nconst MemoFontFamilyPicker = memo(FontFamilyPicker);\nconst MemoFontSizePicker = memo(FontSizePicker);\nconst MemoContentTypePicker = memo(ContentTypePicker);\n\nexport type TextMenuProps = {\n editor: Editor;\n dir: \"rtl\" | \"ltr\" | \"auto\";\n};\n\nexport const TextMenu = ({ editor, dir }: TextMenuProps) => {\n const commands = useTextmenuCommands(editor);\n const states = useTextmenuStates(editor);\n const blockOptions = useTextmenuContentTypes(editor);\n const [openAi, setOpenAi] = useState(false);\n\n return (\n <BubbleMenu\n tippyOptions={{\n placement: \"auto\",\n popperOptions: {\n placement: \"auto\",\n },\n onHide: () => {\n setOpenAi(false);\n },\n }}\n editor={editor}\n pluginKey=\"textMenu\"\n shouldShow={states.shouldShow}\n updateDelay={100}\n >\n {openAi ? (\n <AIEditorPanel\n editor={editor}\n onOpenChange={(value) => {\n setOpenAi(value);\n }}\n />\n ) : (\n <Toolbar.Wrapper>\n <Toolbar.Button\n className=\"text-purple-500 hover:text-purple-600 active:text-purple-600 dark:text-purple-400 dark:hover:text-purple-300 dark:active:text-purple-400\"\n activeClassname=\"text-purple-600 hover:text-purple-600 dark:text-purple-400 dark:hover:text-purple-200\"\n onClick={() => setOpenAi(true)}\n >\n <Icon icon={Sparkles} className=\"mr-1\" />\n {i18next.t(\"aiTools\") || \"AI Tools\"}\n </Toolbar.Button>\n <Toolbar.Divider />\n\n <MemoContentTypePicker options={blockOptions} />\n <MemoFontFamilyPicker\n onChange={commands.onSetFont}\n value={states.currentFont || \"\"}\n />\n <MemoFontSizePicker\n onChange={commands.onSetFontSize}\n value={states.currentSize || \"\"}\n />\n <Toolbar.Divider />\n <MemoButton\n type=\"button\"\n tooltip={i18next.t(\"boldText\") || \"Bold\"}\n tooltipShortcut={[\"Mod\", \"B\"]}\n onClick={commands.onBold}\n active={states.isBold}\n >\n <Icon icon={Bold} />\n </MemoButton>\n <MemoButton\n type=\"button\"\n tooltip={i18next.t(\"italicText\") || \"Italic\"}\n tooltipShortcut={[\"Mod\", \"I\"]}\n onClick={commands.onItalic}\n active={states.isItalic}\n >\n <Icon icon={Italic} />\n </MemoButton>\n <MemoButton\n type=\"button\"\n tooltip={i18next.t(\"underlineText\") || \"Underline\"}\n tooltipShortcut={[\"Mod\", \"U\"]}\n onClick={commands.onUnderline}\n active={states.isUnderline}\n >\n <Icon icon={Underline} />\n </MemoButton>\n\n <EditLinkPopover onSetLink={commands.onLink} />\n <Popover.Root>\n <Popover.Trigger asChild>\n <MemoButton\n type=\"button\"\n active={!!states.currentHighlight}\n tooltip={i18next.t(\"highlightText\", \"Highlight text\")}\n >\n <Icon icon={Highlighter} />\n </MemoButton>\n </Popover.Trigger>\n <Popover.Content side=\"top\" sideOffset={8} asChild>\n <Surface className=\"p-1\">\n <MemoColorPicker\n color={states.currentHighlight}\n onChange={commands.onChangeHighlight}\n onClear={commands.onClearHighlight}\n />\n </Surface>\n </Popover.Content>\n </Popover.Root>\n <Popover.Root>\n <Popover.Trigger asChild>\n <MemoButton\n type=\"button\"\n active={!!states.currentColor}\n tooltip={i18next.t(\"textColor\") || \"Text color\"}\n >\n <Icon icon={Palette} />\n </MemoButton>\n </Popover.Trigger>\n <Popover.Content side=\"top\" sideOffset={8} asChild>\n <Surface className=\"p-1\">\n <MemoColorPicker\n color={states.currentColor}\n onChange={commands.onChangeColor}\n onClear={commands.onClearColor}\n />\n </Surface>\n </Popover.Content>\n </Popover.Root>\n <Popover.Root>\n <Popover.Trigger asChild>\n <MemoButton type=\"button\" tooltip={i18next.t(\"moreOptions\", \"More options\")}>\n <Icon icon={MoveVertical} />\n </MemoButton>\n </Popover.Trigger>\n <Popover.Content side=\"top\" asChild>\n <Toolbar.Wrapper>\n <MemoButton\n type=\"button\"\n tooltip={i18next.t(\"subscript\", \"Subscript\")}\n tooltipShortcut={[\"Mod\", \".\"]}\n onClick={commands.onSubscript}\n active={states.isSubscript}\n >\n <Icon icon={Subscript} />\n </MemoButton>\n <MemoButton\n type=\"button\"\n tooltip={i18next.t(\"superscript\", \"Superscript\")}\n tooltipShortcut={[\"Mod\", \",\"]}\n onClick={commands.onSuperscript}\n active={states.isSuperscript}\n >\n <Icon icon={Superscript} />\n </MemoButton>\n <Toolbar.Divider />\n <MemoButton\n type=\"button\"\n tooltip={i18next.t(\"alignLeft\") || \"Align left\"}\n tooltipShortcut={[\"Shift\", \"Mod\", \"L\"]}\n onClick={commands.onAlignLeft}\n active={states.isAlignLeft}\n >\n <Icon icon={AlignLeft} />\n </MemoButton>\n <MemoButton\n type=\"button\"\n tooltip={i18next.t(\"alignCenter\") || \"Align center\"}\n tooltipShortcut={[\"Shift\", \"Mod\", \"E\"]}\n onClick={commands.onAlignCenter}\n active={states.isAlignCenter}\n >\n <Icon icon={AlignCenter} />\n </MemoButton>\n <MemoButton\n type=\"button\"\n tooltip={i18next.t(\"alignRight\", \"Align right\")}\n tooltipShortcut={[\"Shift\", \"Mod\", \"R\"]}\n onClick={commands.onAlignRight}\n active={states.isAlignRight}\n >\n <Icon icon={AlignRight} />\n </MemoButton>\n <MemoButton\n type=\"button\"\n tooltip={i18next.t(\"alignJustify\") || \"Justify\"}\n tooltipShortcut={[\"Shift\", \"Mod\", \"J\"]}\n onClick={commands.onAlignJustify}\n active={states.isAlignJustify}\n >\n <Icon icon={AlignJustify} />\n </MemoButton>\n <MemoButton\n type=\"button\"\n tooltip={i18next.t(\"strikethrough\", \"Strikethrough\")}\n tooltipShortcut={[\"Mod\", \"Shift\", \"S\"]}\n onClick={commands.onStrike}\n active={states.isStrike}\n >\n <Icon icon={Strikethrough} />\n </MemoButton>\n\n <MemoButton\n type=\"button\"\n tooltip={i18next.t(\"clearFormatting\") || \"Clear Formatting\"}\n onClick={commands.onClearFormatting}\n >\n <Icon icon={RemoveFormatting} />\n </MemoButton>\n </Toolbar.Wrapper>\n </Popover.Content>\n </Popover.Root>\n </Toolbar.Wrapper>\n )}\n </BubbleMenu>\n );\n};\n"],"names":["Popover","BubbleMenu","AlignCenter","AlignJustify","AlignLeft","AlignRight","Bold","Highlighter","Italic","MoveVertical","Palette","RemoveFormatting","Sparkles","Strikethrough","Subscript","Superscript","Underline","memo","useState","AIEditorPanel","ColorPicker","Icon","Surface","Toolbar","ContentTypePicker","EditLinkPopover","FontFamilyPicker","FontSizePicker","useTextmenuCommands","useTextmenuContentTypes","useTextmenuStates","i18next","MemoButton","Button","MemoColorPicker","MemoFontFamilyPicker","MemoFontSizePicker","MemoContentTypePicker","TextMenu","editor","dir","commands","states","blockOptions","openAi","setOpenAi","tippyOptions","placement","popperOptions","onHide","pluginKey","shouldShow","updateDelay","onOpenChange","value","Wrapper","className","activeClassname","onClick","icon","t","Divider","options","onChange","onSetFont","currentFont","onSetFontSize","currentSize","type","tooltip","tooltipShortcut","onBold","active","isBold","onItalic","isItalic","onUnderline","isUnderline","onSetLink","onLink","Root","Trigger","asChild","currentHighlight","Content","side","sideOffset","color","onChangeHighlight","onClear","onClearHighlight","currentColor","onChangeColor","onClearColor","onSubscript","isSubscript","onSuperscript","isSuperscript","onAlignLeft","isAlignLeft","onAlignCenter","isAlignCenter","onAlignRight","isAlignRight","onAlignJustify","isAlignJustify","onStrike","isStrike","onClearFormatting"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EditIframeLinkPopover.d.ts","sourceRoot":"","sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/components/EditIframeLinkPopover.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"EditIframeLinkPopover.d.ts","sourceRoot":"","sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/components/EditIframeLinkPopover.tsx"],"names":[],"mappings":"AAOA,MAAM,MAAM,0BAA0B,GAAG;IACvC,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,qBAAqB,mCAG/B,0BAA0B,gCAkB5B,CAAC"}
|
package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/EditIframeLinkPopover.js
CHANGED
|
@@ -4,6 +4,7 @@ import { Link } from "lucide-react";
|
|
|
4
4
|
import { IframeLinkEditorPanel } from "../../../panels/IframeLinkEditorPanel/IframeLinkEditorPanel.js";
|
|
5
5
|
import { Icon } from "../../../ui/Icon.js";
|
|
6
6
|
import { Toolbar } from "../../../ui/Toolbar.js";
|
|
7
|
+
import i18next from "i18next";
|
|
7
8
|
export const EditIframeLinkPopover = ({ onSetLink, initialSrcLink })=>{
|
|
8
9
|
return /*#__PURE__*/ _jsxs(Popover.Root, {
|
|
9
10
|
children: [
|
|
@@ -11,7 +12,7 @@ export const EditIframeLinkPopover = ({ onSetLink, initialSrcLink })=>{
|
|
|
11
12
|
asChild: true,
|
|
12
13
|
children: /*#__PURE__*/ _jsx(Toolbar.Button, {
|
|
13
14
|
type: "button",
|
|
14
|
-
tooltip: "Set Embed Code / Embed Link",
|
|
15
|
+
tooltip: i18next.t("setEmbedCodeOrLink") || "Set Embed Code / Embed Link",
|
|
15
16
|
children: /*#__PURE__*/ _jsx(Icon, {
|
|
16
17
|
icon: Link
|
|
17
18
|
})
|
package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/EditIframeLinkPopover.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/components/EditIframeLinkPopover.tsx"],"sourcesContent":["import * as Popover from \"@radix-ui/react-popover\";\nimport { Link } from \"lucide-react\";\nimport { IframeLinkEditorPanel } from \"../../../panels/IframeLinkEditorPanel/IframeLinkEditorPanel.js\";\nimport { Icon } from \"../../../ui/Icon.js\";\nimport { Toolbar } from \"../../../ui/Toolbar.js\";\n\nexport type EditIframeLinkPopoverProps = {\n onSetLink: (src: string) => void;\n initialSrcLink: string;\n};\n\nexport const EditIframeLinkPopover = ({\n onSetLink,\n initialSrcLink,\n}: EditIframeLinkPopoverProps) => {\n return (\n <Popover.Root>\n <Popover.Trigger asChild>\n <Toolbar.Button type=\"button\"
|
|
1
|
+
{"version":3,"sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/components/EditIframeLinkPopover.tsx"],"sourcesContent":["import * as Popover from \"@radix-ui/react-popover\";\nimport { Link } from \"lucide-react\";\nimport { IframeLinkEditorPanel } from \"../../../panels/IframeLinkEditorPanel/IframeLinkEditorPanel.js\";\nimport { Icon } from \"../../../ui/Icon.js\";\nimport { Toolbar } from \"../../../ui/Toolbar.js\";\nimport i18next from \"i18next\";\n\nexport type EditIframeLinkPopoverProps = {\n onSetLink: (src: string) => void;\n initialSrcLink: string;\n};\n\nexport const EditIframeLinkPopover = ({\n onSetLink,\n initialSrcLink,\n}: EditIframeLinkPopoverProps) => {\n return (\n <Popover.Root>\n <Popover.Trigger asChild>\n <Toolbar.Button type=\"button\"\n tooltip={i18next.t(\"setEmbedCodeOrLink\") || \"Set Embed Code / Embed Link\"}\n >\n <Icon icon={Link} />\n </Toolbar.Button>\n </Popover.Trigger>\n <Popover.Content>\n <IframeLinkEditorPanel\n onSetLink={onSetLink}\n initialSrc={initialSrcLink ?? \"\"}\n />\n </Popover.Content>\n </Popover.Root>\n );\n};\n"],"names":["Popover","Link","IframeLinkEditorPanel","Icon","Toolbar","i18next","EditIframeLinkPopover","onSetLink","initialSrcLink","Root","Trigger","asChild","Button","type","tooltip","t","icon","Content","initialSrc"],"mappings":";AAAA,YAAYA,aAAa,0BAA0B;AACnD,SAASC,IAAI,QAAQ,eAAe;AACpC,SAASC,qBAAqB,QAAQ,iEAAiE;AACvG,SAASC,IAAI,QAAQ,sBAAsB;AAC3C,SAASC,OAAO,QAAQ,yBAAyB;AACjD,OAAOC,aAAa,UAAU;AAO9B,OAAO,MAAMC,wBAAwB,CAAC,EACpCC,SAAS,EACTC,cAAc,EACa;IAC3B,qBACE,MAACR,QAAQS,IAAI;;0BACX,KAACT,QAAQU,OAAO;gBAACC,OAAO;0BACtB,cAAA,KAACP,QAAQQ,MAAM;oBAACC,MAAK;oBACnBC,SAAST,QAAQU,CAAC,CAAC,yBAAyB;8BAE5C,cAAA,KAACZ;wBAAKa,MAAMf;;;;0BAGhB,KAACD,QAAQiB,OAAO;0BACd,cAAA,KAACf;oBACCK,WAAWA;oBACXW,YAAYV,kBAAkB;;;;;AAKxC,EAAE"}
|
package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/EditLinkPopover.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EditLinkPopover.d.ts","sourceRoot":"","sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/components/EditLinkPopover.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"EditLinkPopover.d.ts","sourceRoot":"","sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/components/EditLinkPopover.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CAC3D,CAAC;AAEF,eAAO,MAAM,eAAe,kBAAmB,oBAAoB,sBAelE,CAAC"}
|
|
@@ -5,6 +5,7 @@ import { Toolbar } from "../../../ui/Toolbar.js";
|
|
|
5
5
|
import * as Popover from "@radix-ui/react-popover";
|
|
6
6
|
import { LinkEditorPanel } from "../../../panels/index.js";
|
|
7
7
|
import { Link } from "lucide-react";
|
|
8
|
+
import i18next from "i18next";
|
|
8
9
|
export const EditLinkPopover = ({ onSetLink })=>{
|
|
9
10
|
return /*#__PURE__*/ _jsxs(Popover.Root, {
|
|
10
11
|
children: [
|
|
@@ -12,7 +13,7 @@ export const EditLinkPopover = ({ onSetLink })=>{
|
|
|
12
13
|
asChild: true,
|
|
13
14
|
children: /*#__PURE__*/ _jsx(Toolbar.Button, {
|
|
14
15
|
type: "button",
|
|
15
|
-
tooltip: "Set Link",
|
|
16
|
+
tooltip: i18next.t("setLink") || "Set Link",
|
|
16
17
|
children: /*#__PURE__*/ _jsx(Icon, {
|
|
17
18
|
icon: Link
|
|
18
19
|
})
|
package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/EditLinkPopover.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/components/EditLinkPopover.tsx"],"sourcesContent":["import React from \"react\";\nimport { Icon } from \"../../../ui/Icon.js\";\nimport { Toolbar } from \"../../../ui/Toolbar.js\";\nimport * as Popover from \"@radix-ui/react-popover\";\nimport { LinkEditorPanel } from \"../../../panels/index.js\";\nimport { Link } from \"lucide-react\";\n\nexport type EditLinkPopoverProps = {\n onSetLink: (link: string, openInNewTab?: boolean) => void;\n};\n\nexport const EditLinkPopover = ({ onSetLink }: EditLinkPopoverProps) => {\n return (\n <Popover.Root>\n <Popover.Trigger asChild>\n <Toolbar.Button type=\"button\"
|
|
1
|
+
{"version":3,"sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/components/EditLinkPopover.tsx"],"sourcesContent":["import React from \"react\";\nimport { Icon } from \"../../../ui/Icon.js\";\nimport { Toolbar } from \"../../../ui/Toolbar.js\";\nimport * as Popover from \"@radix-ui/react-popover\";\nimport { LinkEditorPanel } from \"../../../panels/index.js\";\nimport { Link } from \"lucide-react\";\nimport i18next from \"i18next\";\n\nexport type EditLinkPopoverProps = {\n onSetLink: (link: string, openInNewTab?: boolean) => void;\n};\n\nexport const EditLinkPopover = ({ onSetLink }: EditLinkPopoverProps) => {\n return (\n <Popover.Root>\n <Popover.Trigger asChild>\n <Toolbar.Button type=\"button\"\n tooltip={i18next.t(\"setLink\") || \"Set Link\"}\n >\n <Icon icon={Link} />\n </Toolbar.Button>\n </Popover.Trigger>\n <Popover.Content>\n <LinkEditorPanel onSetLink={onSetLink} />\n </Popover.Content>\n </Popover.Root>\n );\n};\n"],"names":["React","Icon","Toolbar","Popover","LinkEditorPanel","Link","i18next","EditLinkPopover","onSetLink","Root","Trigger","asChild","Button","type","tooltip","t","icon","Content"],"mappings":";AAAA,OAAOA,WAAW,QAAQ;AAC1B,SAASC,IAAI,QAAQ,sBAAsB;AAC3C,SAASC,OAAO,QAAQ,yBAAyB;AACjD,YAAYC,aAAa,0BAA0B;AACnD,SAASC,eAAe,QAAQ,2BAA2B;AAC3D,SAASC,IAAI,QAAQ,eAAe;AACpC,OAAOC,aAAa,UAAU;AAM9B,OAAO,MAAMC,kBAAkB,CAAC,EAAEC,SAAS,EAAwB;IACjE,qBACE,MAACL,QAAQM,IAAI;;0BACX,KAACN,QAAQO,OAAO;gBAACC,OAAO;0BACtB,cAAA,KAACT,QAAQU,MAAM;oBAACC,MAAK;oBACnBC,SAASR,QAAQS,CAAC,CAAC,cAAc;8BAEjC,cAAA,KAACd;wBAAKe,MAAMX;;;;0BAGhB,KAACF,QAAQc,OAAO;0BACd,cAAA,KAACb;oBAAgBI,WAAWA;;;;;AAIpC,EAAE"}
|
package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/FontSizePicker.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FontSizePicker.d.ts","sourceRoot":"","sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/components/FontSizePicker.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"FontSizePicker.d.ts","sourceRoot":"","sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/components/FontSizePicker.tsx"],"names":[],"mappings":"AASA,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,eAAO,MAAM,cAAc,wBAAyB,mBAAmB,gCA0CtE,CAAC"}
|
|
@@ -1,34 +1,35 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import * as Dropdown from "@radix-ui/react-dropdown-menu";
|
|
3
3
|
import { ChevronDown } from "lucide-react";
|
|
4
|
-
import { useCallback } from "react";
|
|
4
|
+
import { useCallback, useMemo } from "react";
|
|
5
5
|
import { DropdownButton } from "../../../ui/Dropdown/Dropdown.js";
|
|
6
6
|
import { Icon } from "../../../ui/Icon.js";
|
|
7
7
|
import { Surface } from "../../../ui/Surface.js";
|
|
8
8
|
import { Toolbar } from "../../../ui/Toolbar.js";
|
|
9
|
-
|
|
10
|
-
{
|
|
11
|
-
label: "Smaller",
|
|
12
|
-
value: "12px"
|
|
13
|
-
},
|
|
14
|
-
{
|
|
15
|
-
label: "Small",
|
|
16
|
-
value: "14px"
|
|
17
|
-
},
|
|
18
|
-
{
|
|
19
|
-
label: "Medium",
|
|
20
|
-
value: ""
|
|
21
|
-
},
|
|
22
|
-
{
|
|
23
|
-
label: "Large",
|
|
24
|
-
value: "18px"
|
|
25
|
-
},
|
|
26
|
-
{
|
|
27
|
-
label: "Extra Large",
|
|
28
|
-
value: "24px"
|
|
29
|
-
}
|
|
30
|
-
];
|
|
9
|
+
import i18next from "i18next";
|
|
31
10
|
export const FontSizePicker = ({ onChange, value })=>{
|
|
11
|
+
const FONT_SIZES = useMemo(()=>[
|
|
12
|
+
{
|
|
13
|
+
label: i18next.t("smaller") || "Smaller",
|
|
14
|
+
value: "12px"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
label: i18next.t("small") || "Small",
|
|
18
|
+
value: "14px"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
label: i18next.t("medium") || "Medium",
|
|
22
|
+
value: ""
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
label: i18next.t("large") || "Large",
|
|
26
|
+
value: "18px"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
label: i18next.t("extraLart") || "Extra Large",
|
|
30
|
+
value: "24px"
|
|
31
|
+
}
|
|
32
|
+
], []);
|
|
32
33
|
const currentValue = FONT_SIZES.find((size)=>size.value === value);
|
|
33
34
|
const currentSizeLabel = currentValue?.label.split(" ")[0] || "Medium";
|
|
34
35
|
const selectSize = useCallback((size)=>()=>onChange(size), [
|
package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/FontSizePicker.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/components/FontSizePicker.tsx"],"sourcesContent":["import * as Dropdown from \"@radix-ui/react-dropdown-menu\";\nimport { ChevronDown } from \"lucide-react\";\nimport { useCallback } from \"react\";\nimport { DropdownButton } from \"../../../ui/Dropdown/Dropdown.js\";\nimport { Icon } from \"../../../ui/Icon.js\";\nimport { Surface } from \"../../../ui/Surface.js\";\nimport { Toolbar } from \"../../../ui/Toolbar.js\";\n\
|
|
1
|
+
{"version":3,"sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/components/FontSizePicker.tsx"],"sourcesContent":["import * as Dropdown from \"@radix-ui/react-dropdown-menu\";\nimport { ChevronDown } from \"lucide-react\";\nimport { useCallback, useMemo } from \"react\";\nimport { DropdownButton } from \"../../../ui/Dropdown/Dropdown.js\";\nimport { Icon } from \"../../../ui/Icon.js\";\nimport { Surface } from \"../../../ui/Surface.js\";\nimport { Toolbar } from \"../../../ui/Toolbar.js\";\nimport i18next from \"i18next\";\n\nexport type FontSizePickerProps = {\n onChange: (value: string) => void; // eslint-disable-line no-unused-vars\n value: string;\n};\n\nexport const FontSizePicker = ({ onChange, value }: FontSizePickerProps) => {\n const FONT_SIZES = useMemo(\n () => [\n { label: i18next.t(\"smaller\") || \"Smaller\", value: \"12px\" },\n { label: i18next.t(\"small\") || \"Small\", value: \"14px\" },\n { label: i18next.t(\"medium\") || \"Medium\", value: \"\" },\n { label: i18next.t(\"large\") || \"Large\", value: \"18px\" },\n { label: i18next.t(\"extraLart\") || \"Extra Large\", value: \"24px\" },\n ],\n []\n );\n const currentValue = FONT_SIZES.find((size) => size.value === value);\n const currentSizeLabel = currentValue?.label.split(\" \")[0] || \"Medium\";\n\n const selectSize = useCallback(\n (size: string) => () => onChange(size),\n [onChange]\n );\n\n return (\n <Dropdown.Root>\n <Dropdown.Trigger asChild>\n <Toolbar.Button type=\"button\" active={!!currentValue?.value}>\n {currentSizeLabel}\n <Icon icon={ChevronDown} className=\"w-2 h-2\" />\n </Toolbar.Button>\n </Dropdown.Trigger>\n <Dropdown.Content asChild>\n <Surface className=\"flex flex-col gap-1 px-2 py-4\">\n {FONT_SIZES.map((size) => (\n <DropdownButton\n isActive={value === size.value}\n onClick={selectSize(size.value)}\n key={`${size.label}_${size.value}`}\n >\n <span style={{ fontSize: size.value }}>{size.label}</span>\n </DropdownButton>\n ))}\n </Surface>\n </Dropdown.Content>\n </Dropdown.Root>\n );\n};\n"],"names":["Dropdown","ChevronDown","useCallback","useMemo","DropdownButton","Icon","Surface","Toolbar","i18next","FontSizePicker","onChange","value","FONT_SIZES","label","t","currentValue","find","size","currentSizeLabel","split","selectSize","Root","Trigger","asChild","Button","type","active","icon","className","Content","map","isActive","onClick","span","style","fontSize"],"mappings":";AAAA,YAAYA,cAAc,gCAAgC;AAC1D,SAASC,WAAW,QAAQ,eAAe;AAC3C,SAASC,WAAW,EAAEC,OAAO,QAAQ,QAAQ;AAC7C,SAASC,cAAc,QAAQ,mCAAmC;AAClE,SAASC,IAAI,QAAQ,sBAAsB;AAC3C,SAASC,OAAO,QAAQ,yBAAyB;AACjD,SAASC,OAAO,QAAQ,yBAAyB;AACjD,OAAOC,aAAa,UAAU;AAO9B,OAAO,MAAMC,iBAAiB,CAAC,EAAEC,QAAQ,EAAEC,KAAK,EAAuB;IACrE,MAAMC,aAAaT,QACjB,IAAM;YACJ;gBAAEU,OAAOL,QAAQM,CAAC,CAAC,cAAc;gBAAWH,OAAO;YAAO;YAC1D;gBAAEE,OAAOL,QAAQM,CAAC,CAAC,YAAY;gBAASH,OAAO;YAAO;YACtD;gBAAEE,OAAOL,QAAQM,CAAC,CAAC,aAAa;gBAAUH,OAAO;YAAG;YACpD;gBAAEE,OAAOL,QAAQM,CAAC,CAAC,YAAY;gBAASH,OAAO;YAAO;YACtD;gBAAEE,OAAOL,QAAQM,CAAC,CAAC,gBAAgB;gBAAeH,OAAO;YAAO;SACjE,EACD,EAAE;IAEJ,MAAMI,eAAeH,WAAWI,IAAI,CAAC,CAACC,OAASA,KAAKN,KAAK,KAAKA;IAC9D,MAAMO,mBAAmBH,cAAcF,MAAMM,MAAM,IAAI,CAAC,EAAE,IAAI;IAE9D,MAAMC,aAAalB,YACjB,CAACe,OAAiB,IAAMP,SAASO,OACjC;QAACP;KAAS;IAGZ,qBACE,MAACV,SAASqB,IAAI;;0BACZ,KAACrB,SAASsB,OAAO;gBAACC,OAAO;0BACvB,cAAA,MAAChB,QAAQiB,MAAM;oBAACC,MAAK;oBAASC,QAAQ,CAAC,CAACX,cAAcJ;;wBACnDO;sCACD,KAACb;4BAAKsB,MAAM1B;4BAAa2B,WAAU;;;;;0BAGvC,KAAC5B,SAAS6B,OAAO;gBAACN,OAAO;0BACvB,cAAA,KAACjB;oBAAQsB,WAAU;8BAChBhB,WAAWkB,GAAG,CAAC,CAACb,qBACf,KAACb;4BACC2B,UAAUpB,UAAUM,KAAKN,KAAK;4BAC9BqB,SAASZ,WAAWH,KAAKN,KAAK;sCAG9B,cAAA,KAACsB;gCAAKC,OAAO;oCAAEC,UAAUlB,KAAKN,KAAK;gCAAC;0CAAIM,KAAKJ,KAAK;;2BAF7C,GAAGI,KAAKJ,KAAK,CAAC,CAAC,EAAEI,KAAKN,KAAK,EAAE;;;;;AAShD,EAAE"}
|
package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/SocialMediaPopover.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SocialMediaPopover.d.ts","sourceRoot":"","sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/components/SocialMediaPopover.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SocialMediaPopover.d.ts","sourceRoot":"","sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/components/SocialMediaPopover.tsx"],"names":[],"mappings":"AAOA,MAAM,MAAM,uBAAuB,GAAG;IACpC,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,kBAAkB,mCAG5B,uBAAuB,gCAkBzB,CAAC"}
|
package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/SocialMediaPopover.js
CHANGED
|
@@ -4,6 +4,7 @@ import { Link } from "lucide-react";
|
|
|
4
4
|
import { IframeLinkEditorPanel } from "../../../panels/IframeLinkEditorPanel/IframeLinkEditorPanel.js";
|
|
5
5
|
import { Icon } from "../../../ui/Icon.js";
|
|
6
6
|
import { Toolbar } from "../../../ui/Toolbar.js";
|
|
7
|
+
import i18next from "i18next";
|
|
7
8
|
export const SocialMediaPopover = ({ onSetLink, initialSrcLink })=>{
|
|
8
9
|
return /*#__PURE__*/ _jsxs(Popover.Root, {
|
|
9
10
|
children: [
|
|
@@ -11,7 +12,7 @@ export const SocialMediaPopover = ({ onSetLink, initialSrcLink })=>{
|
|
|
11
12
|
asChild: true,
|
|
12
13
|
children: /*#__PURE__*/ _jsx(Toolbar.Button, {
|
|
13
14
|
type: "button",
|
|
14
|
-
tooltip: "Embed Link",
|
|
15
|
+
tooltip: i18next.t("embedLink") || "Embed Link",
|
|
15
16
|
children: /*#__PURE__*/ _jsx(Icon, {
|
|
16
17
|
icon: Link
|
|
17
18
|
})
|
package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/SocialMediaPopover.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/components/SocialMediaPopover.tsx"],"sourcesContent":["import * as Popover from \"@radix-ui/react-popover\";\nimport { Link } from \"lucide-react\";\nimport { IframeLinkEditorPanel } from \"../../../panels/IframeLinkEditorPanel/IframeLinkEditorPanel.js\";\nimport { Icon } from \"../../../ui/Icon.js\";\nimport { Toolbar } from \"../../../ui/Toolbar.js\";\n\nexport type SocialMediaPopoverProps = {\n onSetLink: (src: string) => void;\n initialSrcLink: string;\n};\n\nexport const SocialMediaPopover = ({\n onSetLink,\n initialSrcLink,\n}: SocialMediaPopoverProps) => {\n return (\n <Popover.Root>\n <Popover.Trigger asChild>\n <Toolbar.Button type=\"button\"
|
|
1
|
+
{"version":3,"sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/components/SocialMediaPopover.tsx"],"sourcesContent":["import * as Popover from \"@radix-ui/react-popover\";\nimport { Link } from \"lucide-react\";\nimport { IframeLinkEditorPanel } from \"../../../panels/IframeLinkEditorPanel/IframeLinkEditorPanel.js\";\nimport { Icon } from \"../../../ui/Icon.js\";\nimport { Toolbar } from \"../../../ui/Toolbar.js\";\nimport i18next from \"i18next\";\n\nexport type SocialMediaPopoverProps = {\n onSetLink: (src: string) => void;\n initialSrcLink: string;\n};\n\nexport const SocialMediaPopover = ({\n onSetLink,\n initialSrcLink,\n}: SocialMediaPopoverProps) => {\n return (\n <Popover.Root>\n <Popover.Trigger asChild>\n <Toolbar.Button type=\"button\"\n tooltip={i18next.t(\"embedLink\") || \"Embed Link\"}\n >\n <Icon icon={Link} />\n </Toolbar.Button>\n </Popover.Trigger>\n <Popover.Content>\n <IframeLinkEditorPanel\n onSetLink={onSetLink}\n initialSrc={initialSrcLink ?? \"\"}\n />\n </Popover.Content>\n </Popover.Root>\n );\n};\n"],"names":["Popover","Link","IframeLinkEditorPanel","Icon","Toolbar","i18next","SocialMediaPopover","onSetLink","initialSrcLink","Root","Trigger","asChild","Button","type","tooltip","t","icon","Content","initialSrc"],"mappings":";AAAA,YAAYA,aAAa,0BAA0B;AACnD,SAASC,IAAI,QAAQ,eAAe;AACpC,SAASC,qBAAqB,QAAQ,iEAAiE;AACvG,SAASC,IAAI,QAAQ,sBAAsB;AAC3C,SAASC,OAAO,QAAQ,yBAAyB;AACjD,OAAOC,aAAa,UAAU;AAO9B,OAAO,MAAMC,qBAAqB,CAAC,EACjCC,SAAS,EACTC,cAAc,EACU;IACxB,qBACE,MAACR,QAAQS,IAAI;;0BACX,KAACT,QAAQU,OAAO;gBAACC,OAAO;0BACtB,cAAA,KAACP,QAAQQ,MAAM;oBAACC,MAAK;oBACpBC,SAAST,QAAQU,CAAC,CAAC,gBAAgB;8BAElC,cAAA,KAACZ;wBAAKa,MAAMf;;;;0BAGhB,KAACD,QAAQiB,OAAO;0BACd,cAAA,KAACf;oBACCK,WAAWA;oBACXW,YAAYV,kBAAkB;;;;;AAKxC,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-selector-commands.d.ts","sourceRoot":"","sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/components/ai-selector-commands.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"ai-selector-commands.d.ts","sourceRoot":"","sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/components/ai-selector-commands.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAyDvC,UAAU,uBAAuB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,CACR,KAAK,EAAE,MAAM,EACb,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,KAC3C,IAAI,CAAC;CACX;AAED,QAAA,MAAM,kBAAkB,oCAIrB,uBAAuB,gCA4FzB,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
|
package/dist/src/fields/TiptapEditor/features/menus/TextMenu/components/ai-selector-commands.js
CHANGED
|
@@ -9,6 +9,7 @@ import { DropdownCategoryTitle } from "../../../ui/Dropdown/Dropdown.js";
|
|
|
9
9
|
import { Icon } from "../../../ui/Icon.js";
|
|
10
10
|
import { Surface } from "../../../ui/Surface.js";
|
|
11
11
|
import { Toolbar } from "../../../ui/Toolbar.js";
|
|
12
|
+
import i18next from "i18next";
|
|
12
13
|
const options = [
|
|
13
14
|
// {
|
|
14
15
|
// value: 'translate',
|
|
@@ -64,7 +65,7 @@ const AISelectorCommands = ({ messages, onSelect, editor })=>{
|
|
|
64
65
|
className: "gap-2 px-4 w-full flex justify-start ",
|
|
65
66
|
type: "button",
|
|
66
67
|
// active={!!states.currentHighlight}
|
|
67
|
-
tooltip: "Highlight text",
|
|
68
|
+
tooltip: i18next.t("highlightText") || "Highlight text",
|
|
68
69
|
children: [
|
|
69
70
|
/*#__PURE__*/ _jsx(Icon, {
|
|
70
71
|
icon: Languages,
|