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

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,135 +1,123 @@
1
- 'use client';
2
- 'use strict';
3
-
4
- var jsxRuntime = require('react/jsx-runtime');
5
- var react = require('react');
6
- var core = require('@mantine/core');
7
- var hooks = require('@mantine/hooks');
8
- var Icons = require('../icons/Icons.cjs');
9
- var RichTextEditor_context = require('../RichTextEditor.context.cjs');
10
- var RichTextEditorControl = require('./RichTextEditorControl.cjs');
11
- var RichTextEditor_module = require('../RichTextEditor.module.css.cjs');
12
-
13
- const LinkIcon = (props) => /* @__PURE__ */ jsxRuntime.jsx(Icons.IconLink, { ...props });
14
- const RichTextEditorLinkControl = core.factory((_props) => {
15
- const props = core.useProps("RichTextEditorLinkControl", null, _props);
16
- const {
17
- classNames,
18
- className,
19
- style,
20
- styles,
21
- vars,
22
- icon,
23
- popoverProps,
24
- disableTooltips,
25
- initialExternal,
26
- ...others
27
- } = props;
28
- const ctx = RichTextEditor_context.useRichTextEditorContext();
29
- const stylesApiProps = { classNames, styles };
30
- const [url, setUrl] = hooks.useInputState("");
31
- const [external, setExternal] = react.useState(initialExternal);
32
- const [opened, { open, close }] = hooks.useDisclosure(false);
33
- const handleOpen = () => {
34
- open();
35
- const linkData = ctx.editor?.getAttributes("link");
36
- setUrl(linkData?.href || "");
37
- setExternal(linkData?.href ? linkData?.target === "_blank" : initialExternal);
38
- };
39
- const handleClose = () => {
40
- close();
41
- setUrl("");
42
- setExternal(initialExternal);
43
- };
44
- const setLink = () => {
45
- handleClose();
46
- url === "" ? ctx.editor?.chain().focus().extendMarkRange("link").unsetLink().run() : ctx.editor?.chain().focus().extendMarkRange("link").setLink({ href: url, target: external ? "_blank" : null }).run();
47
- };
48
- const handleInputKeydown = (event) => {
49
- if (event.key === "Enter") {
50
- event.preventDefault();
51
- setLink();
52
- }
53
- };
54
- hooks.useWindowEvent("edit-link", handleOpen, false);
55
- const { resolvedClassNames, resolvedStyles } = core.useResolvedStylesApi({ classNames, styles, props });
56
- return /* @__PURE__ */ jsxRuntime.jsxs(
57
- core.Popover,
58
- {
59
- trapFocus: true,
60
- shadow: "md",
61
- withinPortal: true,
62
- opened,
63
- onChange: (_opened) => !_opened && handleClose(),
64
- offset: -44,
65
- zIndex: 1e4,
66
- ...popoverProps,
67
- children: [
68
- /* @__PURE__ */ jsxRuntime.jsx(core.Popover.Target, { children: /* @__PURE__ */ jsxRuntime.jsx(
69
- RichTextEditorControl.RichTextEditorControlBase,
70
- {
71
- icon: icon || LinkIcon,
72
- ...others,
73
- "aria-label": ctx.labels.linkControlLabel,
74
- title: ctx.labels.linkControlLabel,
75
- onClick: handleOpen,
76
- active: ctx.editor?.isActive("link"),
77
- classNames: resolvedClassNames,
78
- styles: resolvedStyles,
79
- className,
80
- style,
81
- variant: ctx.variant
82
- }
83
- ) }),
84
- /* @__PURE__ */ jsxRuntime.jsx(core.Popover.Dropdown, { ...ctx.getStyles("linkEditorDropdown", stylesApiProps), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { ...ctx.getStyles("linkEditor", stylesApiProps), children: [
85
- /* @__PURE__ */ jsxRuntime.jsx(
86
- core.TextInput,
87
- {
88
- placeholder: ctx.labels.linkEditorInputPlaceholder,
89
- "aria-label": ctx.labels.linkEditorInputLabel,
90
- type: "url",
91
- value: url,
92
- onChange: setUrl,
93
- classNames: { input: ctx.getStyles("linkEditorInput", stylesApiProps).className },
94
- onKeyDown: handleInputKeydown,
95
- rightSection: /* @__PURE__ */ jsxRuntime.jsx(
96
- core.Tooltip,
97
- {
98
- label: external ? ctx.labels.linkEditorExternalLink : ctx.labels.linkEditorInternalLink,
99
- events: { hover: true, focus: true, touch: true },
100
- withinPortal: true,
101
- withArrow: true,
102
- disabled: disableTooltips,
103
- zIndex: 1e4,
104
- children: /* @__PURE__ */ jsxRuntime.jsx(
105
- core.UnstyledButton,
106
- {
107
- onClick: () => setExternal((e) => !e),
108
- "data-active": external || void 0,
109
- ...ctx.getStyles("linkEditorExternalControl", stylesApiProps),
110
- children: /* @__PURE__ */ jsxRuntime.jsx(Icons.IconExternalLink, { style: { width: core.rem(14), height: core.rem(14) } })
111
- }
112
- )
113
- }
114
- )
115
- }
116
- ),
117
- /* @__PURE__ */ jsxRuntime.jsx(
118
- core.Button,
119
- {
120
- variant: "default",
121
- onClick: setLink,
122
- ...ctx.getStyles("linkEditorSave", stylesApiProps),
123
- children: ctx.labels.linkEditorSave
124
- }
125
- )
126
- ] }) })
127
- ]
128
- }
129
- );
1
+ "use client";
2
+ require("../_virtual/_rolldown/runtime.cjs");
3
+ const require_RichTextEditor_module = require("../RichTextEditor.module.cjs");
4
+ const require_RichTextEditor_context = require("../RichTextEditor.context.cjs");
5
+ const require_Icons = require("../icons/Icons.cjs");
6
+ const require_RichTextEditorControl = require("./RichTextEditorControl.cjs");
7
+ let react = require("react");
8
+ let _mantine_core = require("@mantine/core");
9
+ let react_jsx_runtime = require("react/jsx-runtime");
10
+ let _mantine_hooks = require("@mantine/hooks");
11
+ //#region packages/@mantine/tiptap/src/RichTextEditorControl/RichTextEditorLinkControl.tsx
12
+ const LinkIcon = (props) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Icons.IconLink, { ...props });
13
+ const RichTextEditorLinkControl = (0, _mantine_core.factory)((_props) => {
14
+ const props = (0, _mantine_core.useProps)("RichTextEditorLinkControl", null, _props);
15
+ const { classNames, className, style, styles, vars, icon, popoverProps, disableTooltips, initialExternal, ...others } = props;
16
+ const ctx = require_RichTextEditor_context.useRichTextEditorContext();
17
+ const stylesApiProps = {
18
+ classNames,
19
+ styles
20
+ };
21
+ const [url, setUrl] = (0, _mantine_hooks.useInputState)("");
22
+ const [external, setExternal] = (0, react.useState)(initialExternal);
23
+ const [opened, { open, close }] = (0, _mantine_hooks.useDisclosure)(false);
24
+ const handleOpen = () => {
25
+ open();
26
+ const linkData = ctx.editor?.getAttributes("link");
27
+ setUrl(linkData?.href || "");
28
+ setExternal(linkData?.href ? linkData?.target === "_blank" : initialExternal);
29
+ };
30
+ const handleClose = () => {
31
+ close();
32
+ setUrl("");
33
+ setExternal(initialExternal);
34
+ };
35
+ const setLink = () => {
36
+ handleClose();
37
+ url === "" ? ctx.editor?.chain().focus().extendMarkRange("link").unsetLink().run() : ctx.editor?.chain().focus().extendMarkRange("link").setLink({
38
+ href: url,
39
+ target: external ? "_blank" : null
40
+ }).run();
41
+ };
42
+ const handleInputKeydown = (event) => {
43
+ if (event.key === "Enter") {
44
+ event.preventDefault();
45
+ setLink();
46
+ }
47
+ };
48
+ (0, _mantine_hooks.useWindowEvent)("edit-link", handleOpen, false);
49
+ const { resolvedClassNames, resolvedStyles } = (0, _mantine_core.useResolvedStylesApi)({
50
+ classNames,
51
+ styles,
52
+ props
53
+ });
54
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_mantine_core.Popover, {
55
+ trapFocus: true,
56
+ shadow: "md",
57
+ withinPortal: true,
58
+ opened,
59
+ onChange: (_opened) => !_opened && handleClose(),
60
+ offset: -44,
61
+ zIndex: 1e4,
62
+ ...popoverProps,
63
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mantine_core.Popover.Target, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_RichTextEditorControl.RichTextEditorControlBase, {
64
+ icon: icon || LinkIcon,
65
+ ...others,
66
+ "aria-label": ctx.labels.linkControlLabel,
67
+ title: ctx.labels.linkControlLabel,
68
+ onClick: handleOpen,
69
+ active: ctx.editor?.isActive("link"),
70
+ classNames: resolvedClassNames,
71
+ styles: resolvedStyles,
72
+ className,
73
+ style,
74
+ variant: ctx.variant
75
+ }) }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mantine_core.Popover.Dropdown, {
76
+ ...ctx.getStyles("linkEditorDropdown", stylesApiProps),
77
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
78
+ ...ctx.getStyles("linkEditor", stylesApiProps),
79
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mantine_core.TextInput, {
80
+ placeholder: ctx.labels.linkEditorInputPlaceholder,
81
+ "aria-label": ctx.labels.linkEditorInputLabel,
82
+ type: "url",
83
+ value: url,
84
+ onChange: setUrl,
85
+ classNames: { input: ctx.getStyles("linkEditorInput", stylesApiProps).className },
86
+ onKeyDown: handleInputKeydown,
87
+ rightSection: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mantine_core.Tooltip, {
88
+ label: external ? ctx.labels.linkEditorExternalLink : ctx.labels.linkEditorInternalLink,
89
+ events: {
90
+ hover: true,
91
+ focus: true,
92
+ touch: true
93
+ },
94
+ withinPortal: true,
95
+ withArrow: true,
96
+ disabled: disableTooltips,
97
+ zIndex: 1e4,
98
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mantine_core.UnstyledButton, {
99
+ onClick: () => setExternal((e) => !e),
100
+ "data-active": external || void 0,
101
+ ...ctx.getStyles("linkEditorExternalControl", stylesApiProps),
102
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Icons.IconExternalLink, { style: {
103
+ width: (0, _mantine_core.rem)(14),
104
+ height: (0, _mantine_core.rem)(14)
105
+ } })
106
+ })
107
+ })
108
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_mantine_core.Button, {
109
+ variant: "default",
110
+ onClick: setLink,
111
+ ...ctx.getStyles("linkEditorSave", stylesApiProps),
112
+ children: ctx.labels.linkEditorSave
113
+ })]
114
+ })
115
+ })]
116
+ });
130
117
  });
131
- RichTextEditorLinkControl.classes = RichTextEditor_module;
118
+ RichTextEditorLinkControl.classes = require_RichTextEditor_module.default;
132
119
  RichTextEditorLinkControl.displayName = "@mantine/tiptap/RichTextEditorLinkControl";
133
-
120
+ //#endregion
134
121
  exports.RichTextEditorLinkControl = RichTextEditorLinkControl;
135
- //# sourceMappingURL=RichTextEditorLinkControl.cjs.map
122
+
123
+ //# sourceMappingURL=RichTextEditorLinkControl.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"RichTextEditorLinkControl.cjs","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":["jsx","IconLink","factory","useProps","useRichTextEditorContext","useInputState","useState","useDisclosure","useWindowEvent","useResolvedStylesApi","jsxs","Popover","RichTextEditorControlBase","TextInput","Tooltip","UnstyledButton","IconExternalLink","rem","Button","classes"],"mappings":"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"}
1
+ {"version":3,"file":"RichTextEditorLinkControl.cjs","names":["IconLink","useRichTextEditorContext","Popover","RichTextEditorControlBase","TextInput","Tooltip","UnstyledButton","IconExternalLink","Button","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,42 +1,39 @@
1
- 'use client';
2
- 'use strict';
3
-
4
- var jsxRuntime = require('react/jsx-runtime');
5
- var react = require('react');
6
- var core = require('@mantine/core');
7
- var Icons = require('../icons/Icons.cjs');
8
- var RichTextEditor_context = require('../RichTextEditor.context.cjs');
9
- var RichTextEditorControl = require('./RichTextEditorControl.cjs');
10
-
1
+ "use client";
2
+ require("../_virtual/_rolldown/runtime.cjs");
3
+ const require_RichTextEditor_context = require("../RichTextEditor.context.cjs");
4
+ const require_Icons = require("../icons/Icons.cjs");
5
+ const require_RichTextEditorControl = require("./RichTextEditorControl.cjs");
6
+ let react = require("react");
7
+ let _mantine_core = require("@mantine/core");
8
+ let react_jsx_runtime = require("react/jsx-runtime");
9
+ //#region packages/@mantine/tiptap/src/RichTextEditorControl/RichTextEditorSourceCodeControl.tsx
11
10
  const defaultProps = {};
12
11
  function RichTextEditorSourceCodeControl(props) {
13
- const { ...others } = core.useProps("RichTextEditorSourceCodeControl", defaultProps, props);
14
- const { editor, labels, variant, onSourceCodeTextSwitch } = RichTextEditor_context.useRichTextEditorContext();
15
- const [isSourceCodeModeActive, setIsSourceCodeModeActive] = react.useState(false);
16
- const handleStateChange = () => {
17
- if (isSourceCodeModeActive) {
18
- editor?.commands.setContent(editor.getText(), { emitUpdate: true });
19
- } else {
20
- editor?.commands.setContent(`<textarea>${editor.getHTML()}</textarea>`);
21
- }
22
- const isSourceCodeModeActiveNew = !isSourceCodeModeActive;
23
- setIsSourceCodeModeActive(isSourceCodeModeActiveNew);
24
- onSourceCodeTextSwitch?.(isSourceCodeModeActiveNew);
25
- };
26
- return /* @__PURE__ */ jsxRuntime.jsx(
27
- RichTextEditorControl.RichTextEditorControl,
28
- {
29
- ...others,
30
- variant,
31
- active: isSourceCodeModeActive,
32
- "aria-label": labels.sourceCodeControlLabel,
33
- title: labels.sourceCodeControlLabel,
34
- onClick: () => handleStateChange(),
35
- children: /* @__PURE__ */ jsxRuntime.jsx(Icons.IconBraces, { style: { width: core.rem(16), height: core.rem(16) } })
36
- }
37
- );
12
+ const { ...others } = (0, _mantine_core.useProps)("RichTextEditorSourceCodeControl", defaultProps, props);
13
+ const { editor, labels, variant, onSourceCodeTextSwitch } = require_RichTextEditor_context.useRichTextEditorContext();
14
+ const [isSourceCodeModeActive, setIsSourceCodeModeActive] = (0, react.useState)(false);
15
+ const handleStateChange = () => {
16
+ if (isSourceCodeModeActive) editor?.commands.setContent(editor.getText(), { emitUpdate: true });
17
+ else editor?.commands.setContent(`<textarea>${editor.getHTML()}</textarea>`);
18
+ const isSourceCodeModeActiveNew = !isSourceCodeModeActive;
19
+ setIsSourceCodeModeActive(isSourceCodeModeActiveNew);
20
+ onSourceCodeTextSwitch?.(isSourceCodeModeActiveNew);
21
+ };
22
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_RichTextEditorControl.RichTextEditorControl, {
23
+ ...others,
24
+ variant,
25
+ active: isSourceCodeModeActive,
26
+ "aria-label": labels.sourceCodeControlLabel,
27
+ title: labels.sourceCodeControlLabel,
28
+ onClick: () => handleStateChange(),
29
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Icons.IconBraces, { style: {
30
+ width: (0, _mantine_core.rem)(16),
31
+ height: (0, _mantine_core.rem)(16)
32
+ } })
33
+ });
38
34
  }
39
35
  RichTextEditorSourceCodeControl.displayName = "@mantine/tiptap/RichTextEditorSourceCodeControl";
40
-
36
+ //#endregion
41
37
  exports.RichTextEditorSourceCodeControl = RichTextEditorSourceCodeControl;
42
- //# sourceMappingURL=RichTextEditorSourceCodeControl.cjs.map
38
+
39
+ //# sourceMappingURL=RichTextEditorSourceCodeControl.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"RichTextEditorSourceCodeControl.cjs","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":["useProps","useRichTextEditorContext","useState","jsx","RichTextEditorControl","IconBraces","rem"],"mappings":"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"}
1
+ {"version":3,"file":"RichTextEditorSourceCodeControl.cjs","names":["useRichTextEditorContext","RichTextEditorControl","IconBraces"],"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,YAAA,GAAA,cAAA,UAAoB,mCAAmC,cAAc,MAAM;CACtF,MAAM,EAAE,QAAQ,QAAQ,SAAS,2BAA2BA,+BAAAA,0BAA0B;CACtF,MAAM,CAAC,wBAAwB,8BAAA,GAAA,MAAA,UAAsC,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,iBAAA,GAAA,kBAAA,KAACC,8BAAAA,uBAAD;EACE,GAAI;EACK;EACT,QAAQ;EACR,cAAY,OAAO;EACnB,OAAO,OAAO;EACd,eAAe,mBAAmB;YAElC,iBAAA,GAAA,kBAAA,KAACC,cAAAA,YAAD,EAAY,OAAO;GAAE,QAAA,GAAA,cAAA,KAAW,GAAG;GAAE,SAAA,GAAA,cAAA,KAAY,GAAG;GAAE,EAAI,CAAA;EACpC,CAAA;;AAI5B,gCAAgC,cAAc"}