Sha256: 0c4c7d96108c747dc354570a575a45a63e0fdc3b1acc53c602dc4193a0d520bf

Contents?: true

Size: 1.43 KB

Versions: 633

Compression:

Stored size: 1.43 KB

Contents

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

const ToolbarNodes = ({editor}: any): React.ReactElement => {

// 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' : ''}`}
                icon={icon}
                key={index}
                onclick={onclick}
                text={text}
            />
        ))}
   </>
    )
}


export default ToolbarNodes

Version data entries

633 entries across 633 versions & 1 rubygems

Version Path
playbook_ui-13.19.0.pre.alpha.play1141iconkitusinglibrary2264 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.19.0.pre.alpha.PBNTR207tabledivsupport2261 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.19.0.pre.alpha.PBNTR207tabledivsupport2245 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.19.0 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.18.0.pre.alpha.thor93bargraphoptions2219 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.18.0.pre.alpha.thor93bargraphoptions2211 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.18.0.pre.alpha.play1141iconkitusinglibrary2210 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.18.0.pre.alpha.PLAY12062203 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.18.0.pre.alpha.powercentrainplaybookpt22201 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.18.0.pre.alpha.PLAY8672199 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.18.0.pre.alpha.PBNTR191AdvancedTableFinalFixes2197 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.18.0.pre.alpha.dependabotnpmandyarnreactrouterdom62212196 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.18.0.pre.alpha.dependabotnpmandyarntypescripteslintparser56202194 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.18.0.pre.alpha.PLAY12062192 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.18.0.pre.alpha.useexactnodejsversionghactions2183 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.18.0.pre.alpha.useexactnodejsversionghactions2181 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.18.0.pre.alpha.useexactnodejsversionghactions2180 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.18.0.pre.alpha.useexactnodejsversionghactions2179 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.18.0.pre.alpha.PBNTR191AdvancedTableFinalFixes2178 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx
playbook_ui-13.18.0.pre.alpha.PLAY12062177 app/pb_kits/playbook/pb_rich_text_editor/TipTap/ToolbarNodes.tsx