@multiplatform.one/rich-text 7.4.1 → 7.6.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 (56) hide show
  1. package/dist/cjs/RichTextEditor/index.cjs +115 -50
  2. package/dist/cjs/RichTextEditor/index.native.js +119 -53
  3. package/dist/cjs/RichTextEditor/index.native.js.map +1 -1
  4. package/dist/cjs/toolbar/HeadingPicker.cjs +0 -7
  5. package/dist/cjs/toolbar/HeadingPicker.native.js +17 -13
  6. package/dist/cjs/toolbar/HeadingPicker.native.js.map +1 -1
  7. package/dist/cjs/toolbar/ListPicker.cjs +0 -7
  8. package/dist/cjs/toolbar/ListPicker.native.js +11 -12
  9. package/dist/cjs/toolbar/ListPicker.native.js.map +1 -1
  10. package/dist/cjs/toolbar/MoreDropdown.cjs +0 -7
  11. package/dist/cjs/toolbar/MoreDropdown.native.js +11 -12
  12. package/dist/cjs/toolbar/MoreDropdown.native.js.map +1 -1
  13. package/dist/esm/RichTextEditor/index.mjs +117 -53
  14. package/dist/esm/RichTextEditor/index.mjs.map +1 -1
  15. package/dist/esm/RichTextEditor/index.native.js +121 -56
  16. package/dist/esm/RichTextEditor/index.native.js.map +1 -1
  17. package/dist/esm/toolbar/HeadingPicker.mjs +0 -7
  18. package/dist/esm/toolbar/HeadingPicker.mjs.map +1 -1
  19. package/dist/esm/toolbar/HeadingPicker.native.js +17 -13
  20. package/dist/esm/toolbar/HeadingPicker.native.js.map +1 -1
  21. package/dist/esm/toolbar/ListPicker.mjs +0 -7
  22. package/dist/esm/toolbar/ListPicker.mjs.map +1 -1
  23. package/dist/esm/toolbar/ListPicker.native.js +11 -12
  24. package/dist/esm/toolbar/ListPicker.native.js.map +1 -1
  25. package/dist/esm/toolbar/MoreDropdown.mjs +0 -7
  26. package/dist/esm/toolbar/MoreDropdown.mjs.map +1 -1
  27. package/dist/esm/toolbar/MoreDropdown.native.js +11 -12
  28. package/dist/esm/toolbar/MoreDropdown.native.js.map +1 -1
  29. package/dist/jsx/RichTextEditor/index.mjs +117 -53
  30. package/dist/jsx/RichTextEditor/index.mjs.map +1 -1
  31. package/dist/jsx/RichTextEditor/index.native.js +119 -53
  32. package/dist/jsx/RichTextEditor/index.native.js.map +1 -1
  33. package/dist/jsx/toolbar/HeadingPicker.mjs +0 -7
  34. package/dist/jsx/toolbar/HeadingPicker.mjs.map +1 -1
  35. package/dist/jsx/toolbar/HeadingPicker.native.js +17 -13
  36. package/dist/jsx/toolbar/HeadingPicker.native.js.map +1 -1
  37. package/dist/jsx/toolbar/ListPicker.mjs +0 -7
  38. package/dist/jsx/toolbar/ListPicker.mjs.map +1 -1
  39. package/dist/jsx/toolbar/ListPicker.native.js +11 -12
  40. package/dist/jsx/toolbar/ListPicker.native.js.map +1 -1
  41. package/dist/jsx/toolbar/MoreDropdown.mjs +0 -7
  42. package/dist/jsx/toolbar/MoreDropdown.mjs.map +1 -1
  43. package/dist/jsx/toolbar/MoreDropdown.native.js +11 -12
  44. package/dist/jsx/toolbar/MoreDropdown.native.js.map +1 -1
  45. package/package.json +8 -8
  46. package/src/RichEditor.stories.tsx +36 -1
  47. package/src/RichTextEditor/index.tsx +134 -50
  48. package/src/RichTextEditor/richTextEditor.spec.tsx +141 -147
  49. package/src/toolbar/HeadingPicker.tsx +15 -14
  50. package/src/toolbar/ListPicker.tsx +9 -13
  51. package/src/toolbar/MoreDropdown.tsx +9 -13
  52. package/types/RichTextEditor/index.d.ts +6 -0
  53. package/types/RichTextEditor/index.d.ts.map +1 -1
  54. package/types/toolbar/HeadingPicker.d.ts.map +1 -1
  55. package/types/toolbar/ListPicker.d.ts.map +1 -1
  56. package/types/toolbar/MoreDropdown.d.ts.map +1 -1
@@ -175,19 +175,18 @@ function MoreDropdown(param) {
175
175
  tooltip: (0, import_t.t)("More"),
176
176
  children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(MoreIcon, {})
177
177
  })
178
- }), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.DropdownMenu.Content, {
178
+ }),
179
+ /*
180
+ * MPO-85: no onCloseAutoFocus — DropdownMenu.Content stopped accepting
181
+ * and forwarding it, so the handler was already discarded before it
182
+ * failed the build. Intent, to restore with the pass-through: toolbar
183
+ * menus must not steal focus back to the trigger on select-close, so
184
+ * focus returns to the editor and typing continues. Escape still
185
+ * restores the trigger via the menu's own close().
186
+ */
187
+ /* @__PURE__ */
188
+ (0, import_jsx_runtime.jsxs)(import_components.DropdownMenu.Content, {
179
189
  minWidth: 200,
180
- // Toolbar menus must not steal focus back to the trigger on
181
- // select-close: focus returns to the editor so typing continues.
182
- // Escape still restores the trigger via the menu's own close().
183
- onCloseAutoFocus: function onCloseAutoFocus(event) {
184
- event.preventDefault();
185
- if (selectedRef.current) {
186
- var _editorRef_current;
187
- selectedRef.current = false;
188
- (_editorRef_current = editorRef.current) === null || _editorRef_current === void 0 ? void 0 : _editorRef_current.focus();
189
- }
190
- },
191
190
  children: [inlineItems.length > 0 && /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
192
191
  children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(ItemSection, {
193
192
  items: inlineItems,
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","MoreDropdown_exports","__export","MoreDropdown","module","exports","import_jsx_runtime","require","import_react","import_react2","import_components","import_capabilities","import_ToolbarButton","import_icons","import_shortcuts","import_t","INLINE_ITEMS","label","SHORTCUTS","subscript","command","icon","SubscriptIcon","isActive","s","isSubscript","label2","superscript","SuperscriptIcon","isActive2","isSuperscript","ALIGN_ITEMS","label3","alignLeft","AlignLeftIcon","isActive3","textAlign","label4","alignCenter","AlignCenterIcon","isActive4","label5","alignRight","AlignRightIcon","isActive5","label6","alignJustify","AlignJustifyIcon","isActive6","BLOCK_ITEMS","label7","horizontalRule","HorizontalRuleIcon","label8","clearFormatting","ClearFormattingIcon","MoreIcon","jsx","DotsThreeIcon","size","weight","ItemSection","param","items","state","onSelect","Fragment","children","map","item","_item_isActive","Icon","label9","DropdownMenu","Item","closeOnSelect","backgroundColor","call","onSelect1","payload","editorRef","capabilities","disabled","open","setOpen","useState","selectedRef","useRef","handleSelect","handleSelect2","_editorRef_current","current","executeCommand","inlineItems","filter","isCommandInCapabilities","alignItems","jsxs","onOpenChange","placement","Trigger","asChild","ToolbarButton"],"sources":["../../../src/toolbar/MoreDropdown.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","MoreDropdown_exports","__export","MoreDropdown","module","exports","import_jsx_runtime","require","import_react","import_react2","import_components","import_capabilities","import_ToolbarButton","import_icons","import_shortcuts","import_t","INLINE_ITEMS","label","SHORTCUTS","subscript","command","icon","SubscriptIcon","isActive","s","isSubscript","label2","superscript","SuperscriptIcon","isActive2","isSuperscript","ALIGN_ITEMS","label3","alignLeft","AlignLeftIcon","isActive3","textAlign","label4","alignCenter","AlignCenterIcon","isActive4","label5","alignRight","AlignRightIcon","isActive5","label6","alignJustify","AlignJustifyIcon","isActive6","BLOCK_ITEMS","label7","horizontalRule","HorizontalRuleIcon","label8","clearFormatting","ClearFormattingIcon","MoreIcon","jsx","DotsThreeIcon","size","weight","ItemSection","param","items","state","onSelect","Fragment","children","map","item","_item_isActive","Icon","label9","DropdownMenu","Item","closeOnSelect","backgroundColor","call","onSelect1","payload","editorRef","capabilities","disabled","open","setOpen","useState","selectedRef","useRef","handleSelect","handleSelect2","_editorRef_current","current","executeCommand","inlineItems","filter"],"sources":["../../../src/toolbar/MoreDropdown.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,10 +1,66 @@
1
- import { useCallback, useRef, useState } from "react";
2
- import { YStack } from "tamagui";
1
+ import { useCallback, useEffect, useRef, useState } from "react";
2
+ import { isWeb } from "tamagui";
3
3
  import { Field, FieldLayout, Skeleton, getFieldError, mergeFieldHandler, useFormField, useResolvedValidators } from "@multiplatform.one/forms";
4
4
  import { RichEditor } from "../RichEditor.mjs";
5
5
  import { t } from "../shared/t.mjs";
6
- import { jsx, jsxs } from "react/jsx-runtime";
7
- const richTextIsEmpty = v => !v || v === "<p></p>" || v === "";
6
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
7
+ function richTextIsEmpty(v) {
8
+ return !v || v === "<p></p>" || v === "";
9
+ }
10
+ function applyExternalContent(editor, next, capabilities) {
11
+ if (!editor) return;
12
+ if (capabilities === "markdown") {
13
+ editor.setMarkdown(next);
14
+ return;
15
+ }
16
+ editor.setHTML(next);
17
+ }
18
+ function RichTextExternalValueSync({
19
+ value,
20
+ editorRef,
21
+ capabilities
22
+ }) {
23
+ const isFirst = useRef(true);
24
+ const lastPushed = useRef(value);
25
+ useEffect(() => {
26
+ if (isFirst.current) {
27
+ isFirst.current = false;
28
+ lastPushed.current = value;
29
+ return;
30
+ }
31
+ if (value === lastPushed.current) return;
32
+ lastPushed.current = value;
33
+ applyExternalContent(editorRef.current, value, capabilities);
34
+ }, [value, editorRef, capabilities]);
35
+ return null;
36
+ }
37
+ function EditorFocusTarget({
38
+ id,
39
+ editorRef
40
+ }) {
41
+ if (!isWeb) return null;
42
+ return /* @__PURE__ */jsx("textarea", {
43
+ id,
44
+ tabIndex: -1,
45
+ "aria-hidden": true,
46
+ readOnly: true,
47
+ value: "",
48
+ onFocus: event => {
49
+ event.currentTarget.blur();
50
+ editorRef.current?.focus();
51
+ },
52
+ style: {
53
+ position: "absolute",
54
+ width: 1,
55
+ height: 1,
56
+ padding: 0,
57
+ margin: 0,
58
+ border: 0,
59
+ opacity: 0,
60
+ overflow: "hidden"
61
+ }
62
+ });
63
+ }
8
64
  function RichTextEditor(props) {
9
65
  const {
10
66
  defaultValue = "",
@@ -24,6 +80,7 @@ function RichTextEditor(props) {
24
80
  helperText,
25
81
  required,
26
82
  size,
83
+ id: idProp,
27
84
  value: controlledValue,
28
85
  onChange,
29
86
  onBlur,
@@ -39,8 +96,7 @@ function RichTextEditor(props) {
39
96
  inlineEditing,
40
97
  onImageUpload,
41
98
  onFileUpload,
42
- mentions,
43
- ..._restProps
99
+ mentions
44
100
  } = props;
45
101
  const placeholder = placeholderProp ?? t("Write something...");
46
102
  const {
@@ -48,7 +104,9 @@ function RichTextEditor(props) {
48
104
  knobProps,
49
105
  id
50
106
  } = useFormField({
51
- form
107
+ form,
108
+ id: idProp,
109
+ compact
52
110
  });
53
111
  const resolvedValidators = useResolvedValidators(required, validators, label, name, richTextIsEmpty);
54
112
  const editorRef = useRef(null);
@@ -58,56 +116,68 @@ function RichTextEditor(props) {
58
116
  setInternalValue(html);
59
117
  onChange?.(html);
60
118
  }, [onChange]);
119
+ const layoutBind = {
120
+ id,
121
+ label,
122
+ labelProps,
123
+ helperText,
124
+ required,
125
+ size,
126
+ knobProps,
127
+ disabled,
128
+ purpose: "description",
129
+ placeholder
130
+ };
61
131
  if (skeleton) {
62
- return /* @__PURE__ */jsxs(YStack, {
63
- gap: "$2",
64
- children: [label && /* @__PURE__ */jsx(Skeleton, {
65
- variant: "text",
66
- width: "30%",
67
- height: 14
68
- }), /* @__PURE__ */jsx(Skeleton, {
132
+ return /* @__PURE__ */jsx(FieldLayout, {
133
+ ...layoutBind,
134
+ error: errorProp,
135
+ children: /* @__PURE__ */jsx(Skeleton, {
69
136
  variant: "rounded",
70
137
  width: "100%",
71
138
  height: minHeight
72
- })]
139
+ })
73
140
  });
74
141
  }
75
142
  const renderEditor = (currentValue, onValueChange, handleBlur, hasError) => {
76
- return /* @__PURE__ */jsx(RichEditor, {
77
- ref: editorRef,
78
- initialContent: currentValue,
79
- onChange: html => onValueChange(html),
80
- onBlur: handleBlur,
81
- placeholder,
82
- editable: !disabled && !readOnly,
83
- minHeight,
84
- maxHeight,
85
- showToolbar,
86
- showBubbleToolbar,
87
- sections,
88
- capabilities,
89
- hasError,
90
- size,
91
- compact,
92
- fullscreen,
93
- defaultFullscreen,
94
- onFullscreenChange,
95
- inlineEditing,
96
- onImageUpload,
97
- onFileUpload,
98
- mentions
143
+ return /* @__PURE__ */jsxs(Fragment, {
144
+ children: [/* @__PURE__ */jsx(RichTextExternalValueSync, {
145
+ value: currentValue,
146
+ editorRef,
147
+ capabilities
148
+ }), /* @__PURE__ */jsx(EditorFocusTarget, {
149
+ id,
150
+ editorRef
151
+ }), /* @__PURE__ */jsx(RichEditor, {
152
+ ref: editorRef,
153
+ initialContent: currentValue,
154
+ onChange: html => onValueChange(html),
155
+ onBlur: handleBlur,
156
+ placeholder,
157
+ editable: !disabled && !readOnly,
158
+ minHeight,
159
+ maxHeight,
160
+ showToolbar,
161
+ showBubbleToolbar,
162
+ sections,
163
+ capabilities,
164
+ hasError,
165
+ size,
166
+ compact,
167
+ fullscreen,
168
+ defaultFullscreen,
169
+ onFullscreenChange,
170
+ inlineEditing,
171
+ onImageUpload,
172
+ onFileUpload,
173
+ mentions
174
+ })]
99
175
  });
100
176
  };
101
177
  if (!resolvedForm || !name) {
102
178
  return /* @__PURE__ */jsx(FieldLayout, {
103
- id,
104
- label,
105
- labelProps,
179
+ ...layoutBind,
106
180
  error: errorProp,
107
- helperText,
108
- required,
109
- size,
110
- knobProps,
111
181
  onBlur,
112
182
  children: renderEditor(value, handleChange, onBlur, !!errorProp)
113
183
  });
@@ -123,19 +193,13 @@ function RichTextEditor(props) {
123
193
  const resolvedError = getFieldError(field, errorProp);
124
194
  const fieldValue = field.state.value ?? "";
125
195
  return /* @__PURE__ */jsx(FieldLayout, {
126
- id,
127
- label,
128
- labelProps,
196
+ ...layoutBind,
129
197
  error: resolvedError,
130
- helperText,
131
- required,
132
- size,
133
- knobProps,
134
198
  onBlur: mergeFieldHandler(field, "handleBlur", onBlur),
135
199
  children: renderEditor(fieldValue, v => field.handleChange(v), () => field.handleBlur(), !!resolvedError)
136
200
  });
137
201
  }
138
202
  });
139
203
  }
140
- export { RichTextEditor };
204
+ export { RichTextEditor, richTextIsEmpty };
141
205
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useRef","useState","YStack","Field","FieldLayout","Skeleton","getFieldError","mergeFieldHandler","useFormField","useResolvedValidators","RichEditor","t","jsx","jsxs","richTextIsEmpty","v","RichTextEditor","props","defaultValue","form","placeholder","placeholderProp","disabled","readOnly","minHeight","maxHeight","mode","name","preserveValue","validators","label","labelProps","error","errorProp","helperText","required","size","value","controlledValue","onChange","onBlur","showToolbar","compact","showBubbleToolbar","sections","capabilities","skeleton","fullscreen","defaultFullscreen","onFullscreenChange","inlineEditing","onImageUpload","onFileUpload","mentions","_restProps","resolvedForm","knobProps","id","resolvedValidators","editorRef","internalValue","setInternalValue","handleChange","html","gap","children","variant","width","height","renderEditor","currentValue","onValueChange","handleBlur","hasError","ref","initialContent","editable","field","resolvedError","fieldValue","state"],"sources":["../../../src/RichTextEditor/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useEffect","useRef","useState","isWeb","Field","FieldLayout","Skeleton","getFieldError","mergeFieldHandler","useFormField","useResolvedValidators","RichEditor","t","Fragment","jsx","jsxs","richTextIsEmpty","v","applyExternalContent","editor","next","capabilities","setMarkdown","setHTML","RichTextExternalValueSync","value","editorRef","isFirst","lastPushed","current","EditorFocusTarget","id","tabIndex","readOnly","onFocus","event","currentTarget","blur","focus","style","position","width","height","padding","margin","border","opacity","overflow","RichTextEditor","props","defaultValue","form","placeholder","placeholderProp","disabled","minHeight","maxHeight","mode","name","preserveValue","validators","label","labelProps","error","errorProp","helperText","required","size","idProp","controlledValue","onChange","onBlur","showToolbar","compact","showBubbleToolbar","sections","skeleton","fullscreen","defaultFullscreen","onFullscreenChange","inlineEditing","onImageUpload","onFileUpload","mentions","resolvedForm","knobProps","resolvedValidators","internalValue","setInternalValue","handleChange","html","layoutBind","purpose","children","variant","renderEditor","currentValue","onValueChange","handleBlur","hasError","ref","initialContent","editable","field","resolvedError","fieldValue","state"],"sources":["../../../src/RichTextEditor/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,12 +1,69 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useCallback, useRef, useState } from "react";
3
- import { YStack } from "tamagui";
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { useCallback, useEffect, useRef, useState } from "react";
3
+ import { isWeb } from "tamagui";
4
4
  import { Field, FieldLayout, Skeleton, getFieldError, mergeFieldHandler, useFormField, useResolvedValidators } from "@multiplatform.one/forms";
5
5
  import { RichEditor } from "../RichEditor.native.js";
6
6
  import { t } from "../shared/t.native.js";
7
- var richTextIsEmpty = function richTextIsEmpty2(v) {
7
+ function richTextIsEmpty(v) {
8
8
  return !v || v === "<p></p>" || v === "";
9
- };
9
+ }
10
+ function applyExternalContent(editor, next, capabilities) {
11
+ if (!editor) return;
12
+ if (capabilities === "markdown") {
13
+ editor.setMarkdown(next);
14
+ return;
15
+ }
16
+ editor.setHTML(next);
17
+ }
18
+ function RichTextExternalValueSync(param) {
19
+ var {
20
+ value,
21
+ editorRef,
22
+ capabilities
23
+ } = param;
24
+ var isFirst = useRef(true);
25
+ var lastPushed = useRef(value);
26
+ useEffect(function () {
27
+ if (isFirst.current) {
28
+ isFirst.current = false;
29
+ lastPushed.current = value;
30
+ return;
31
+ }
32
+ if (value === lastPushed.current) return;
33
+ lastPushed.current = value;
34
+ applyExternalContent(editorRef.current, value, capabilities);
35
+ }, [value, editorRef, capabilities]);
36
+ return null;
37
+ }
38
+ function EditorFocusTarget(param) {
39
+ var {
40
+ id,
41
+ editorRef
42
+ } = param;
43
+ if (!isWeb) return null;
44
+ return /* @__PURE__ */_jsx("textarea", {
45
+ id,
46
+ tabIndex: -1,
47
+ "aria-hidden": true,
48
+ readOnly: true,
49
+ value: "",
50
+ onFocus: function onFocus(event) {
51
+ var _editorRef_current;
52
+ event.currentTarget.blur();
53
+ (_editorRef_current = editorRef.current) === null || _editorRef_current === void 0 ? void 0 : _editorRef_current.focus();
54
+ },
55
+ style: {
56
+ position: "absolute",
57
+ width: 1,
58
+ height: 1,
59
+ padding: 0,
60
+ margin: 0,
61
+ border: 0,
62
+ opacity: 0,
63
+ overflow: "hidden"
64
+ }
65
+ });
66
+ }
10
67
  function RichTextEditor(props) {
11
68
  var {
12
69
  defaultValue = "",
@@ -26,6 +83,7 @@ function RichTextEditor(props) {
26
83
  helperText,
27
84
  required,
28
85
  size,
86
+ id: idProp,
29
87
  value: controlledValue,
30
88
  onChange,
31
89
  onBlur,
@@ -41,8 +99,7 @@ function RichTextEditor(props) {
41
99
  inlineEditing,
42
100
  onImageUpload,
43
101
  onFileUpload,
44
- mentions,
45
- ..._restProps
102
+ mentions
46
103
  } = props;
47
104
  var placeholder = placeholderProp !== null && placeholderProp !== void 0 ? placeholderProp : t("Write something...");
48
105
  var {
@@ -50,7 +107,9 @@ function RichTextEditor(props) {
50
107
  knobProps,
51
108
  id
52
109
  } = useFormField({
53
- form
110
+ form,
111
+ id: idProp,
112
+ compact
54
113
  });
55
114
  var resolvedValidators = useResolvedValidators(required, validators, label, name, richTextIsEmpty);
56
115
  var editorRef = useRef(null);
@@ -60,58 +119,70 @@ function RichTextEditor(props) {
60
119
  setInternalValue(html);
61
120
  onChange === null || onChange === void 0 ? void 0 : onChange(html);
62
121
  }, [onChange]);
122
+ var layoutBind = {
123
+ id,
124
+ label,
125
+ labelProps,
126
+ helperText,
127
+ required,
128
+ size,
129
+ knobProps,
130
+ disabled,
131
+ purpose: "description",
132
+ placeholder
133
+ };
63
134
  if (skeleton) {
64
- return /* @__PURE__ */_jsxs(YStack, {
65
- gap: "$2",
66
- children: [label && /* @__PURE__ */_jsx(Skeleton, {
67
- variant: "text",
68
- width: "30%",
69
- height: 14
70
- }), /* @__PURE__ */_jsx(Skeleton, {
135
+ return /* @__PURE__ */_jsx(FieldLayout, {
136
+ ...layoutBind,
137
+ error: errorProp,
138
+ children: /* @__PURE__ */_jsx(Skeleton, {
71
139
  variant: "rounded",
72
140
  width: "100%",
73
141
  height: minHeight
74
- })]
142
+ })
75
143
  });
76
144
  }
77
145
  var renderEditor = function renderEditor2(currentValue, onValueChange, handleBlur, hasError) {
78
- return /* @__PURE__ */_jsx(RichEditor, {
79
- ref: editorRef,
80
- initialContent: currentValue,
81
- onChange: function onChange2(html) {
82
- return onValueChange(html);
83
- },
84
- onBlur: handleBlur,
85
- placeholder,
86
- editable: !disabled && !readOnly,
87
- minHeight,
88
- maxHeight,
89
- showToolbar,
90
- showBubbleToolbar,
91
- sections,
92
- capabilities,
93
- hasError,
94
- size,
95
- compact,
96
- fullscreen,
97
- defaultFullscreen,
98
- onFullscreenChange,
99
- inlineEditing,
100
- onImageUpload,
101
- onFileUpload,
102
- mentions
146
+ return /* @__PURE__ */_jsxs(_Fragment, {
147
+ children: [/* @__PURE__ */_jsx(RichTextExternalValueSync, {
148
+ value: currentValue,
149
+ editorRef,
150
+ capabilities
151
+ }), /* @__PURE__ */_jsx(EditorFocusTarget, {
152
+ id,
153
+ editorRef
154
+ }), /* @__PURE__ */_jsx(RichEditor, {
155
+ ref: editorRef,
156
+ initialContent: currentValue,
157
+ onChange: function onChange2(html) {
158
+ return onValueChange(html);
159
+ },
160
+ onBlur: handleBlur,
161
+ placeholder,
162
+ editable: !disabled && !readOnly,
163
+ minHeight,
164
+ maxHeight,
165
+ showToolbar,
166
+ showBubbleToolbar,
167
+ sections,
168
+ capabilities,
169
+ hasError,
170
+ size,
171
+ compact,
172
+ fullscreen,
173
+ defaultFullscreen,
174
+ onFullscreenChange,
175
+ inlineEditing,
176
+ onImageUpload,
177
+ onFileUpload,
178
+ mentions
179
+ })]
103
180
  });
104
181
  };
105
182
  if (!resolvedForm || !name) {
106
183
  return /* @__PURE__ */_jsx(FieldLayout, {
107
- id,
108
- label,
109
- labelProps,
184
+ ...layoutBind,
110
185
  error: errorProp,
111
- helperText,
112
- required,
113
- size,
114
- knobProps,
115
186
  onBlur,
116
187
  children: renderEditor(value, handleChange, onBlur, !!errorProp)
117
188
  });
@@ -128,14 +199,8 @@ function RichTextEditor(props) {
128
199
  var resolvedError = getFieldError(field, errorProp);
129
200
  var fieldValue = (_field_state_value = field.state.value) !== null && _field_state_value !== void 0 ? _field_state_value : "";
130
201
  return /* @__PURE__ */_jsx(FieldLayout, {
131
- id,
132
- label,
133
- labelProps,
202
+ ...layoutBind,
134
203
  error: resolvedError,
135
- helperText,
136
- required,
137
- size,
138
- knobProps,
139
204
  onBlur: mergeFieldHandler(field, "handleBlur", onBlur),
140
205
  children: renderEditor(fieldValue, function (v) {
141
206
  return field.handleChange(v);
@@ -146,5 +211,5 @@ function RichTextEditor(props) {
146
211
  }
147
212
  });
148
213
  }
149
- export { RichTextEditor };
214
+ export { RichTextEditor, richTextIsEmpty };
150
215
  //# sourceMappingURL=index.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["jsx","_jsx","jsxs","_jsxs","useCallback","useRef","useState","YStack","Field","FieldLayout","Skeleton","getFieldError","mergeFieldHandler","useFormField","useResolvedValidators","RichEditor","t","richTextIsEmpty","richTextIsEmpty2","v","RichTextEditor","props","defaultValue","form","placeholder","placeholderProp","disabled","readOnly","minHeight","maxHeight","mode","name","preserveValue","validators","label","labelProps","error","errorProp","helperText","required","size","value","controlledValue","onChange","onBlur","showToolbar","compact","showBubbleToolbar","sections","capabilities","skeleton","fullscreen","defaultFullscreen","onFullscreenChange","inlineEditing","onImageUpload","onFileUpload","mentions","_restProps","resolvedForm","knobProps","id","resolvedValidators","editorRef","internalValue","setInternalValue","handleChange","html","gap","children","variant","width","height","renderEditor","renderEditor2","currentValue","onValueChange","handleBlur","hasError","ref","initialContent","onChange2","editable","field","_field_state_value","resolvedError","fieldValue","state"],"sources":["../../../src/RichTextEditor/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","useCallback","useEffect","useRef","useState","isWeb","Field","FieldLayout","Skeleton","getFieldError","mergeFieldHandler","useFormField","useResolvedValidators","RichEditor","t","richTextIsEmpty","v","applyExternalContent","editor","next","capabilities","setMarkdown","setHTML","RichTextExternalValueSync","param","value","editorRef","isFirst","lastPushed","current","EditorFocusTarget","id","tabIndex","readOnly","onFocus","event","_editorRef_current","currentTarget","blur","focus","style","position","width","height","padding","margin","border","opacity","overflow","RichTextEditor","props","defaultValue","form","placeholder","placeholderProp","disabled","minHeight","maxHeight","mode","name","preserveValue","validators","label","labelProps","error","errorProp","helperText","required","size","idProp","controlledValue","onChange","onBlur","showToolbar","compact","showBubbleToolbar","sections","skeleton","fullscreen","defaultFullscreen","onFullscreenChange","inlineEditing","onImageUpload","onFileUpload","mentions","resolvedForm","knobProps","resolvedValidators","internalValue","setInternalValue","handleChange","html","layoutBind","purpose","children","variant","renderEditor","renderEditor2","currentValue","onValueChange","handleBlur","hasError","ref","initialContent","onChange2","editable","field","_field_state_value","resolvedError","fieldValue","state"],"sources":["../../../src/RichTextEditor/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -91,13 +91,6 @@ function HeadingPicker({
91
91
  })
92
92
  }), /* @__PURE__ */jsx(DropdownMenu.Content, {
93
93
  minWidth: 200,
94
- onCloseAutoFocus: event => {
95
- event.preventDefault();
96
- if (selectedRef.current) {
97
- selectedRef.current = false;
98
- editorRef.current?.focus();
99
- }
100
- },
101
94
  children: HEADING_OPTIONS.map(option => {
102
95
  const description = option.description();
103
96
  return /* @__PURE__ */jsxs(DropdownMenu.Item, {
@@ -1 +1 @@
1
- {"version":3,"names":["useRef","useState","DropdownMenu","Text","ToolbarDropdownButton","t","jsx","jsxs","HEADING_OPTIONS","label","description","command","stateKey","fontSize","fontWeight","getActiveHeadingLabel","state","isHeading1","isHeading2","isHeading3","isHeading4","isHeading5","isHeading6","isAnyHeadingActive","HeadingPicker","editorRef","disabled","open","setOpen","selectedRef","onOpenChange","placement","children","Trigger","asChild","active","onPress","Content","minWidth","onCloseAutoFocus","event","preventDefault","current","focus","map","option","Item","closeOnSelect","backgroundColor","onSelect","executeCommand","color"],"sources":["../../../src/toolbar/HeadingPicker.tsx"],"sourcesContent":[null],"mappings":"AAIA,SAASA,MAAA,EAAQC,QAAA,QAAgB;AACjC,SAASC,YAAA,QAAoB;AAC7B,SAASC,IAAA,QAAY;AAErB,SAASC,qBAAA,QAA6B;AACtC,SAASC,CAAA,QAAS;AA8HR,SAAAC,GAAA,EAkCIC,IAAA,QAlCJ;AAjGV,MAAMC,eAAA,GAAmC,CACvC;EACEC,KAAA,EAAO;EACPC,WAAA,EAAaA,CAAA,KAAML,CAAA,CAAE,WAAW;EAChCM,OAAA,EAAS;EACTC,QAAA,EAAU;EACVC,QAAA,EAAU;EACVC,UAAA,EAAY;AACd,GACA;EACEL,KAAA,EAAO;EACPC,WAAA,EAAaA,CAAA,KAAML,CAAA,CAAE,WAAW;EAChCM,OAAA,EAAS;EACTC,QAAA,EAAU;EACVC,QAAA,EAAU;EACVC,UAAA,EAAY;AACd,GACA;EACEL,KAAA,EAAO;EACPC,WAAA,EAAaA,CAAA,KAAML,CAAA,CAAE,WAAW;EAChCM,OAAA,EAAS;EACTC,QAAA,EAAU;EACVC,QAAA,EAAU;EACVC,UAAA,EAAY;AACd,GACA;EACEL,KAAA,EAAO;EACPC,WAAA,EAAaA,CAAA,KAAML,CAAA,CAAE,WAAW;EAChCM,OAAA,EAAS;EACTC,QAAA,EAAU;EACVC,QAAA,EAAU;EACVC,UAAA,EAAY;AACd,GACA;EACEL,KAAA,EAAO;EACPC,WAAA,EAAaA,CAAA,KAAML,CAAA,CAAE,WAAW;EAChCM,OAAA,EAAS;EACTC,QAAA,EAAU;EACVC,QAAA,EAAU;EACVC,UAAA,EAAY;AACd,GACA;EACEL,KAAA,EAAO;EACPC,WAAA,EAAaA,CAAA,KAAML,CAAA,CAAE,WAAW;EAChCM,OAAA,EAAS;EACTC,QAAA,EAAU;EACVC,QAAA,EAAU;EACVC,UAAA,EAAY;AACd,GACA;EACEL,KAAA,EAAO;EACPC,WAAA,EAAaA,CAAA,KAAML,CAAA,CAAE,WAAW;EAChCM,OAAA,EAAS;EACTC,QAAA,EAAU;EACVC,QAAA,EAAU;EACVC,UAAA,EAAY;AACd,EACF;AAMA,SAASC,sBAAsBC,KAAA,EAA4B;EACzD,IAAIA,KAAA,CAAMC,UAAA,EAAY,OAAO;EAC7B,IAAID,KAAA,CAAME,UAAA,EAAY,OAAO;EAC7B,IAAIF,KAAA,CAAMG,UAAA,EAAY,OAAO;EAC7B,IAAIH,KAAA,CAAMI,UAAA,EAAY,OAAO;EAC7B,IAAIJ,KAAA,CAAMK,UAAA,EAAY,OAAO;EAC7B,IAAIL,KAAA,CAAMM,UAAA,EAAY,OAAO;EAC7B,OAAO;AACT;AAEA,SAASC,mBAAmBP,KAAA,EAA6B;EACvD,OACEA,KAAA,CAAMC,UAAA,IACND,KAAA,CAAME,UAAA,IACNF,KAAA,CAAMG,UAAA,IACNH,KAAA,CAAMI,UAAA,IACNJ,KAAA,CAAMK,UAAA,IACNL,KAAA,CAAMM,UAAA;AAEV;AAEO,SAASE,cAAc;EAAEC,SAAA;EAAWT,KAAA;EAAOU;AAAS,GAAuB;EAChF,MAAM,CAACC,IAAA,EAAMC,OAAO,IAAI3B,QAAA,CAAS,KAAK;EACtC,MAAM4B,WAAA,GAAc7B,MAAA,CAAO,KAAK;EAEhC,OACE,eAAAO,IAAA,CAACL,YAAA;IAAayB,IAAA;IAAYG,YAAA,EAAcF,OAAA;IAASG,SAAA,EAAU;IACzDC,QAAA,kBAAA1B,GAAA,CAACJ,YAAA,CAAa+B,OAAA,EAAb;MAAqBC,OAAA,EAAO;MAC3BF,QAAA,iBAAA1B,GAAA,CAACF,qBAAA;QACC+B,MAAA,EAAQZ,kBAAA,CAAmBP,KAAK;QAChCU,QAAA;QACAU,OAAA,EAASA,CAAA,KAAMR,OAAA,CAAQ,IAAI;QAC3B,cAAYvB,CAAA,CAAE,SAAS;QAEvB2B,QAAA,iBAAA1B,GAAA,CAACH,IAAA;UAAKW,UAAA,EAAW;UAAOkB,QAAA,EAAAjB,qBAAA,CAAsBC,KAAK;QAAA,CAAE;MAAA,CACvD;IAAA,CACF,GACA,eAAAV,GAAA,CAACJ,YAAA,CAAamC,OAAA,EAAb;MACCC,QAAA,EAAU;MAKVC,gBAAA,EAAmBC,KAAA,IAAU;QAC3BA,KAAA,CAAMC,cAAA,CAAe;QACrB,IAAIZ,WAAA,CAAYa,OAAA,EAAS;UACvBb,WAAA,CAAYa,OAAA,GAAU;UACtBjB,SAAA,CAAUiB,OAAA,EAASC,KAAA,CAAM;QAC3B;MACF;MAECX,QAAA,EAAAxB,eAAA,CAAgBoC,GAAA,CAAKC,MAAA,IAAW;QAC/B,MAAMnC,WAAA,GAAcmC,MAAA,CAAOnC,WAAA,CAAY;QACvC,OACE,eAAAH,IAAA,CAACL,YAAA,CAAa4C,IAAA,EAAb;UAECC,aAAA,EAAe;UACfC,eAAA,EAAiBhC,KAAA,CAAM6B,MAAA,CAAOjC,QAAQ,IAAI,YAAY;UACtD,cAAYF,WAAA;UACZuC,QAAA,EAAUA,CAAA,KAAM;YACdpB,WAAA,CAAYa,OAAA,GAAU;YACtBjB,SAAA,CAAUiB,OAAA,EAASQ,cAAA,CAAeL,MAAA,CAAOlC,OAAO;YAChDiB,OAAA,CAAQ,KAAK;UACf;UAEAI,QAAA,kBAAA1B,GAAA,CAACH,IAAA;YAAKW,UAAA,EAAY+B,MAAA,CAAO/B,UAAA;YAAmBD,QAAA,EAAUgC,MAAA,CAAOhC,QAAA;YAC1DmB,QAAA,EAAAa,MAAA,CAAOpC;UAAA,CACV,GACA,eAAAF,IAAA,CAACJ,IAAA;YAAKgD,KAAA,EAAM;YAAWnB,QAAA,QAAEtB,WAAA;UAAA,CAAY;QAAA,GAbhCmC,MAAA,CAAOlC,OAcd;MAEJ,CAAC;IAAA,CACH;EAAA,CACF;AAEJ","ignoreList":[]}
1
+ {"version":3,"names":["useRef","useState","DropdownMenu","Text","ToolbarDropdownButton","t","jsx","jsxs","HEADING_OPTIONS","label","description","command","stateKey","fontSize","fontWeight","getActiveHeadingLabel","state","isHeading1","isHeading2","isHeading3","isHeading4","isHeading5","isHeading6","isAnyHeadingActive","HeadingPicker","editorRef","disabled","open","setOpen","selectedRef","onOpenChange","placement","children","Trigger","asChild","active","onPress","Content","minWidth","map","option","Item","closeOnSelect","backgroundColor","onSelect","current","executeCommand","color"],"sources":["../../../src/toolbar/HeadingPicker.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}