payload-richtext-tiptap 0.0.73 → 0.0.75

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.
Files changed (29) hide show
  1. package/dist/src/fields/TiptapEditor/extensions/InsideLinks/InsideLinksComponent.d.ts.map +1 -1
  2. package/dist/src/fields/TiptapEditor/extensions/InsideLinks/InsideLinksComponent.js +4 -3
  3. package/dist/src/fields/TiptapEditor/extensions/InsideLinks/InsideLinksComponent.js.map +1 -1
  4. package/dist/src/fields/TiptapEditor/extensions/SlashCommand/groups.js +21 -25
  5. package/dist/src/fields/TiptapEditor/extensions/SlashCommand/groups.js.map +1 -1
  6. package/dist/src/fields/TiptapEditor/extensions/extension-kit.d.ts +1 -2
  7. package/dist/src/fields/TiptapEditor/extensions/extension-kit.d.ts.map +1 -1
  8. package/dist/src/fields/TiptapEditor/extensions/extension-kit.js +3 -14
  9. package/dist/src/fields/TiptapEditor/extensions/extension-kit.js.map +1 -1
  10. package/dist/src/fields/TiptapEditor/features/BlockEditor/BlockEditor.d.ts.map +1 -1
  11. package/dist/src/fields/TiptapEditor/features/BlockEditor/BlockEditor.js +4 -3
  12. package/dist/src/fields/TiptapEditor/features/BlockEditor/BlockEditor.js.map +1 -1
  13. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/TextMenu.js +2 -6
  14. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/TextMenu.js.map +1 -1
  15. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuCommands.d.ts +0 -1
  16. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuCommands.d.ts.map +1 -1
  17. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuCommands.js +10 -9
  18. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuCommands.js.map +1 -1
  19. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuContentTypes.js +1 -24
  20. package/dist/src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuContentTypes.js.map +1 -1
  21. package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/AICommandPanel.d.ts.map +1 -1
  22. package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/AICommandPanel.js +1 -2
  23. package/dist/src/fields/TiptapEditor/features/panels/AICommandPanel/AICommandPanel.js.map +1 -1
  24. package/dist/src/fields/TiptapEditor/features/panels/AIEditorPanel/AIEditorPanel.d.ts.map +1 -1
  25. package/dist/src/fields/TiptapEditor/features/panels/AIEditorPanel/AIEditorPanel.js +1 -2
  26. package/dist/src/fields/TiptapEditor/features/panels/AIEditorPanel/AIEditorPanel.js.map +1 -1
  27. package/dist/src/styles.css +74 -74
  28. package/dist/tsconfig.tsbuildinfo +1 -1
  29. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"InsideLinksComponent.d.ts","sourceRoot":"","sources":["../../../../../../src/fields/TiptapEditor/extensions/InsideLinks/InsideLinksComponent.tsx"],"names":[],"mappings":"gCAIuB,GAAG;AAA1B,wBAkEE"}
1
+ {"version":3,"file":"InsideLinksComponent.d.ts","sourceRoot":"","sources":["../../../../../../src/fields/TiptapEditor/extensions/InsideLinks/InsideLinksComponent.tsx"],"names":[],"mappings":"gCAIuB,GAAG;AAA1B,wBAmEE"}
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { ExternalLinkIcon } from "@payloadcms/ui/graphics/ExternalLink";
3
3
  import { NodeViewContent, NodeViewWrapper } from "@tiptap/react";
4
- import { isRTL } from "../../lib/utils/isRtl.js";
4
+ import i18next from "i18next";
5
5
  export default ((props)=>{
6
6
  return /*#__PURE__*/ _jsx(NodeViewWrapper, {
7
7
  className: "react-component",
@@ -59,12 +59,13 @@ export default ((props)=>{
59
59
  className: "text-black dark:text-white text-lg capitalize w-full",
60
60
  // href={`https://test-payload.trtglobal.tech/en${props?.node?.attrs?.url}` ?? ''}
61
61
  //@ts-ignore
62
- dir: isRTL("بیشتر بخوانید" ?? "") ? "rtl" : "ltr",
62
+ // dir={isRTL("بیشتر بخوانید" ?? "") ? "rtl" : "ltr"}
63
+ dir: i18next.dir(),
63
64
  children: "بیشتر بخوانید"
64
65
  }),
65
66
  /*#__PURE__*/ _jsx("h3", {
66
67
  className: "text-2xl font-bold !mt-0 w-full",
67
- dir: isRTL(props?.node?.attrs?.title ?? "") ? "rtl" : "ltr",
68
+ dir: i18next.dir(),
68
69
  children: props?.node?.attrs?.title
69
70
  })
70
71
  ]
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/extensions/InsideLinks/InsideLinksComponent.tsx"],"sourcesContent":["import { ExternalLinkIcon } from \"@payloadcms/ui/graphics/ExternalLink\";\nimport { NodeViewContent, NodeViewWrapper } from \"@tiptap/react\";\nimport { isRTL } from \"../../lib/utils/isRtl.js\";\n\nexport default (props: any) => {\n return (\n <NodeViewWrapper\n className=\"react-component\"\n onClick={() => {\n props.editor.commands.setNodeSelection(props.getPos());\n }}\n >\n <NodeViewContent contentEditable=\"false\" className=\"socialMediaContainer\">\n {props?.node.type.spec.draggable ? (\n <div draggable=\"true\" data-drag-handle=\"\" style={{ width: \"100%\" }}>\n {/*@ts-ignore*/}\n {!props?.node?.attrs?.id ?? \"\" ? (\n <div\n className=\"w-full bg-zinc-100 py-8 px-6 flex items-center justify-center gap-2 socialMediaCard\"\n draggable=\"true\"\n data-drag-handle=\"\"\n contentEditable=\"false\"\n >\n <ExternalLinkIcon className=\"h-6 w-6\" />\n\n <p\n className=\"w-full flex items-center justify-start mt-0\"\n style={{\n marginTop: 0,\n }}\n >\n Add Internal Content Links\n {/* {text} */}\n </p>\n </div>\n ) : (\n <div className=\"flex justify-center items-center w-full gap-x-6\">\n <div className=\"flex justify-center items-center\">\n <div className=\"w-[32px] h-[64px] bg-blue-400\"></div>\n <img\n src={props?.node?.attrs?.thumbnail ?? \"\"}\n width={212}\n height={120}\n alt={\"\"}\n className=\"-ml-6 !w-[212px] !h-[120px] object-cover\"\n />\n </div>\n <div className=\"flex flex-col justidy-start items-start font-trt gap-y-2 \">\n <a\n className=\"text-black dark:text-white text-lg capitalize w-full\"\n // href={`https://test-payload.trtglobal.tech/en${props?.node?.attrs?.url}` ?? ''}\n //@ts-ignore\n dir={isRTL(\"بیشتر بخوانید\" ?? \"\") ? \"rtl\" : \"ltr\"}\n >\n بیشتر بخوانید\n </a>\n <h3\n className=\"text-2xl font-bold !mt-0 w-full\"\n dir={isRTL(props?.node?.attrs?.title ?? \"\") ? \"rtl\" : \"ltr\"}\n >\n {props?.node?.attrs?.title}\n </h3>\n </div>\n </div>\n )}\n </div>\n ) : null}\n </NodeViewContent>\n </NodeViewWrapper>\n );\n};\n"],"names":["ExternalLinkIcon","NodeViewContent","NodeViewWrapper","isRTL","props","className","onClick","editor","commands","setNodeSelection","getPos","contentEditable","node","type","spec","draggable","div","data-drag-handle","style","width","attrs","id","p","marginTop","img","src","thumbnail","height","alt","a","dir","h3","title"],"mappings":";AAAA,SAASA,gBAAgB,QAAQ,uCAAuC;AACxE,SAASC,eAAe,EAAEC,eAAe,QAAQ,gBAAgB;AACjE,SAASC,KAAK,QAAQ,2BAA2B;AAEjD,eAAe,CAAA,CAACC;IACd,qBACE,KAACF;QACCG,WAAU;QACVC,SAAS;YACPF,MAAMG,MAAM,CAACC,QAAQ,CAACC,gBAAgB,CAACL,MAAMM,MAAM;QACrD;kBAEA,cAAA,KAACT;YAAgBU,iBAAgB;YAAQN,WAAU;sBAChDD,OAAOQ,KAAKC,KAAKC,KAAKC,0BACrB,KAACC;gBAAID,WAAU;gBAAOE,oBAAiB;gBAAGC,OAAO;oBAAEC,OAAO;gBAAO;0BAE9D,CAACf,OAAOQ,MAAMQ,OAAOC,MAAM,mBAC1B,MAACL;oBACCX,WAAU;oBACVU,WAAU;oBACVE,oBAAiB;oBACjBN,iBAAgB;;sCAEhB,KAACX;4BAAiBK,WAAU;;sCAE5B,KAACiB;4BACCjB,WAAU;4BACVa,OAAO;gCACLK,WAAW;4BACb;sCACD;;;mCAMH,MAACP;oBAAIX,WAAU;;sCACb,MAACW;4BAAIX,WAAU;;8CACb,KAACW;oCAAIX,WAAU;;8CACf,KAACmB;oCACCC,KAAKrB,OAAOQ,MAAMQ,OAAOM,aAAa;oCACtCP,OAAO;oCACPQ,QAAQ;oCACRC,KAAK;oCACLvB,WAAU;;;;sCAGd,MAACW;4BAAIX,WAAU;;8CACb,KAACwB;oCACCxB,WAAU;oCACV,kFAAkF;oCAClF,YAAY;oCACZyB,KAAK3B,MAAM,mBAAmB,MAAM,QAAQ;8CAC7C;;8CAGD,KAAC4B;oCACC1B,WAAU;oCACVyB,KAAK3B,MAAMC,OAAOQ,MAAMQ,OAAOY,SAAS,MAAM,QAAQ;8CAErD5B,OAAOQ,MAAMQ,OAAOY;;;;;;iBAM7B;;;AAIZ,CAAA,EAAE"}
1
+ {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/extensions/InsideLinks/InsideLinksComponent.tsx"],"sourcesContent":["import { ExternalLinkIcon } from \"@payloadcms/ui/graphics/ExternalLink\";\nimport { NodeViewContent, NodeViewWrapper } from \"@tiptap/react\";\nimport i18next from \"i18next\";\n\nexport default (props: any) => {\n return (\n <NodeViewWrapper\n className=\"react-component\"\n onClick={() => {\n props.editor.commands.setNodeSelection(props.getPos());\n }}\n >\n <NodeViewContent contentEditable=\"false\" className=\"socialMediaContainer\">\n {props?.node.type.spec.draggable ? (\n <div draggable=\"true\" data-drag-handle=\"\" style={{ width: \"100%\" }}>\n {/*@ts-ignore*/}\n {!props?.node?.attrs?.id ?? \"\" ? (\n <div\n className=\"w-full bg-zinc-100 py-8 px-6 flex items-center justify-center gap-2 socialMediaCard\"\n draggable=\"true\"\n data-drag-handle=\"\"\n contentEditable=\"false\"\n >\n <ExternalLinkIcon className=\"h-6 w-6\" />\n\n <p\n className=\"w-full flex items-center justify-start mt-0\"\n style={{\n marginTop: 0,\n }}\n >\n Add Internal Content Links\n {/* {text} */}\n </p>\n </div>\n ) : (\n <div className=\"flex justify-center items-center w-full gap-x-6\">\n <div className=\"flex justify-center items-center\">\n <div className=\"w-[32px] h-[64px] bg-blue-400\"></div>\n <img\n src={props?.node?.attrs?.thumbnail ?? \"\"}\n width={212}\n height={120}\n alt={\"\"}\n className=\"-ml-6 !w-[212px] !h-[120px] object-cover\"\n />\n </div>\n <div className=\"flex flex-col justidy-start items-start font-trt gap-y-2 \">\n <a\n className=\"text-black dark:text-white text-lg capitalize w-full\"\n // href={`https://test-payload.trtglobal.tech/en${props?.node?.attrs?.url}` ?? ''}\n //@ts-ignore\n // dir={isRTL(\"بیشتر بخوانید\" ?? \"\") ? \"rtl\" : \"ltr\"}\n dir={i18next.dir()}\n >\n بیشتر بخوانید\n </a>\n <h3\n className=\"text-2xl font-bold !mt-0 w-full\"\n dir={i18next.dir()}\n >\n {props?.node?.attrs?.title}\n </h3>\n </div>\n </div>\n )}\n </div>\n ) : null}\n </NodeViewContent>\n </NodeViewWrapper>\n );\n};\n"],"names":["ExternalLinkIcon","NodeViewContent","NodeViewWrapper","i18next","props","className","onClick","editor","commands","setNodeSelection","getPos","contentEditable","node","type","spec","draggable","div","data-drag-handle","style","width","attrs","id","p","marginTop","img","src","thumbnail","height","alt","a","dir","h3","title"],"mappings":";AAAA,SAASA,gBAAgB,QAAQ,uCAAuC;AACxE,SAASC,eAAe,EAAEC,eAAe,QAAQ,gBAAgB;AACjE,OAAOC,aAAa,UAAU;AAE9B,eAAe,CAAA,CAACC;IACd,qBACE,KAACF;QACCG,WAAU;QACVC,SAAS;YACPF,MAAMG,MAAM,CAACC,QAAQ,CAACC,gBAAgB,CAACL,MAAMM,MAAM;QACrD;kBAEA,cAAA,KAACT;YAAgBU,iBAAgB;YAAQN,WAAU;sBAChDD,OAAOQ,KAAKC,KAAKC,KAAKC,0BACrB,KAACC;gBAAID,WAAU;gBAAOE,oBAAiB;gBAAGC,OAAO;oBAAEC,OAAO;gBAAO;0BAE9D,CAACf,OAAOQ,MAAMQ,OAAOC,MAAM,mBAC1B,MAACL;oBACCX,WAAU;oBACVU,WAAU;oBACVE,oBAAiB;oBACjBN,iBAAgB;;sCAEhB,KAACX;4BAAiBK,WAAU;;sCAE5B,KAACiB;4BACCjB,WAAU;4BACVa,OAAO;gCACLK,WAAW;4BACb;sCACD;;;mCAMH,MAACP;oBAAIX,WAAU;;sCACb,MAACW;4BAAIX,WAAU;;8CACb,KAACW;oCAAIX,WAAU;;8CACf,KAACmB;oCACCC,KAAKrB,OAAOQ,MAAMQ,OAAOM,aAAa;oCACtCP,OAAO;oCACPQ,QAAQ;oCACRC,KAAK;oCACLvB,WAAU;;;;sCAGd,MAACW;4BAAIX,WAAU;;8CACb,KAACwB;oCACCxB,WAAU;oCACV,kFAAkF;oCAClF,YAAY;oCACZ,qDAAqD;oCACrDyB,KAAK3B,QAAQ2B,GAAG;8CACjB;;8CAGD,KAACC;oCACC1B,WAAU;oCACVyB,KAAK3B,QAAQ2B,GAAG;8CAEf1B,OAAOQ,MAAMQ,OAAOY;;;;;;iBAM7B;;;AAIZ,CAAA,EAAE"}
@@ -1,4 +1,4 @@
1
- import { Facebook, Heading1, Heading2, Heading3, Image, Instagram, List, ListOrdered, Minus, Music, Quote, Twitter, Video, Youtube } from "lucide-react";
1
+ import { Facebook, Heading1, Heading2, Heading3, Image, Instagram, Minus, Music, Quote, Twitter, Video, Youtube } from "lucide-react";
2
2
  import i18next from "i18next";
3
3
  export const GROUPS = [
4
4
  {
@@ -47,30 +47,26 @@ export const GROUPS = [
47
47
  }).run();
48
48
  }
49
49
  },
50
- {
51
- name: "bulletList",
52
- label: i18next.t("bulletList") || 'Bullet List',
53
- description: i18next.t("bulletListDesc") || "Unordered list of items",
54
- icon: List,
55
- aliases: [
56
- "ul"
57
- ],
58
- action: (editor)=>{
59
- editor.chain().focus().toggleBulletList().run();
60
- }
61
- },
62
- {
63
- name: "numberedList",
64
- label: i18next.t("numberedList") || 'Numbered List',
65
- description: i18next.t("numberedListDesc") || "Ordered list of items",
66
- icon: ListOrdered,
67
- aliases: [
68
- "ol"
69
- ],
70
- action: (editor)=>{
71
- editor.chain().focus().toggleOrderedList().run();
72
- }
73
- },
50
+ // {
51
+ // name: "bulletList",
52
+ // label: i18next.t("bulletList") || 'Bullet List',
53
+ // description:i18next.t("bulletListDesc") || "Unordered list of items",
54
+ // icon: List,
55
+ // aliases: ["ul"],
56
+ // action: (editor) => {
57
+ // editor.chain().focus().toggleBulletList().run();
58
+ // },
59
+ // },
60
+ // {
61
+ // name: "numberedList",
62
+ // label: i18next.t("numberedList") || 'Numbered List',
63
+ // description:i18next.t("numberedListDesc") || "Ordered list of items",
64
+ // icon: ListOrdered,
65
+ // aliases: ["ol"],
66
+ // action: (editor) => {
67
+ // editor.chain().focus().toggleOrderedList().run();
68
+ // },
69
+ // },
74
70
  {
75
71
  name: "blockquote",
76
72
  label: i18next.t("blockquote") || 'Blockquote',
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/extensions/SlashCommand/groups.ts"],"sourcesContent":["import {\n Facebook,\n Heading1,\n Heading2,\n Heading3,\n Image,\n Instagram,\n List,\n ListOrdered,\n Minus,\n Music,\n Quote,\n Twitter,\n Video,\n Youtube,\n} from \"lucide-react\";\nimport { Group } from \"./types.js\";\nimport i18next from \"i18next\";\n\nexport const GROUPS: Group[] = [\n {\n name: \"format\",\n title: i18next.t(\"format\") || \"Format\",\n commands: [\n {\n name: \"heading1\",\n label: i18next.t(\"heading1\") || 'Heading 1',\n description:i18next.t(\"heading1Desc\") || \"High priority section title\",\n icon: Heading1,\n aliases: [\"h1\"],\n action: (editor) => {\n editor.chain().focus().setHeading({ level: 1 }).run();\n },\n },\n {\n name: \"heading2\",\n label: i18next.t(\"heading2\") || 'Heading 2',\n description:i18next.t(\"heading2Desc\") || \"Medium priority section title\",\n icon: Heading2,\n aliases: [\"h2\"],\n action: (editor) => {\n editor.chain().focus().setHeading({ level: 2 }).run();\n },\n },\n {\n name: \"heading3\",\n label: i18next.t(\"heading3\") || 'Heading 3',\n description:i18next.t(\"heading3Desc\") || \"Low priority section title\",\n icon: Heading3,\n aliases: [\"h3\"],\n action: (editor) => {\n editor.chain().focus().setHeading({ level: 3 }).run();\n },\n },\n {\n name: \"bulletList\",\n label: i18next.t(\"bulletList\") || 'Bullet List',\n description:i18next.t(\"bulletListDesc\") || \"Unordered list of items\",\n icon: List,\n aliases: [\"ul\"],\n action: (editor) => {\n editor.chain().focus().toggleBulletList().run();\n },\n },\n {\n name: \"numberedList\",\n label: i18next.t(\"numberedList\") || 'Numbered List',\n description:i18next.t(\"numberedListDesc\") || \"Ordered list of items\",\n icon: ListOrdered,\n aliases: [\"ol\"],\n action: (editor) => {\n editor.chain().focus().toggleOrderedList().run();\n },\n },\n\n {\n name: \"blockquote\",\n label: i18next.t(\"blockquote\") || 'Blockquote',\n description:i18next.t(\"blockquoteDesc\") || \"Element for quoting\",\n icon: Quote,\n action: (editor) => {\n editor.chain().focus().setBlockquote().run();\n },\n },\n ],\n },\n {\n name: \"insert\",\n title: \"Insert\",\n commands: [\n {\n name: \"image\",\n label: i18next.t(\"image\") || 'Image',\n description:i18next.t(\"imageDesc\") || \"Insert an image\",\n icon: Image,\n aliases: [\"img\"],\n action: (editor) => {\n editor.chain().focus().setImageUpload(\"image\").run();\n },\n },\n {\n name: \"video\",\n label: i18next.t(\"video\") || 'Video',\n description:i18next.t(\"videoDesc\") || \"Insert a video\",\n icon: Video,\n aliases: [\"video\"],\n action: (editor) => {\n editor.chain().focus().setImageUpload(\"video\").run();\n },\n },\n\n {\n name: \"horizontalRule\",\n label: i18next.t(\"horizontalRule\") || 'HorizontalRule',\n description:i18next.t(\"horizontalRuleDesc\") || \"Insert a horizontal divider\",\n icon: Minus,\n aliases: [\"hr\"],\n action: (editor) => {\n editor.chain().focus().setHorizontalRule().run();\n },\n },\n ],\n },\n {\n name: \"embed\",\n title: \"Embed\",\n commands: [\n {\n name: \"twitter\",\n label: i18next.t(\"twitter\") || 'Twitter',\n description:i18next.t(\"twitterDesc\") || \"Insert a Twitter embed\",\n icon: Twitter,\n aliases: [\"x\", \"twitter\"],\n shouldBeHidden: (editor) => editor.isActive(\"twitter\"),\n action: (editor) => {\n editor.chain().focus().insertTwitter().run();\n },\n },\n {\n name: \"facebook\",\n label: i18next.t(\"facebook\") || 'Facebook',\n description:i18next.t(\"facebookDesc\") || \"Insert a Facebook embed\",\n icon: Facebook,\n aliases: [\"meta\", \"facebook\"],\n shouldBeHidden: (editor) => editor.isActive(\"facebook\"),\n action: (editor) => {\n editor.chain().focus().insertFacebook().run();\n },\n },\n {\n name: \"instagram\",\n label: i18next.t(\"instagram\") || 'Instagram',\n description:i18next.t(\"instagramDesc\") || \"Insert a Instagram embed\",\n icon: Instagram,\n aliases: [\"instagram\"],\n shouldBeHidden: (editor) => editor.isActive(\"instagram\"),\n action: (editor) => {\n editor.chain().focus().insertInstagram().run();\n },\n },\n {\n name: \"youtube\",\n label: i18next.t(\"youtube\") || 'Youtube',\n description:i18next.t(\"youtubeDesc\") || \"Insert a Youtube embed\",\n icon: Youtube,\n aliases: [\"youtube\"],\n shouldBeHidden: (editor) => editor.isActive(\"youtube\"),\n action: (editor) => {\n editor.chain().focus().insertYoutube().run();\n },\n },\n\n {\n name: \"tiktok\",\n label: i18next.t(\"tiktok\") || 'Tiktok',\n description:i18next.t(\"tiktokDesc\") || \"Insert a Tiktok embed\",\n icon: Music,\n aliases: [\"tiktok\"],\n shouldBeHidden: (editor) => editor.isActive(\"tiktok\"),\n action: (editor) => {\n editor.chain().focus().insertTiktok().run();\n },\n },\n ],\n },\n];\n\nexport default GROUPS;\n"],"names":["Facebook","Heading1","Heading2","Heading3","Image","Instagram","List","ListOrdered","Minus","Music","Quote","Twitter","Video","Youtube","i18next","GROUPS","name","title","t","commands","label","description","icon","aliases","action","editor","chain","focus","setHeading","level","run","toggleBulletList","toggleOrderedList","setBlockquote","setImageUpload","setHorizontalRule","shouldBeHidden","isActive","insertTwitter","insertFacebook","insertInstagram","insertYoutube","insertTiktok"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/extensions/SlashCommand/groups.ts"],"sourcesContent":["import {\n Facebook,\n Heading1,\n Heading2,\n Heading3,\n Image,\n Instagram,\n List,\n ListOrdered,\n Minus,\n Music,\n Quote,\n Twitter,\n Video,\n Youtube,\n} from \"lucide-react\";\nimport { Group } from \"./types.js\";\nimport i18next from \"i18next\";\n\nexport const GROUPS: Group[] = [\n {\n name: \"format\",\n title: i18next.t(\"format\") || \"Format\",\n commands: [\n {\n name: \"heading1\",\n label: i18next.t(\"heading1\") || 'Heading 1',\n description:i18next.t(\"heading1Desc\") || \"High priority section title\",\n icon: Heading1,\n aliases: [\"h1\"],\n action: (editor) => {\n editor.chain().focus().setHeading({ level: 1 }).run();\n },\n },\n {\n name: \"heading2\",\n label: i18next.t(\"heading2\") || 'Heading 2',\n description:i18next.t(\"heading2Desc\") || \"Medium priority section title\",\n icon: Heading2,\n aliases: [\"h2\"],\n action: (editor) => {\n editor.chain().focus().setHeading({ level: 2 }).run();\n },\n },\n {\n name: \"heading3\",\n label: i18next.t(\"heading3\") || 'Heading 3',\n description:i18next.t(\"heading3Desc\") || \"Low priority section title\",\n icon: Heading3,\n aliases: [\"h3\"],\n action: (editor) => {\n editor.chain().focus().setHeading({ level: 3 }).run();\n },\n },\n // {\n // name: \"bulletList\",\n // label: i18next.t(\"bulletList\") || 'Bullet List',\n // description:i18next.t(\"bulletListDesc\") || \"Unordered list of items\",\n // icon: List,\n // aliases: [\"ul\"],\n // action: (editor) => {\n // editor.chain().focus().toggleBulletList().run();\n // },\n // },\n // {\n // name: \"numberedList\",\n // label: i18next.t(\"numberedList\") || 'Numbered List',\n // description:i18next.t(\"numberedListDesc\") || \"Ordered list of items\",\n // icon: ListOrdered,\n // aliases: [\"ol\"],\n // action: (editor) => {\n // editor.chain().focus().toggleOrderedList().run();\n // },\n // },\n\n {\n name: \"blockquote\",\n label: i18next.t(\"blockquote\") || 'Blockquote',\n description:i18next.t(\"blockquoteDesc\") || \"Element for quoting\",\n icon: Quote,\n action: (editor) => {\n editor.chain().focus().setBlockquote().run();\n },\n },\n ],\n },\n {\n name: \"insert\",\n title: \"Insert\",\n commands: [\n {\n name: \"image\",\n label: i18next.t(\"image\") || 'Image',\n description:i18next.t(\"imageDesc\") || \"Insert an image\",\n icon: Image,\n aliases: [\"img\"],\n action: (editor) => {\n editor.chain().focus().setImageUpload(\"image\").run();\n },\n },\n {\n name: \"video\",\n label: i18next.t(\"video\") || 'Video',\n description:i18next.t(\"videoDesc\") || \"Insert a video\",\n icon: Video,\n aliases: [\"video\"],\n action: (editor) => {\n editor.chain().focus().setImageUpload(\"video\").run();\n },\n },\n\n {\n name: \"horizontalRule\",\n label: i18next.t(\"horizontalRule\") || 'HorizontalRule',\n description:i18next.t(\"horizontalRuleDesc\") || \"Insert a horizontal divider\",\n icon: Minus,\n aliases: [\"hr\"],\n action: (editor) => {\n editor.chain().focus().setHorizontalRule().run();\n },\n },\n ],\n },\n {\n name: \"embed\",\n title: \"Embed\",\n commands: [\n {\n name: \"twitter\",\n label: i18next.t(\"twitter\") || 'Twitter',\n description:i18next.t(\"twitterDesc\") || \"Insert a Twitter embed\",\n icon: Twitter,\n aliases: [\"x\", \"twitter\"],\n shouldBeHidden: (editor) => editor.isActive(\"twitter\"),\n action: (editor) => {\n editor.chain().focus().insertTwitter().run();\n },\n },\n {\n name: \"facebook\",\n label: i18next.t(\"facebook\") || 'Facebook',\n description:i18next.t(\"facebookDesc\") || \"Insert a Facebook embed\",\n icon: Facebook,\n aliases: [\"meta\", \"facebook\"],\n shouldBeHidden: (editor) => editor.isActive(\"facebook\"),\n action: (editor) => {\n editor.chain().focus().insertFacebook().run();\n },\n },\n {\n name: \"instagram\",\n label: i18next.t(\"instagram\") || 'Instagram',\n description:i18next.t(\"instagramDesc\") || \"Insert a Instagram embed\",\n icon: Instagram,\n aliases: [\"instagram\"],\n shouldBeHidden: (editor) => editor.isActive(\"instagram\"),\n action: (editor) => {\n editor.chain().focus().insertInstagram().run();\n },\n },\n {\n name: \"youtube\",\n label: i18next.t(\"youtube\") || 'Youtube',\n description:i18next.t(\"youtubeDesc\") || \"Insert a Youtube embed\",\n icon: Youtube,\n aliases: [\"youtube\"],\n shouldBeHidden: (editor) => editor.isActive(\"youtube\"),\n action: (editor) => {\n editor.chain().focus().insertYoutube().run();\n },\n },\n\n {\n name: \"tiktok\",\n label: i18next.t(\"tiktok\") || 'Tiktok',\n description:i18next.t(\"tiktokDesc\") || \"Insert a Tiktok embed\",\n icon: Music,\n aliases: [\"tiktok\"],\n shouldBeHidden: (editor) => editor.isActive(\"tiktok\"),\n action: (editor) => {\n editor.chain().focus().insertTiktok().run();\n },\n },\n ],\n },\n];\n\nexport default GROUPS;\n"],"names":["Facebook","Heading1","Heading2","Heading3","Image","Instagram","Minus","Music","Quote","Twitter","Video","Youtube","i18next","GROUPS","name","title","t","commands","label","description","icon","aliases","action","editor","chain","focus","setHeading","level","run","setBlockquote","setImageUpload","setHorizontalRule","shouldBeHidden","isActive","insertTwitter","insertFacebook","insertInstagram","insertYoutube","insertTiktok"],"mappings":"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"}
@@ -1,8 +1,7 @@
1
1
  import { openAssetHQType } from "../types.js";
2
2
  interface ExtensionKitProps {
3
- dir?: "rtl" | "ltr";
4
3
  openAssetHQHandler: openAssetHQType;
5
4
  }
6
- export declare const ExtensionKit: ({ dir, openAssetHQHandler, }: ExtensionKitProps) => (import("@tiptap/core").Extension<any, any> | import("@tiptap/core").Node<any, any> | import("@tiptap/core").Mark<import("@tiptap/extension-subscript").SubscriptExtensionOptions, any>)[];
5
+ export declare const ExtensionKit: ({ openAssetHQHandler, }: ExtensionKitProps) => (import("@tiptap/core").Extension<any, any> | import("@tiptap/core").Node<any, any> | import("@tiptap/core").Mark<import("@tiptap/extension-subscript").SubscriptExtensionOptions, any>)[];
7
6
  export default ExtensionKit;
8
7
  //# sourceMappingURL=extension-kit.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extension-kit.d.ts","sourceRoot":"","sources":["../../../../../src/fields/TiptapEditor/extensions/extension-kit.ts"],"names":[],"mappings":"AA+CA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,UAAU,iBAAiB;IACzB,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IACpB,kBAAkB,EAAE,eAAe,CAAC;CACrC;AAED,eAAO,MAAM,YAAY,iCAGtB,iBAAiB,+LAqHnB,CAAC;AAEF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"extension-kit.d.ts","sourceRoot":"","sources":["../../../../../src/fields/TiptapEditor/extensions/extension-kit.ts"],"names":[],"mappings":"AA8CA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG9C,UAAU,iBAAiB;IACzB,kBAAkB,EAAE,eAAe,CAAC;CACrC;AAGD,eAAO,MAAM,YAAY,4BAEtB,iBAAiB,+LA4GjB,CAAC;AAEJ,eAAe,YAAY,CAAC"}
@@ -1,10 +1,9 @@
1
- import { AICommand, AudioBlock, BlockquoteFigure, CharacterCount, Color, Document, Dropcursor, Facebook, Figcaption, FileHandler, Focus, FontFamily, FontSize, Heading, Highlight, HorizontalRule, ImageBlock, InsideLinks, Instagram, Link, Linkedin, Placeholder, Selection, SlashCommand, StarterKit, Subscript, Superscript, TaskItem, TaskList, TextAlign, TextStyle, Tiktok, TrailingNode, Twitter, Typography, Underline, VideoBlock, Youtube } from "./index.js";
2
- import TextDirection from "tiptap-text-direction";
1
+ import { AICommand, AudioBlock, BlockquoteFigure, CharacterCount, Color, Document, Dropcursor, Facebook, Figcaption, FileHandler, Focus, FontSize, Heading, Highlight, HorizontalRule, ImageBlock, InsideLinks, Instagram, Link, Linkedin, Placeholder, Selection, SlashCommand, StarterKit, Subscript, Superscript, TaskItem, TaskList, TextAlign, TextStyle, Tiktok, TrailingNode, Twitter, Typography, Underline, VideoBlock, Youtube } from "./index.js";
3
2
  import { ImageUpload } from "./ImageUpload/ImageUpload.js";
4
3
  import History from "@tiptap/extension-history";
5
4
  import { Markdown } from "tiptap-markdown";
6
5
  import API from "../lib/api.js";
7
- export const ExtensionKit = ({ dir, openAssetHQHandler })=>[
6
+ export const ExtensionKit = ({ openAssetHQHandler })=>[
8
7
  Markdown,
9
8
  Document,
10
9
  TaskList,
@@ -34,7 +33,7 @@ export const ExtensionKit = ({ dir, openAssetHQHandler })=>[
34
33
  }),
35
34
  TextStyle,
36
35
  FontSize,
37
- FontFamily,
36
+ // FontFamily,
38
37
  Color,
39
38
  TrailingNode,
40
39
  Link.configure({
@@ -119,16 +118,6 @@ export const ExtensionKit = ({ dir, openAssetHQHandler })=>[
119
118
  Linkedin,
120
119
  Youtube,
121
120
  InsideLinks,
122
- TextDirection.configure({
123
- types: [
124
- "heading",
125
- "paragraph",
126
- "orderedList",
127
- "bulletList",
128
- "listItem",
129
- "blockquoteFigure"
130
- ]
131
- }),
132
121
  AICommand
133
122
  ];
134
123
  export default ExtensionKit;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/fields/TiptapEditor/extensions/extension-kit.ts"],"sourcesContent":["import {\n AICommand,\n AudioBlock,\n BlockquoteFigure,\n CharacterCount,\n Color,\n Document,\n Dropcursor,\n Facebook,\n Figcaption,\n FileHandler,\n Focus,\n FontFamily,\n FontSize,\n Heading,\n Highlight,\n HorizontalRule,\n ImageBlock,\n InsideLinks,\n Instagram,\n Link,\n Linkedin,\n Placeholder,\n Selection,\n SlashCommand,\n StarterKit,\n Subscript,\n Superscript,\n TaskItem,\n TaskList,\n TextAlign,\n TextStyle,\n Tiktok,\n TrailingNode,\n Twitter,\n Typography,\n Underline,\n VideoBlock,\n Youtube,\n} from \"./index.js\";\n\nimport TextDirection from \"tiptap-text-direction\";\nimport { ImageUpload } from \"./ImageUpload/ImageUpload.js\";\n\nimport History from \"@tiptap/extension-history\";\nimport { Markdown } from \"tiptap-markdown\";\nimport API from \"../lib/api.js\";\nimport { openAssetHQType } from \"../types.js\";\n\ninterface ExtensionKitProps {\n dir?: \"rtl\" | \"ltr\";\n openAssetHQHandler: openAssetHQType;\n}\n\nexport const ExtensionKit = ({\n dir,\n openAssetHQHandler,\n}: ExtensionKitProps) => [\n Markdown,\n Document,\n TaskList,\n TaskItem.configure({\n nested: true,\n }),\n Selection,\n Heading.configure({\n levels: [1, 2, 3, 4, 5, 6],\n }),\n HorizontalRule,\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 TextStyle,\n FontSize,\n FontFamily,\n Color,\n TrailingNode,\n Link.configure({\n openOnClick: false,\n }),\n Highlight.configure({ multicolor: true }),\n Underline,\n CharacterCount.configure({ limit: 50000 }),\n ImageUpload.configure({\n openAssetHQHandler,\n }),\n ImageBlock,\n VideoBlock,\n AudioBlock,\n FileHandler.configure({\n allowedMimeTypes: [\"image/png\", \"image/jpeg\", \"image/gif\", \"image/webp\"],\n onDrop: (currentEditor, files, pos) => {\n const file = files[0];\n (async () => {\n openAssetHQHandler(\n (asset) => {\n currentEditor\n .chain()\n .setImageBlockAt({ pos, src: asset.fullUrl })\n .focus()\n .run();\n },\n file,\n \"image\"\n );\n })();\n },\n onPaste: (currentEditor, files) => {\n files.forEach(async () => {\n const url = await API.uploadImage();\n\n return currentEditor\n .chain()\n .setImageBlockAt({\n pos: currentEditor.state.selection.anchor,\n src: url,\n })\n .focus()\n .run();\n });\n },\n }),\n // Emoji.configure({\n // enableEmoticons: true,\n // suggestion: emojiSuggestion,\n // }),\n TextAlign.extend({\n addKeyboardShortcuts() {\n return {};\n },\n }).configure({\n types: [\"heading\", \"paragraph\"],\n }),\n Subscript,\n Superscript,\n Typography,\n Placeholder.configure({\n includeChildren: true,\n showOnlyCurrent: false,\n placeholder: () => \"\",\n }),\n SlashCommand,\n Focus,\n Figcaption,\n BlockquoteFigure,\n Dropcursor.configure({\n width: 2,\n class: \"ProseMirror-dropcursor border-black\",\n }),\n History,\n Twitter,\n Tiktok,\n Instagram,\n Facebook,\n Linkedin,\n Youtube,\n InsideLinks,\n TextDirection.configure({\n types: [\n \"heading\",\n \"paragraph\",\n \"orderedList\",\n \"bulletList\",\n \"listItem\",\n \"blockquoteFigure\",\n ],\n }),\n AICommand,\n];\n\nexport default ExtensionKit;\n"],"names":["AICommand","AudioBlock","BlockquoteFigure","CharacterCount","Color","Document","Dropcursor","Facebook","Figcaption","FileHandler","Focus","FontFamily","FontSize","Heading","Highlight","HorizontalRule","ImageBlock","InsideLinks","Instagram","Link","Linkedin","Placeholder","Selection","SlashCommand","StarterKit","Subscript","Superscript","TaskItem","TaskList","TextAlign","TextStyle","Tiktok","TrailingNode","Twitter","Typography","Underline","VideoBlock","Youtube","TextDirection","ImageUpload","History","Markdown","API","ExtensionKit","dir","openAssetHQHandler","configure","nested","levels","document","dropcursor","heading","horizontalRule","blockquote","history","codeBlock","openOnClick","multicolor","limit","allowedMimeTypes","onDrop","currentEditor","files","pos","file","asset","chain","setImageBlockAt","src","fullUrl","focus","run","onPaste","forEach","url","uploadImage","state","selection","anchor","extend","addKeyboardShortcuts","types","includeChildren","showOnlyCurrent","placeholder","width","class"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../src/fields/TiptapEditor/extensions/extension-kit.ts"],"sourcesContent":["import {\n AICommand,\n AudioBlock,\n BlockquoteFigure,\n CharacterCount,\n Color,\n Document,\n Dropcursor,\n Facebook,\n Figcaption,\n FileHandler,\n Focus,\n FontFamily,\n FontSize,\n Heading,\n Highlight,\n HorizontalRule,\n ImageBlock,\n InsideLinks,\n Instagram,\n Link,\n Linkedin,\n Placeholder,\n Selection,\n SlashCommand,\n StarterKit,\n Subscript,\n Superscript,\n TaskItem,\n TaskList,\n TextAlign,\n TextStyle,\n Tiktok,\n TrailingNode,\n Twitter,\n Typography,\n Underline,\n VideoBlock,\n Youtube,\n} from \"./index.js\";\n\nimport { ImageUpload } from \"./ImageUpload/ImageUpload.js\";\n\nimport History from \"@tiptap/extension-history\";\nimport { Markdown } from \"tiptap-markdown\";\nimport API from \"../lib/api.js\";\nimport { openAssetHQType } from \"../types.js\";\nimport i18next from \"i18next\";\n\ninterface ExtensionKitProps {\n openAssetHQHandler: openAssetHQType;\n}\n\n\nexport const ExtensionKit = ({\n openAssetHQHandler,\n}: ExtensionKitProps) => [\n\n Markdown,\n Document,\n TaskList,\n TaskItem.configure({\n nested: true,\n }),\n Selection,\n Heading.configure({\n levels: [1, 2, 3, 4, 5, 6],\n }),\n HorizontalRule,\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 TextStyle,\n FontSize,\n // FontFamily,\n Color,\n TrailingNode,\n Link.configure({\n openOnClick: false,\n }),\n Highlight.configure({ multicolor: true }),\n Underline,\n CharacterCount.configure({ limit: 50000 }),\n ImageUpload.configure({\n openAssetHQHandler,\n }),\n ImageBlock,\n VideoBlock,\n AudioBlock,\n FileHandler.configure({\n allowedMimeTypes: [\"image/png\", \"image/jpeg\", \"image/gif\", \"image/webp\"],\n onDrop: (currentEditor, files, pos) => {\n const file = files[0];\n (async () => {\n openAssetHQHandler(\n (asset) => {\n currentEditor\n .chain()\n .setImageBlockAt({ pos, src: asset.fullUrl })\n .focus()\n .run();\n },\n file,\n \"image\"\n );\n })();\n },\n onPaste: (currentEditor, files) => {\n files.forEach(async () => {\n const url = await API.uploadImage();\n\n return currentEditor\n .chain()\n .setImageBlockAt({\n pos: currentEditor.state.selection.anchor,\n src: url,\n })\n .focus()\n .run();\n });\n },\n }),\n // Emoji.configure({\n // enableEmoticons: true,\n // suggestion: emojiSuggestion,\n // }),\n TextAlign.extend({\n addKeyboardShortcuts() {\n return {};\n },\n }).configure({\n types: [\"heading\", \"paragraph\"],\n }),\n Subscript,\n Superscript,\n Typography,\n Placeholder.configure({\n includeChildren: true,\n showOnlyCurrent: false,\n placeholder: () => \"\",\n }),\n SlashCommand,\n Focus,\n Figcaption,\n BlockquoteFigure,\n Dropcursor.configure({\n width: 2,\n class: \"ProseMirror-dropcursor border-black\",\n }),\n History,\n Twitter,\n Tiktok,\n Instagram,\n Facebook,\n Linkedin,\n Youtube,\n InsideLinks,\n AICommand,\n ];\n\nexport default ExtensionKit;\n"],"names":["AICommand","AudioBlock","BlockquoteFigure","CharacterCount","Color","Document","Dropcursor","Facebook","Figcaption","FileHandler","Focus","FontSize","Heading","Highlight","HorizontalRule","ImageBlock","InsideLinks","Instagram","Link","Linkedin","Placeholder","Selection","SlashCommand","StarterKit","Subscript","Superscript","TaskItem","TaskList","TextAlign","TextStyle","Tiktok","TrailingNode","Twitter","Typography","Underline","VideoBlock","Youtube","ImageUpload","History","Markdown","API","ExtensionKit","openAssetHQHandler","configure","nested","levels","document","dropcursor","heading","horizontalRule","blockquote","history","codeBlock","openOnClick","multicolor","limit","allowedMimeTypes","onDrop","currentEditor","files","pos","file","asset","chain","setImageBlockAt","src","fullUrl","focus","run","onPaste","forEach","url","uploadImage","state","selection","anchor","extend","addKeyboardShortcuts","types","includeChildren","showOnlyCurrent","placeholder","width","class"],"mappings":"AAAA,SACEA,SAAS,EACTC,UAAU,EACVC,gBAAgB,EAChBC,cAAc,EACdC,KAAK,EACLC,QAAQ,EACRC,UAAU,EACVC,QAAQ,EACRC,UAAU,EACVC,WAAW,EACXC,KAAK,EAELC,QAAQ,EACRC,OAAO,EACPC,SAAS,EACTC,cAAc,EACdC,UAAU,EACVC,WAAW,EACXC,SAAS,EACTC,IAAI,EACJC,QAAQ,EACRC,WAAW,EACXC,SAAS,EACTC,YAAY,EACZC,UAAU,EACVC,SAAS,EACTC,WAAW,EACXC,QAAQ,EACRC,QAAQ,EACRC,SAAS,EACTC,SAAS,EACTC,MAAM,EACNC,YAAY,EACZC,OAAO,EACPC,UAAU,EACVC,SAAS,EACTC,UAAU,EACVC,OAAO,QACF,aAAa;AAEpB,SAASC,WAAW,QAAQ,+BAA+B;AAE3D,OAAOC,aAAa,4BAA4B;AAChD,SAASC,QAAQ,QAAQ,kBAAkB;AAC3C,OAAOC,SAAS,gBAAgB;AAShC,OAAO,MAAMC,eAAe,CAAC,EAC3BC,kBAAkB,EACA,GAAK;QAErBH;QACAlC;QACAsB;QACAD,SAASiB,SAAS,CAAC;YACjBC,QAAQ;QACV;QACAvB;QACAT,QAAQ+B,SAAS,CAAC;YAChBE,QAAQ;gBAAC;gBAAG;gBAAG;gBAAG;gBAAG;gBAAG;aAAE;QAC5B;QACA/B;QACAS,WAAWoB,SAAS,CAAC;YACnBG,UAAU;YACVC,YAAY;YACZC,SAAS;YACTC,gBAAgB;YAChBC,YAAY;YACZC,SAAS;YACTC,WAAW;QACb;QACAvB;QACAlB;QACA,cAAc;QACdP;QACA2B;QACAb,KAAKyB,SAAS,CAAC;YACbU,aAAa;QACf;QACAxC,UAAU8B,SAAS,CAAC;YAAEW,YAAY;QAAK;QACvCpB;QACA/B,eAAewC,SAAS,CAAC;YAAEY,OAAO;QAAM;QACxClB,YAAYM,SAAS,CAAC;YACpBD;QACF;QACA3B;QACAoB;QACAlC;QACAQ,YAAYkC,SAAS,CAAC;YACpBa,kBAAkB;gBAAC;gBAAa;gBAAc;gBAAa;aAAa;YACxEC,QAAQ,CAACC,eAAeC,OAAOC;gBAC7B,MAAMC,OAAOF,KAAK,CAAC,EAAE;gBACpB,CAAA;oBACCjB,mBACE,CAACoB;wBACCJ,cACGK,KAAK,GACLC,eAAe,CAAC;4BAAEJ;4BAAKK,KAAKH,MAAMI,OAAO;wBAAC,GAC1CC,KAAK,GACLC,GAAG;oBACR,GACAP,MACA;gBAEJ,CAAA;YACF;YACAQ,SAAS,CAACX,eAAeC;gBACvBA,MAAMW,OAAO,CAAC;oBACZ,MAAMC,MAAM,MAAM/B,IAAIgC,WAAW;oBAEjC,OAAOd,cACJK,KAAK,GACLC,eAAe,CAAC;wBACfJ,KAAKF,cAAce,KAAK,CAACC,SAAS,CAACC,MAAM;wBACzCV,KAAKM;oBACP,GACCJ,KAAK,GACLC,GAAG;gBACR;YACF;QACF;QACA,oBAAoB;QACpB,2BAA2B;QAC3B,iCAAiC;QACjC,MAAM;QACNxC,UAAUgD,MAAM,CAAC;YACfC;gBACE,OAAO,CAAC;YACV;QACF,GAAGlC,SAAS,CAAC;YACXmC,OAAO;gBAAC;gBAAW;aAAY;QACjC;QACAtD;QACAC;QACAQ;QACAb,YAAYuB,SAAS,CAAC;YACpBoC,iBAAiB;YACjBC,iBAAiB;YACjBC,aAAa,IAAM;QACrB;QACA3D;QACAZ;QACAF;QACAN;QACAI,WAAWqC,SAAS,CAAC;YACnBuC,OAAO;YACPC,OAAO;QACT;QACA7C;QACAN;QACAF;QACAb;QACAV;QACAY;QACAiB;QACApB;QACAhB;KACD,CAAC;AAEJ,eAAeyC,aAAa"}
@@ -1 +1 @@
1
- {"version":3,"file":"BlockEditor.d.ts","sourceRoot":"","sources":["../../../../../../src/fields/TiptapEditor/features/BlockEditor/BlockEditor.tsx"],"names":[],"mappings":"AAeA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAIjD,OAAO,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAIhE,eAAO,MAAM,WAAW,kGAQrB,WAAW,GAAG;IACf,kBAAkB,CAAC,EAAE,eAAe,CAAC;IACrC,iBAAiB,CAAC,EAAE,qBAAqB,CAAC;IAC1C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;CAC9B,gCAyFA,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"BlockEditor.d.ts","sourceRoot":"","sources":["../../../../../../src/fields/TiptapEditor/features/BlockEditor/BlockEditor.tsx"],"names":[],"mappings":"AAcA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAIjD,OAAO,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAKhE,eAAO,MAAM,WAAW,kGAQrB,WAAW,GAAG;IACf,kBAAkB,CAAC,EAAE,eAAe,CAAC;IACrC,iBAAiB,CAAC,EAAE,qBAAqB,CAAC;IAC1C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;CAC9B,gCA0FA,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -11,10 +11,10 @@ import { ColumnsMenu } from "../../extensions/MultiColumn/menus/ColumnsMenu.js";
11
11
  import { SocialMediaMenu } from "../../extensions/SocialMedia/menus/index.js";
12
12
  import VideoBlockMenu from "../../extensions/VideoBlock/components/VideoBlockMenu.js";
13
13
  import { useBlockEditor } from "../../hooks/useBlockEditor.js";
14
- import { isRTL } from "../../lib/utils/isRtl.js";
15
14
  import { ContentItemMenu } from "../menus/ContentItemMenu/ContentItemMenu.js";
16
15
  import { TextMenu } from "../menus/TextMenu/TextMenu.js";
17
16
  import { LinkMenu } from "../menus/index.js";
17
+ import i18next from "i18next";
18
18
  const DEFAULT_LANG = "en";
19
19
  export const BlockEditor = ({ handleChange, content, openAssetHQHandler, additionalContext, isEditable = true, autoFocus = true, dir })=>{
20
20
  const menuContainerRef = useRef(null);
@@ -68,11 +68,12 @@ export const BlockEditor = ({ handleChange, content, openAssetHQHandler, additio
68
68
  children: /*#__PURE__*/ _jsx("div", {
69
69
  className: "flex h-full overflow-visible",
70
70
  ref: menuContainerRef,
71
- dir: dir ?? (isRTL(editor.getText()) ? "rtl" : "ltr"),
71
+ dir: i18next.dir(),
72
72
  children: /*#__PURE__*/ _jsxs("div", {
73
73
  className: "relative flex flex-col flex-1 h-full justify-center items-center ",
74
74
  children: [
75
75
  /*#__PURE__*/ _jsx(EditorContent, {
76
+ dir: i18next.dir(),
76
77
  editor: editor,
77
78
  ref: editorRef,
78
79
  className: "flex-1 overflow-y-visible w-full h-full outline-none outline-offset-0",
@@ -91,7 +92,7 @@ export const BlockEditor = ({ handleChange, content, openAssetHQHandler, additio
91
92
  }),
92
93
  /*#__PURE__*/ _jsx(TextMenu, {
93
94
  editor: editor,
94
- dir: dir ?? (isRTL(editor.getText()) ? "rtl" : "ltr")
95
+ dir: i18next.dir()
95
96
  }),
96
97
  /*#__PURE__*/ _jsx(IframeMenu, {
97
98
  editor: editor,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/features/BlockEditor/BlockEditor.tsx"],"sourcesContent":["\"use client\";\nimport { EditorContent } from \"@tiptap/react\";\nimport { useEffect, useMemo, useRef } from \"react\";\nimport i18n from \"i18next\";\n\nimport { EditorContext } from \"../../context/EditorContext.js\";\nimport { IframeMenu } from \"../../extensions/Iframe/menus/index.js\";\nimport ImageBlockMenu from \"../../extensions/ImageBlock/components/ImageBlockMenu.js\";\nimport { InsideLinksMenu } from \"../../extensions/InsideLinks/menus/index.js\";\nimport { ColumnsMenu } from \"../../extensions/MultiColumn/menus/ColumnsMenu.js\";\nimport { SocialMediaMenu } from \"../../extensions/SocialMedia/menus/index.js\";\n\nimport VideoBlockMenu from \"../../extensions/VideoBlock/components/VideoBlockMenu.js\";\nimport { useBlockEditor } from \"../../hooks/useBlockEditor.js\";\nimport { isRTL } from \"../../lib/utils/isRtl.js\";\nimport { openAssetHQType } from \"../../types.js\";\nimport { ContentItemMenu } from \"../menus/ContentItemMenu/ContentItemMenu.js\";\nimport { TextMenu } from \"../menus/TextMenu/TextMenu.js\";\nimport { LinkMenu } from \"../menus/index.js\";\nimport { AdditionalContextType, TiptapProps } from \"./types.js\";\n\nconst DEFAULT_LANG = \"en\"\n\nexport const BlockEditor = ({\n handleChange,\n content,\n openAssetHQHandler,\n additionalContext,\n isEditable = true,\n autoFocus = true,\n dir,\n}: TiptapProps & {\n openAssetHQHandler?: openAssetHQType;\n additionalContext?: AdditionalContextType;\n autoFocus?: boolean;\n isEditable?: boolean;\n dir?: \"ltr\" | \"rtl\" | \"auto\";\n}) => {\n const menuContainerRef = useRef(null);\n const editorRef = useRef<HTMLDivElement>(null);\n\n const { editor, users, characterCount, leftSidebar } = useBlockEditor({\n content: content,\n handleChange: handleChange,\n openAssetHQHandler: openAssetHQHandler,\n additionalContext: additionalContext,\n autoFocus,\n isEditable,\n });\n\n const displayedUsers = users.slice(0, 3);\n const providerValue = useMemo(() => {\n return {};\n }, []);\n useEffect(() => {\n if (!additionalContext) {\n i18n.init({\n fallbackLng: DEFAULT_LANG,\n lng: DEFAULT_LANG,\n returnEmptyString: true,\n resources: {},\n });\n return\n }\n\n if (additionalContext.language && additionalContext.translations) {\n i18n.init({\n fallbackLng: additionalContext.language,\n lng: additionalContext.language,\n returnEmptyString: true,\n resources: {\n [additionalContext.language]: {\n translation: additionalContext.translations,\n },\n },\n });\n return\n }\n if (additionalContext.language) {\n i18n.init({\n fallbackLng: additionalContext?.language,\n lng: additionalContext?.language,\n returnEmptyString: true,\n resources: {},\n });\n }\n }, []);\n\n return (\n editor && (\n <EditorContext.Provider value={providerValue}>\n <div\n className=\"flex h-full overflow-visible\"\n ref={menuContainerRef}\n dir={dir ?? (isRTL(editor.getText()) ? \"rtl\" : \"ltr\")}\n >\n <div className=\"relative flex flex-col flex-1 h-full justify-center items-center \">\n <EditorContent\n editor={editor}\n ref={editorRef}\n className=\"flex-1 overflow-y-visible w-full h-full outline-none outline-offset-0\"\n style={{\n outline: \"none\",\n }}\n />\n {isEditable && (\n <>\n <ContentItemMenu editor={editor} />\n <LinkMenu editor={editor} appendTo={menuContainerRef} />\n <TextMenu\n editor={editor}\n dir={dir ?? (isRTL(editor.getText()) ? \"rtl\" : \"ltr\")}\n />\n <IframeMenu editor={editor} appendTo={menuContainerRef} />\n <SocialMediaMenu editor={editor} appendTo={menuContainerRef} />\n <InsideLinksMenu editor={editor} appendTo={menuContainerRef} />\n <ColumnsMenu editor={editor} appendTo={menuContainerRef} />\n <ImageBlockMenu editor={editor} appendTo={menuContainerRef} />\n <VideoBlockMenu editor={editor} appendTo={menuContainerRef} />\n </>\n )}\n </div>\n </div>\n </EditorContext.Provider>\n )\n );\n};\n\nexport default BlockEditor;\n"],"names":["EditorContent","useEffect","useMemo","useRef","i18n","EditorContext","IframeMenu","ImageBlockMenu","InsideLinksMenu","ColumnsMenu","SocialMediaMenu","VideoBlockMenu","useBlockEditor","isRTL","ContentItemMenu","TextMenu","LinkMenu","DEFAULT_LANG","BlockEditor","handleChange","content","openAssetHQHandler","additionalContext","isEditable","autoFocus","dir","menuContainerRef","editorRef","editor","users","characterCount","leftSidebar","displayedUsers","slice","providerValue","init","fallbackLng","lng","returnEmptyString","resources","language","translations","translation","Provider","value","div","className","ref","getText","style","outline","appendTo"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../../src/fields/TiptapEditor/features/BlockEditor/BlockEditor.tsx"],"sourcesContent":["\"use client\";\nimport { EditorContent } from \"@tiptap/react\";\nimport { useEffect, useMemo, useRef } from \"react\";\nimport i18n from \"i18next\";\n\nimport { EditorContext } from \"../../context/EditorContext.js\";\nimport { IframeMenu } from \"../../extensions/Iframe/menus/index.js\";\nimport ImageBlockMenu from \"../../extensions/ImageBlock/components/ImageBlockMenu.js\";\nimport { InsideLinksMenu } from \"../../extensions/InsideLinks/menus/index.js\";\nimport { ColumnsMenu } from \"../../extensions/MultiColumn/menus/ColumnsMenu.js\";\nimport { SocialMediaMenu } from \"../../extensions/SocialMedia/menus/index.js\";\n\nimport VideoBlockMenu from \"../../extensions/VideoBlock/components/VideoBlockMenu.js\";\nimport { useBlockEditor } from \"../../hooks/useBlockEditor.js\";\nimport { openAssetHQType } from \"../../types.js\";\nimport { ContentItemMenu } from \"../menus/ContentItemMenu/ContentItemMenu.js\";\nimport { TextMenu } from \"../menus/TextMenu/TextMenu.js\";\nimport { LinkMenu } from \"../menus/index.js\";\nimport { AdditionalContextType, TiptapProps } from \"./types.js\";\nimport i18next from \"i18next\";\n\nconst DEFAULT_LANG = \"en\"\n\nexport const BlockEditor = ({\n handleChange,\n content,\n openAssetHQHandler,\n additionalContext,\n isEditable = true,\n autoFocus = true,\n dir,\n}: TiptapProps & {\n openAssetHQHandler?: openAssetHQType;\n additionalContext?: AdditionalContextType;\n autoFocus?: boolean;\n isEditable?: boolean;\n dir?: \"ltr\" | \"rtl\" | \"auto\";\n}) => {\n const menuContainerRef = useRef(null);\n const editorRef = useRef<HTMLDivElement>(null);\n\n const { editor, users, characterCount, leftSidebar } = useBlockEditor({\n content: content,\n handleChange: handleChange,\n openAssetHQHandler: openAssetHQHandler,\n additionalContext: additionalContext,\n autoFocus,\n isEditable,\n });\n\n const displayedUsers = users.slice(0, 3);\n const providerValue = useMemo(() => {\n return {};\n }, []);\n useEffect(() => {\n if (!additionalContext) {\n i18n.init({\n fallbackLng: DEFAULT_LANG,\n lng: DEFAULT_LANG,\n returnEmptyString: true,\n resources: {},\n });\n return\n }\n\n if (additionalContext.language && additionalContext.translations) {\n i18n.init({\n fallbackLng: additionalContext.language,\n lng: additionalContext.language,\n returnEmptyString: true,\n resources: {\n [additionalContext.language]: {\n translation: additionalContext.translations,\n },\n },\n });\n return\n }\n if (additionalContext.language) {\n i18n.init({\n fallbackLng: additionalContext?.language,\n lng: additionalContext?.language,\n returnEmptyString: true,\n resources: {},\n });\n }\n }, []);\n\n return (\n editor && (\n <EditorContext.Provider value={providerValue}>\n <div\n className=\"flex h-full overflow-visible\"\n ref={menuContainerRef}\n dir={i18next.dir()}\n >\n <div className=\"relative flex flex-col flex-1 h-full justify-center items-center \">\n <EditorContent\n dir={i18next.dir()}\n editor={editor}\n ref={editorRef}\n className=\"flex-1 overflow-y-visible w-full h-full outline-none outline-offset-0\"\n style={{\n outline: \"none\",\n }}\n />\n {isEditable && (\n <>\n <ContentItemMenu editor={editor} />\n <LinkMenu editor={editor} appendTo={menuContainerRef} />\n <TextMenu\n editor={editor}\n dir={i18next.dir()}\n />\n <IframeMenu editor={editor} appendTo={menuContainerRef} />\n <SocialMediaMenu editor={editor} appendTo={menuContainerRef} />\n <InsideLinksMenu editor={editor} appendTo={menuContainerRef} />\n <ColumnsMenu editor={editor} appendTo={menuContainerRef} />\n <ImageBlockMenu editor={editor} appendTo={menuContainerRef} />\n <VideoBlockMenu editor={editor} appendTo={menuContainerRef} />\n </>\n )}\n </div>\n </div>\n </EditorContext.Provider>\n )\n );\n};\n\nexport default BlockEditor;\n"],"names":["EditorContent","useEffect","useMemo","useRef","i18n","EditorContext","IframeMenu","ImageBlockMenu","InsideLinksMenu","ColumnsMenu","SocialMediaMenu","VideoBlockMenu","useBlockEditor","ContentItemMenu","TextMenu","LinkMenu","i18next","DEFAULT_LANG","BlockEditor","handleChange","content","openAssetHQHandler","additionalContext","isEditable","autoFocus","dir","menuContainerRef","editorRef","editor","users","characterCount","leftSidebar","displayedUsers","slice","providerValue","init","fallbackLng","lng","returnEmptyString","resources","language","translations","translation","Provider","value","div","className","ref","style","outline","appendTo"],"mappings":"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"}
@@ -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 = /*#__PURE__*/ memo(FontFamilyPicker);
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 || ""
@@ -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\";\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
+ {"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\";\n// import { 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);\n// const 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","FontSizePicker","useTextmenuCommands","useTextmenuContentTypes","useTextmenuStates","i18next","MemoButton","Button","MemoColorPicker","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","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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"}
@@ -16,7 +16,6 @@ export declare const useTextmenuCommands: (editor: Editor) => {
16
16
  onClearColor: () => boolean;
17
17
  onChangeHighlight: (color: string) => boolean;
18
18
  onClearHighlight: () => boolean;
19
- onSetFont: (font: string) => boolean;
20
19
  onSetFontSize: (fontSize: string) => boolean;
21
20
  onLink: (url: string, inNewTab?: boolean) => boolean;
22
21
  onCompleteSentence: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"useTextmenuCommands.d.ts","sourceRoot":"","sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuCommands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAGtC,eAAO,MAAM,mBAAmB,WAAY,MAAM;;;;;;;;;;;;;2BA4BtC,MAAM;;+BAMN,MAAM;;sBAmBP,MAAM;8BAUF,MAAM;kBApBX,MAAM,aAAa,OAAO;;;;;;;;;;;CA6FnC,CAAA"}
1
+ {"version":3,"file":"useTextmenuCommands.d.ts","sourceRoot":"","sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuCommands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAGtC,eAAO,MAAM,mBAAmB,WAAY,MAAM;;;;;;;;;;;;;2BA4BtC,MAAM;;+BAMN,MAAM;;8BA6BH,MAAM;kBApBX,MAAM,aAAa,OAAO;;;;;;;;;;;CA6FnC,CAAA"}
@@ -56,14 +56,15 @@ export const useTextmenuCommands = (editor)=>{
56
56
  }).run(), [
57
57
  editor
58
58
  ]);
59
- const onSetFont = useCallback((font)=>{
60
- if (!font || font.length === 0) {
61
- return editor.chain().focus().unsetFontFamily().run();
62
- }
63
- return editor.chain().focus().setFontFamily(font).run();
64
- }, [
65
- editor
66
- ]);
59
+ // const onSetFont = useCallback(
60
+ // (font: string) => {
61
+ // if (!font || font.length === 0) {
62
+ // return editor.chain().focus().unsetFontFamily().run()
63
+ // }
64
+ // return editor.chain().focus().setFontFamily(font).run()
65
+ // },
66
+ // [editor],
67
+ // )
67
68
  const onSetFontSize = useCallback((fontSize)=>{
68
69
  if (!fontSize || fontSize.length === 0) {
69
70
  return editor.chain().focus().unsetFontSize().run();
@@ -140,7 +141,7 @@ export const useTextmenuCommands = (editor)=>{
140
141
  onClearColor,
141
142
  onChangeHighlight,
142
143
  onClearHighlight,
143
- onSetFont,
144
+ // onSetFont,
144
145
  onSetFontSize,
145
146
  onLink,
146
147
  onCompleteSentence,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuCommands.ts"],"sourcesContent":["import { Editor } from '@tiptap/react'\nimport { useCallback } from 'react'\n\nexport const useTextmenuCommands = (editor: Editor) => {\n const onBold = useCallback(() => editor.chain().focus().toggleBold().run(), [editor])\n const onItalic = useCallback(() => editor.chain().focus().toggleItalic().run(), [editor])\n const onStrike = useCallback(() => editor.chain().focus().toggleStrike().run(), [editor])\n const onUnderline = useCallback(() => editor.chain().focus().toggleUnderline().run(), [editor])\n const onCode = useCallback(() => editor.chain().focus().toggleCode().run(), [editor])\n const onCodeBlock = useCallback(() => editor.chain().focus().toggleCodeBlock().run(), [editor])\n\n const onSubscript = useCallback(() => editor.chain().focus().toggleSubscript().run(), [editor])\n const onSuperscript = useCallback(\n () => editor.chain().focus().toggleSuperscript().run(),\n [editor],\n )\n const onAlignLeft = useCallback(() => editor.chain().focus().setTextAlign('left').run(), [editor])\n const onAlignCenter = useCallback(\n () => editor.chain().focus().setTextAlign('center').run(),\n [editor],\n )\n const onAlignRight = useCallback(\n () => editor.chain().focus().setTextAlign('right').run(),\n [editor],\n )\n const onAlignJustify = useCallback(\n () => editor.chain().focus().setTextAlign('justify').run(),\n [editor],\n )\n\n const onChangeColor = useCallback(\n (color: string) => editor.chain().setColor(color).run(),\n [editor],\n )\n const onClearColor = useCallback(() => editor.chain().focus().unsetColor().run(), [editor])\n\n const onChangeHighlight = useCallback(\n (color: string) => editor.chain().setHighlight({ color }).run(),\n [editor],\n )\n const onClearHighlight = useCallback(\n () => editor.chain().focus().unsetHighlight().run(),\n [editor],\n )\n\n const onLink = useCallback(\n (url: string, inNewTab?: boolean) =>\n editor\n .chain()\n .focus()\n .setLink({ href: url, target: inNewTab ? '_blank' : '' })\n .run(),\n [editor],\n )\n\n const onSetFont = useCallback(\n (font: string) => {\n if (!font || font.length === 0) {\n return editor.chain().focus().unsetFontFamily().run()\n }\n return editor.chain().focus().setFontFamily(font).run()\n },\n [editor],\n )\n\n const onSetFontSize = useCallback(\n (fontSize: string) => {\n if (!fontSize || fontSize.length === 0) {\n return editor.chain().focus().unsetFontSize().run()\n }\n return editor.chain().focus().setFontSize(fontSize).run()\n },\n [editor],\n )\n\n // AI Commands\n const onCompleteSentence = useCallback(() => {\n // TODO\n }, [editor])\n const onEmojify = useCallback(() => {\n // TODO\n }, [editor])\n const onFixSpelling = useCallback(() => {\n // TODO\n }, [editor])\n const onMakeLonger = useCallback(() => {\n // TODO\n }, [editor])\n const onMakeShorter = useCallback(() => {\n // TODO\n }, [editor])\n const onSimplify = useCallback(() => {\n // TODO\n }, [editor])\n const onTldr = useCallback(() => {\n // TODO\n }, [editor])\n const onTone = useCallback(() => {\n // TODO\n }, [editor])\n const onTranslate = useCallback(() => {\n // TODO\n }, [editor])\n\n const onClearFormatting = useCallback(() => {\n editor.chain().focus().clearNodes().unsetAllMarks().run()\n }, [editor])\n\n return {\n onBold,\n onItalic,\n onStrike,\n onUnderline,\n onCode,\n onCodeBlock,\n onSubscript,\n onSuperscript,\n onAlignLeft,\n onAlignCenter,\n onAlignRight,\n onAlignJustify,\n onChangeColor,\n onClearColor,\n onChangeHighlight,\n onClearHighlight,\n onSetFont,\n onSetFontSize,\n onLink,\n onCompleteSentence,\n onEmojify,\n onFixSpelling,\n onMakeLonger,\n onMakeShorter,\n onSimplify,\n onTldr,\n onTone,\n onTranslate,\n onClearFormatting,\n }\n}\n"],"names":["useCallback","useTextmenuCommands","editor","onBold","chain","focus","toggleBold","run","onItalic","toggleItalic","onStrike","toggleStrike","onUnderline","toggleUnderline","onCode","toggleCode","onCodeBlock","toggleCodeBlock","onSubscript","toggleSubscript","onSuperscript","toggleSuperscript","onAlignLeft","setTextAlign","onAlignCenter","onAlignRight","onAlignJustify","onChangeColor","color","setColor","onClearColor","unsetColor","onChangeHighlight","setHighlight","onClearHighlight","unsetHighlight","onLink","url","inNewTab","setLink","href","target","onSetFont","font","length","unsetFontFamily","setFontFamily","onSetFontSize","fontSize","unsetFontSize","setFontSize","onCompleteSentence","onEmojify","onFixSpelling","onMakeLonger","onMakeShorter","onSimplify","onTldr","onTone","onTranslate","onClearFormatting","clearNodes","unsetAllMarks"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../../../../src/fields/TiptapEditor/features/menus/TextMenu/hooks/useTextmenuCommands.ts"],"sourcesContent":["import { Editor } from '@tiptap/react'\nimport { useCallback } from 'react'\n\nexport const useTextmenuCommands = (editor: Editor) => {\n const onBold = useCallback(() => editor.chain().focus().toggleBold().run(), [editor])\n const onItalic = useCallback(() => editor.chain().focus().toggleItalic().run(), [editor])\n const onStrike = useCallback(() => editor.chain().focus().toggleStrike().run(), [editor])\n const onUnderline = useCallback(() => editor.chain().focus().toggleUnderline().run(), [editor])\n const onCode = useCallback(() => editor.chain().focus().toggleCode().run(), [editor])\n const onCodeBlock = useCallback(() => editor.chain().focus().toggleCodeBlock().run(), [editor])\n\n const onSubscript = useCallback(() => editor.chain().focus().toggleSubscript().run(), [editor])\n const onSuperscript = useCallback(\n () => editor.chain().focus().toggleSuperscript().run(),\n [editor],\n )\n const onAlignLeft = useCallback(() => editor.chain().focus().setTextAlign('left').run(), [editor])\n const onAlignCenter = useCallback(\n () => editor.chain().focus().setTextAlign('center').run(),\n [editor],\n )\n const onAlignRight = useCallback(\n () => editor.chain().focus().setTextAlign('right').run(),\n [editor],\n )\n const onAlignJustify = useCallback(\n () => editor.chain().focus().setTextAlign('justify').run(),\n [editor],\n )\n\n const onChangeColor = useCallback(\n (color: string) => editor.chain().setColor(color).run(),\n [editor],\n )\n const onClearColor = useCallback(() => editor.chain().focus().unsetColor().run(), [editor])\n\n const onChangeHighlight = useCallback(\n (color: string) => editor.chain().setHighlight({ color }).run(),\n [editor],\n )\n const onClearHighlight = useCallback(\n () => editor.chain().focus().unsetHighlight().run(),\n [editor],\n )\n\n const onLink = useCallback(\n (url: string, inNewTab?: boolean) =>\n editor\n .chain()\n .focus()\n .setLink({ href: url, target: inNewTab ? '_blank' : '' })\n .run(),\n [editor],\n )\n\n // const onSetFont = useCallback(\n // (font: string) => {\n // if (!font || font.length === 0) {\n // return editor.chain().focus().unsetFontFamily().run()\n // }\n // return editor.chain().focus().setFontFamily(font).run()\n // },\n // [editor],\n // )\n\n const onSetFontSize = useCallback(\n (fontSize: string) => {\n if (!fontSize || fontSize.length === 0) {\n return editor.chain().focus().unsetFontSize().run()\n }\n return editor.chain().focus().setFontSize(fontSize).run()\n },\n [editor],\n )\n\n // AI Commands\n const onCompleteSentence = useCallback(() => {\n // TODO\n }, [editor])\n const onEmojify = useCallback(() => {\n // TODO\n }, [editor])\n const onFixSpelling = useCallback(() => {\n // TODO\n }, [editor])\n const onMakeLonger = useCallback(() => {\n // TODO\n }, [editor])\n const onMakeShorter = useCallback(() => {\n // TODO\n }, [editor])\n const onSimplify = useCallback(() => {\n // TODO\n }, [editor])\n const onTldr = useCallback(() => {\n // TODO\n }, [editor])\n const onTone = useCallback(() => {\n // TODO\n }, [editor])\n const onTranslate = useCallback(() => {\n // TODO\n }, [editor])\n\n const onClearFormatting = useCallback(() => {\n editor.chain().focus().clearNodes().unsetAllMarks().run()\n }, [editor])\n\n return {\n onBold,\n onItalic,\n onStrike,\n onUnderline,\n onCode,\n onCodeBlock,\n onSubscript,\n onSuperscript,\n onAlignLeft,\n onAlignCenter,\n onAlignRight,\n onAlignJustify,\n onChangeColor,\n onClearColor,\n onChangeHighlight,\n onClearHighlight,\n // onSetFont,\n onSetFontSize,\n onLink,\n onCompleteSentence,\n onEmojify,\n onFixSpelling,\n onMakeLonger,\n onMakeShorter,\n onSimplify,\n onTldr,\n onTone,\n onTranslate,\n onClearFormatting,\n }\n}\n"],"names":["useCallback","useTextmenuCommands","editor","onBold","chain","focus","toggleBold","run","onItalic","toggleItalic","onStrike","toggleStrike","onUnderline","toggleUnderline","onCode","toggleCode","onCodeBlock","toggleCodeBlock","onSubscript","toggleSubscript","onSuperscript","toggleSuperscript","onAlignLeft","setTextAlign","onAlignCenter","onAlignRight","onAlignJustify","onChangeColor","color","setColor","onClearColor","unsetColor","onChangeHighlight","setHighlight","onClearHighlight","unsetHighlight","onLink","url","inNewTab","setLink","href","target","onSetFontSize","fontSize","length","unsetFontSize","setFontSize","onCompleteSentence","onEmojify","onFixSpelling","onMakeLonger","onMakeShorter","onSimplify","onTldr","onTone","onTranslate","onClearFormatting","clearNodes","unsetAllMarks"],"mappings":"AACA,SAASA,WAAW,QAAQ,QAAO;AAEnC,OAAO,MAAMC,sBAAsB,CAACC;IAClC,MAAMC,SAASH,YAAY,IAAME,OAAOE,KAAK,GAAGC,KAAK,GAAGC,UAAU,GAAGC,GAAG,IAAI;QAACL;KAAO;IACpF,MAAMM,WAAWR,YAAY,IAAME,OAAOE,KAAK,GAAGC,KAAK,GAAGI,YAAY,GAAGF,GAAG,IAAI;QAACL;KAAO;IACxF,MAAMQ,WAAWV,YAAY,IAAME,OAAOE,KAAK,GAAGC,KAAK,GAAGM,YAAY,GAAGJ,GAAG,IAAI;QAACL;KAAO;IACxF,MAAMU,cAAcZ,YAAY,IAAME,OAAOE,KAAK,GAAGC,KAAK,GAAGQ,eAAe,GAAGN,GAAG,IAAI;QAACL;KAAO;IAC9F,MAAMY,SAASd,YAAY,IAAME,OAAOE,KAAK,GAAGC,KAAK,GAAGU,UAAU,GAAGR,GAAG,IAAI;QAACL;KAAO;IACpF,MAAMc,cAAchB,YAAY,IAAME,OAAOE,KAAK,GAAGC,KAAK,GAAGY,eAAe,GAAGV,GAAG,IAAI;QAACL;KAAO;IAE9F,MAAMgB,cAAclB,YAAY,IAAME,OAAOE,KAAK,GAAGC,KAAK,GAAGc,eAAe,GAAGZ,GAAG,IAAI;QAACL;KAAO;IAC9F,MAAMkB,gBAAgBpB,YACpB,IAAME,OAAOE,KAAK,GAAGC,KAAK,GAAGgB,iBAAiB,GAAGd,GAAG,IACpD;QAACL;KAAO;IAEV,MAAMoB,cAActB,YAAY,IAAME,OAAOE,KAAK,GAAGC,KAAK,GAAGkB,YAAY,CAAC,QAAQhB,GAAG,IAAI;QAACL;KAAO;IACjG,MAAMsB,gBAAgBxB,YACpB,IAAME,OAAOE,KAAK,GAAGC,KAAK,GAAGkB,YAAY,CAAC,UAAUhB,GAAG,IACvD;QAACL;KAAO;IAEV,MAAMuB,eAAezB,YACnB,IAAME,OAAOE,KAAK,GAAGC,KAAK,GAAGkB,YAAY,CAAC,SAAShB,GAAG,IACtD;QAACL;KAAO;IAEV,MAAMwB,iBAAiB1B,YACrB,IAAME,OAAOE,KAAK,GAAGC,KAAK,GAAGkB,YAAY,CAAC,WAAWhB,GAAG,IACxD;QAACL;KAAO;IAGV,MAAMyB,gBAAgB3B,YACpB,CAAC4B,QAAkB1B,OAAOE,KAAK,GAAGyB,QAAQ,CAACD,OAAOrB,GAAG,IACrD;QAACL;KAAO;IAEV,MAAM4B,eAAe9B,YAAY,IAAME,OAAOE,KAAK,GAAGC,KAAK,GAAG0B,UAAU,GAAGxB,GAAG,IAAI;QAACL;KAAO;IAE1F,MAAM8B,oBAAoBhC,YACxB,CAAC4B,QAAkB1B,OAAOE,KAAK,GAAG6B,YAAY,CAAC;YAAEL;QAAM,GAAGrB,GAAG,IAC7D;QAACL;KAAO;IAEV,MAAMgC,mBAAmBlC,YACvB,IAAME,OAAOE,KAAK,GAAGC,KAAK,GAAG8B,cAAc,GAAG5B,GAAG,IACjD;QAACL;KAAO;IAGV,MAAMkC,SAASpC,YACb,CAACqC,KAAaC,WACZpC,OACGE,KAAK,GACLC,KAAK,GACLkC,OAAO,CAAC;YAAEC,MAAMH;YAAKI,QAAQH,WAAW,WAAW;QAAG,GACtD/B,GAAG,IACR;QAACL;KAAO;IAGV,iCAAiC;IACjC,wBAAwB;IACxB,wCAAwC;IACxC,8DAA8D;IAC9D,QAAQ;IACR,8DAA8D;IAC9D,OAAO;IACP,cAAc;IACd,IAAI;IAEJ,MAAMwC,gBAAgB1C,YACpB,CAAC2C;QACC,IAAI,CAACA,YAAYA,SAASC,MAAM,KAAK,GAAG;YACtC,OAAO1C,OAAOE,KAAK,GAAGC,KAAK,GAAGwC,aAAa,GAAGtC,GAAG;QACnD;QACA,OAAOL,OAAOE,KAAK,GAAGC,KAAK,GAAGyC,WAAW,CAACH,UAAUpC,GAAG;IACzD,GACA;QAACL;KAAO;IAGV,cAAc;IACd,MAAM6C,qBAAqB/C,YAAY;IACrC,OAAO;IACT,GAAG;QAACE;KAAO;IACX,MAAM8C,YAAYhD,YAAY;IAC5B,OAAO;IACT,GAAG;QAACE;KAAO;IACX,MAAM+C,gBAAgBjD,YAAY;IAChC,OAAO;IACT,GAAG;QAACE;KAAO;IACX,MAAMgD,eAAelD,YAAY;IAC/B,OAAO;IACT,GAAG;QAACE;KAAO;IACX,MAAMiD,gBAAgBnD,YAAY;IAChC,OAAO;IACT,GAAG;QAACE;KAAO;IACX,MAAMkD,aAAapD,YAAY;IAC7B,OAAO;IACT,GAAG;QAACE;KAAO;IACX,MAAMmD,SAASrD,YAAY;IACzB,OAAO;IACT,GAAG;QAACE;KAAO;IACX,MAAMoD,SAAStD,YAAY;IACzB,OAAO;IACT,GAAG;QAACE;KAAO;IACX,MAAMqD,cAAcvD,YAAY;IAC9B,OAAO;IACT,GAAG;QAACE;KAAO;IAEX,MAAMsD,oBAAoBxD,YAAY;QACpCE,OAAOE,KAAK,GAAGC,KAAK,GAAGoD,UAAU,GAAGC,aAAa,GAAGnD,GAAG;IACzD,GAAG;QAACL;KAAO;IAEX,OAAO;QACLC;QACAK;QACAE;QACAE;QACAE;QACAE;QACAE;QACAE;QACAE;QACAE;QACAC;QACAC;QACAC;QACAG;QACAE;QACAE;QACA,aAAa;QACbQ;QACAN;QACAW;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;IACF;AACF,EAAC"}