@mantine/tiptap 6.0.18 → 7.0.0-beta.0
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.
- package/cjs/RichTextEditor.context.js +2 -2
- package/cjs/RichTextEditor.context.js.map +1 -1
- package/cjs/RichTextEditor.js +57 -52
- package/cjs/RichTextEditor.js.map +1 -1
- package/cjs/RichTextEditor.module.css.js +8 -0
- package/cjs/RichTextEditor.module.css.js.map +1 -0
- package/cjs/RichTextEditorContent/RichTextEditorContent.js +78 -0
- package/cjs/RichTextEditorContent/RichTextEditorContent.js.map +1 -0
- package/cjs/{controls/ColorControl/ColorControl.js → RichTextEditorControl/RichTextEditorColorControl.js} +18 -19
- package/cjs/RichTextEditorControl/RichTextEditorColorControl.js.map +1 -0
- package/cjs/RichTextEditorControl/RichTextEditorColorPickerControl.js +145 -0
- package/cjs/RichTextEditorControl/RichTextEditorColorPickerControl.js.map +1 -0
- package/cjs/RichTextEditorControl/RichTextEditorControl.js +94 -0
- package/cjs/RichTextEditorControl/RichTextEditorControl.js.map +1 -0
- package/cjs/RichTextEditorControl/RichTextEditorLinkControl.js +187 -0
- package/cjs/RichTextEditorControl/RichTextEditorLinkControl.js.map +1 -0
- package/cjs/{controls → RichTextEditorControl}/controls.js +53 -105
- package/cjs/RichTextEditorControl/controls.js.map +1 -0
- package/cjs/{Toolbar/Toolbar.js → RichTextEditorControlsGroup/RichTextEditorControlsGroup.js} +19 -22
- package/cjs/RichTextEditorControlsGroup/RichTextEditorControlsGroup.js.map +1 -0
- package/cjs/{Content/Content.js → RichTextEditorToolbar/RichTextEditorToolbar.js} +21 -26
- package/cjs/RichTextEditorToolbar/RichTextEditorToolbar.js.map +1 -0
- package/cjs/index.css +326 -0
- package/cjs/index.js +40 -0
- package/cjs/index.js.map +1 -1
- package/cjs/labels.js +3 -0
- package/cjs/labels.js.map +1 -1
- package/esm/RichTextEditor.context.js +2 -2
- package/esm/RichTextEditor.context.js.map +1 -1
- package/esm/RichTextEditor.js +59 -54
- package/esm/RichTextEditor.js.map +1 -1
- package/esm/RichTextEditor.module.css.js +4 -0
- package/esm/RichTextEditor.module.css.js.map +1 -0
- package/esm/RichTextEditorContent/RichTextEditorContent.js +70 -0
- package/esm/RichTextEditorContent/RichTextEditorContent.js.map +1 -0
- package/esm/{controls/ColorControl/ColorControl.js → RichTextEditorControl/RichTextEditorColorControl.js} +19 -20
- package/esm/RichTextEditorControl/RichTextEditorColorControl.js.map +1 -0
- package/esm/RichTextEditorControl/RichTextEditorColorPickerControl.js +137 -0
- package/esm/RichTextEditorControl/RichTextEditorColorPickerControl.js.map +1 -0
- package/esm/RichTextEditorControl/RichTextEditorControl.js +84 -0
- package/esm/RichTextEditorControl/RichTextEditorControl.js.map +1 -0
- package/esm/RichTextEditorControl/RichTextEditorLinkControl.js +179 -0
- package/esm/RichTextEditorControl/RichTextEditorLinkControl.js.map +1 -0
- package/esm/{controls → RichTextEditorControl}/controls.js +27 -79
- package/esm/RichTextEditorControl/controls.js.map +1 -0
- package/esm/{Toolbar/Toolbar.js → RichTextEditorControlsGroup/RichTextEditorControlsGroup.js} +21 -24
- package/esm/RichTextEditorControlsGroup/RichTextEditorControlsGroup.js.map +1 -0
- package/esm/{Content/Content.js → RichTextEditorToolbar/RichTextEditorToolbar.js} +23 -28
- package/esm/RichTextEditorToolbar/RichTextEditorToolbar.js.map +1 -0
- package/esm/index.css +326 -0
- package/esm/index.js +8 -0
- package/esm/index.js.map +1 -1
- package/esm/labels.js +3 -0
- package/esm/labels.js.map +1 -1
- package/lib/RichTextEditor.context.d.ts +8 -10
- package/lib/RichTextEditor.context.d.ts.map +1 -1
- package/lib/RichTextEditor.d.ts +89 -50
- package/lib/RichTextEditor.d.ts.map +1 -1
- package/lib/RichTextEditorContent/RichTextEditorContent.d.ts +17 -0
- package/lib/RichTextEditorContent/RichTextEditorContent.d.ts.map +1 -0
- package/lib/RichTextEditorControl/RichTextEditorColorControl.d.ts +8 -0
- package/lib/RichTextEditorControl/RichTextEditorColorControl.d.ts.map +1 -0
- package/lib/RichTextEditorControl/RichTextEditorColorPickerControl.d.ts +12 -0
- package/lib/RichTextEditorControl/RichTextEditorColorPickerControl.d.ts.map +1 -0
- package/lib/RichTextEditorControl/RichTextEditorControl.d.ts +44 -0
- package/lib/RichTextEditorControl/RichTextEditorControl.d.ts.map +1 -0
- package/lib/RichTextEditorControl/RichTextEditorLinkControl.d.ts +24 -0
- package/lib/RichTextEditorControl/RichTextEditorLinkControl.d.ts.map +1 -0
- package/lib/RichTextEditorControl/controls.d.ts +28 -0
- package/lib/RichTextEditorControl/controls.d.ts.map +1 -0
- package/lib/RichTextEditorControl/index.d.ts +5 -0
- package/lib/RichTextEditorControl/index.d.ts.map +1 -0
- package/lib/RichTextEditorControlsGroup/RichTextEditorControlsGroup.d.ts +17 -0
- package/lib/RichTextEditorControlsGroup/RichTextEditorControlsGroup.d.ts.map +1 -0
- package/lib/RichTextEditorToolbar/RichTextEditorToolbar.d.ts +22 -0
- package/lib/RichTextEditorToolbar/RichTextEditorToolbar.d.ts.map +1 -0
- package/lib/index.d.ts +11 -7
- package/lib/index.d.ts.map +1 -1
- package/package.json +21 -14
- package/cjs/Content/Content.js.map +0 -1
- package/cjs/Content/Content.styles.js +0 -114
- package/cjs/Content/Content.styles.js.map +0 -1
- package/cjs/RichTextEditor.styles.js +0 -16
- package/cjs/RichTextEditor.styles.js.map +0 -1
- package/cjs/Toolbar/Toolbar.js.map +0 -1
- package/cjs/Toolbar/Toolbar.styles.js +0 -21
- package/cjs/Toolbar/Toolbar.styles.js.map +0 -1
- package/cjs/controls/ColorControl/ColorControl.js.map +0 -1
- package/cjs/controls/ColorPickerControl/ColorPickerControl.js +0 -158
- package/cjs/controls/ColorPickerControl/ColorPickerControl.js.map +0 -1
- package/cjs/controls/Control/Control.js +0 -70
- package/cjs/controls/Control/Control.js.map +0 -1
- package/cjs/controls/Control/Control.styles.js +0 -51
- package/cjs/controls/Control/Control.styles.js.map +0 -1
- package/cjs/controls/ControlBase/ControlBase.js +0 -52
- package/cjs/controls/ControlBase/ControlBase.js.map +0 -1
- package/cjs/controls/ControlBase/create-control.js +0 -45
- package/cjs/controls/ControlBase/create-control.js.map +0 -1
- package/cjs/controls/ControlsGroup/ControlsGroup.js +0 -60
- package/cjs/controls/ControlsGroup/ControlsGroup.js.map +0 -1
- package/cjs/controls/ControlsGroup/ControlsGroup.styles.js +0 -28
- package/cjs/controls/ControlsGroup/ControlsGroup.styles.js.map +0 -1
- package/cjs/controls/LinkControl/LinkControl.js +0 -152
- package/cjs/controls/LinkControl/LinkControl.js.map +0 -1
- package/cjs/controls/LinkControl/LinkControl.styles.js +0 -57
- package/cjs/controls/LinkControl/LinkControl.styles.js.map +0 -1
- package/cjs/controls/controls.js.map +0 -1
- package/esm/Content/Content.js.map +0 -1
- package/esm/Content/Content.styles.js +0 -110
- package/esm/Content/Content.styles.js.map +0 -1
- package/esm/RichTextEditor.styles.js +0 -12
- package/esm/RichTextEditor.styles.js.map +0 -1
- package/esm/Toolbar/Toolbar.js.map +0 -1
- package/esm/Toolbar/Toolbar.styles.js +0 -17
- package/esm/Toolbar/Toolbar.styles.js.map +0 -1
- package/esm/controls/ColorControl/ColorControl.js.map +0 -1
- package/esm/controls/ColorPickerControl/ColorPickerControl.js +0 -150
- package/esm/controls/ColorPickerControl/ColorPickerControl.js.map +0 -1
- package/esm/controls/Control/Control.js +0 -62
- package/esm/controls/Control/Control.js.map +0 -1
- package/esm/controls/Control/Control.styles.js +0 -47
- package/esm/controls/Control/Control.styles.js.map +0 -1
- package/esm/controls/ControlBase/ControlBase.js +0 -44
- package/esm/controls/ControlBase/ControlBase.js.map +0 -1
- package/esm/controls/ControlBase/create-control.js +0 -37
- package/esm/controls/ControlBase/create-control.js.map +0 -1
- package/esm/controls/ControlsGroup/ControlsGroup.js +0 -52
- package/esm/controls/ControlsGroup/ControlsGroup.js.map +0 -1
- package/esm/controls/ControlsGroup/ControlsGroup.styles.js +0 -24
- package/esm/controls/ControlsGroup/ControlsGroup.styles.js.map +0 -1
- package/esm/controls/LinkControl/LinkControl.js +0 -144
- package/esm/controls/LinkControl/LinkControl.js.map +0 -1
- package/esm/controls/LinkControl/LinkControl.styles.js +0 -53
- package/esm/controls/LinkControl/LinkControl.styles.js.map +0 -1
- package/esm/controls/controls.js.map +0 -1
- package/lib/Content/Content.d.ts +0 -8
- package/lib/Content/Content.d.ts.map +0 -1
- package/lib/Content/Content.styles.d.ts +0 -15
- package/lib/Content/Content.styles.d.ts.map +0 -1
- package/lib/RichTextEditor.styles.d.ts +0 -9
- package/lib/RichTextEditor.styles.d.ts.map +0 -1
- package/lib/Toolbar/Toolbar.d.ts +0 -12
- package/lib/Toolbar/Toolbar.d.ts.map +0 -1
- package/lib/Toolbar/Toolbar.styles.d.ts +0 -14
- package/lib/Toolbar/Toolbar.styles.d.ts.map +0 -1
- package/lib/controls/ColorControl/ColorControl.d.ts +0 -8
- package/lib/controls/ColorControl/ColorControl.d.ts.map +0 -1
- package/lib/controls/ColorPickerControl/ColorPickerControl.d.ts +0 -12
- package/lib/controls/ColorPickerControl/ColorPickerControl.d.ts.map +0 -1
- package/lib/controls/Control/Control.d.ts +0 -18
- package/lib/controls/Control/Control.d.ts.map +0 -1
- package/lib/controls/Control/Control.styles.d.ts +0 -9
- package/lib/controls/Control/Control.styles.d.ts.map +0 -1
- package/lib/controls/ControlBase/ControlBase.d.ts +0 -9
- package/lib/controls/ControlBase/ControlBase.d.ts.map +0 -1
- package/lib/controls/ControlBase/create-control.d.ts +0 -20
- package/lib/controls/ControlBase/create-control.d.ts.map +0 -1
- package/lib/controls/ControlsGroup/ControlsGroup.d.ts +0 -8
- package/lib/controls/ControlsGroup/ControlsGroup.d.ts.map +0 -1
- package/lib/controls/ControlsGroup/ControlsGroup.styles.d.ts +0 -9
- package/lib/controls/ControlsGroup/ControlsGroup.styles.d.ts.map +0 -1
- package/lib/controls/LinkControl/LinkControl.d.ts +0 -15
- package/lib/controls/LinkControl/LinkControl.d.ts.map +0 -1
- package/lib/controls/LinkControl/LinkControl.styles.d.ts +0 -12
- package/lib/controls/LinkControl/LinkControl.styles.d.ts.map +0 -1
- package/lib/controls/controls.d.ts +0 -28
- package/lib/controls/controls.d.ts.map +0 -1
- package/lib/controls/index.d.ts +0 -5
- package/lib/controls/index.d.ts.map +0 -1
package/esm/RichTextEditor.js
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import React, {
|
|
2
|
-
import {
|
|
3
|
-
import { RichTextEditorProvider } from './RichTextEditor.context.js';
|
|
4
|
-
import { Content } from './Content/Content.js';
|
|
5
|
-
import { Control } from './controls/Control/Control.js';
|
|
6
|
-
import { ControlsGroup } from './controls/ControlsGroup/ControlsGroup.js';
|
|
7
|
-
import { Toolbar } from './Toolbar/Toolbar.js';
|
|
1
|
+
import React, { useMemo } from 'react';
|
|
2
|
+
import { factory, useProps, useStyles, Box } from '@mantine/core';
|
|
8
3
|
import { DEFAULT_LABELS } from './labels.js';
|
|
9
|
-
import
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
4
|
+
import { RichTextEditorProvider } from './RichTextEditor.context.js';
|
|
5
|
+
import { RichTextEditorToolbar } from './RichTextEditorToolbar/RichTextEditorToolbar.js';
|
|
6
|
+
import { RichTextEditorControlsGroup } from './RichTextEditorControlsGroup/RichTextEditorControlsGroup.js';
|
|
7
|
+
import { RichTextEditorContent } from './RichTextEditorContent/RichTextEditorContent.js';
|
|
8
|
+
import { RichTextEditorControl } from './RichTextEditorControl/RichTextEditorControl.js';
|
|
9
|
+
import classes from './RichTextEditor.module.css.js';
|
|
10
|
+
import { BoldControl, ItalicControl, StrikeThroughControl, UnderlineControl, ClearFormattingControl, H1Control, H2Control, H3Control, H4Control, H5Control, H6Control, BulletListControl, OrderedListControl, UnlinkControl, BlockquoteControl, AlignLeftControl, AlignRightControl, AlignCenterControl, AlignJustifyControl, SuperscriptControl, SubscriptControl, CodeControl, CodeBlockControl, HighlightControl, HrControl, UnsetColorControl } from './RichTextEditorControl/controls.js';
|
|
11
|
+
import { RichTextEditorLinkControl } from './RichTextEditorControl/RichTextEditorLinkControl.js';
|
|
12
|
+
import { RichTextEditorColorPickerControl } from './RichTextEditorControl/RichTextEditorColorPickerControl.js';
|
|
13
|
+
import { RichTextEditorColorControl } from './RichTextEditorControl/RichTextEditorColorControl.js';
|
|
14
14
|
|
|
15
15
|
var __defProp = Object.defineProperty;
|
|
16
16
|
var __defProps = Object.defineProperties;
|
|
@@ -47,59 +47,65 @@ const defaultProps = {
|
|
|
47
47
|
withCodeHighlightStyles: true,
|
|
48
48
|
withTypographyStyles: true
|
|
49
49
|
};
|
|
50
|
-
const RichTextEditor =
|
|
51
|
-
const
|
|
52
|
-
|
|
53
|
-
children,
|
|
54
|
-
className,
|
|
55
|
-
labels,
|
|
56
|
-
withCodeHighlightStyles,
|
|
57
|
-
withTypographyStyles,
|
|
50
|
+
const RichTextEditor = factory((_props, ref) => {
|
|
51
|
+
const props = useProps("RichTextEditor", defaultProps, _props);
|
|
52
|
+
const _a = props, {
|
|
58
53
|
classNames,
|
|
54
|
+
className,
|
|
55
|
+
style,
|
|
59
56
|
styles,
|
|
60
57
|
unstyled,
|
|
61
|
-
|
|
58
|
+
vars,
|
|
59
|
+
editor,
|
|
60
|
+
withCodeHighlightStyles,
|
|
61
|
+
withTypographyStyles,
|
|
62
|
+
labels,
|
|
63
|
+
children
|
|
62
64
|
} = _a, others = __objRest(_a, [
|
|
63
|
-
"editor",
|
|
64
|
-
"children",
|
|
65
|
-
"className",
|
|
66
|
-
"labels",
|
|
67
|
-
"withCodeHighlightStyles",
|
|
68
|
-
"withTypographyStyles",
|
|
69
65
|
"classNames",
|
|
66
|
+
"className",
|
|
67
|
+
"style",
|
|
70
68
|
"styles",
|
|
71
69
|
"unstyled",
|
|
72
|
-
"
|
|
70
|
+
"vars",
|
|
71
|
+
"editor",
|
|
72
|
+
"withCodeHighlightStyles",
|
|
73
|
+
"withTypographyStyles",
|
|
74
|
+
"labels",
|
|
75
|
+
"children"
|
|
73
76
|
]);
|
|
74
|
-
const
|
|
77
|
+
const getStyles = useStyles({
|
|
75
78
|
name: "RichTextEditor",
|
|
79
|
+
classes,
|
|
80
|
+
props,
|
|
81
|
+
className,
|
|
82
|
+
style,
|
|
76
83
|
classNames,
|
|
77
84
|
styles,
|
|
78
85
|
unstyled,
|
|
79
|
-
|
|
86
|
+
vars
|
|
80
87
|
});
|
|
81
88
|
const mergedLabels = useMemo(() => __spreadValues(__spreadValues({}, DEFAULT_LABELS), labels), [labels]);
|
|
82
|
-
return /* @__PURE__ */ React.createElement(
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
}, others), {
|
|
96
|
-
ref
|
|
97
|
-
}), children));
|
|
89
|
+
return /* @__PURE__ */ React.createElement(
|
|
90
|
+
RichTextEditorProvider,
|
|
91
|
+
{
|
|
92
|
+
value: {
|
|
93
|
+
editor,
|
|
94
|
+
getStyles,
|
|
95
|
+
labels: mergedLabels,
|
|
96
|
+
withCodeHighlightStyles,
|
|
97
|
+
withTypographyStyles
|
|
98
|
+
}
|
|
99
|
+
},
|
|
100
|
+
/* @__PURE__ */ React.createElement(Box, __spreadProps(__spreadValues(__spreadValues({}, getStyles("root")), others), { ref }), children)
|
|
101
|
+
);
|
|
98
102
|
});
|
|
99
|
-
RichTextEditor.
|
|
100
|
-
RichTextEditor.
|
|
101
|
-
RichTextEditor.
|
|
102
|
-
RichTextEditor.
|
|
103
|
+
RichTextEditor.classes = classes;
|
|
104
|
+
RichTextEditor.displayName = "@mantine/tiptap/RichTextEditor";
|
|
105
|
+
RichTextEditor.Content = RichTextEditorContent;
|
|
106
|
+
RichTextEditor.Control = RichTextEditorControl;
|
|
107
|
+
RichTextEditor.Toolbar = RichTextEditorToolbar;
|
|
108
|
+
RichTextEditor.ControlsGroup = RichTextEditorControlsGroup;
|
|
103
109
|
RichTextEditor.Bold = BoldControl;
|
|
104
110
|
RichTextEditor.Italic = ItalicControl;
|
|
105
111
|
RichTextEditor.Strikethrough = StrikeThroughControl;
|
|
@@ -113,7 +119,7 @@ RichTextEditor.H5 = H5Control;
|
|
|
113
119
|
RichTextEditor.H6 = H6Control;
|
|
114
120
|
RichTextEditor.BulletList = BulletListControl;
|
|
115
121
|
RichTextEditor.OrderedList = OrderedListControl;
|
|
116
|
-
RichTextEditor.Link =
|
|
122
|
+
RichTextEditor.Link = RichTextEditorLinkControl;
|
|
117
123
|
RichTextEditor.Unlink = UnlinkControl;
|
|
118
124
|
RichTextEditor.Blockquote = BlockquoteControl;
|
|
119
125
|
RichTextEditor.AlignLeft = AlignLeftControl;
|
|
@@ -124,12 +130,11 @@ RichTextEditor.Superscript = SuperscriptControl;
|
|
|
124
130
|
RichTextEditor.Subscript = SubscriptControl;
|
|
125
131
|
RichTextEditor.Code = CodeControl;
|
|
126
132
|
RichTextEditor.CodeBlock = CodeBlockControl;
|
|
127
|
-
RichTextEditor.ColorPicker =
|
|
128
|
-
RichTextEditor.Color =
|
|
133
|
+
RichTextEditor.ColorPicker = RichTextEditorColorPickerControl;
|
|
134
|
+
RichTextEditor.Color = RichTextEditorColorControl;
|
|
129
135
|
RichTextEditor.Highlight = HighlightControl;
|
|
130
136
|
RichTextEditor.Hr = HrControl;
|
|
131
137
|
RichTextEditor.UnsetColor = UnsetColorControl;
|
|
132
|
-
RichTextEditor.displayName = "@mantine/tiptap/RichTextEditor";
|
|
133
138
|
|
|
134
139
|
export { RichTextEditor };
|
|
135
140
|
//# sourceMappingURL=RichTextEditor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RichTextEditor.js","sources":["../src/RichTextEditor.tsx"],"sourcesContent":["/* eslint-disable react/no-unused-prop-types */\nimport React, { useMemo, forwardRef } from 'react';\nimport { Box, useComponentDefaultProps, DefaultProps, Selectors } from '@mantine/core';\nimport { Editor } from '@tiptap/react';\nimport { ForwardRefWithStaticComponents } from '@mantine/utils';\nimport { RichTextEditorProvider } from './RichTextEditor.context';\nimport * as controls from './controls';\nimport { Content, ContentStylesNames } from './Content/Content';\nimport { Control, ControlStylesNames } from './controls/Control/Control';\nimport { ControlsGroup, ControlsGroupStylesNames } from './controls/ControlsGroup/ControlsGroup';\nimport { Toolbar, ToolbarStylesNames } from './Toolbar/Toolbar';\nimport { LinkControlStylesNames } from './controls/LinkControl/LinkControl';\nimport { DEFAULT_LABELS, RichTextEditorLabels } from './labels';\nimport useStyles from './RichTextEditor.styles';\n\nexport type RichTextEditorStylesNames =\n | Selectors<typeof useStyles>\n | ContentStylesNames\n | ControlStylesNames\n | ControlsGroupStylesNames\n | ToolbarStylesNames\n | LinkControlStylesNames;\n\nexport interface RichTextEditorProps\n extends DefaultProps<RichTextEditorStylesNames>,\n React.ComponentPropsWithoutRef<'div'> {\n variant?: string;\n\n /** Tiptap editor instance */\n editor: Editor | null;\n\n /** Determines whether code highlight styles should be added, true by default */\n withCodeHighlightStyles?: boolean;\n\n /** Determines whether typography styles should be added, true by default */\n withTypographyStyles?: boolean;\n\n /** Labels that are used in controls */\n labels?: Partial<RichTextEditorLabels>;\n\n /** Child editor components */\n children: React.ReactNode;\n}\n\nconst defaultProps: Partial<RichTextEditorProps> = {\n withCodeHighlightStyles: true,\n withTypographyStyles: true,\n};\n\ntype RichTextEditorComponent = ForwardRefWithStaticComponents<\n RichTextEditorProps,\n {\n Content: typeof Content;\n Control: typeof Control;\n ControlsGroup: typeof ControlsGroup;\n Toolbar: typeof Toolbar;\n Bold: typeof controls.BoldControl;\n Italic: typeof controls.ItalicControl;\n Strikethrough: typeof controls.StrikeThroughControl;\n Underline: typeof controls.UnderlineControl;\n ClearFormatting: typeof controls.ClearFormattingControl;\n H1: typeof controls.H1Control;\n H2: typeof controls.H2Control;\n H3: typeof controls.H3Control;\n H4: typeof controls.H4Control;\n H5: typeof controls.H5Control;\n H6: typeof controls.H6Control;\n BulletList: typeof controls.BulletListControl;\n OrderedList: typeof controls.OrderedListControl;\n Link: typeof controls.LinkControl;\n Unlink: typeof controls.UnlinkControl;\n Blockquote: typeof controls.BlockquoteControl;\n AlignLeft: typeof controls.AlignLeftControl;\n AlignRight: typeof controls.AlignRightControl;\n AlignCenter: typeof controls.AlignCenterControl;\n AlignJustify: typeof controls.AlignJustifyControl;\n Superscript: typeof controls.SuperscriptControl;\n Subscript: typeof controls.SubscriptControl;\n Code: typeof controls.CodeControl;\n CodeBlock: typeof controls.CodeBlockControl;\n ColorPicker: typeof controls.ColorPickerControl;\n Color: typeof controls.ColorControl;\n Highlight: typeof controls.HighlightControl;\n Hr: typeof controls.HrControl;\n UnsetColor: typeof controls.UnsetColorControl;\n }\n>;\n\nexport const RichTextEditor: RichTextEditorComponent = forwardRef<\n HTMLDivElement,\n RichTextEditorProps\n>((props, ref) => {\n const {\n editor,\n children,\n className,\n labels,\n withCodeHighlightStyles,\n withTypographyStyles,\n classNames,\n styles,\n unstyled,\n variant,\n ...others\n } = useComponentDefaultProps('RichTextEditor', defaultProps, props);\n\n const { classes, cx } = useStyles(null, {\n name: 'RichTextEditor',\n classNames,\n styles,\n unstyled,\n variant,\n });\n\n const mergedLabels = useMemo(() => ({ ...DEFAULT_LABELS, ...labels }), [labels]);\n\n return (\n <RichTextEditorProvider\n value={{\n editor,\n labels: mergedLabels,\n withCodeHighlightStyles,\n withTypographyStyles,\n classNames,\n styles,\n unstyled,\n variant,\n }}\n >\n <Box className={cx(classes.root, className)} {...others} ref={ref}>\n {children}\n </Box>\n </RichTextEditorProvider>\n );\n}) as any;\n\n// Generic components\nRichTextEditor.Content = Content;\nRichTextEditor.Control = Control;\nRichTextEditor.ControlsGroup = ControlsGroup;\nRichTextEditor.Toolbar = Toolbar;\n\n// Controls components\nRichTextEditor.Bold = controls.BoldControl;\nRichTextEditor.Italic = controls.ItalicControl;\nRichTextEditor.Strikethrough = controls.StrikeThroughControl;\nRichTextEditor.Underline = controls.UnderlineControl;\nRichTextEditor.ClearFormatting = controls.ClearFormattingControl;\nRichTextEditor.H1 = controls.H1Control;\nRichTextEditor.H2 = controls.H2Control;\nRichTextEditor.H3 = controls.H3Control;\nRichTextEditor.H4 = controls.H4Control;\nRichTextEditor.H5 = controls.H5Control;\nRichTextEditor.H6 = controls.H6Control;\nRichTextEditor.BulletList = controls.BulletListControl;\nRichTextEditor.OrderedList = controls.OrderedListControl;\nRichTextEditor.Link = controls.LinkControl;\nRichTextEditor.Unlink = controls.UnlinkControl;\nRichTextEditor.Blockquote = controls.BlockquoteControl;\nRichTextEditor.AlignLeft = controls.AlignLeftControl;\nRichTextEditor.AlignRight = controls.AlignRightControl;\nRichTextEditor.AlignCenter = controls.AlignCenterControl;\nRichTextEditor.AlignJustify = controls.AlignJustifyControl;\nRichTextEditor.Superscript = controls.SuperscriptControl;\nRichTextEditor.Subscript = controls.SubscriptControl;\nRichTextEditor.Code = controls.CodeControl;\nRichTextEditor.CodeBlock = controls.CodeBlockControl;\nRichTextEditor.ColorPicker = controls.ColorPickerControl;\nRichTextEditor.Color = controls.ColorControl;\nRichTextEditor.Highlight = controls.HighlightControl;\nRichTextEditor.Hr = controls.HrControl;\nRichTextEditor.UnsetColor = controls.UnsetColorControl;\n\nRichTextEditor.displayName = '@mantine/tiptap/RichTextEditor';\n"],"names":["controls.BoldControl","controls.ItalicControl","controls.StrikeThroughControl","controls.UnderlineControl","controls.ClearFormattingControl","controls.H1Control","controls.H2Control","controls.H3Control","controls.H4Control","controls.H5Control","controls.H6Control","controls.BulletListControl","controls.OrderedListControl","controls.LinkControl","controls.UnlinkControl","controls.BlockquoteControl","controls.AlignLeftControl","controls.AlignRightControl","controls.AlignCenterControl","controls.AlignJustifyControl","controls.SuperscriptControl","controls.SubscriptControl","controls.CodeControl","controls.CodeBlockControl","controls.ColorPickerControl","controls.ColorControl","controls.HighlightControl","controls.HrControl","controls.UnsetColorControl"],"mappings":";;;;;;;;;;;;;;AAAA,IAAI,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC;AACtC,IAAI,UAAU,GAAG,MAAM,CAAC,gBAAgB,CAAC;AACzC,IAAI,iBAAiB,GAAG,MAAM,CAAC,yBAAyB,CAAC;AACzD,IAAI,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC;AACvD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;AACnD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC;AACzD,IAAI,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,KAAK,GAAG,IAAI,GAAG,GAAG,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAChK,IAAI,cAAc,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK;AAC/B,EAAE,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;AAChC,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AAClC,MAAM,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AACxC,EAAE,IAAI,mBAAmB;AACzB,IAAI,KAAK,IAAI,IAAI,IAAI,mBAAmB,CAAC,CAAC,CAAC,EAAE;AAC7C,MAAM,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AACpC,QAAQ,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC1C,KAAK;AACL,EAAE,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AACF,IAAI,aAAa,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,UAAU,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;AAClE,IAAI,SAAS,GAAG,CAAC,MAAM,EAAE,OAAO,KAAK;AACrC,EAAE,IAAI,MAAM,GAAG,EAAE,CAAC;AAClB,EAAE,KAAK,IAAI,IAAI,IAAI,MAAM;AACzB,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;AACpE,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;AAClC,EAAE,IAAI,MAAM,IAAI,IAAI,IAAI,mBAAmB;AAC3C,IAAI,KAAK,IAAI,IAAI,IAAI,mBAAmB,CAAC,MAAM,CAAC,EAAE;AAClD,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC;AACtE,QAAQ,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;AACpC,KAAK;AACL,EAAE,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAWF,MAAM,YAAY,GAAG;AACrB,EAAE,uBAAuB,EAAE,IAAI;AAC/B,EAAE,oBAAoB,EAAE,IAAI;AAC5B,CAAC,CAAC;AACU,MAAC,cAAc,GAAG,UAAU,CAAC,CAAC,KAAK,EAAE,GAAG,KAAK;AACzD,EAAE,MAAM,EAAE,GAAG,wBAAwB,CAAC,gBAAgB,EAAE,YAAY,EAAE,KAAK,CAAC,EAAE;AAC9E,IAAI,MAAM;AACV,IAAI,QAAQ;AACZ,IAAI,SAAS;AACb,IAAI,MAAM;AACV,IAAI,uBAAuB;AAC3B,IAAI,oBAAoB;AACxB,IAAI,UAAU;AACd,IAAI,MAAM;AACV,IAAI,QAAQ;AACZ,IAAI,OAAO;AACX,GAAG,GAAG,EAAE,EAAE,MAAM,GAAG,SAAS,CAAC,EAAE,EAAE;AACjC,IAAI,QAAQ;AACZ,IAAI,UAAU;AACd,IAAI,WAAW;AACf,IAAI,QAAQ;AACZ,IAAI,yBAAyB;AAC7B,IAAI,sBAAsB;AAC1B,IAAI,YAAY;AAChB,IAAI,QAAQ;AACZ,IAAI,UAAU;AACd,IAAI,SAAS;AACb,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,SAAS,CAAC,IAAI,EAAE;AAC1C,IAAI,IAAI,EAAE,gBAAgB;AAC1B,IAAI,UAAU;AACd,IAAI,MAAM;AACV,IAAI,QAAQ;AACZ,IAAI,OAAO;AACX,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,cAAc,CAAC,cAAc,CAAC,EAAE,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;AAC3G,EAAE,uBAAuB,KAAK,CAAC,aAAa,CAAC,sBAAsB,EAAE;AACrE,IAAI,KAAK,EAAE;AACX,MAAM,MAAM;AACZ,MAAM,MAAM,EAAE,YAAY;AAC1B,MAAM,uBAAuB;AAC7B,MAAM,oBAAoB;AAC1B,MAAM,UAAU;AAChB,MAAM,MAAM;AACZ,MAAM,QAAQ;AACd,MAAM,OAAO;AACb,KAAK;AACL,GAAG,kBAAkB,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,aAAa,CAAC,cAAc,CAAC;AAC3E,IAAI,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC;AAC1C,GAAG,EAAE,MAAM,CAAC,EAAE;AACd,IAAI,GAAG;AACP,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;AACjB,CAAC,EAAE;AACH,cAAc,CAAC,OAAO,GAAG,OAAO,CAAC;AACjC,cAAc,CAAC,OAAO,GAAG,OAAO,CAAC;AACjC,cAAc,CAAC,aAAa,GAAG,aAAa,CAAC;AAC7C,cAAc,CAAC,OAAO,GAAG,OAAO,CAAC;AACjC,cAAc,CAAC,IAAI,GAAGA,WAAoB,CAAC;AAC3C,cAAc,CAAC,MAAM,GAAGC,aAAsB,CAAC;AAC/C,cAAc,CAAC,aAAa,GAAGC,oBAA6B,CAAC;AAC7D,cAAc,CAAC,SAAS,GAAGC,gBAAyB,CAAC;AACrD,cAAc,CAAC,eAAe,GAAGC,sBAA+B,CAAC;AACjE,cAAc,CAAC,EAAE,GAAGC,SAAkB,CAAC;AACvC,cAAc,CAAC,EAAE,GAAGC,SAAkB,CAAC;AACvC,cAAc,CAAC,EAAE,GAAGC,SAAkB,CAAC;AACvC,cAAc,CAAC,EAAE,GAAGC,SAAkB,CAAC;AACvC,cAAc,CAAC,EAAE,GAAGC,SAAkB,CAAC;AACvC,cAAc,CAAC,EAAE,GAAGC,SAAkB,CAAC;AACvC,cAAc,CAAC,UAAU,GAAGC,iBAA0B,CAAC;AACvD,cAAc,CAAC,WAAW,GAAGC,kBAA2B,CAAC;AACzD,cAAc,CAAC,IAAI,GAAGC,WAAoB,CAAC;AAC3C,cAAc,CAAC,MAAM,GAAGC,aAAsB,CAAC;AAC/C,cAAc,CAAC,UAAU,GAAGC,iBAA0B,CAAC;AACvD,cAAc,CAAC,SAAS,GAAGC,gBAAyB,CAAC;AACrD,cAAc,CAAC,UAAU,GAAGC,iBAA0B,CAAC;AACvD,cAAc,CAAC,WAAW,GAAGC,kBAA2B,CAAC;AACzD,cAAc,CAAC,YAAY,GAAGC,mBAA4B,CAAC;AAC3D,cAAc,CAAC,WAAW,GAAGC,kBAA2B,CAAC;AACzD,cAAc,CAAC,SAAS,GAAGC,gBAAyB,CAAC;AACrD,cAAc,CAAC,IAAI,GAAGC,WAAoB,CAAC;AAC3C,cAAc,CAAC,SAAS,GAAGC,gBAAyB,CAAC;AACrD,cAAc,CAAC,WAAW,GAAGC,kBAA2B,CAAC;AACzD,cAAc,CAAC,KAAK,GAAGC,YAAqB,CAAC;AAC7C,cAAc,CAAC,SAAS,GAAGC,gBAAyB,CAAC;AACrD,cAAc,CAAC,EAAE,GAAGC,SAAkB,CAAC;AACvC,cAAc,CAAC,UAAU,GAAGC,iBAA0B,CAAC;AACvD,cAAc,CAAC,WAAW,GAAG,gCAAgC;;;;"}
|
|
1
|
+
{"version":3,"file":"RichTextEditor.js","sources":["../src/RichTextEditor.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n useStyles,\n Factory,\n} from '@mantine/core';\nimport { Editor } from '@tiptap/react';\nimport { DEFAULT_LABELS, RichTextEditorLabels } from './labels';\nimport { RichTextEditorProvider } from './RichTextEditor.context';\nimport { RichTextEditorToolbar } from './RichTextEditorToolbar/RichTextEditorToolbar';\nimport { RichTextEditorControlsGroup } from './RichTextEditorControlsGroup/RichTextEditorControlsGroup';\nimport { RichTextEditorContent } from './RichTextEditorContent/RichTextEditorContent';\nimport { RichTextEditorControl } from './RichTextEditorControl/RichTextEditorControl';\nimport * as controls from './RichTextEditorControl';\nimport classes from './RichTextEditor.module.css';\n\nexport type RichTextEditorStylesNames =\n | 'linkEditorSave'\n | 'linkEditorDropdown'\n | 'root'\n | 'content'\n | 'typographyStylesProvider'\n | 'control'\n | 'controlsGroup'\n | 'toolbar'\n | 'linkEditor'\n | 'linkEditorInput'\n | 'linkEditorExternalControl';\n\nexport interface RichTextEditorProps\n extends BoxProps,\n StylesApiProps<RichTextEditorFactory>,\n ElementProps<'div'> {\n /** Tiptap editor instance */\n editor: Editor | null;\n\n /** Determines whether code highlight styles should be added, `true` by default */\n withCodeHighlightStyles?: boolean;\n\n /** Determines whether typography styles should be added, `true` by default */\n withTypographyStyles?: boolean;\n\n /** Labels that are used in controls */\n labels?: Partial<RichTextEditorLabels>;\n\n /** Child editor components */\n children: React.ReactNode;\n}\n\nexport type RichTextEditorFactory = Factory<{\n props: RichTextEditorProps;\n ref: HTMLDivElement;\n stylesNames: RichTextEditorStylesNames;\n staticComponents: {\n Content: typeof RichTextEditorContent;\n Control: typeof RichTextEditorControl;\n Toolbar: typeof RichTextEditorToolbar;\n ControlsGroup: typeof RichTextEditorControlsGroup;\n Bold: typeof controls.BoldControl;\n Italic: typeof controls.ItalicControl;\n Strikethrough: typeof controls.StrikeThroughControl;\n Underline: typeof controls.UnderlineControl;\n ClearFormatting: typeof controls.ClearFormattingControl;\n H1: typeof controls.H1Control;\n H2: typeof controls.H2Control;\n H3: typeof controls.H3Control;\n H4: typeof controls.H4Control;\n H5: typeof controls.H5Control;\n H6: typeof controls.H6Control;\n BulletList: typeof controls.BulletListControl;\n OrderedList: typeof controls.OrderedListControl;\n Link: typeof controls.RichTextEditorLinkControl;\n Unlink: typeof controls.UnlinkControl;\n Blockquote: typeof controls.BlockquoteControl;\n AlignLeft: typeof controls.AlignLeftControl;\n AlignRight: typeof controls.AlignRightControl;\n AlignCenter: typeof controls.AlignCenterControl;\n AlignJustify: typeof controls.AlignJustifyControl;\n Superscript: typeof controls.SuperscriptControl;\n Subscript: typeof controls.SubscriptControl;\n Code: typeof controls.CodeControl;\n CodeBlock: typeof controls.CodeBlockControl;\n ColorPicker: typeof controls.RichTextEditorColorPickerControl;\n Color: typeof controls.RichTextEditorColorControl;\n Highlight: typeof controls.HighlightControl;\n Hr: typeof controls.HrControl;\n UnsetColor: typeof controls.UnsetColorControl;\n };\n}>;\n\nconst defaultProps: Partial<RichTextEditorProps> = {\n withCodeHighlightStyles: true,\n withTypographyStyles: true,\n};\n\nexport const RichTextEditor = factory<RichTextEditorFactory>((_props, ref) => {\n const props = useProps('RichTextEditor', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n editor,\n withCodeHighlightStyles,\n withTypographyStyles,\n labels,\n children,\n ...others\n } = props;\n\n const getStyles = useStyles<RichTextEditorFactory>({\n name: 'RichTextEditor',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n });\n\n const mergedLabels = useMemo(() => ({ ...DEFAULT_LABELS, ...labels }), [labels]);\n\n return (\n <RichTextEditorProvider\n value={{\n editor,\n getStyles,\n labels: mergedLabels,\n withCodeHighlightStyles,\n withTypographyStyles,\n }}\n >\n <Box {...getStyles('root')} {...others} ref={ref}>\n {children}\n </Box>\n </RichTextEditorProvider>\n );\n});\n\nRichTextEditor.classes = classes;\nRichTextEditor.displayName = '@mantine/tiptap/RichTextEditor';\n\n// Generic components\nRichTextEditor.Content = RichTextEditorContent;\nRichTextEditor.Control = RichTextEditorControl;\nRichTextEditor.Toolbar = RichTextEditorToolbar;\nRichTextEditor.ControlsGroup = RichTextEditorControlsGroup;\n\n// Controls components\nRichTextEditor.Bold = controls.BoldControl;\nRichTextEditor.Italic = controls.ItalicControl;\nRichTextEditor.Strikethrough = controls.StrikeThroughControl;\nRichTextEditor.Underline = controls.UnderlineControl;\nRichTextEditor.ClearFormatting = controls.ClearFormattingControl;\nRichTextEditor.H1 = controls.H1Control;\nRichTextEditor.H2 = controls.H2Control;\nRichTextEditor.H3 = controls.H3Control;\nRichTextEditor.H4 = controls.H4Control;\nRichTextEditor.H5 = controls.H5Control;\nRichTextEditor.H6 = controls.H6Control;\nRichTextEditor.BulletList = controls.BulletListControl;\nRichTextEditor.OrderedList = controls.OrderedListControl;\nRichTextEditor.Link = controls.RichTextEditorLinkControl;\nRichTextEditor.Unlink = controls.UnlinkControl;\nRichTextEditor.Blockquote = controls.BlockquoteControl;\nRichTextEditor.AlignLeft = controls.AlignLeftControl;\nRichTextEditor.AlignRight = controls.AlignRightControl;\nRichTextEditor.AlignCenter = controls.AlignCenterControl;\nRichTextEditor.AlignJustify = controls.AlignJustifyControl;\nRichTextEditor.Superscript = controls.SuperscriptControl;\nRichTextEditor.Subscript = controls.SubscriptControl;\nRichTextEditor.Code = controls.CodeControl;\nRichTextEditor.CodeBlock = controls.CodeBlockControl;\nRichTextEditor.ColorPicker = controls.RichTextEditorColorPickerControl;\nRichTextEditor.Color = controls.RichTextEditorColorControl;\nRichTextEditor.Highlight = controls.HighlightControl;\nRichTextEditor.Hr = controls.HrControl;\nRichTextEditor.UnsetColor = controls.UnsetColorControl;\n"],"names":["controls.BoldControl","controls.ItalicControl","controls.StrikeThroughControl","controls.UnderlineControl","controls.ClearFormattingControl","controls.H1Control","controls.H2Control","controls.H3Control","controls.H4Control","controls.H5Control","controls.H6Control","controls.BulletListControl","controls.OrderedListControl","controls.RichTextEditorLinkControl","controls.UnlinkControl","controls.BlockquoteControl","controls.AlignLeftControl","controls.AlignRightControl","controls.AlignCenterControl","controls.AlignJustifyControl","controls.SuperscriptControl","controls.SubscriptControl","controls.CodeControl","controls.CodeBlockControl","controls.RichTextEditorColorPickerControl","controls.RichTextEditorColorControl","controls.HighlightControl","controls.HrControl","controls.UnsetColorControl"],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
var classes = {"root":"m-dd3f7539","typographyStylesProvider":"m-d37966d9","content":"m-c2204cc2","linkEditorDropdown":"m-8a991b4f","control":"m-c2207da6","controlsGroup":"m-2ab47ef2","linkEditor":"m-b67b711e","linkEditorInput":"m-296cf94c","linkEditorExternalControl":"m-cfef614","linkEditorSave":"m-3b28e7bb","toolbar":"m-4574a3c4"};
|
|
2
|
+
|
|
3
|
+
export default classes;
|
|
4
|
+
//# sourceMappingURL=RichTextEditor.module.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RichTextEditor.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { factory, useProps, TypographyStylesProvider, Box } from '@mantine/core';
|
|
3
|
+
import { EditorContent } from '@tiptap/react';
|
|
4
|
+
import { useRichTextEditorContext } from '../RichTextEditor.context.js';
|
|
5
|
+
import classes from '../RichTextEditor.module.css.js';
|
|
6
|
+
|
|
7
|
+
var __defProp = Object.defineProperty;
|
|
8
|
+
var __defProps = Object.defineProperties;
|
|
9
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
10
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
11
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
12
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
13
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
14
|
+
var __spreadValues = (a, b) => {
|
|
15
|
+
for (var prop in b || (b = {}))
|
|
16
|
+
if (__hasOwnProp.call(b, prop))
|
|
17
|
+
__defNormalProp(a, prop, b[prop]);
|
|
18
|
+
if (__getOwnPropSymbols)
|
|
19
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
20
|
+
if (__propIsEnum.call(b, prop))
|
|
21
|
+
__defNormalProp(a, prop, b[prop]);
|
|
22
|
+
}
|
|
23
|
+
return a;
|
|
24
|
+
};
|
|
25
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
26
|
+
var __objRest = (source, exclude) => {
|
|
27
|
+
var target = {};
|
|
28
|
+
for (var prop in source)
|
|
29
|
+
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
30
|
+
target[prop] = source[prop];
|
|
31
|
+
if (source != null && __getOwnPropSymbols)
|
|
32
|
+
for (var prop of __getOwnPropSymbols(source)) {
|
|
33
|
+
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
34
|
+
target[prop] = source[prop];
|
|
35
|
+
}
|
|
36
|
+
return target;
|
|
37
|
+
};
|
|
38
|
+
const defaultProps = {};
|
|
39
|
+
const RichTextEditorContent = factory((_props, ref) => {
|
|
40
|
+
const props = useProps("RichTextEditorContent", defaultProps, _props);
|
|
41
|
+
const _a = props, { classNames, className, style, styles, unstyled, vars } = _a, others = __objRest(_a, ["classNames", "className", "style", "styles", "unstyled", "vars"]);
|
|
42
|
+
const ctx = useRichTextEditorContext();
|
|
43
|
+
if (ctx.withTypographyStyles) {
|
|
44
|
+
return /* @__PURE__ */ React.createElement(
|
|
45
|
+
TypographyStylesProvider,
|
|
46
|
+
__spreadProps(__spreadValues({}, ctx.getStyles("typographyStylesProvider", { className, style, styles, classNames })), {
|
|
47
|
+
ref
|
|
48
|
+
}),
|
|
49
|
+
/* @__PURE__ */ React.createElement(
|
|
50
|
+
Box,
|
|
51
|
+
__spreadValues(__spreadValues({
|
|
52
|
+
component: EditorContent,
|
|
53
|
+
editor: ctx.editor
|
|
54
|
+
}, ctx.getStyles("content", { classNames, styles })), others)
|
|
55
|
+
)
|
|
56
|
+
);
|
|
57
|
+
}
|
|
58
|
+
return /* @__PURE__ */ React.createElement(
|
|
59
|
+
Box,
|
|
60
|
+
__spreadValues(__spreadValues({
|
|
61
|
+
component: EditorContent,
|
|
62
|
+
editor: ctx.editor
|
|
63
|
+
}, ctx.getStyles("content", { classNames, styles, className, style })), others)
|
|
64
|
+
);
|
|
65
|
+
});
|
|
66
|
+
RichTextEditorContent.classes = classes;
|
|
67
|
+
RichTextEditorContent.displayName = "@mantine/tiptap/RichTextEditorContent";
|
|
68
|
+
|
|
69
|
+
export { RichTextEditorContent };
|
|
70
|
+
//# sourceMappingURL=RichTextEditorContent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RichTextEditorContent.js","sources":["../../src/RichTextEditorContent/RichTextEditorContent.tsx"],"sourcesContent":["import React from 'react';\nimport {\n Box,\n BoxProps,\n StylesApiProps,\n factory,\n ElementProps,\n useProps,\n Factory,\n TypographyStylesProvider,\n} from '@mantine/core';\nimport { EditorContent } from '@tiptap/react';\nimport { useRichTextEditorContext } from '../RichTextEditor.context';\nimport classes from '../RichTextEditor.module.css';\n\nexport type RichTextEditorContentStylesNames = 'root';\nexport interface RichTextEditorContentProps\n extends BoxProps,\n StylesApiProps<RichTextEditorContentFactory>,\n ElementProps<'div'> {}\n\nexport type RichTextEditorContentFactory = Factory<{\n props: RichTextEditorContentProps;\n ref: HTMLDivElement;\n stylesNames: RichTextEditorContentStylesNames;\n compound: true;\n}>;\n\nconst defaultProps: Partial<RichTextEditorContentProps> = {};\n\nexport const RichTextEditorContent = factory<RichTextEditorContentFactory>((_props, ref) => {\n const props = useProps('RichTextEditorContent', defaultProps, _props);\n const { classNames, className, style, styles, unstyled, vars, ...others } = props;\n const ctx = useRichTextEditorContext();\n\n if (ctx.withTypographyStyles) {\n return (\n <TypographyStylesProvider\n {...ctx.getStyles('typographyStylesProvider', { className, style, styles, classNames })}\n ref={ref}\n >\n <Box\n component={EditorContent}\n editor={ctx.editor}\n {...ctx.getStyles('content', { classNames, styles })}\n {...others}\n />\n </TypographyStylesProvider>\n );\n }\n\n return (\n <Box\n component={EditorContent}\n editor={ctx.editor}\n {...ctx.getStyles('content', { classNames, styles, className, style })}\n {...others}\n />\n );\n});\n\nRichTextEditorContent.classes = classes;\nRichTextEditorContent.displayName = '@mantine/tiptap/RichTextEditorContent';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React, { forwardRef } from 'react';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { useRichTextEditorContext } from '
|
|
2
|
+
import { useProps, ColorSwatch } from '@mantine/core';
|
|
3
|
+
import { RichTextEditorControl } from './RichTextEditorControl.js';
|
|
4
|
+
import { useRichTextEditorContext } from '../RichTextEditor.context.js';
|
|
5
5
|
|
|
6
6
|
var __defProp = Object.defineProperty;
|
|
7
7
|
var __defProps = Object.defineProperties;
|
|
@@ -35,24 +35,23 @@ var __objRest = (source, exclude) => {
|
|
|
35
35
|
return target;
|
|
36
36
|
};
|
|
37
37
|
const defaultProps = {};
|
|
38
|
-
const
|
|
39
|
-
const _a =
|
|
40
|
-
const { editor, labels
|
|
38
|
+
const RichTextEditorColorControl = forwardRef((props, ref) => {
|
|
39
|
+
const _a = useProps("RichTextEditorColorControl", defaultProps, props), { color } = _a, others = __objRest(_a, ["color"]);
|
|
40
|
+
const { editor, labels } = useRichTextEditorContext();
|
|
41
41
|
const currentColor = (editor == null ? void 0 : editor.getAttributes("textStyle").color) || null;
|
|
42
42
|
const label = labels.colorControlLabel(color);
|
|
43
|
-
return /* @__PURE__ */ React.createElement(
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
size: 14
|
|
53
|
-
|
|
54
|
-
}));
|
|
43
|
+
return /* @__PURE__ */ React.createElement(
|
|
44
|
+
RichTextEditorControl,
|
|
45
|
+
__spreadProps(__spreadValues({}, others), {
|
|
46
|
+
active: currentColor === color,
|
|
47
|
+
"aria-label": label,
|
|
48
|
+
title: label,
|
|
49
|
+
onClick: () => (editor == null ? void 0 : editor.chain()).focus().setColor(color).run(),
|
|
50
|
+
ref
|
|
51
|
+
}),
|
|
52
|
+
/* @__PURE__ */ React.createElement(ColorSwatch, { color, size: 14 })
|
|
53
|
+
);
|
|
55
54
|
});
|
|
56
55
|
|
|
57
|
-
export {
|
|
58
|
-
//# sourceMappingURL=
|
|
56
|
+
export { RichTextEditorColorControl };
|
|
57
|
+
//# sourceMappingURL=RichTextEditorColorControl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RichTextEditorColorControl.js","sources":["../../src/RichTextEditorControl/RichTextEditorColorControl.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { ColorSwatch, BoxProps, useProps, ElementProps } from '@mantine/core';\nimport { RichTextEditorControl } from './RichTextEditorControl';\nimport { useRichTextEditorContext } from '../RichTextEditor.context';\n\nexport interface RichTextEditorColorControlProps extends BoxProps, ElementProps<'button'> {\n /** Color that will be set as text color, for example #ef457e */\n color: string;\n}\n\nconst defaultProps: Partial<RichTextEditorColorControlProps> = {};\n\nexport const RichTextEditorColorControl = forwardRef<\n HTMLButtonElement,\n RichTextEditorColorControlProps\n>((props, ref) => {\n const { color, ...others } = useProps('RichTextEditorColorControl', defaultProps, props);\n const { editor, labels } = useRichTextEditorContext();\n const currentColor = editor?.getAttributes('textStyle').color || null;\n const label = labels.colorControlLabel(color);\n\n return (\n <RichTextEditorControl\n {...others}\n active={currentColor === color}\n aria-label={label}\n title={label}\n onClick={() => (editor?.chain() as any).focus().setColor(color).run()}\n ref={ref}\n >\n <ColorSwatch color={color} size={14} />\n </RichTextEditorControl>\n );\n});\n"],"names":[],"mappings":";;;;;AAAA,IAAI,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC;AACtC,IAAI,UAAU,GAAG,MAAM,CAAC,gBAAgB,CAAC;AACzC,IAAI,iBAAiB,GAAG,MAAM,CAAC,yBAAyB,CAAC;AACzD,IAAI,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC;AACvD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;AACnD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC;AACzD,IAAI,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,KAAK,GAAG,IAAI,GAAG,GAAG,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAChK,IAAI,cAAc,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK;AAC/B,EAAE,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;AAChC,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AAClC,MAAM,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AACxC,EAAE,IAAI,mBAAmB;AACzB,IAAI,KAAK,IAAI,IAAI,IAAI,mBAAmB,CAAC,CAAC,CAAC,EAAE;AAC7C,MAAM,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AACpC,QAAQ,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC1C,KAAK;AACL,EAAE,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AACF,IAAI,aAAa,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,UAAU,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;AAClE,IAAI,SAAS,GAAG,CAAC,MAAM,EAAE,OAAO,KAAK;AACrC,EAAE,IAAI,MAAM,GAAG,EAAE,CAAC;AAClB,EAAE,KAAK,IAAI,IAAI,IAAI,MAAM;AACzB,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;AACpE,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;AAClC,EAAE,IAAI,MAAM,IAAI,IAAI,IAAI,mBAAmB;AAC3C,IAAI,KAAK,IAAI,IAAI,IAAI,mBAAmB,CAAC,MAAM,CAAC,EAAE;AAClD,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC;AACtE,QAAQ,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;AACpC,KAAK;AACL,EAAE,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAKF,MAAM,YAAY,GAAG,EAAE,CAAC;AACZ,MAAC,0BAA0B,GAAG,UAAU,CAAC,CAAC,KAAK,EAAE,GAAG,KAAK;AACrE,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC,4BAA4B,EAAE,YAAY,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,MAAM,GAAG,SAAS,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;AAC5H,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,wBAAwB,EAAE,CAAC;AACxD,EAAE,MAAM,YAAY,GAAG,CAAC,MAAM,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC;AACnG,EAAE,MAAM,KAAK,GAAG,MAAM,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;AAChD,EAAE,uBAAuB,KAAK,CAAC,aAAa;AAC5C,IAAI,qBAAqB;AACzB,IAAI,aAAa,CAAC,cAAc,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE;AAC9C,MAAM,MAAM,EAAE,YAAY,KAAK,KAAK;AACpC,MAAM,YAAY,EAAE,KAAK;AACzB,MAAM,KAAK,EAAE,KAAK;AAClB,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE;AAC7F,MAAM,GAAG;AACT,KAAK,CAAC;AACN,oBAAoB,KAAK,CAAC,aAAa,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;AACzE,GAAG,CAAC;AACJ,CAAC;;;;"}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import React, { forwardRef, useState } from 'react';
|
|
2
|
+
import { useProps, ColorSwatch, Popover, SimpleGrid, ColorPicker, Tooltip, Group, ActionIcon } from '@mantine/core';
|
|
3
|
+
import { useDisclosure } from '@mantine/hooks';
|
|
4
|
+
import { IconX, IconCircleOff, IconColorPicker, IconPalette, IconCheck } from '@tabler/icons-react';
|
|
5
|
+
import { RichTextEditorControl } from './RichTextEditorControl.js';
|
|
6
|
+
import { useRichTextEditorContext } from '../RichTextEditor.context.js';
|
|
7
|
+
|
|
8
|
+
var __defProp = Object.defineProperty;
|
|
9
|
+
var __defProps = Object.defineProperties;
|
|
10
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
11
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
12
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
13
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
14
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
15
|
+
var __spreadValues = (a, b) => {
|
|
16
|
+
for (var prop in b || (b = {}))
|
|
17
|
+
if (__hasOwnProp.call(b, prop))
|
|
18
|
+
__defNormalProp(a, prop, b[prop]);
|
|
19
|
+
if (__getOwnPropSymbols)
|
|
20
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
21
|
+
if (__propIsEnum.call(b, prop))
|
|
22
|
+
__defNormalProp(a, prop, b[prop]);
|
|
23
|
+
}
|
|
24
|
+
return a;
|
|
25
|
+
};
|
|
26
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
27
|
+
var __objRest = (source, exclude) => {
|
|
28
|
+
var target = {};
|
|
29
|
+
for (var prop in source)
|
|
30
|
+
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
31
|
+
target[prop] = source[prop];
|
|
32
|
+
if (source != null && __getOwnPropSymbols)
|
|
33
|
+
for (var prop of __getOwnPropSymbols(source)) {
|
|
34
|
+
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
35
|
+
target[prop] = source[prop];
|
|
36
|
+
}
|
|
37
|
+
return target;
|
|
38
|
+
};
|
|
39
|
+
const defaultProps = {};
|
|
40
|
+
const RichTextEditorColorPickerControl = forwardRef((props, ref) => {
|
|
41
|
+
const _a = useProps(
|
|
42
|
+
"RichTextEditorColorPickerControl",
|
|
43
|
+
defaultProps,
|
|
44
|
+
props
|
|
45
|
+
), { popoverProps, colors, colorPickerProps } = _a, others = __objRest(_a, ["popoverProps", "colors", "colorPickerProps"]);
|
|
46
|
+
const { editor, labels, getStyles } = useRichTextEditorContext();
|
|
47
|
+
const [opened, { toggle, close }] = useDisclosure(false);
|
|
48
|
+
const [state, setState] = useState("palette");
|
|
49
|
+
const currentColor = (editor == null ? void 0 : editor.getAttributes("textStyle").color) || "var(--mantine-color-text)";
|
|
50
|
+
const handleChange = (value, shouldClose = true) => {
|
|
51
|
+
(editor == null ? void 0 : editor.chain()).focus().setColor(value).run();
|
|
52
|
+
shouldClose && close();
|
|
53
|
+
};
|
|
54
|
+
const handleClear = () => {
|
|
55
|
+
(editor == null ? void 0 : editor.chain()).focus().unsetColor().run();
|
|
56
|
+
close();
|
|
57
|
+
};
|
|
58
|
+
const controls = colors.map((color, index) => /* @__PURE__ */ React.createElement(
|
|
59
|
+
ColorSwatch,
|
|
60
|
+
{
|
|
61
|
+
key: index,
|
|
62
|
+
component: "button",
|
|
63
|
+
color,
|
|
64
|
+
onClick: () => handleChange(color),
|
|
65
|
+
size: 26,
|
|
66
|
+
radius: "xs",
|
|
67
|
+
style: { cursor: "pointer" },
|
|
68
|
+
title: labels.colorPickerColorLabel(color),
|
|
69
|
+
"aria-label": labels.colorPickerColorLabel(color)
|
|
70
|
+
}
|
|
71
|
+
));
|
|
72
|
+
return /* @__PURE__ */ React.createElement(Popover, __spreadValues({ opened, withinPortal: true, trapFocus: true, onClose: close }, popoverProps), /* @__PURE__ */ React.createElement(Popover.Target, null, /* @__PURE__ */ React.createElement(
|
|
73
|
+
RichTextEditorControl,
|
|
74
|
+
__spreadProps(__spreadValues({}, others), {
|
|
75
|
+
"aria-label": labels.colorPickerControlLabel,
|
|
76
|
+
title: labels.colorPickerControlLabel,
|
|
77
|
+
ref,
|
|
78
|
+
onClick: toggle
|
|
79
|
+
}),
|
|
80
|
+
/* @__PURE__ */ React.createElement(ColorSwatch, { color: currentColor, size: 14 })
|
|
81
|
+
)), /* @__PURE__ */ React.createElement(Popover.Dropdown, __spreadValues({}, getStyles("linkEditorDropdown")), state === "palette" && /* @__PURE__ */ React.createElement(SimpleGrid, { cols: 7, spacing: 2 }, controls), state === "colorPicker" && /* @__PURE__ */ React.createElement(
|
|
82
|
+
ColorPicker,
|
|
83
|
+
__spreadValues({
|
|
84
|
+
defaultValue: currentColor,
|
|
85
|
+
onChange: (value) => handleChange(value, false)
|
|
86
|
+
}, colorPickerProps)
|
|
87
|
+
), /* @__PURE__ */ React.createElement(Tooltip.Group, { closeDelay: 200 }, /* @__PURE__ */ React.createElement(Group, { justify: "flex-end", gap: "xs", mt: "sm" }, state === "palette" && /* @__PURE__ */ React.createElement(
|
|
88
|
+
ActionIcon,
|
|
89
|
+
{
|
|
90
|
+
variant: "default",
|
|
91
|
+
onClick: close,
|
|
92
|
+
title: labels.colorPickerCancel,
|
|
93
|
+
"aria-label": labels.colorPickerCancel
|
|
94
|
+
},
|
|
95
|
+
/* @__PURE__ */ React.createElement(IconX, { stroke: 1.5, size: "1rem" })
|
|
96
|
+
), /* @__PURE__ */ React.createElement(
|
|
97
|
+
ActionIcon,
|
|
98
|
+
{
|
|
99
|
+
variant: "default",
|
|
100
|
+
onClick: handleClear,
|
|
101
|
+
title: labels.colorPickerClear,
|
|
102
|
+
"aria-label": labels.colorPickerClear
|
|
103
|
+
},
|
|
104
|
+
/* @__PURE__ */ React.createElement(IconCircleOff, { stroke: 1.5, size: "1rem" })
|
|
105
|
+
), state === "palette" ? /* @__PURE__ */ React.createElement(
|
|
106
|
+
ActionIcon,
|
|
107
|
+
{
|
|
108
|
+
variant: "default",
|
|
109
|
+
onClick: () => setState("colorPicker"),
|
|
110
|
+
title: labels.colorPickerColorPicker,
|
|
111
|
+
"aria-label": labels.colorPickerColorPicker
|
|
112
|
+
},
|
|
113
|
+
/* @__PURE__ */ React.createElement(IconColorPicker, { stroke: 1.5, size: "1rem" })
|
|
114
|
+
) : /* @__PURE__ */ React.createElement(
|
|
115
|
+
ActionIcon,
|
|
116
|
+
{
|
|
117
|
+
variant: "default",
|
|
118
|
+
onClick: () => setState("palette"),
|
|
119
|
+
"aria-label": labels.colorPickerPalette,
|
|
120
|
+
title: labels.colorPickerPalette
|
|
121
|
+
},
|
|
122
|
+
/* @__PURE__ */ React.createElement(IconPalette, { stroke: 1.5, size: "1rem" })
|
|
123
|
+
), state === "colorPicker" && /* @__PURE__ */ React.createElement(
|
|
124
|
+
ActionIcon,
|
|
125
|
+
{
|
|
126
|
+
variant: "default",
|
|
127
|
+
onClick: close,
|
|
128
|
+
title: labels.colorPickerSave,
|
|
129
|
+
"aria-label": labels.colorPickerSave
|
|
130
|
+
},
|
|
131
|
+
/* @__PURE__ */ React.createElement(IconCheck, { stroke: 1.5, size: "1rem" })
|
|
132
|
+
)))));
|
|
133
|
+
});
|
|
134
|
+
RichTextEditorColorPickerControl.displayName = "@mantine/tiptap/ColorPickerControl";
|
|
135
|
+
|
|
136
|
+
export { RichTextEditorColorPickerControl };
|
|
137
|
+
//# sourceMappingURL=RichTextEditorColorPickerControl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RichTextEditorColorPickerControl.js","sources":["../../src/RichTextEditorControl/RichTextEditorColorPickerControl.tsx"],"sourcesContent":["import React, { forwardRef, useState } from 'react';\nimport {\n BoxProps,\n Popover,\n PopoverProps,\n ColorSwatch,\n SimpleGrid,\n ColorPicker,\n Group,\n ActionIcon,\n Tooltip,\n ColorPickerProps,\n useProps,\n ElementProps,\n} from '@mantine/core';\nimport { useDisclosure } from '@mantine/hooks';\nimport { IconCircleOff, IconColorPicker, IconX, IconPalette, IconCheck } from '@tabler/icons-react';\nimport { RichTextEditorControl } from './RichTextEditorControl';\nimport { useRichTextEditorContext } from '../RichTextEditor.context';\n\nexport interface RichTextEditorColorPickerControlProps extends BoxProps, ElementProps<'button'> {\n /** Props added to Popover component */\n popoverProps?: Partial<PopoverProps>;\n\n /** Props added to ColorPicker component */\n colorPickerProps?: Partial<ColorPickerProps>;\n\n /** List of colors that the user can choose from */\n colors: string[];\n}\n\nconst defaultProps: Partial<RichTextEditorColorPickerControlProps> = {};\n\nexport const RichTextEditorColorPickerControl = forwardRef<\n HTMLButtonElement,\n RichTextEditorColorPickerControlProps\n>((props, ref) => {\n const { popoverProps, colors, colorPickerProps, ...others } = useProps(\n 'RichTextEditorColorPickerControl',\n defaultProps,\n props\n );\n\n const { editor, labels, getStyles } = useRichTextEditorContext();\n const [opened, { toggle, close }] = useDisclosure(false);\n const [state, setState] = useState<'palette' | 'colorPicker'>('palette');\n const currentColor = editor?.getAttributes('textStyle').color || 'var(--mantine-color-text)';\n\n const handleChange = (value: string, shouldClose = true) => {\n (editor?.chain() as any).focus().setColor(value).run();\n shouldClose && close();\n };\n\n const handleClear = () => {\n (editor?.chain() as any).focus().unsetColor().run();\n close();\n };\n\n const controls = colors.map((color, index) => (\n <ColorSwatch\n key={index}\n component=\"button\"\n color={color}\n onClick={() => handleChange(color)}\n size={26}\n radius=\"xs\"\n style={{ cursor: 'pointer' }}\n title={labels.colorPickerColorLabel(color)}\n aria-label={labels.colorPickerColorLabel(color)}\n />\n ));\n\n return (\n <Popover opened={opened} withinPortal trapFocus onClose={close} {...popoverProps}>\n <Popover.Target>\n <RichTextEditorControl\n {...others}\n aria-label={labels.colorPickerControlLabel}\n title={labels.colorPickerControlLabel}\n ref={ref}\n onClick={toggle}\n >\n <ColorSwatch color={currentColor} size={14} />\n </RichTextEditorControl>\n </Popover.Target>\n\n <Popover.Dropdown {...getStyles('linkEditorDropdown')}>\n {state === 'palette' && (\n <SimpleGrid cols={7} spacing={2}>\n {controls}\n </SimpleGrid>\n )}\n\n {state === 'colorPicker' && (\n <ColorPicker\n defaultValue={currentColor}\n onChange={(value) => handleChange(value, false)}\n {...colorPickerProps}\n />\n )}\n\n <Tooltip.Group closeDelay={200}>\n <Group justify=\"flex-end\" gap=\"xs\" mt=\"sm\">\n {state === 'palette' && (\n <ActionIcon\n variant=\"default\"\n onClick={close}\n title={labels.colorPickerCancel}\n aria-label={labels.colorPickerCancel}\n >\n <IconX stroke={1.5} size=\"1rem\" />\n </ActionIcon>\n )}\n\n <ActionIcon\n variant=\"default\"\n onClick={handleClear}\n title={labels.colorPickerClear}\n aria-label={labels.colorPickerClear}\n >\n <IconCircleOff stroke={1.5} size=\"1rem\" />\n </ActionIcon>\n\n {state === 'palette' ? (\n <ActionIcon\n variant=\"default\"\n onClick={() => setState('colorPicker')}\n title={labels.colorPickerColorPicker}\n aria-label={labels.colorPickerColorPicker}\n >\n <IconColorPicker stroke={1.5} size=\"1rem\" />\n </ActionIcon>\n ) : (\n <ActionIcon\n variant=\"default\"\n onClick={() => setState('palette')}\n aria-label={labels.colorPickerPalette}\n title={labels.colorPickerPalette}\n >\n <IconPalette stroke={1.5} size=\"1rem\" />\n </ActionIcon>\n )}\n\n {state === 'colorPicker' && (\n <ActionIcon\n variant=\"default\"\n onClick={close}\n title={labels.colorPickerSave}\n aria-label={labels.colorPickerSave}\n >\n <IconCheck stroke={1.5} size=\"1rem\" />\n </ActionIcon>\n )}\n </Group>\n </Tooltip.Group>\n </Popover.Dropdown>\n </Popover>\n );\n});\n\nRichTextEditorColorPickerControl.displayName = '@mantine/tiptap/ColorPickerControl';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import React, { forwardRef } from 'react';
|
|
2
|
+
import { factory, useProps, UnstyledButton, rem } from '@mantine/core';
|
|
3
|
+
import { useRichTextEditorContext } from '../RichTextEditor.context.js';
|
|
4
|
+
import classes from '../RichTextEditor.module.css.js';
|
|
5
|
+
|
|
6
|
+
var __defProp = Object.defineProperty;
|
|
7
|
+
var __defProps = Object.defineProperties;
|
|
8
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
9
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
10
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
11
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
12
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
13
|
+
var __spreadValues = (a, b) => {
|
|
14
|
+
for (var prop in b || (b = {}))
|
|
15
|
+
if (__hasOwnProp.call(b, prop))
|
|
16
|
+
__defNormalProp(a, prop, b[prop]);
|
|
17
|
+
if (__getOwnPropSymbols)
|
|
18
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
19
|
+
if (__propIsEnum.call(b, prop))
|
|
20
|
+
__defNormalProp(a, prop, b[prop]);
|
|
21
|
+
}
|
|
22
|
+
return a;
|
|
23
|
+
};
|
|
24
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
25
|
+
var __objRest = (source, exclude) => {
|
|
26
|
+
var target = {};
|
|
27
|
+
for (var prop in source)
|
|
28
|
+
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
29
|
+
target[prop] = source[prop];
|
|
30
|
+
if (source != null && __getOwnPropSymbols)
|
|
31
|
+
for (var prop of __getOwnPropSymbols(source)) {
|
|
32
|
+
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
33
|
+
target[prop] = source[prop];
|
|
34
|
+
}
|
|
35
|
+
return target;
|
|
36
|
+
};
|
|
37
|
+
const defaultProps = {
|
|
38
|
+
interactive: true
|
|
39
|
+
};
|
|
40
|
+
const RichTextEditorControl = factory((_props, ref) => {
|
|
41
|
+
const props = useProps("RichTextEditorControl", defaultProps, _props);
|
|
42
|
+
const _a = props, { classNames, className, style, styles, unstyled, vars, interactive, active } = _a, others = __objRest(_a, ["classNames", "className", "style", "styles", "unstyled", "vars", "interactive", "active"]);
|
|
43
|
+
const ctx = useRichTextEditorContext();
|
|
44
|
+
return /* @__PURE__ */ React.createElement(
|
|
45
|
+
UnstyledButton,
|
|
46
|
+
__spreadProps(__spreadValues(__spreadValues({}, others), ctx.getStyles("control", { className, style, classNames, styles })), {
|
|
47
|
+
"data-rich-text-editor-control": true,
|
|
48
|
+
tabIndex: interactive ? 0 : -1,
|
|
49
|
+
"data-interactive": interactive || void 0,
|
|
50
|
+
"data-active": active || void 0,
|
|
51
|
+
"aria-pressed": active && interactive || void 0,
|
|
52
|
+
"aria-hidden": !interactive || void 0,
|
|
53
|
+
ref,
|
|
54
|
+
unstyled
|
|
55
|
+
})
|
|
56
|
+
);
|
|
57
|
+
});
|
|
58
|
+
RichTextEditorControl.classes = classes;
|
|
59
|
+
RichTextEditorControl.displayName = "@mantine/tiptap/RichTextEditorControl";
|
|
60
|
+
const RichTextEditorControlBase = forwardRef((_a, ref) => {
|
|
61
|
+
var _b = _a, { className, icon: Icon } = _b, others = __objRest(_b, ["className", "icon"]);
|
|
62
|
+
return /* @__PURE__ */ React.createElement(RichTextEditorControl, __spreadValues({ ref }, others), /* @__PURE__ */ React.createElement(Icon, { style: { width: rem(16), height: rem(16) } }));
|
|
63
|
+
});
|
|
64
|
+
RichTextEditorControlBase.displayName = "@mantine/tiptap/RichTextEditorControlBase";
|
|
65
|
+
function createControl({ label, isActive, operation, icon }) {
|
|
66
|
+
return forwardRef((props, ref) => {
|
|
67
|
+
const { editor, labels } = useRichTextEditorContext();
|
|
68
|
+
const _label = labels[label];
|
|
69
|
+
return /* @__PURE__ */ React.createElement(
|
|
70
|
+
RichTextEditorControlBase,
|
|
71
|
+
__spreadProps(__spreadValues({}, props), {
|
|
72
|
+
"aria-label": _label,
|
|
73
|
+
title: _label,
|
|
74
|
+
active: (isActive == null ? void 0 : isActive.name) ? editor == null ? void 0 : editor.isActive(isActive.name, isActive.attributes) : false,
|
|
75
|
+
ref,
|
|
76
|
+
onClick: () => editor == null ? void 0 : editor.chain().focus()[operation.name](operation.attributes).run(),
|
|
77
|
+
icon: props.icon || icon
|
|
78
|
+
})
|
|
79
|
+
);
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
export { RichTextEditorControl, RichTextEditorControlBase, createControl };
|
|
84
|
+
//# sourceMappingURL=RichTextEditorControl.js.map
|