@reacteditor/core 0.0.1-alpha.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.
Files changed (52) hide show
  1. package/README.md +85 -0
  2. package/dist/Editor-GBV2O5RD.css +415 -0
  3. package/dist/Editor-IKMJILGR.mjs +204 -0
  4. package/dist/Render-EFT7YD2C.css +103 -0
  5. package/dist/Render-VDC7AEQK.mjs +55 -0
  6. package/dist/actions-BCDhqbeL.d.mts +849 -0
  7. package/dist/actions-BCDhqbeL.d.ts +849 -0
  8. package/dist/chunk-2YLS65V2.mjs +103 -0
  9. package/dist/chunk-6B2Q5R3C.mjs +53 -0
  10. package/dist/chunk-DXGQXXQG.mjs +63 -0
  11. package/dist/chunk-F7S5S6I2.mjs +114 -0
  12. package/dist/chunk-GAUBBDIR.mjs +463 -0
  13. package/dist/chunk-GUMYXUO3.mjs +33 -0
  14. package/dist/chunk-M6W7YEVX.mjs +95 -0
  15. package/dist/chunk-MFI3RDA4.mjs +11 -0
  16. package/dist/chunk-QNHSXCWU.mjs +8692 -0
  17. package/dist/chunk-SURZYH7D.mjs +1726 -0
  18. package/dist/chunk-V2OPYD42.mjs +708 -0
  19. package/dist/chunk-VD3EVRUF.mjs +476 -0
  20. package/dist/chunk-VOLQMQPK.mjs +146 -0
  21. package/dist/chunk-VUEM62JF.mjs +523 -0
  22. package/dist/chunk-Y2EFNT5P.mjs +108 -0
  23. package/dist/full-ELX6RALJ.css +311 -0
  24. package/dist/full-OBTPW7TC.mjs +93 -0
  25. package/dist/index-ComBHfdn.d.ts +117 -0
  26. package/dist/index-DVwiIwYU.d.mts +117 -0
  27. package/dist/index.css +3033 -0
  28. package/dist/index.d.mts +396 -0
  29. package/dist/index.d.ts +396 -0
  30. package/dist/index.js +14688 -0
  31. package/dist/index.mjs +87 -0
  32. package/dist/internal.d.mts +27 -0
  33. package/dist/internal.d.ts +27 -0
  34. package/dist/internal.js +931 -0
  35. package/dist/internal.mjs +13 -0
  36. package/dist/loaded-35WC23HJ.mjs +60 -0
  37. package/dist/loaded-TBSVRJPY.css +90 -0
  38. package/dist/loaded-ULSROV73.mjs +57 -0
  39. package/dist/loaded-YYRJPIWZ.mjs +57 -0
  40. package/dist/no-external.css +3031 -0
  41. package/dist/no-external.d.mts +21 -0
  42. package/dist/no-external.d.ts +21 -0
  43. package/dist/no-external.js +14688 -0
  44. package/dist/no-external.mjs +87 -0
  45. package/dist/rsc.css +103 -0
  46. package/dist/rsc.d.mts +27 -0
  47. package/dist/rsc.d.ts +27 -0
  48. package/dist/rsc.js +1493 -0
  49. package/dist/rsc.mjs +148 -0
  50. package/dist/walk-tree-BPIigVTF.d.mts +29 -0
  51. package/dist/walk-tree-BZq1CPCH.d.ts +29 -0
  52. package/package.json +139 -0
@@ -0,0 +1,103 @@
1
+ /* css-module:/Users/rami/Documents/apps/frontend-react-editor/packages/core/components/RichTextEditor/styles.module.css/#css-module-data */
2
+ ._RichTextEditor_1grt5_1 .ProseMirror {
3
+ white-space: pre-wrap;
4
+ word-wrap: break-word;
5
+ cursor: text;
6
+ outline: none;
7
+ position: relative;
8
+ }
9
+ ._RichTextEditor_1grt5_1 .rich-text * {
10
+ white-space: pre-wrap;
11
+ user-select: auto;
12
+ -webkit-user-select: auto;
13
+ }
14
+ ._RichTextEditor_1grt5_1 .rich-text blockquote {
15
+ margin: 1em 0;
16
+ padding: 0 1em;
17
+ border-left: 4px solid var(--re-border-default);
18
+ }
19
+ ._RichTextEditor_1grt5_1 .rich-text code {
20
+ background-color: var(--re-surface-sunken);
21
+ padding: 4px 8px;
22
+ border-radius: var(--re-radius-sm);
23
+ }
24
+ ._RichTextEditor_1grt5_1 .rich-text p:empty::before {
25
+ content: "\a0";
26
+ }
27
+ ._RichTextEditor_1grt5_1 .rich-text pre code {
28
+ display: block;
29
+ padding: 8px 12px;
30
+ }
31
+ ._RichTextEditor_1grt5_1 .rich-text > *:first-child,
32
+ ._RichTextEditor_1grt5_1 .ProseMirror > *:first-child,
33
+ ._RichTextEditor_1grt5_1 .rich-text * p:first-of-type {
34
+ margin-top: 0;
35
+ }
36
+ ._RichTextEditor_1grt5_1 .rich-text > *:last-child,
37
+ ._RichTextEditor_1grt5_1 .ProseMirror > *:last-child,
38
+ ._RichTextEditor_1grt5_1 .rich-text * p:last-of-type {
39
+ margin-bottom: 0;
40
+ }
41
+ ._RichTextEditor--editor_1grt5_50 {
42
+ background: var(--re-surface-panel);
43
+ border-width: 1px;
44
+ border-style: solid;
45
+ border-color: var(--re-border-default);
46
+ border-radius: var(--re-radius-md);
47
+ box-sizing: border-box;
48
+ display: flex;
49
+ flex-direction: column;
50
+ font-family: inherit;
51
+ font-size: var(--re-font-size-xxs);
52
+ resize: vertical;
53
+ text-align: initial;
54
+ transition: border-color var(--re-motion-fast) var(--re-ease), box-shadow var(--re-motion-fast) var(--re-ease);
55
+ width: 100%;
56
+ max-width: 100%;
57
+ min-height: 128px;
58
+ }
59
+ ._RichTextEditor--editor_1grt5_50 .rich-text {
60
+ flex-grow: 1;
61
+ }
62
+ ._RichTextEditor--editor_1grt5_50 .rich-text:not(:has(.ProseMirror)),
63
+ ._RichTextEditor--editor_1grt5_50 .rich-text .ProseMirror {
64
+ height: 100%;
65
+ padding: 12px 15px;
66
+ }
67
+ ._RichTextEditor--editor_1grt5_50 .rich-text ul,
68
+ ._RichTextEditor--editor_1grt5_50 .rich-text ol {
69
+ padding-left: 24px;
70
+ }
71
+ ._RichTextEditor--editor_1grt5_50 .rich-text li {
72
+ line-height: 1.5;
73
+ }
74
+ ._RichTextEditor--editor_1grt5_50 .rich-text p {
75
+ margin-block: 12px;
76
+ }
77
+ ._RichTextEditor--editor_1grt5_50 .rich-text ul {
78
+ list-style: disc;
79
+ }
80
+ ._RichTextEditor--editor_1grt5_50 .rich-text ol {
81
+ list-style: decimal;
82
+ }
83
+ ._RichTextEditor--editor_1grt5_50:focus-within {
84
+ border-color: var(--re-accent);
85
+ outline: none;
86
+ box-shadow: var(--re-ring);
87
+ transition: none;
88
+ }
89
+ ._RichTextEditor--editor_1grt5_50._RichTextEditor--disabled_1grt5_109 {
90
+ background: var(--re-surface-sunken);
91
+ }
92
+ ._RichTextEditor_1grt5_1:not(:focus-within):not(._RichTextEditor--isActive_1grt5_113) .ProseMirror ::selection {
93
+ background-color: transparent;
94
+ }
95
+ ._RichTextEditor-menu_1grt5_119 {
96
+ border-bottom: 1px solid var(--re-border-subtle);
97
+ position: sticky;
98
+ top: 0;
99
+ z-index: 1;
100
+ }
101
+ ._RichTextEditor--disabled_1grt5_109 ._RichTextEditor-menu_1grt5_119 {
102
+ border-bottom: 1px solid var(--re-border-subtle);
103
+ }
@@ -0,0 +1,55 @@
1
+ import {
2
+ EditorRichText
3
+ } from "./chunk-2YLS65V2.mjs";
4
+ import {
5
+ styles_module_default
6
+ } from "./chunk-MFI3RDA4.mjs";
7
+ import {
8
+ get_class_name_factory_default
9
+ } from "./chunk-Y2EFNT5P.mjs";
10
+ import {
11
+ init_react_import
12
+ } from "./chunk-M6W7YEVX.mjs";
13
+
14
+ // components/RichTextEditor/components/Render.tsx
15
+ init_react_import();
16
+ import { generateHTML, generateJSON } from "@tiptap/html";
17
+ import { useMemo } from "react";
18
+ import { jsx } from "react/jsx-runtime";
19
+ var getClassName = get_class_name_factory_default("RichTextEditor", styles_module_default);
20
+ function RichTextRender({
21
+ content,
22
+ field
23
+ }) {
24
+ const { tiptap = {}, options } = field;
25
+ const { extensions = [] } = tiptap;
26
+ const loadedExtensions = useMemo(
27
+ () => [EditorRichText.configure(options), ...extensions],
28
+ [field, extensions]
29
+ );
30
+ const normalized = useMemo(() => {
31
+ if (typeof content === "object" && (content == null ? void 0 : content.type) === "doc") {
32
+ return content;
33
+ }
34
+ if (typeof content === "string") {
35
+ const isHtml = /<\/?[a-z][\s\S]*>/i.test(content);
36
+ if (isHtml) {
37
+ return generateJSON(content, loadedExtensions);
38
+ }
39
+ return {
40
+ type: "doc",
41
+ content: [
42
+ { type: "paragraph", content: [{ type: "text", text: content }] }
43
+ ]
44
+ };
45
+ }
46
+ return { type: "doc", content: [] };
47
+ }, [content, loadedExtensions]);
48
+ const html = useMemo(() => {
49
+ return generateHTML(normalized, loadedExtensions);
50
+ }, [normalized, loadedExtensions]);
51
+ return /* @__PURE__ */ jsx("div", { className: getClassName(), children: /* @__PURE__ */ jsx("div", { className: "rich-text", dangerouslySetInnerHTML: { __html: html } }) });
52
+ }
53
+ export {
54
+ RichTextRender
55
+ };