Sha256: 74cf6e17036675ca9630c8059de0badd26d6c592313e75f6dd4a030e25d47a3d

Contents?: true

Size: 1.39 KB

Versions: 258

Compression:

Stored size: 1.39 KB

Contents

import React, {useCallback} from "react";
import EditorButton from "./EditorButton";
import { ToolbarTypes } from "./EditorTypes";

const ToolbarNodes = ({editor}:any) => {

// eslint-disable-next-line react-hooks/rules-of-hooks
const setLink = useCallback(() => {
  const previousUrl = editor.getAttributes("link").href;
  const url = window.prompt("URL", previousUrl);

  // cancelled
  if (url === null) {
    return;
  }

  // empty
  if (url === "") {
    editor.chain().focus().extendMarkRange("link").unsetLink().run();

    return;
  }

  // update link
  editor.chain().focus().extendMarkRange("link").setLink({ href: url }).run();
}, [editor]);

const toolbarNodesItems = [
        {
          onclick: () => editor.chain().focus().toggleCodeBlock().run(),
          icon: "code",
          isActive: editor.isActive("codeBlock"),
          text: "Codeblock",
        },
        {
          onclick: setLink,
          icon: "link",
          isActive: editor.isActive("link"),
          text: "Link",
        },
      ];

return (
    <>
        {toolbarNodesItems.map(({ onclick, icon, text, isActive }:ToolbarTypes, index:number) => (
            <EditorButton
            classname={`toolbar_button ${isActive ? 'is-active' : ''}`}
            onclick={onclick}
            icon={icon}
            key={index}
            text={text}
            />
        ))}
   </>
    )
}


export default ToolbarNodes

Version data entries

258 entries across 258 versions & 1 rubygems

Version Path
playbook_ui-13.15.0.pre.alpha.play10841940 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.15.0.pre.alpha.1132globalpropdatepickerspacing1929 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.15.0.pre.alpha.PLAY11311893 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.15.0.pre.alpha.reactselectbump581876 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.15.0.pre.alpha.PLAY10831873 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.14.0.pre.alpha.play1101betaicons1825 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.14.0.pre.alpha.play1101betaicons1798 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.14.0.pre.alpha.play1120lintdatepicker1797 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.15.0 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.14.0.pre.alpha.PLAY1109bugdisplaypropblocksfontcolor1784 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.14.0.pre.alpha.play1106filter1751 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.14.0.pre.alpha.play1106filter1748 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.14.0 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.13.0.pre.alpha.PLAY1097linterenhancedelement1728 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.13.0.pre.alpha.play10821727 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.13.0.pre.alpha.play10821726 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.13.0.pre.alpha.play10221678 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.13.0.pre.alpha.PLAY1090csstokens1675 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.13.0.pre.alpha.play900startratingasinput1657 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.13.0 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx