@empoleon/tiptap
Version:
Rich text editor based on tiptap
109 lines (105 loc) • 4.96 kB
JavaScript
;
var web = require('solid-js/web');
var solidJs = require('solid-js');
var core = require('@empoleon/core');
var labels = require('./labels.cjs');
var RichTextEditor_context = require('./RichTextEditor.context.cjs');
var RichTextEditorContent = require('./RichTextEditorContent/RichTextEditorContent.cjs');
var controls = require('./RichTextEditorControl/controls.cjs');
var RichTextEditorLinkControl = require('./RichTextEditorControl/RichTextEditorLinkControl.cjs');
var RichTextEditorColorPickerControl = require('./RichTextEditorControl/RichTextEditorColorPickerControl.cjs');
var RichTextEditorColorControl = require('./RichTextEditorControl/RichTextEditorColorControl.cjs');
var RichTextEditorControl = require('./RichTextEditorControl/RichTextEditorControl.cjs');
var RichTextEditorControlsGroup = require('./RichTextEditorControlsGroup/RichTextEditorControlsGroup.cjs');
var RichTextEditorToolbar = require('./RichTextEditorToolbar/RichTextEditorToolbar.cjs');
var RichTextEditor_module = require('./RichTextEditor.module.css.cjs');
const defaultProps = {
withCodeHighlightStyles: true,
withTypographyStyles: true,
variant: "default"
};
const RichTextEditor = core.factory(_props => {
const props = core.useProps("RichTextEditor", defaultProps, _props);
const [local, others] = solidJs.splitProps(props, ["classNames", "className", "style", "styles", "unstyled", "vars", "editor", "withCodeHighlightStyles", "withTypographyStyles", "labels", "children", "variant", "ref"]);
const getStyles = core.useStyles({
name: "RichTextEditor",
classes: RichTextEditor_module,
props,
className: local.className,
style: local.style,
classNames: local.classNames,
styles: local.styles,
unstyled: local.unstyled,
vars: local.vars
});
const mergedLabels = solidJs.createMemo(() => ({
...labels.DEFAULT_LABELS,
...local.labels
}));
return web.createComponent(RichTextEditor_context.RichTextEditorProvider, {
get value() {
return {
editor: local.editor,
getStyles,
labels: mergedLabels(),
withCodeHighlightStyles: local.withCodeHighlightStyles,
withTypographyStyles: local.withTypographyStyles,
unstyled: local.unstyled,
variant: local.variant
};
},
get children() {
return web.createComponent(core.Box, web.mergeProps(() => getStyles("root"), others, {
ref(r$) {
var _ref$ = local.ref;
typeof _ref$ === "function" ? _ref$(r$) : local.ref = r$;
},
get children() {
return local.children;
}
}));
}
});
});
RichTextEditor.classes = RichTextEditor_module;
RichTextEditor.displayName = "@empoleon/tiptap/RichTextEditor";
RichTextEditor.Content = RichTextEditorContent.RichTextEditorContent;
RichTextEditor.Control = RichTextEditorControl.RichTextEditorControl;
RichTextEditor.Toolbar = RichTextEditorToolbar.RichTextEditorToolbar;
RichTextEditor.ControlsGroup = RichTextEditorControlsGroup.RichTextEditorControlsGroup;
RichTextEditor.Bold = controls.BoldControl;
RichTextEditor.Italic = controls.ItalicControl;
RichTextEditor.Strikethrough = controls.StrikeThroughControl;
RichTextEditor.Underline = controls.UnderlineControl;
RichTextEditor.ClearFormatting = controls.ClearFormattingControl;
RichTextEditor.H1 = controls.H1Control;
RichTextEditor.H2 = controls.H2Control;
RichTextEditor.H3 = controls.H3Control;
RichTextEditor.H4 = controls.H4Control;
RichTextEditor.H5 = controls.H5Control;
RichTextEditor.H6 = controls.H6Control;
RichTextEditor.BulletList = controls.BulletListControl;
RichTextEditor.OrderedList = controls.OrderedListControl;
RichTextEditor.Link = RichTextEditorLinkControl.RichTextEditorLinkControl;
RichTextEditor.Unlink = controls.UnlinkControl;
RichTextEditor.Blockquote = controls.BlockquoteControl;
RichTextEditor.AlignLeft = controls.AlignLeftControl;
RichTextEditor.AlignRight = controls.AlignRightControl;
RichTextEditor.AlignCenter = controls.AlignCenterControl;
RichTextEditor.AlignJustify = controls.AlignJustifyControl;
RichTextEditor.Superscript = controls.SuperscriptControl;
RichTextEditor.Subscript = controls.SubscriptControl;
RichTextEditor.Code = controls.CodeControl;
RichTextEditor.CodeBlock = controls.CodeBlockControl;
RichTextEditor.ColorPicker = RichTextEditorColorPickerControl.RichTextEditorColorPickerControl;
RichTextEditor.Color = RichTextEditorColorControl.RichTextEditorColorControl;
RichTextEditor.Highlight = controls.HighlightControl;
RichTextEditor.Hr = controls.HrControl;
RichTextEditor.UnsetColor = controls.UnsetColorControl;
RichTextEditor.Undo = controls.UndoControl;
RichTextEditor.Redo = controls.RedoControl;
RichTextEditor.TaskList = controls.TaskListControl;
RichTextEditor.TaskListSink = controls.TaskListSinkControl;
RichTextEditor.TaskListLift = controls.TaskListLiftControl;
exports.RichTextEditor = RichTextEditor;
//# sourceMappingURL=RichTextEditor.cjs.map