@mantine/tiptap 9.0.0-alpha.5 → 9.0.0-alpha.6

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 (74) hide show
  1. package/cjs/RichTextEditor.cjs +99 -112
  2. package/cjs/RichTextEditor.cjs.map +1 -1
  3. package/cjs/RichTextEditor.context.cjs +7 -8
  4. package/cjs/RichTextEditor.context.cjs.map +1 -1
  5. package/cjs/RichTextEditor.module.cjs +21 -0
  6. package/cjs/RichTextEditor.module.cjs.map +1 -0
  7. package/cjs/RichTextEditorContent/RichTextEditorContent.cjs +44 -43
  8. package/cjs/RichTextEditorContent/RichTextEditorContent.cjs.map +1 -1
  9. package/cjs/RichTextEditorControl/RichTextEditorColorControl.cjs +26 -26
  10. package/cjs/RichTextEditorControl/RichTextEditorColorControl.cjs.map +1 -1
  11. package/cjs/RichTextEditorControl/RichTextEditorColorPickerControl.cjs +127 -129
  12. package/cjs/RichTextEditorControl/RichTextEditorColorPickerControl.cjs.map +1 -1
  13. package/cjs/RichTextEditorControl/RichTextEditorControl.cjs +60 -82
  14. package/cjs/RichTextEditorControl/RichTextEditorControl.cjs.map +1 -1
  15. package/cjs/RichTextEditorControl/RichTextEditorLinkControl.cjs +120 -132
  16. package/cjs/RichTextEditorControl/RichTextEditorLinkControl.cjs.map +1 -1
  17. package/cjs/RichTextEditorControl/RichTextEditorSourceCodeControl.cjs +34 -37
  18. package/cjs/RichTextEditorControl/RichTextEditorSourceCodeControl.cjs.map +1 -1
  19. package/cjs/RichTextEditorControl/controls.cjs +240 -186
  20. package/cjs/RichTextEditorControl/controls.cjs.map +1 -1
  21. package/cjs/RichTextEditorControlsGroup/RichTextEditorControlsGroup.cjs +24 -23
  22. package/cjs/RichTextEditorControlsGroup/RichTextEditorControlsGroup.cjs.map +1 -1
  23. package/cjs/RichTextEditorToolbar/RichTextEditorToolbar.cjs +26 -36
  24. package/cjs/RichTextEditorToolbar/RichTextEditorToolbar.cjs.map +1 -1
  25. package/cjs/_virtual/_rolldown/runtime.cjs +24 -0
  26. package/cjs/extensions/Link.cjs +12 -19
  27. package/cjs/extensions/Link.cjs.map +1 -1
  28. package/cjs/extensions/TaskList.cjs +16 -23
  29. package/cjs/extensions/TaskList.cjs.map +1 -1
  30. package/cjs/icons/Icons.cjs +536 -289
  31. package/cjs/icons/Icons.cjs.map +1 -1
  32. package/cjs/index.cjs +57 -62
  33. package/cjs/labels.cjs +51 -55
  34. package/cjs/labels.cjs.map +1 -1
  35. package/esm/RichTextEditor.context.mjs +6 -5
  36. package/esm/RichTextEditor.context.mjs.map +1 -1
  37. package/esm/RichTextEditor.mjs +58 -70
  38. package/esm/RichTextEditor.mjs.map +1 -1
  39. package/esm/RichTextEditor.module.mjs +21 -0
  40. package/esm/RichTextEditor.module.mjs.map +1 -0
  41. package/esm/RichTextEditorContent/RichTextEditorContent.mjs +42 -40
  42. package/esm/RichTextEditorContent/RichTextEditorContent.mjs.map +1 -1
  43. package/esm/RichTextEditorControl/RichTextEditorColorControl.mjs +25 -24
  44. package/esm/RichTextEditorControl/RichTextEditorColorControl.mjs.map +1 -1
  45. package/esm/RichTextEditorControl/RichTextEditorColorPickerControl.mjs +126 -127
  46. package/esm/RichTextEditorControl/RichTextEditorColorPickerControl.mjs.map +1 -1
  47. package/esm/RichTextEditorControl/RichTextEditorControl.mjs +58 -79
  48. package/esm/RichTextEditorControl/RichTextEditorControl.mjs.map +1 -1
  49. package/esm/RichTextEditorControl/RichTextEditorLinkControl.mjs +117 -128
  50. package/esm/RichTextEditorControl/RichTextEditorLinkControl.mjs.map +1 -1
  51. package/esm/RichTextEditorControl/RichTextEditorSourceCodeControl.mjs +33 -35
  52. package/esm/RichTextEditorControl/RichTextEditorSourceCodeControl.mjs.map +1 -1
  53. package/esm/RichTextEditorControl/controls.mjs +179 -124
  54. package/esm/RichTextEditorControl/controls.mjs.map +1 -1
  55. package/esm/RichTextEditorControlsGroup/RichTextEditorControlsGroup.mjs +22 -20
  56. package/esm/RichTextEditorControlsGroup/RichTextEditorControlsGroup.mjs.map +1 -1
  57. package/esm/RichTextEditorToolbar/RichTextEditorToolbar.mjs +24 -33
  58. package/esm/RichTextEditorToolbar/RichTextEditorToolbar.mjs.map +1 -1
  59. package/esm/extensions/Link.mjs +10 -13
  60. package/esm/extensions/Link.mjs.map +1 -1
  61. package/esm/extensions/TaskList.mjs +16 -21
  62. package/esm/extensions/TaskList.mjs.map +1 -1
  63. package/esm/icons/Icons.mjs +535 -286
  64. package/esm/icons/Icons.mjs.map +1 -1
  65. package/esm/index.mjs +14 -14
  66. package/esm/labels.mjs +51 -53
  67. package/esm/labels.mjs.map +1 -1
  68. package/package.json +3 -3
  69. package/cjs/RichTextEditor.module.css.cjs +0 -7
  70. package/cjs/RichTextEditor.module.css.cjs.map +0 -1
  71. package/cjs/index.cjs.map +0 -1
  72. package/esm/RichTextEditor.module.css.mjs +0 -5
  73. package/esm/RichTextEditor.module.css.mjs.map +0 -1
  74. package/esm/index.mjs.map +0 -1
@@ -1,133 +1,122 @@
1
- 'use client';
2
- import { jsxs, jsx } from 'react/jsx-runtime';
3
- import { useState } from 'react';
4
- import { factory, useProps, useResolvedStylesApi, Popover, TextInput, Tooltip, UnstyledButton, rem, Button } from '@mantine/core';
5
- import { useInputState, useDisclosure, useWindowEvent } from '@mantine/hooks';
6
- import { IconExternalLink, IconLink } from '../icons/Icons.mjs';
7
- import { useRichTextEditorContext } from '../RichTextEditor.context.mjs';
8
- import { RichTextEditorControlBase } from './RichTextEditorControl.mjs';
9
- import classes from '../RichTextEditor.module.css.mjs';
10
-
1
+ "use client";
2
+ import RichTextEditor_module_default from "../RichTextEditor.module.mjs";
3
+ import { useRichTextEditorContext } from "../RichTextEditor.context.mjs";
4
+ import { IconExternalLink, IconLink } from "../icons/Icons.mjs";
5
+ import { RichTextEditorControlBase } from "./RichTextEditorControl.mjs";
6
+ import { useState } from "react";
7
+ import { Button, Popover, TextInput, Tooltip, UnstyledButton, factory, rem, useProps, useResolvedStylesApi } from "@mantine/core";
8
+ import { jsx, jsxs } from "react/jsx-runtime";
9
+ import { useDisclosure, useInputState, useWindowEvent } from "@mantine/hooks";
10
+ //#region packages/@mantine/tiptap/src/RichTextEditorControl/RichTextEditorLinkControl.tsx
11
11
  const LinkIcon = (props) => /* @__PURE__ */ jsx(IconLink, { ...props });
12
12
  const RichTextEditorLinkControl = factory((_props) => {
13
- const props = useProps("RichTextEditorLinkControl", null, _props);
14
- const {
15
- classNames,
16
- className,
17
- style,
18
- styles,
19
- vars,
20
- icon,
21
- popoverProps,
22
- disableTooltips,
23
- initialExternal,
24
- ...others
25
- } = props;
26
- const ctx = useRichTextEditorContext();
27
- const stylesApiProps = { classNames, styles };
28
- const [url, setUrl] = useInputState("");
29
- const [external, setExternal] = useState(initialExternal);
30
- const [opened, { open, close }] = useDisclosure(false);
31
- const handleOpen = () => {
32
- open();
33
- const linkData = ctx.editor?.getAttributes("link");
34
- setUrl(linkData?.href || "");
35
- setExternal(linkData?.href ? linkData?.target === "_blank" : initialExternal);
36
- };
37
- const handleClose = () => {
38
- close();
39
- setUrl("");
40
- setExternal(initialExternal);
41
- };
42
- const setLink = () => {
43
- handleClose();
44
- url === "" ? ctx.editor?.chain().focus().extendMarkRange("link").unsetLink().run() : ctx.editor?.chain().focus().extendMarkRange("link").setLink({ href: url, target: external ? "_blank" : null }).run();
45
- };
46
- const handleInputKeydown = (event) => {
47
- if (event.key === "Enter") {
48
- event.preventDefault();
49
- setLink();
50
- }
51
- };
52
- useWindowEvent("edit-link", handleOpen, false);
53
- const { resolvedClassNames, resolvedStyles } = useResolvedStylesApi({ classNames, styles, props });
54
- return /* @__PURE__ */ jsxs(
55
- Popover,
56
- {
57
- trapFocus: true,
58
- shadow: "md",
59
- withinPortal: true,
60
- opened,
61
- onChange: (_opened) => !_opened && handleClose(),
62
- offset: -44,
63
- zIndex: 1e4,
64
- ...popoverProps,
65
- children: [
66
- /* @__PURE__ */ jsx(Popover.Target, { children: /* @__PURE__ */ jsx(
67
- RichTextEditorControlBase,
68
- {
69
- icon: icon || LinkIcon,
70
- ...others,
71
- "aria-label": ctx.labels.linkControlLabel,
72
- title: ctx.labels.linkControlLabel,
73
- onClick: handleOpen,
74
- active: ctx.editor?.isActive("link"),
75
- classNames: resolvedClassNames,
76
- styles: resolvedStyles,
77
- className,
78
- style,
79
- variant: ctx.variant
80
- }
81
- ) }),
82
- /* @__PURE__ */ jsx(Popover.Dropdown, { ...ctx.getStyles("linkEditorDropdown", stylesApiProps), children: /* @__PURE__ */ jsxs("div", { ...ctx.getStyles("linkEditor", stylesApiProps), children: [
83
- /* @__PURE__ */ jsx(
84
- TextInput,
85
- {
86
- placeholder: ctx.labels.linkEditorInputPlaceholder,
87
- "aria-label": ctx.labels.linkEditorInputLabel,
88
- type: "url",
89
- value: url,
90
- onChange: setUrl,
91
- classNames: { input: ctx.getStyles("linkEditorInput", stylesApiProps).className },
92
- onKeyDown: handleInputKeydown,
93
- rightSection: /* @__PURE__ */ jsx(
94
- Tooltip,
95
- {
96
- label: external ? ctx.labels.linkEditorExternalLink : ctx.labels.linkEditorInternalLink,
97
- events: { hover: true, focus: true, touch: true },
98
- withinPortal: true,
99
- withArrow: true,
100
- disabled: disableTooltips,
101
- zIndex: 1e4,
102
- children: /* @__PURE__ */ jsx(
103
- UnstyledButton,
104
- {
105
- onClick: () => setExternal((e) => !e),
106
- "data-active": external || void 0,
107
- ...ctx.getStyles("linkEditorExternalControl", stylesApiProps),
108
- children: /* @__PURE__ */ jsx(IconExternalLink, { style: { width: rem(14), height: rem(14) } })
109
- }
110
- )
111
- }
112
- )
113
- }
114
- ),
115
- /* @__PURE__ */ jsx(
116
- Button,
117
- {
118
- variant: "default",
119
- onClick: setLink,
120
- ...ctx.getStyles("linkEditorSave", stylesApiProps),
121
- children: ctx.labels.linkEditorSave
122
- }
123
- )
124
- ] }) })
125
- ]
126
- }
127
- );
13
+ const props = useProps("RichTextEditorLinkControl", null, _props);
14
+ const { classNames, className, style, styles, vars, icon, popoverProps, disableTooltips, initialExternal, ...others } = props;
15
+ const ctx = useRichTextEditorContext();
16
+ const stylesApiProps = {
17
+ classNames,
18
+ styles
19
+ };
20
+ const [url, setUrl] = useInputState("");
21
+ const [external, setExternal] = useState(initialExternal);
22
+ const [opened, { open, close }] = useDisclosure(false);
23
+ const handleOpen = () => {
24
+ open();
25
+ const linkData = ctx.editor?.getAttributes("link");
26
+ setUrl(linkData?.href || "");
27
+ setExternal(linkData?.href ? linkData?.target === "_blank" : initialExternal);
28
+ };
29
+ const handleClose = () => {
30
+ close();
31
+ setUrl("");
32
+ setExternal(initialExternal);
33
+ };
34
+ const setLink = () => {
35
+ handleClose();
36
+ url === "" ? ctx.editor?.chain().focus().extendMarkRange("link").unsetLink().run() : ctx.editor?.chain().focus().extendMarkRange("link").setLink({
37
+ href: url,
38
+ target: external ? "_blank" : null
39
+ }).run();
40
+ };
41
+ const handleInputKeydown = (event) => {
42
+ if (event.key === "Enter") {
43
+ event.preventDefault();
44
+ setLink();
45
+ }
46
+ };
47
+ useWindowEvent("edit-link", handleOpen, false);
48
+ const { resolvedClassNames, resolvedStyles } = useResolvedStylesApi({
49
+ classNames,
50
+ styles,
51
+ props
52
+ });
53
+ return /* @__PURE__ */ jsxs(Popover, {
54
+ trapFocus: true,
55
+ shadow: "md",
56
+ withinPortal: true,
57
+ opened,
58
+ onChange: (_opened) => !_opened && handleClose(),
59
+ offset: -44,
60
+ zIndex: 1e4,
61
+ ...popoverProps,
62
+ children: [/* @__PURE__ */ jsx(Popover.Target, { children: /* @__PURE__ */ jsx(RichTextEditorControlBase, {
63
+ icon: icon || LinkIcon,
64
+ ...others,
65
+ "aria-label": ctx.labels.linkControlLabel,
66
+ title: ctx.labels.linkControlLabel,
67
+ onClick: handleOpen,
68
+ active: ctx.editor?.isActive("link"),
69
+ classNames: resolvedClassNames,
70
+ styles: resolvedStyles,
71
+ className,
72
+ style,
73
+ variant: ctx.variant
74
+ }) }), /* @__PURE__ */ jsx(Popover.Dropdown, {
75
+ ...ctx.getStyles("linkEditorDropdown", stylesApiProps),
76
+ children: /* @__PURE__ */ jsxs("div", {
77
+ ...ctx.getStyles("linkEditor", stylesApiProps),
78
+ children: [/* @__PURE__ */ jsx(TextInput, {
79
+ placeholder: ctx.labels.linkEditorInputPlaceholder,
80
+ "aria-label": ctx.labels.linkEditorInputLabel,
81
+ type: "url",
82
+ value: url,
83
+ onChange: setUrl,
84
+ classNames: { input: ctx.getStyles("linkEditorInput", stylesApiProps).className },
85
+ onKeyDown: handleInputKeydown,
86
+ rightSection: /* @__PURE__ */ jsx(Tooltip, {
87
+ label: external ? ctx.labels.linkEditorExternalLink : ctx.labels.linkEditorInternalLink,
88
+ events: {
89
+ hover: true,
90
+ focus: true,
91
+ touch: true
92
+ },
93
+ withinPortal: true,
94
+ withArrow: true,
95
+ disabled: disableTooltips,
96
+ zIndex: 1e4,
97
+ children: /* @__PURE__ */ jsx(UnstyledButton, {
98
+ onClick: () => setExternal((e) => !e),
99
+ "data-active": external || void 0,
100
+ ...ctx.getStyles("linkEditorExternalControl", stylesApiProps),
101
+ children: /* @__PURE__ */ jsx(IconExternalLink, { style: {
102
+ width: rem(14),
103
+ height: rem(14)
104
+ } })
105
+ })
106
+ })
107
+ }), /* @__PURE__ */ jsx(Button, {
108
+ variant: "default",
109
+ onClick: setLink,
110
+ ...ctx.getStyles("linkEditorSave", stylesApiProps),
111
+ children: ctx.labels.linkEditorSave
112
+ })]
113
+ })
114
+ })]
115
+ });
128
116
  });
129
- RichTextEditorLinkControl.classes = classes;
117
+ RichTextEditorLinkControl.classes = RichTextEditor_module_default;
130
118
  RichTextEditorLinkControl.displayName = "@mantine/tiptap/RichTextEditorLinkControl";
131
-
119
+ //#endregion
132
120
  export { RichTextEditorLinkControl };
133
- //# sourceMappingURL=RichTextEditorLinkControl.mjs.map
121
+
122
+ //# sourceMappingURL=RichTextEditorLinkControl.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"RichTextEditorLinkControl.mjs","sources":["../../src/RichTextEditorControl/RichTextEditorLinkControl.tsx"],"sourcesContent":["import { useState } from 'react';\nimport {\n BoxProps,\n Button,\n CompoundStylesApiProps,\n factory,\n Factory,\n Popover,\n PopoverProps,\n rem,\n TextInput,\n Tooltip,\n UnstyledButton,\n useProps,\n useResolvedStylesApi,\n} from '@mantine/core';\nimport { useDisclosure, useInputState, useWindowEvent } from '@mantine/hooks';\nimport { IconExternalLink, IconLink } from '../icons/Icons';\nimport { useRichTextEditorContext } from '../RichTextEditor.context';\nimport { RichTextEditorControlBase, RichTextEditorControlBaseProps } from './RichTextEditorControl';\nimport classes from '../RichTextEditor.module.css';\n\nexport type RichTextEditorLinkControlStylesNames =\n | 'control'\n | 'linkEditor'\n | 'linkEditorDropdown'\n | 'linkEditorSave'\n | 'linkEditorInput'\n | 'linkEditorExternalControl';\n\nexport interface RichTextEditorLinkControlProps\n extends\n BoxProps,\n Omit<RichTextEditorControlBaseProps, 'classNames' | 'styles' | 'vars'>,\n CompoundStylesApiProps<RichTextEditorLinkControlFactory> {\n /** Props passed down to Popover component */\n popoverProps?: Partial<PopoverProps>;\n\n /** Determines whether external link control tooltip should be disabled @default false */\n disableTooltips?: boolean;\n\n /** Initial state for determining whether the link should be an external @default false */\n initialExternal?: boolean;\n}\n\nexport type RichTextEditorLinkControlFactory = Factory<{\n props: RichTextEditorLinkControlProps;\n ref: HTMLButtonElement;\n stylesNames: RichTextEditorLinkControlStylesNames;\n compound: true;\n}>;\n\nconst LinkIcon: RichTextEditorControlBaseProps['icon'] = (props) => <IconLink {...props} />;\n\nexport const RichTextEditorLinkControl = factory<RichTextEditorLinkControlFactory>((_props) => {\n const props = useProps('RichTextEditorLinkControl', null, _props);\n const {\n classNames,\n className,\n style,\n styles,\n vars,\n icon,\n popoverProps,\n disableTooltips,\n initialExternal,\n ...others\n } = props;\n\n const ctx = useRichTextEditorContext();\n\n const stylesApiProps = { classNames, styles };\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 = ctx.editor?.getAttributes('link');\n setUrl(linkData?.href || '');\n setExternal(linkData?.href ? linkData?.target === '_blank' : initialExternal);\n };\n\n const handleClose = () => {\n close();\n setUrl('');\n setExternal(initialExternal);\n };\n\n const setLink = () => {\n handleClose();\n url === ''\n ? ctx.editor?.chain().focus().extendMarkRange('link').unsetLink().run()\n : ctx.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 const { resolvedClassNames, resolvedStyles } =\n useResolvedStylesApi<RichTextEditorLinkControlFactory>({ classNames, styles, props });\n\n return (\n <Popover\n trapFocus\n shadow=\"md\"\n withinPortal\n opened={opened}\n onChange={(_opened) => !_opened && handleClose()}\n offset={-44}\n zIndex={10000}\n {...popoverProps}\n >\n <Popover.Target>\n <RichTextEditorControlBase\n icon={icon || LinkIcon}\n {...others}\n aria-label={ctx.labels.linkControlLabel}\n title={ctx.labels.linkControlLabel}\n onClick={handleOpen}\n active={ctx.editor?.isActive('link')}\n classNames={resolvedClassNames}\n styles={resolvedStyles}\n className={className}\n style={style}\n variant={ctx.variant}\n />\n </Popover.Target>\n\n <Popover.Dropdown {...ctx.getStyles('linkEditorDropdown', stylesApiProps)}>\n <div {...ctx.getStyles('linkEditor', stylesApiProps)}>\n <TextInput\n placeholder={ctx.labels.linkEditorInputPlaceholder}\n aria-label={ctx.labels.linkEditorInputLabel}\n type=\"url\"\n value={url}\n onChange={setUrl}\n classNames={{ input: ctx.getStyles('linkEditorInput', stylesApiProps).className }}\n onKeyDown={handleInputKeydown}\n rightSection={\n <Tooltip\n label={\n external ? ctx.labels.linkEditorExternalLink : ctx.labels.linkEditorInternalLink\n }\n events={{ hover: true, focus: true, touch: true }}\n withinPortal\n withArrow\n disabled={disableTooltips}\n zIndex={10000}\n >\n <UnstyledButton\n onClick={() => setExternal((e) => !e)}\n data-active={external || undefined}\n {...ctx.getStyles('linkEditorExternalControl', stylesApiProps)}\n >\n <IconExternalLink style={{ width: rem(14), height: rem(14) }} />\n </UnstyledButton>\n </Tooltip>\n }\n />\n\n <Button\n variant=\"default\"\n onClick={setLink}\n {...ctx.getStyles('linkEditorSave', stylesApiProps)}\n >\n {ctx.labels.linkEditorSave}\n </Button>\n </div>\n </Popover.Dropdown>\n </Popover>\n );\n});\n\nRichTextEditorLinkControl.classes = classes;\nRichTextEditorLinkControl.displayName = '@mantine/tiptap/RichTextEditorLinkControl';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RichTextEditorLinkControl.mjs","names":["classes"],"sources":["../../src/RichTextEditorControl/RichTextEditorLinkControl.tsx"],"sourcesContent":["import { useState } from 'react';\nimport {\n BoxProps,\n Button,\n CompoundStylesApiProps,\n factory,\n Factory,\n Popover,\n PopoverProps,\n rem,\n TextInput,\n Tooltip,\n UnstyledButton,\n useProps,\n useResolvedStylesApi,\n} from '@mantine/core';\nimport { useDisclosure, useInputState, useWindowEvent } from '@mantine/hooks';\nimport { IconExternalLink, IconLink } from '../icons/Icons';\nimport { useRichTextEditorContext } from '../RichTextEditor.context';\nimport { RichTextEditorControlBase, RichTextEditorControlBaseProps } from './RichTextEditorControl';\nimport classes from '../RichTextEditor.module.css';\n\nexport type RichTextEditorLinkControlStylesNames =\n | 'control'\n | 'linkEditor'\n | 'linkEditorDropdown'\n | 'linkEditorSave'\n | 'linkEditorInput'\n | 'linkEditorExternalControl';\n\nexport interface RichTextEditorLinkControlProps\n extends\n BoxProps,\n Omit<RichTextEditorControlBaseProps, 'classNames' | 'styles' | 'vars'>,\n CompoundStylesApiProps<RichTextEditorLinkControlFactory> {\n /** Props passed down to Popover component */\n popoverProps?: Partial<PopoverProps>;\n\n /** Determines whether external link control tooltip should be disabled @default false */\n disableTooltips?: boolean;\n\n /** Initial state for determining whether the link should be an external @default false */\n initialExternal?: boolean;\n}\n\nexport type RichTextEditorLinkControlFactory = Factory<{\n props: RichTextEditorLinkControlProps;\n ref: HTMLButtonElement;\n stylesNames: RichTextEditorLinkControlStylesNames;\n compound: true;\n}>;\n\nconst LinkIcon: RichTextEditorControlBaseProps['icon'] = (props) => <IconLink {...props} />;\n\nexport const RichTextEditorLinkControl = factory<RichTextEditorLinkControlFactory>((_props) => {\n const props = useProps('RichTextEditorLinkControl', null, _props);\n const {\n classNames,\n className,\n style,\n styles,\n vars,\n icon,\n popoverProps,\n disableTooltips,\n initialExternal,\n ...others\n } = props;\n\n const ctx = useRichTextEditorContext();\n\n const stylesApiProps = { classNames, styles };\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 = ctx.editor?.getAttributes('link');\n setUrl(linkData?.href || '');\n setExternal(linkData?.href ? linkData?.target === '_blank' : initialExternal);\n };\n\n const handleClose = () => {\n close();\n setUrl('');\n setExternal(initialExternal);\n };\n\n const setLink = () => {\n handleClose();\n url === ''\n ? ctx.editor?.chain().focus().extendMarkRange('link').unsetLink().run()\n : ctx.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 const { resolvedClassNames, resolvedStyles } =\n useResolvedStylesApi<RichTextEditorLinkControlFactory>({ classNames, styles, props });\n\n return (\n <Popover\n trapFocus\n shadow=\"md\"\n withinPortal\n opened={opened}\n onChange={(_opened) => !_opened && handleClose()}\n offset={-44}\n zIndex={10000}\n {...popoverProps}\n >\n <Popover.Target>\n <RichTextEditorControlBase\n icon={icon || LinkIcon}\n {...others}\n aria-label={ctx.labels.linkControlLabel}\n title={ctx.labels.linkControlLabel}\n onClick={handleOpen}\n active={ctx.editor?.isActive('link')}\n classNames={resolvedClassNames}\n styles={resolvedStyles}\n className={className}\n style={style}\n variant={ctx.variant}\n />\n </Popover.Target>\n\n <Popover.Dropdown {...ctx.getStyles('linkEditorDropdown', stylesApiProps)}>\n <div {...ctx.getStyles('linkEditor', stylesApiProps)}>\n <TextInput\n placeholder={ctx.labels.linkEditorInputPlaceholder}\n aria-label={ctx.labels.linkEditorInputLabel}\n type=\"url\"\n value={url}\n onChange={setUrl}\n classNames={{ input: ctx.getStyles('linkEditorInput', stylesApiProps).className }}\n onKeyDown={handleInputKeydown}\n rightSection={\n <Tooltip\n label={\n external ? ctx.labels.linkEditorExternalLink : ctx.labels.linkEditorInternalLink\n }\n events={{ hover: true, focus: true, touch: true }}\n withinPortal\n withArrow\n disabled={disableTooltips}\n zIndex={10000}\n >\n <UnstyledButton\n onClick={() => setExternal((e) => !e)}\n data-active={external || undefined}\n {...ctx.getStyles('linkEditorExternalControl', stylesApiProps)}\n >\n <IconExternalLink style={{ width: rem(14), height: rem(14) }} />\n </UnstyledButton>\n </Tooltip>\n }\n />\n\n <Button\n variant=\"default\"\n onClick={setLink}\n {...ctx.getStyles('linkEditorSave', stylesApiProps)}\n >\n {ctx.labels.linkEditorSave}\n </Button>\n </div>\n </Popover.Dropdown>\n </Popover>\n );\n});\n\nRichTextEditorLinkControl.classes = classes;\nRichTextEditorLinkControl.displayName = '@mantine/tiptap/RichTextEditorLinkControl';\n"],"mappings":"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"}
@@ -1,40 +1,38 @@
1
- 'use client';
2
- import { jsx } from 'react/jsx-runtime';
3
- import { useState } from 'react';
4
- import { useProps, rem } from '@mantine/core';
5
- import { IconBraces } from '../icons/Icons.mjs';
6
- import { useRichTextEditorContext } from '../RichTextEditor.context.mjs';
7
- import { RichTextEditorControl } from './RichTextEditorControl.mjs';
8
-
1
+ "use client";
2
+ import { useRichTextEditorContext } from "../RichTextEditor.context.mjs";
3
+ import { IconBraces } from "../icons/Icons.mjs";
4
+ import { RichTextEditorControl } from "./RichTextEditorControl.mjs";
5
+ import { useState } from "react";
6
+ import { rem, useProps } from "@mantine/core";
7
+ import { jsx } from "react/jsx-runtime";
8
+ //#region packages/@mantine/tiptap/src/RichTextEditorControl/RichTextEditorSourceCodeControl.tsx
9
9
  const defaultProps = {};
10
10
  function RichTextEditorSourceCodeControl(props) {
11
- const { ...others } = useProps("RichTextEditorSourceCodeControl", defaultProps, props);
12
- const { editor, labels, variant, onSourceCodeTextSwitch } = useRichTextEditorContext();
13
- const [isSourceCodeModeActive, setIsSourceCodeModeActive] = useState(false);
14
- const handleStateChange = () => {
15
- if (isSourceCodeModeActive) {
16
- editor?.commands.setContent(editor.getText(), { emitUpdate: true });
17
- } else {
18
- editor?.commands.setContent(`<textarea>${editor.getHTML()}</textarea>`);
19
- }
20
- const isSourceCodeModeActiveNew = !isSourceCodeModeActive;
21
- setIsSourceCodeModeActive(isSourceCodeModeActiveNew);
22
- onSourceCodeTextSwitch?.(isSourceCodeModeActiveNew);
23
- };
24
- return /* @__PURE__ */ jsx(
25
- RichTextEditorControl,
26
- {
27
- ...others,
28
- variant,
29
- active: isSourceCodeModeActive,
30
- "aria-label": labels.sourceCodeControlLabel,
31
- title: labels.sourceCodeControlLabel,
32
- onClick: () => handleStateChange(),
33
- children: /* @__PURE__ */ jsx(IconBraces, { style: { width: rem(16), height: rem(16) } })
34
- }
35
- );
11
+ const { ...others } = useProps("RichTextEditorSourceCodeControl", defaultProps, props);
12
+ const { editor, labels, variant, onSourceCodeTextSwitch } = useRichTextEditorContext();
13
+ const [isSourceCodeModeActive, setIsSourceCodeModeActive] = useState(false);
14
+ const handleStateChange = () => {
15
+ if (isSourceCodeModeActive) editor?.commands.setContent(editor.getText(), { emitUpdate: true });
16
+ else editor?.commands.setContent(`<textarea>${editor.getHTML()}</textarea>`);
17
+ const isSourceCodeModeActiveNew = !isSourceCodeModeActive;
18
+ setIsSourceCodeModeActive(isSourceCodeModeActiveNew);
19
+ onSourceCodeTextSwitch?.(isSourceCodeModeActiveNew);
20
+ };
21
+ return /* @__PURE__ */ jsx(RichTextEditorControl, {
22
+ ...others,
23
+ variant,
24
+ active: isSourceCodeModeActive,
25
+ "aria-label": labels.sourceCodeControlLabel,
26
+ title: labels.sourceCodeControlLabel,
27
+ onClick: () => handleStateChange(),
28
+ children: /* @__PURE__ */ jsx(IconBraces, { style: {
29
+ width: rem(16),
30
+ height: rem(16)
31
+ } })
32
+ });
36
33
  }
37
34
  RichTextEditorSourceCodeControl.displayName = "@mantine/tiptap/RichTextEditorSourceCodeControl";
38
-
35
+ //#endregion
39
36
  export { RichTextEditorSourceCodeControl };
40
- //# sourceMappingURL=RichTextEditorSourceCodeControl.mjs.map
37
+
38
+ //# sourceMappingURL=RichTextEditorSourceCodeControl.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"RichTextEditorSourceCodeControl.mjs","sources":["../../src/RichTextEditorControl/RichTextEditorSourceCodeControl.tsx"],"sourcesContent":["import { useState } from 'react';\nimport { BoxProps, ElementProps, rem, useProps } from '@mantine/core';\nimport { IconBraces } from '../icons/Icons';\nimport { useRichTextEditorContext } from '../RichTextEditor.context';\nimport { RichTextEditorControl } from './RichTextEditorControl';\n\nexport interface RichTextEditorSourceCodeControlProps extends BoxProps, ElementProps<'button'> {}\n\nconst defaultProps: Partial<RichTextEditorSourceCodeControlProps> = {};\n\nexport function RichTextEditorSourceCodeControl(props: RichTextEditorSourceCodeControlProps) {\n const { ...others } = useProps('RichTextEditorSourceCodeControl', defaultProps, props);\n const { editor, labels, variant, onSourceCodeTextSwitch } = useRichTextEditorContext();\n const [isSourceCodeModeActive, setIsSourceCodeModeActive] = useState(false);\n\n const handleStateChange = () => {\n if (isSourceCodeModeActive) {\n editor?.commands.setContent(editor.getText(), { emitUpdate: true });\n } else {\n editor?.commands.setContent(`<textarea>${editor.getHTML()}</textarea>`);\n }\n\n const isSourceCodeModeActiveNew = !isSourceCodeModeActive;\n\n setIsSourceCodeModeActive(isSourceCodeModeActiveNew);\n onSourceCodeTextSwitch?.(isSourceCodeModeActiveNew);\n };\n\n return (\n <RichTextEditorControl\n {...others}\n variant={variant}\n active={isSourceCodeModeActive}\n aria-label={labels.sourceCodeControlLabel}\n title={labels.sourceCodeControlLabel}\n onClick={() => handleStateChange()}\n >\n <IconBraces style={{ width: rem(16), height: rem(16) }} />\n </RichTextEditorControl>\n );\n}\n\nRichTextEditorSourceCodeControl.displayName = '@mantine/tiptap/RichTextEditorSourceCodeControl';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RichTextEditorSourceCodeControl.mjs","names":[],"sources":["../../src/RichTextEditorControl/RichTextEditorSourceCodeControl.tsx"],"sourcesContent":["import { useState } from 'react';\nimport { BoxProps, ElementProps, rem, useProps } from '@mantine/core';\nimport { IconBraces } from '../icons/Icons';\nimport { useRichTextEditorContext } from '../RichTextEditor.context';\nimport { RichTextEditorControl } from './RichTextEditorControl';\n\nexport interface RichTextEditorSourceCodeControlProps extends BoxProps, ElementProps<'button'> {}\n\nconst defaultProps: Partial<RichTextEditorSourceCodeControlProps> = {};\n\nexport function RichTextEditorSourceCodeControl(props: RichTextEditorSourceCodeControlProps) {\n const { ...others } = useProps('RichTextEditorSourceCodeControl', defaultProps, props);\n const { editor, labels, variant, onSourceCodeTextSwitch } = useRichTextEditorContext();\n const [isSourceCodeModeActive, setIsSourceCodeModeActive] = useState(false);\n\n const handleStateChange = () => {\n if (isSourceCodeModeActive) {\n editor?.commands.setContent(editor.getText(), { emitUpdate: true });\n } else {\n editor?.commands.setContent(`<textarea>${editor.getHTML()}</textarea>`);\n }\n\n const isSourceCodeModeActiveNew = !isSourceCodeModeActive;\n\n setIsSourceCodeModeActive(isSourceCodeModeActiveNew);\n onSourceCodeTextSwitch?.(isSourceCodeModeActiveNew);\n };\n\n return (\n <RichTextEditorControl\n {...others}\n variant={variant}\n active={isSourceCodeModeActive}\n aria-label={labels.sourceCodeControlLabel}\n title={labels.sourceCodeControlLabel}\n onClick={() => handleStateChange()}\n >\n <IconBraces style={{ width: rem(16), height: rem(16) }} />\n </RichTextEditorControl>\n );\n}\n\nRichTextEditorSourceCodeControl.displayName = '@mantine/tiptap/RichTextEditorSourceCodeControl';\n"],"mappings":";;;;;;;;AAQA,MAAM,eAA8D,EAAE;AAEtE,SAAgB,gCAAgC,OAA6C;CAC3F,MAAM,EAAE,GAAG,WAAW,SAAS,mCAAmC,cAAc,MAAM;CACtF,MAAM,EAAE,QAAQ,QAAQ,SAAS,2BAA2B,0BAA0B;CACtF,MAAM,CAAC,wBAAwB,6BAA6B,SAAS,MAAM;CAE3E,MAAM,0BAA0B;AAC9B,MAAI,uBACF,SAAQ,SAAS,WAAW,OAAO,SAAS,EAAE,EAAE,YAAY,MAAM,CAAC;MAEnE,SAAQ,SAAS,WAAW,aAAa,OAAO,SAAS,CAAC,aAAa;EAGzE,MAAM,4BAA4B,CAAC;AAEnC,4BAA0B,0BAA0B;AACpD,2BAAyB,0BAA0B;;AAGrD,QACE,oBAAC,uBAAD;EACE,GAAI;EACK;EACT,QAAQ;EACR,cAAY,OAAO;EACnB,OAAO,OAAO;EACd,eAAe,mBAAmB;YAElC,oBAAC,YAAD,EAAY,OAAO;GAAE,OAAO,IAAI,GAAG;GAAE,QAAQ,IAAI,GAAG;GAAE,EAAI,CAAA;EACpC,CAAA;;AAI5B,gCAAgC,cAAc"}