@mantine/tiptap 6.0.13 → 6.0.15

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.
@@ -52,9 +52,11 @@ const LinkIcon = (_a) => {
52
52
  stroke: 1.5
53
53
  }, others));
54
54
  };
55
- const defaultProps = {};
55
+ const defaultProps = {
56
+ initialExternal: false
57
+ };
56
58
  const LinkControl = React.forwardRef((props, ref) => {
57
- const _a = core.useComponentDefaultProps("RichTextEditorLinkControl", defaultProps, props), { icon, popoverProps, disableTooltips } = _a, others = __objRest(_a, ["icon", "popoverProps", "disableTooltips"]);
59
+ const _a = core.useComponentDefaultProps("RichTextEditorLinkControl", defaultProps, props), { icon, popoverProps, disableTooltips, initialExternal } = _a, others = __objRest(_a, ["icon", "popoverProps", "disableTooltips", "initialExternal"]);
58
60
  const { editor, labels, classNames, styles, unstyled, variant } = RichTextEditor_context.useRichTextEditorContext();
59
61
  const { classes } = LinkControl_styles['default'](null, {
60
62
  name: "RichTextEditor",
@@ -64,7 +66,7 @@ const LinkControl = React.forwardRef((props, ref) => {
64
66
  variant
65
67
  });
66
68
  const [url, setUrl] = hooks.useInputState("");
67
- const [external, setExternal] = React.useState(false);
69
+ const [external, setExternal] = React.useState(initialExternal);
68
70
  const [opened, { open, close }] = hooks.useDisclosure(false);
69
71
  const handleOpen = () => {
70
72
  open();
@@ -75,7 +77,7 @@ const LinkControl = React.forwardRef((props, ref) => {
75
77
  const handleClose = () => {
76
78
  close();
77
79
  setUrl("");
78
- setExternal(false);
80
+ setExternal(initialExternal);
79
81
  };
80
82
  const setLink = () => {
81
83
  handleClose();
@@ -1 +1 @@
1
- {"version":3,"file":"LinkControl.js","sources":["../../../src/controls/LinkControl/LinkControl.tsx"],"sourcesContent":["import React, { forwardRef, useState } from 'react';\nimport { IconLink, IconExternalLink } from '@tabler/icons-react';\nimport {\n Popover,\n TextInput,\n Button,\n UnstyledButton,\n Tooltip,\n PopoverProps,\n Selectors,\n useComponentDefaultProps,\n rem,\n} from '@mantine/core';\nimport { useDisclosure, useInputState, useWindowEvent } from '@mantine/hooks';\nimport { ControlBase, RichTextEditorControlBaseProps } from '../ControlBase/ControlBase';\nimport { useRichTextEditorContext } from '../../RichTextEditor.context';\nimport useStyles from './LinkControl.styles';\n\nexport type LinkControlStylesNames = Selectors<typeof useStyles>;\n\nexport interface RichTextEditorLinkControlProps extends Partial<RichTextEditorControlBaseProps> {\n /** Props added to Popover component */\n popoverProps?: Partial<PopoverProps>;\n\n /** Determines whether external link control tooltip should be disabled */\n disableTooltips?: boolean;\n}\n\nconst LinkIcon: RichTextEditorControlBaseProps['icon'] = ({ size, ...others }) => (\n <IconLink size={size} stroke={1.5} {...others} />\n);\n\nconst defaultProps: Partial<RichTextEditorLinkControlProps> = {};\n\nexport const LinkControl = forwardRef<HTMLButtonElement, RichTextEditorLinkControlProps>(\n (props, ref) => {\n const { icon, popoverProps, disableTooltips, ...others } = useComponentDefaultProps(\n 'RichTextEditorLinkControl',\n defaultProps,\n props\n );\n\n const { editor, labels, classNames, styles, unstyled, variant } = useRichTextEditorContext();\n const { classes } = useStyles(null, {\n name: 'RichTextEditor',\n classNames,\n styles,\n unstyled,\n variant,\n });\n\n const [url, setUrl] = useInputState('');\n const [external, setExternal] = useState(false);\n const [opened, { open, close }] = useDisclosure(false);\n\n const handleOpen = () => {\n open();\n const linkData = editor?.getAttributes('link');\n setUrl(linkData?.href || '');\n setExternal(linkData?.target === '_blank');\n };\n\n const handleClose = () => {\n close();\n setUrl('');\n setExternal(false);\n };\n\n const setLink = () => {\n handleClose();\n url === ''\n ? editor.chain().focus().extendMarkRange('link').unsetLink().run()\n : editor\n .chain()\n .focus()\n .extendMarkRange('link')\n .setLink({ href: url, target: external ? '_blank' : null })\n .run();\n };\n\n const handleInputKeydown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (event.key === 'Enter') {\n event.preventDefault();\n setLink();\n }\n };\n\n useWindowEvent('edit-link', handleOpen, false);\n\n return (\n <Popover\n trapFocus\n shadow=\"md\"\n withinPortal\n opened={opened}\n onClose={handleClose}\n offset={-44}\n zIndex={10000}\n unstyled={unstyled}\n {...popoverProps}\n >\n <Popover.Target>\n <ControlBase\n icon={icon || LinkIcon}\n aria-label={labels.linkControlLabel}\n title={labels.linkControlLabel}\n onClick={handleOpen}\n active={editor?.isActive('link')}\n unstyled={unstyled}\n {...others}\n ref={ref}\n />\n </Popover.Target>\n\n <Popover.Dropdown\n sx={(theme) => ({\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[7] : theme.white,\n })}\n >\n <div className={classes.linkEditor}>\n <TextInput\n placeholder={labels.linkEditorInputPlaceholder}\n aria-label={labels.linkEditorInputLabel}\n type=\"url\"\n value={url}\n onChange={setUrl}\n classNames={{ input: classes.linkEditorInput }}\n onKeyDown={handleInputKeydown}\n unstyled={unstyled}\n rightSection={\n <Tooltip\n label={external ? labels.linkEditorExternalLink : labels.linkEditorInternalLink}\n events={{ hover: true, focus: true, touch: true }}\n withinPortal\n withArrow\n disabled={disableTooltips}\n unstyled={unstyled}\n zIndex={10000}\n >\n <UnstyledButton\n onClick={() => setExternal((e) => !e)}\n data-active={external || undefined}\n className={classes.linkEditorExternalControl}\n unstyled={unstyled}\n >\n <IconExternalLink size={rem(14)} stroke={1.5} />\n </UnstyledButton>\n </Tooltip>\n }\n />\n\n <Button\n variant=\"default\"\n onClick={setLink}\n className={classes.linkEditorSave}\n unstyled={unstyled}\n >\n {labels.linkEditorSave}\n </Button>\n </div>\n </Popover.Dropdown>\n </Popover>\n );\n }\n);\n"],"names":["React","IconLink","forwardRef","useComponentDefaultProps","useRichTextEditorContext","useStyles","useInputState","useState","useDisclosure","useWindowEvent","Popover","ControlBase","TextInput","Tooltip","UnstyledButton","IconExternalLink","rem","Button"],"mappings":"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"}
1
+ {"version":3,"file":"LinkControl.js","sources":["../../../src/controls/LinkControl/LinkControl.tsx"],"sourcesContent":["import React, { forwardRef, useState } from 'react';\nimport { IconLink, IconExternalLink } from '@tabler/icons-react';\nimport {\n Popover,\n TextInput,\n Button,\n UnstyledButton,\n Tooltip,\n PopoverProps,\n Selectors,\n useComponentDefaultProps,\n rem,\n} from '@mantine/core';\nimport { useDisclosure, useInputState, useWindowEvent } from '@mantine/hooks';\nimport { ControlBase, RichTextEditorControlBaseProps } from '../ControlBase/ControlBase';\nimport { useRichTextEditorContext } from '../../RichTextEditor.context';\nimport useStyles from './LinkControl.styles';\n\nexport type LinkControlStylesNames = Selectors<typeof useStyles>;\n\nexport interface RichTextEditorLinkControlProps extends Partial<RichTextEditorControlBaseProps> {\n /** Props added to Popover component */\n popoverProps?: Partial<PopoverProps>;\n\n /** Determines whether external link control tooltip should be disabled */\n disableTooltips?: boolean;\n\n /** Initial state for determining if the link should be an external link */\n initialExternal?: boolean;\n}\n\nconst LinkIcon: RichTextEditorControlBaseProps['icon'] = ({ size, ...others }) => (\n <IconLink size={size} stroke={1.5} {...others} />\n);\n\nconst defaultProps: Partial<RichTextEditorLinkControlProps> = {\n initialExternal: false,\n};\n\nexport const LinkControl = forwardRef<HTMLButtonElement, RichTextEditorLinkControlProps>(\n (props, ref) => {\n const { icon, popoverProps, disableTooltips, initialExternal, ...others } =\n useComponentDefaultProps('RichTextEditorLinkControl', defaultProps, props);\n\n const { editor, labels, classNames, styles, unstyled, variant } = useRichTextEditorContext();\n const { classes } = useStyles(null, {\n name: 'RichTextEditor',\n classNames,\n styles,\n unstyled,\n variant,\n });\n\n const [url, setUrl] = useInputState('');\n const [external, setExternal] = useState(initialExternal);\n const [opened, { open, close }] = useDisclosure(false);\n\n const handleOpen = () => {\n open();\n const linkData = editor?.getAttributes('link');\n setUrl(linkData?.href || '');\n setExternal(linkData?.target === '_blank');\n };\n\n const handleClose = () => {\n close();\n setUrl('');\n setExternal(initialExternal);\n };\n\n const setLink = () => {\n handleClose();\n url === ''\n ? editor.chain().focus().extendMarkRange('link').unsetLink().run()\n : editor\n .chain()\n .focus()\n .extendMarkRange('link')\n .setLink({ href: url, target: external ? '_blank' : null })\n .run();\n };\n\n const handleInputKeydown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (event.key === 'Enter') {\n event.preventDefault();\n setLink();\n }\n };\n\n useWindowEvent('edit-link', handleOpen, false);\n\n return (\n <Popover\n trapFocus\n shadow=\"md\"\n withinPortal\n opened={opened}\n onClose={handleClose}\n offset={-44}\n zIndex={10000}\n unstyled={unstyled}\n {...popoverProps}\n >\n <Popover.Target>\n <ControlBase\n icon={icon || LinkIcon}\n aria-label={labels.linkControlLabel}\n title={labels.linkControlLabel}\n onClick={handleOpen}\n active={editor?.isActive('link')}\n unstyled={unstyled}\n {...others}\n ref={ref}\n />\n </Popover.Target>\n\n <Popover.Dropdown\n sx={(theme) => ({\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[7] : theme.white,\n })}\n >\n <div className={classes.linkEditor}>\n <TextInput\n placeholder={labels.linkEditorInputPlaceholder}\n aria-label={labels.linkEditorInputLabel}\n type=\"url\"\n value={url}\n onChange={setUrl}\n classNames={{ input: classes.linkEditorInput }}\n onKeyDown={handleInputKeydown}\n unstyled={unstyled}\n rightSection={\n <Tooltip\n label={external ? labels.linkEditorExternalLink : labels.linkEditorInternalLink}\n events={{ hover: true, focus: true, touch: true }}\n withinPortal\n withArrow\n disabled={disableTooltips}\n unstyled={unstyled}\n zIndex={10000}\n >\n <UnstyledButton\n onClick={() => setExternal((e) => !e)}\n data-active={external || undefined}\n className={classes.linkEditorExternalControl}\n unstyled={unstyled}\n >\n <IconExternalLink size={rem(14)} stroke={1.5} />\n </UnstyledButton>\n </Tooltip>\n }\n />\n\n <Button\n variant=\"default\"\n onClick={setLink}\n className={classes.linkEditorSave}\n unstyled={unstyled}\n >\n {labels.linkEditorSave}\n </Button>\n </div>\n </Popover.Dropdown>\n </Popover>\n );\n }\n);\n"],"names":["React","IconLink","forwardRef","useComponentDefaultProps","useRichTextEditorContext","useStyles","useInputState","useState","useDisclosure","useWindowEvent","Popover","ControlBase","TextInput","Tooltip","UnstyledButton","IconExternalLink","rem","Button"],"mappings":"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"}
@@ -44,9 +44,11 @@ const LinkIcon = (_a) => {
44
44
  stroke: 1.5
45
45
  }, others));
46
46
  };
47
- const defaultProps = {};
47
+ const defaultProps = {
48
+ initialExternal: false
49
+ };
48
50
  const LinkControl = forwardRef((props, ref) => {
49
- const _a = useComponentDefaultProps("RichTextEditorLinkControl", defaultProps, props), { icon, popoverProps, disableTooltips } = _a, others = __objRest(_a, ["icon", "popoverProps", "disableTooltips"]);
51
+ const _a = useComponentDefaultProps("RichTextEditorLinkControl", defaultProps, props), { icon, popoverProps, disableTooltips, initialExternal } = _a, others = __objRest(_a, ["icon", "popoverProps", "disableTooltips", "initialExternal"]);
50
52
  const { editor, labels, classNames, styles, unstyled, variant } = useRichTextEditorContext();
51
53
  const { classes } = useStyles(null, {
52
54
  name: "RichTextEditor",
@@ -56,7 +58,7 @@ const LinkControl = forwardRef((props, ref) => {
56
58
  variant
57
59
  });
58
60
  const [url, setUrl] = useInputState("");
59
- const [external, setExternal] = useState(false);
61
+ const [external, setExternal] = useState(initialExternal);
60
62
  const [opened, { open, close }] = useDisclosure(false);
61
63
  const handleOpen = () => {
62
64
  open();
@@ -67,7 +69,7 @@ const LinkControl = forwardRef((props, ref) => {
67
69
  const handleClose = () => {
68
70
  close();
69
71
  setUrl("");
70
- setExternal(false);
72
+ setExternal(initialExternal);
71
73
  };
72
74
  const setLink = () => {
73
75
  handleClose();
@@ -1 +1 @@
1
- {"version":3,"file":"LinkControl.js","sources":["../../../src/controls/LinkControl/LinkControl.tsx"],"sourcesContent":["import React, { forwardRef, useState } from 'react';\nimport { IconLink, IconExternalLink } from '@tabler/icons-react';\nimport {\n Popover,\n TextInput,\n Button,\n UnstyledButton,\n Tooltip,\n PopoverProps,\n Selectors,\n useComponentDefaultProps,\n rem,\n} from '@mantine/core';\nimport { useDisclosure, useInputState, useWindowEvent } from '@mantine/hooks';\nimport { ControlBase, RichTextEditorControlBaseProps } from '../ControlBase/ControlBase';\nimport { useRichTextEditorContext } from '../../RichTextEditor.context';\nimport useStyles from './LinkControl.styles';\n\nexport type LinkControlStylesNames = Selectors<typeof useStyles>;\n\nexport interface RichTextEditorLinkControlProps extends Partial<RichTextEditorControlBaseProps> {\n /** Props added to Popover component */\n popoverProps?: Partial<PopoverProps>;\n\n /** Determines whether external link control tooltip should be disabled */\n disableTooltips?: boolean;\n}\n\nconst LinkIcon: RichTextEditorControlBaseProps['icon'] = ({ size, ...others }) => (\n <IconLink size={size} stroke={1.5} {...others} />\n);\n\nconst defaultProps: Partial<RichTextEditorLinkControlProps> = {};\n\nexport const LinkControl = forwardRef<HTMLButtonElement, RichTextEditorLinkControlProps>(\n (props, ref) => {\n const { icon, popoverProps, disableTooltips, ...others } = useComponentDefaultProps(\n 'RichTextEditorLinkControl',\n defaultProps,\n props\n );\n\n const { editor, labels, classNames, styles, unstyled, variant } = useRichTextEditorContext();\n const { classes } = useStyles(null, {\n name: 'RichTextEditor',\n classNames,\n styles,\n unstyled,\n variant,\n });\n\n const [url, setUrl] = useInputState('');\n const [external, setExternal] = useState(false);\n const [opened, { open, close }] = useDisclosure(false);\n\n const handleOpen = () => {\n open();\n const linkData = editor?.getAttributes('link');\n setUrl(linkData?.href || '');\n setExternal(linkData?.target === '_blank');\n };\n\n const handleClose = () => {\n close();\n setUrl('');\n setExternal(false);\n };\n\n const setLink = () => {\n handleClose();\n url === ''\n ? editor.chain().focus().extendMarkRange('link').unsetLink().run()\n : editor\n .chain()\n .focus()\n .extendMarkRange('link')\n .setLink({ href: url, target: external ? '_blank' : null })\n .run();\n };\n\n const handleInputKeydown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (event.key === 'Enter') {\n event.preventDefault();\n setLink();\n }\n };\n\n useWindowEvent('edit-link', handleOpen, false);\n\n return (\n <Popover\n trapFocus\n shadow=\"md\"\n withinPortal\n opened={opened}\n onClose={handleClose}\n offset={-44}\n zIndex={10000}\n unstyled={unstyled}\n {...popoverProps}\n >\n <Popover.Target>\n <ControlBase\n icon={icon || LinkIcon}\n aria-label={labels.linkControlLabel}\n title={labels.linkControlLabel}\n onClick={handleOpen}\n active={editor?.isActive('link')}\n unstyled={unstyled}\n {...others}\n ref={ref}\n />\n </Popover.Target>\n\n <Popover.Dropdown\n sx={(theme) => ({\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[7] : theme.white,\n })}\n >\n <div className={classes.linkEditor}>\n <TextInput\n placeholder={labels.linkEditorInputPlaceholder}\n aria-label={labels.linkEditorInputLabel}\n type=\"url\"\n value={url}\n onChange={setUrl}\n classNames={{ input: classes.linkEditorInput }}\n onKeyDown={handleInputKeydown}\n unstyled={unstyled}\n rightSection={\n <Tooltip\n label={external ? labels.linkEditorExternalLink : labels.linkEditorInternalLink}\n events={{ hover: true, focus: true, touch: true }}\n withinPortal\n withArrow\n disabled={disableTooltips}\n unstyled={unstyled}\n zIndex={10000}\n >\n <UnstyledButton\n onClick={() => setExternal((e) => !e)}\n data-active={external || undefined}\n className={classes.linkEditorExternalControl}\n unstyled={unstyled}\n >\n <IconExternalLink size={rem(14)} stroke={1.5} />\n </UnstyledButton>\n </Tooltip>\n }\n />\n\n <Button\n variant=\"default\"\n onClick={setLink}\n className={classes.linkEditorSave}\n unstyled={unstyled}\n >\n {labels.linkEditorSave}\n </Button>\n </div>\n </Popover.Dropdown>\n </Popover>\n );\n }\n);\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LinkControl.js","sources":["../../../src/controls/LinkControl/LinkControl.tsx"],"sourcesContent":["import React, { forwardRef, useState } from 'react';\nimport { IconLink, IconExternalLink } from '@tabler/icons-react';\nimport {\n Popover,\n TextInput,\n Button,\n UnstyledButton,\n Tooltip,\n PopoverProps,\n Selectors,\n useComponentDefaultProps,\n rem,\n} from '@mantine/core';\nimport { useDisclosure, useInputState, useWindowEvent } from '@mantine/hooks';\nimport { ControlBase, RichTextEditorControlBaseProps } from '../ControlBase/ControlBase';\nimport { useRichTextEditorContext } from '../../RichTextEditor.context';\nimport useStyles from './LinkControl.styles';\n\nexport type LinkControlStylesNames = Selectors<typeof useStyles>;\n\nexport interface RichTextEditorLinkControlProps extends Partial<RichTextEditorControlBaseProps> {\n /** Props added to Popover component */\n popoverProps?: Partial<PopoverProps>;\n\n /** Determines whether external link control tooltip should be disabled */\n disableTooltips?: boolean;\n\n /** Initial state for determining if the link should be an external link */\n initialExternal?: boolean;\n}\n\nconst LinkIcon: RichTextEditorControlBaseProps['icon'] = ({ size, ...others }) => (\n <IconLink size={size} stroke={1.5} {...others} />\n);\n\nconst defaultProps: Partial<RichTextEditorLinkControlProps> = {\n initialExternal: false,\n};\n\nexport const LinkControl = forwardRef<HTMLButtonElement, RichTextEditorLinkControlProps>(\n (props, ref) => {\n const { icon, popoverProps, disableTooltips, initialExternal, ...others } =\n useComponentDefaultProps('RichTextEditorLinkControl', defaultProps, props);\n\n const { editor, labels, classNames, styles, unstyled, variant } = useRichTextEditorContext();\n const { classes } = useStyles(null, {\n name: 'RichTextEditor',\n classNames,\n styles,\n unstyled,\n variant,\n });\n\n const [url, setUrl] = useInputState('');\n const [external, setExternal] = useState(initialExternal);\n const [opened, { open, close }] = useDisclosure(false);\n\n const handleOpen = () => {\n open();\n const linkData = editor?.getAttributes('link');\n setUrl(linkData?.href || '');\n setExternal(linkData?.target === '_blank');\n };\n\n const handleClose = () => {\n close();\n setUrl('');\n setExternal(initialExternal);\n };\n\n const setLink = () => {\n handleClose();\n url === ''\n ? editor.chain().focus().extendMarkRange('link').unsetLink().run()\n : editor\n .chain()\n .focus()\n .extendMarkRange('link')\n .setLink({ href: url, target: external ? '_blank' : null })\n .run();\n };\n\n const handleInputKeydown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (event.key === 'Enter') {\n event.preventDefault();\n setLink();\n }\n };\n\n useWindowEvent('edit-link', handleOpen, false);\n\n return (\n <Popover\n trapFocus\n shadow=\"md\"\n withinPortal\n opened={opened}\n onClose={handleClose}\n offset={-44}\n zIndex={10000}\n unstyled={unstyled}\n {...popoverProps}\n >\n <Popover.Target>\n <ControlBase\n icon={icon || LinkIcon}\n aria-label={labels.linkControlLabel}\n title={labels.linkControlLabel}\n onClick={handleOpen}\n active={editor?.isActive('link')}\n unstyled={unstyled}\n {...others}\n ref={ref}\n />\n </Popover.Target>\n\n <Popover.Dropdown\n sx={(theme) => ({\n backgroundColor: theme.colorScheme === 'dark' ? theme.colors.dark[7] : theme.white,\n })}\n >\n <div className={classes.linkEditor}>\n <TextInput\n placeholder={labels.linkEditorInputPlaceholder}\n aria-label={labels.linkEditorInputLabel}\n type=\"url\"\n value={url}\n onChange={setUrl}\n classNames={{ input: classes.linkEditorInput }}\n onKeyDown={handleInputKeydown}\n unstyled={unstyled}\n rightSection={\n <Tooltip\n label={external ? labels.linkEditorExternalLink : labels.linkEditorInternalLink}\n events={{ hover: true, focus: true, touch: true }}\n withinPortal\n withArrow\n disabled={disableTooltips}\n unstyled={unstyled}\n zIndex={10000}\n >\n <UnstyledButton\n onClick={() => setExternal((e) => !e)}\n data-active={external || undefined}\n className={classes.linkEditorExternalControl}\n unstyled={unstyled}\n >\n <IconExternalLink size={rem(14)} stroke={1.5} />\n </UnstyledButton>\n </Tooltip>\n }\n />\n\n <Button\n variant=\"default\"\n onClick={setLink}\n className={classes.linkEditorSave}\n unstyled={unstyled}\n >\n {labels.linkEditorSave}\n </Button>\n </div>\n </Popover.Dropdown>\n </Popover>\n );\n }\n);\n"],"names":[],"mappings":"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"}
@@ -8,6 +8,8 @@ export interface RichTextEditorLinkControlProps extends Partial<RichTextEditorCo
8
8
  popoverProps?: Partial<PopoverProps>;
9
9
  /** Determines whether external link control tooltip should be disabled */
10
10
  disableTooltips?: boolean;
11
+ /** Initial state for determining if the link should be an external link */
12
+ initialExternal?: boolean;
11
13
  }
12
14
  export declare const LinkControl: React.ForwardRefExoticComponent<RichTextEditorLinkControlProps & React.RefAttributes<HTMLButtonElement>>;
13
15
  //# sourceMappingURL=LinkControl.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LinkControl.d.ts","sourceRoot":"","sources":["../../../src/controls/LinkControl/LinkControl.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAEpD,OAAO,EAML,YAAY,EACZ,SAAS,EAGV,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAe,8BAA8B,EAAE,MAAM,4BAA4B,CAAC;AAEzF,OAAO,SAAS,MAAM,sBAAsB,CAAC;AAE7C,MAAM,MAAM,sBAAsB,GAAG,SAAS,CAAC,OAAO,SAAS,CAAC,CAAC;AAEjE,MAAM,WAAW,8BAA+B,SAAQ,OAAO,CAAC,8BAA8B,CAAC;IAC7F,uCAAuC;IACvC,YAAY,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAErC,0EAA0E;IAC1E,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAQD,eAAO,MAAM,WAAW,0GAkIvB,CAAC"}
1
+ {"version":3,"file":"LinkControl.d.ts","sourceRoot":"","sources":["../../../src/controls/LinkControl/LinkControl.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAEpD,OAAO,EAML,YAAY,EACZ,SAAS,EAGV,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAe,8BAA8B,EAAE,MAAM,4BAA4B,CAAC;AAEzF,OAAO,SAAS,MAAM,sBAAsB,CAAC;AAE7C,MAAM,MAAM,sBAAsB,GAAG,SAAS,CAAC,OAAO,SAAS,CAAC,CAAC;AAEjE,MAAM,WAAW,8BAA+B,SAAQ,OAAO,CAAC,8BAA8B,CAAC;IAC7F,uCAAuC;IACvC,YAAY,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAErC,0EAA0E;IAC1E,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B,2EAA2E;IAC3E,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAUD,eAAO,MAAM,WAAW,0GA+HvB,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mantine/tiptap",
3
3
  "description": "Rich text editor based on tiptap",
4
- "version": "6.0.13",
4
+ "version": "6.0.15",
5
5
  "main": "cjs/index.js",
6
6
  "module": "esm/index.js",
7
7
  "types": "lib/index.d.ts",
@@ -28,15 +28,15 @@
28
28
  "rich-text-editor"
29
29
  ],
30
30
  "peerDependencies": {
31
- "@mantine/core": "6.0.13",
32
- "@mantine/hooks": "6.0.13",
31
+ "@mantine/core": "6.0.15",
32
+ "@mantine/hooks": "6.0.15",
33
33
  "@tabler/icons-react": ">=2.1.0",
34
34
  "@tiptap/extension-link": "^2.0.0-beta.202",
35
35
  "@tiptap/react": "^2.0.0-beta.202",
36
36
  "react": ">=16.8.0"
37
37
  },
38
38
  "dependencies": {
39
- "@mantine/utils": "6.0.13"
39
+ "@mantine/utils": "6.0.15"
40
40
  },
41
41
  "devDependencies": {}
42
42
  }