@multiplatform.one/rich-text 7.4.1 → 7.5.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/dist/cjs/RichTextEditor/index.cjs +115 -50
- package/dist/cjs/RichTextEditor/index.native.js +119 -53
- package/dist/cjs/RichTextEditor/index.native.js.map +1 -1
- package/dist/cjs/toolbar/HeadingPicker.cjs +0 -7
- package/dist/cjs/toolbar/HeadingPicker.native.js +17 -13
- package/dist/cjs/toolbar/HeadingPicker.native.js.map +1 -1
- package/dist/cjs/toolbar/ListPicker.cjs +0 -7
- package/dist/cjs/toolbar/ListPicker.native.js +11 -12
- package/dist/cjs/toolbar/ListPicker.native.js.map +1 -1
- package/dist/cjs/toolbar/MoreDropdown.cjs +0 -7
- package/dist/cjs/toolbar/MoreDropdown.native.js +11 -12
- package/dist/cjs/toolbar/MoreDropdown.native.js.map +1 -1
- package/dist/esm/RichTextEditor/index.mjs +117 -53
- package/dist/esm/RichTextEditor/index.mjs.map +1 -1
- package/dist/esm/RichTextEditor/index.native.js +121 -56
- package/dist/esm/RichTextEditor/index.native.js.map +1 -1
- package/dist/esm/toolbar/HeadingPicker.mjs +0 -7
- package/dist/esm/toolbar/HeadingPicker.mjs.map +1 -1
- package/dist/esm/toolbar/HeadingPicker.native.js +17 -13
- package/dist/esm/toolbar/HeadingPicker.native.js.map +1 -1
- package/dist/esm/toolbar/ListPicker.mjs +0 -7
- package/dist/esm/toolbar/ListPicker.mjs.map +1 -1
- package/dist/esm/toolbar/ListPicker.native.js +11 -12
- package/dist/esm/toolbar/ListPicker.native.js.map +1 -1
- package/dist/esm/toolbar/MoreDropdown.mjs +0 -7
- package/dist/esm/toolbar/MoreDropdown.mjs.map +1 -1
- package/dist/esm/toolbar/MoreDropdown.native.js +11 -12
- package/dist/esm/toolbar/MoreDropdown.native.js.map +1 -1
- package/dist/jsx/RichTextEditor/index.mjs +117 -53
- package/dist/jsx/RichTextEditor/index.mjs.map +1 -1
- package/dist/jsx/RichTextEditor/index.native.js +119 -53
- package/dist/jsx/RichTextEditor/index.native.js.map +1 -1
- package/dist/jsx/toolbar/HeadingPicker.mjs +0 -7
- package/dist/jsx/toolbar/HeadingPicker.mjs.map +1 -1
- package/dist/jsx/toolbar/HeadingPicker.native.js +17 -13
- package/dist/jsx/toolbar/HeadingPicker.native.js.map +1 -1
- package/dist/jsx/toolbar/ListPicker.mjs +0 -7
- package/dist/jsx/toolbar/ListPicker.mjs.map +1 -1
- package/dist/jsx/toolbar/ListPicker.native.js +11 -12
- package/dist/jsx/toolbar/ListPicker.native.js.map +1 -1
- package/dist/jsx/toolbar/MoreDropdown.mjs +0 -7
- package/dist/jsx/toolbar/MoreDropdown.mjs.map +1 -1
- package/dist/jsx/toolbar/MoreDropdown.native.js +11 -12
- package/dist/jsx/toolbar/MoreDropdown.native.js.map +1 -1
- package/package.json +8 -8
- package/src/RichEditor.stories.tsx +36 -1
- package/src/RichTextEditor/index.tsx +134 -50
- package/src/RichTextEditor/richTextEditor.spec.tsx +141 -147
- package/src/toolbar/HeadingPicker.tsx +15 -14
- package/src/toolbar/ListPicker.tsx +9 -13
- package/src/toolbar/MoreDropdown.tsx +9 -13
- package/types/RichTextEditor/index.d.ts +6 -0
- package/types/RichTextEditor/index.d.ts.map +1 -1
- package/types/toolbar/HeadingPicker.d.ts.map +1 -1
- package/types/toolbar/ListPicker.d.ts.map +1 -1
- package/types/toolbar/MoreDropdown.d.ts.map +1 -1
|
@@ -106,20 +106,24 @@ function HeadingPicker(param) {
|
|
|
106
106
|
children: getActiveHeadingLabel(state)
|
|
107
107
|
})
|
|
108
108
|
})
|
|
109
|
-
}),
|
|
109
|
+
}),
|
|
110
|
+
/*
|
|
111
|
+
* MPO-85: no onCloseAutoFocus. DropdownMenuContentProps used to extend
|
|
112
|
+
* PopoverContentProps and DropdownMenuContent used to spread `...props`,
|
|
113
|
+
* so this handler reached the overlay. The DropdownMenu rewrite dropped
|
|
114
|
+
* both: the interface now declares four props and the component reads
|
|
115
|
+
* only `children`, so the handler was already being discarded before it
|
|
116
|
+
* failed the build with TS2322.
|
|
117
|
+
*
|
|
118
|
+
* Restore the pass here in the same change that gives DropdownMenu.Content
|
|
119
|
+
* its prop pass-through back. Until then the intent is: toolbar menus must
|
|
120
|
+
* not steal focus back to the trigger on select-close, because the user
|
|
121
|
+
* expects to keep typing, so focus returns to the editor. Escape still
|
|
122
|
+
* restores the trigger via the menu's own close().
|
|
123
|
+
*/
|
|
124
|
+
/* @__PURE__ */
|
|
125
|
+
_jsx(DropdownMenu.Content, {
|
|
110
126
|
minWidth: 200,
|
|
111
|
-
// Toolbar menus must not steal focus back to the trigger on
|
|
112
|
-
// select-close: the user expects to keep typing, so focus returns
|
|
113
|
-
// to the editor. Escape still restores the trigger via the menu's
|
|
114
|
-
// own close().
|
|
115
|
-
onCloseAutoFocus: function onCloseAutoFocus(event) {
|
|
116
|
-
event.preventDefault();
|
|
117
|
-
if (selectedRef.current) {
|
|
118
|
-
var _editorRef_current;
|
|
119
|
-
selectedRef.current = false;
|
|
120
|
-
(_editorRef_current = editorRef.current) === null || _editorRef_current === void 0 ? void 0 : _editorRef_current.focus();
|
|
121
|
-
}
|
|
122
|
-
},
|
|
123
127
|
children: HEADING_OPTIONS.map(function (option) {
|
|
124
128
|
var description8 = option.description();
|
|
125
129
|
return /* @__PURE__ */_jsxs(DropdownMenu.Item, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["jsx","_jsx","jsxs","_jsxs","useRef","useState","DropdownMenu","Text","ToolbarDropdownButton","t","HEADING_OPTIONS","label","description","command","stateKey","fontSize","fontWeight","description2","description3","description4","description5","description6","description7","getActiveHeadingLabel","state","isHeading1","isHeading2","isHeading3","isHeading4","isHeading5","isHeading6","isAnyHeadingActive","HeadingPicker","param","editorRef","disabled","open","setOpen","selectedRef","onOpenChange","placement","children","Trigger","asChild","active","onPress"
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","jsxs","_jsxs","useRef","useState","DropdownMenu","Text","ToolbarDropdownButton","t","HEADING_OPTIONS","label","description","command","stateKey","fontSize","fontWeight","description2","description3","description4","description5","description6","description7","getActiveHeadingLabel","state","isHeading1","isHeading2","isHeading3","isHeading4","isHeading5","isHeading6","isAnyHeadingActive","HeadingPicker","param","editorRef","disabled","open","setOpen","selectedRef","onOpenChange","placement","children","Trigger","asChild","active","onPress"],"sources":["../../../src/toolbar/HeadingPicker.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -51,13 +51,6 @@ function ListPicker({
|
|
|
51
51
|
})
|
|
52
52
|
}), /* @__PURE__ */jsx(DropdownMenu.Content, {
|
|
53
53
|
minWidth: 150,
|
|
54
|
-
onCloseAutoFocus: event => {
|
|
55
|
-
event.preventDefault();
|
|
56
|
-
if (selectedRef.current) {
|
|
57
|
-
selectedRef.current = false;
|
|
58
|
-
editorRef.current?.focus();
|
|
59
|
-
}
|
|
60
|
-
},
|
|
61
54
|
children: LIST_OPTIONS.map(option => {
|
|
62
55
|
const Icon = option.icon;
|
|
63
56
|
const label = option.label();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useRef","useState","DropdownMenu","ToolbarDropdownButton","BulletListIcon","OrderedListIcon","TaskListIcon","t","jsx","jsxs","LIST_OPTIONS","label","command","stateKey","icon","getActiveListIcon","state","isOrderedList","isTaskList","isAnyListActive","isBulletList","ListPicker","editorRef","disabled","open","setOpen","selectedRef","ActiveIcon","onOpenChange","placement","children","Trigger","asChild","active","onPress","Content","minWidth","
|
|
1
|
+
{"version":3,"names":["useRef","useState","DropdownMenu","ToolbarDropdownButton","BulletListIcon","OrderedListIcon","TaskListIcon","t","jsx","jsxs","LIST_OPTIONS","label","command","stateKey","icon","getActiveListIcon","state","isOrderedList","isTaskList","isAnyListActive","isBulletList","ListPicker","editorRef","disabled","open","setOpen","selectedRef","ActiveIcon","onOpenChange","placement","children","Trigger","asChild","active","onPress","Content","minWidth","map","option","Icon","Item","closeOnSelect","backgroundColor","onSelect","current","executeCommand"],"sources":["../../../src/toolbar/ListPicker.tsx"],"sourcesContent":[null],"mappings":"AAIA,SAASA,MAAA,EAAQC,QAAA,QAAgB;AACjC,SAASC,YAAA,QAAoB;AAE7B,SAASC,qBAAA,QAA6B;AACtC,SAASC,cAAA,EAAgBC,eAAA,EAAiBC,YAAA,QAAoB;AAC9D,SAASC,CAAA,QAAS;AAoEd,SAQMC,GAAA,EARNC,IAAA;AAzCJ,MAAMC,YAAA,GAA6B,CACjC;EACEC,KAAA,EAAOA,CAAA,KAAMJ,CAAA,CAAE,aAAa;EAC5BK,OAAA,EAAS;EACTC,QAAA,EAAU;EACVC,IAAA,EAAMV;AACR,GACA;EACEO,KAAA,EAAOA,CAAA,KAAMJ,CAAA,CAAE,cAAc;EAC7BK,OAAA,EAAS;EACTC,QAAA,EAAU;EACVC,IAAA,EAAMT;AACR,GACA;EACEM,KAAA,EAAOA,CAAA,KAAMJ,CAAA,CAAE,WAAW;EAC1BK,OAAA,EAAS;EACTC,QAAA,EAAU;EACVC,IAAA,EAAMR;AACR,EACF;AAMA,SAASS,kBAAkBC,KAAA,EAAoB;EAC7C,IAAIA,KAAA,CAAMC,aAAA,EAAe,OAAOZ,eAAA;EAChC,IAAIW,KAAA,CAAME,UAAA,EAAY,OAAOZ,YAAA;EAC7B,OAAOF,cAAA;AACT;AAEA,SAASe,gBAAgBH,KAAA,EAA6B;EACpD,OAAOA,KAAA,CAAMI,YAAA,IAAgBJ,KAAA,CAAMC,aAAA,IAAiBD,KAAA,CAAME,UAAA;AAC5D;AAEO,SAASG,WAAW;EAAEC,SAAA;EAAWN,KAAA;EAAOO;AAAS,GAAoB;EAC1E,MAAM,CAACC,IAAA,EAAMC,OAAO,IAAIxB,QAAA,CAAS,KAAK;EACtC,MAAMyB,WAAA,GAAc1B,MAAA,CAAO,KAAK;EAChC,MAAM2B,UAAA,GAAaZ,iBAAA,CAAkBC,KAAK;EAE1C,OACE,eAAAP,IAAA,CAACP,YAAA;IAAasB,IAAA;IAAYI,YAAA,EAAcH,OAAA;IAASI,SAAA,EAAU;IACzDC,QAAA,kBAAAtB,GAAA,CAACN,YAAA,CAAa6B,OAAA,EAAb;MAAqBC,OAAA,EAAO;MAC3BF,QAAA,iBAAAtB,GAAA,CAACL,qBAAA;QACC8B,MAAA,EAAQd,eAAA,CAAgBH,KAAK;QAC7BO,QAAA;QACAW,OAAA,EAASA,CAAA,KAAMT,OAAA,CAAQ,IAAI;QAC3B,cAAYlB,CAAA,CAAE,OAAO;QAErBuB,QAAA,iBAAAtB,GAAA,CAACmB,UAAA,IAAW;MAAA,CACd;IAAA,CACF,GASA,eAAAnB,GAAA,CAACN,YAAA,CAAaiC,OAAA,EAAb;MAAqBC,QAAA,EAAU;MAC7BN,QAAA,EAAApB,YAAA,CAAa2B,GAAA,CAAKC,MAAA,IAAW;QAC5B,MAAMC,IAAA,GAAOD,MAAA,CAAOxB,IAAA;QACpB,MAAMH,KAAA,GAAQ2B,MAAA,CAAO3B,KAAA,CAAM;QAC3B,OACE,eAAAH,GAAA,CAACN,YAAA,CAAasC,IAAA,EAAb;UAEC1B,IAAA,EAAM,eAAAN,GAAA,CAAC+B,IAAA,IAAK;UACZE,aAAA,EAAe;UACfC,eAAA,EAAiB1B,KAAA,CAAMsB,MAAA,CAAOzB,QAAQ,IAAI,YAAY;UACtD,cAAYF,KAAA;UACZgC,QAAA,EAAUA,CAAA,KAAM;YACdjB,WAAA,CAAYkB,OAAA,GAAU;YACtBtB,SAAA,CAAUsB,OAAA,EAASC,cAAA,CAAeP,MAAA,CAAO1B,OAAO;YAChDa,OAAA,CAAQ,KAAK;UACf;UAECK,QAAA,EAAAnB;QAAA,GAXI2B,MAAA,CAAO1B,OAYd;MAEJ,CAAC;IAAA,CACH;EAAA,CACF;AAEJ","ignoreList":[]}
|
|
@@ -58,19 +58,18 @@ function ListPicker(param) {
|
|
|
58
58
|
"aria-label": t("Lists"),
|
|
59
59
|
children: /* @__PURE__ */_jsx(ActiveIcon, {})
|
|
60
60
|
})
|
|
61
|
-
}),
|
|
61
|
+
}),
|
|
62
|
+
/*
|
|
63
|
+
* MPO-85: no onCloseAutoFocus — DropdownMenu.Content stopped accepting
|
|
64
|
+
* and forwarding it, so the handler was already discarded before it
|
|
65
|
+
* failed the build. Intent, to restore with the pass-through: toolbar
|
|
66
|
+
* menus must not steal focus back to the trigger on select-close, so
|
|
67
|
+
* focus returns to the editor and typing continues. Escape still
|
|
68
|
+
* restores the trigger via the menu's own close().
|
|
69
|
+
*/
|
|
70
|
+
/* @__PURE__ */
|
|
71
|
+
_jsx(DropdownMenu.Content, {
|
|
62
72
|
minWidth: 150,
|
|
63
|
-
// Toolbar menus must not steal focus back to the trigger on
|
|
64
|
-
// select-close: focus returns to the editor so typing continues.
|
|
65
|
-
// Escape still restores the trigger via the menu's own close().
|
|
66
|
-
onCloseAutoFocus: function onCloseAutoFocus(event) {
|
|
67
|
-
event.preventDefault();
|
|
68
|
-
if (selectedRef.current) {
|
|
69
|
-
var _editorRef_current;
|
|
70
|
-
selectedRef.current = false;
|
|
71
|
-
(_editorRef_current = editorRef.current) === null || _editorRef_current === void 0 ? void 0 : _editorRef_current.focus();
|
|
72
|
-
}
|
|
73
|
-
},
|
|
74
73
|
children: LIST_OPTIONS.map(function (option) {
|
|
75
74
|
var Icon = option.icon;
|
|
76
75
|
var label4 = option.label();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["jsx","_jsx","jsxs","_jsxs","useRef","useState","DropdownMenu","ToolbarDropdownButton","BulletListIcon","OrderedListIcon","TaskListIcon","t","LIST_OPTIONS","label","command","stateKey","icon","label2","label3","getActiveListIcon","state","isOrderedList","isTaskList","isAnyListActive","isBulletList","ListPicker","param","editorRef","disabled","open","setOpen","selectedRef","ActiveIcon","onOpenChange","placement","children","Trigger","asChild","active","onPress","Content"
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","jsxs","_jsxs","useRef","useState","DropdownMenu","ToolbarDropdownButton","BulletListIcon","OrderedListIcon","TaskListIcon","t","LIST_OPTIONS","label","command","stateKey","icon","label2","label3","getActiveListIcon","state","isOrderedList","isTaskList","isAnyListActive","isBulletList","ListPicker","param","editorRef","disabled","open","setOpen","selectedRef","ActiveIcon","onOpenChange","placement","children","Trigger","asChild","active","onPress","Content"],"sources":["../../../src/toolbar/ListPicker.tsx"],"sourcesContent":[null],"mappings":"AAIA,SAASA,GAAA,IAAAC,IAAQ,EAAAC,IAAA,IAAAC,KAAgB;AACjC,SAASC,MAAA,EAAAC,QAAA,QAAoB;AAE7B,SAASC,YAAA,uCAA6B;AACtC,SAASC,qBAAgB,mCAAiB;AAC1C,SAASC,cAAS,EAAAC,eAAA,EAAAC,YAAA;AAoEd,SAQMC,CAAA,QARN;AAzCJ,IAAAC,YAAM,IACJ;EACEC,KAAA,EAAO,SAAQA,MAAA;IACf,OAASF,CAAA;EACT;EACAG,OAAM;EACRC,QAAA;EACAC,IAAA,EAAAR;AAAA,GAC+B;EAE7BK,KAAA,WAAUI,OAAA;IACV,OAAMN,CAAA;EACR;EACAG,OAAA;EACEC,QAAO,iBAAQ;EACfC,IAAA,EAAAP;AAAS,GACC;EAEZI,KAAA,WAAAK,OAAA;IACF,OAAAP,CAAA;EAMA;EACEG,OAAI,EAAM;EACVC,QAAU,cAAY;EACtBC,IAAA,EAAON;AACT,EAEA;AACE,SAAOS,iBAAMA,CAAAC,KAAgB;EAC/B,IAAAA,KAAA,CAAAC,aAAA,SAAAZ,eAAA;EAEO,IAAAW,KAAS,CAAAE,UAAa,SAAAZ,YAAkB;EAC7C,OAAOF,cAAa;AACpB;AACA,SAAMe,eAAaA,CAAAH,KAAA;EAEnB,OACEA,KAAA,CAAAI,YAAA,IAACJ,KAAA,CAAAC,aAAa,IAAYD,KAAA,CAAAE,UAAc;AACtC;AACE,SAACG,WAAAC,KAAA;EAAA;IAAAC,SAAA;IAAAP,KAAA;IAAAQ;EAAA,IAAAF,KAAA;EAAA,KAAAG,IACC,EAAAC,OAAQ,IAAAzB,QAAgB,MAAK;EAAA,IAAA0B,WAC7B,GAAA3B,MAAA;EAAA,IAAA4B,UACA,GAASb,iBAAkB,CAAAC,KAAA;EAAA,OAC3B,eAAcjB,KAAA,CAAOG,YAAA;IAAAuB,IAErB;IAAYI,YAAA,EAAAH,OAAA;IACdI,SACF;IASAC,QAAA,GAEI,eAAalC,IAAO,CAAAK,YAAA,CAAA8B,OAAA;MACpBC,OAAM,MAAQ;MACdF,QACE,iBAAAlC,IAAA,CAAAM,qBAAA;QAAC+B,MAAA,EAAAf,eAAa,CAAAH,KAAA;QAAbQ,QAAA;QAECW,OAAM,WAAAA,QAAA,EAAC;UACP,OAAAT,OAAe;QACf;QACA,cAAYnB,CAAA;QACZwB,QAAA,EAAU,eAAMlC,IAAA,CAAA+B,UAAA;MACd;IACA;IACA;AAAa;AACf;AAEC;AAAA;AAXW;AAYd;AAGN;IAGN;IAAA/B,IAAA,CAAAK,YAAA,CAAAkC,OAAA","ignoreList":[]}
|
|
@@ -106,13 +106,6 @@ function MoreDropdown({
|
|
|
106
106
|
})
|
|
107
107
|
}), /* @__PURE__ */jsxs(DropdownMenu.Content, {
|
|
108
108
|
minWidth: 200,
|
|
109
|
-
onCloseAutoFocus: event => {
|
|
110
|
-
event.preventDefault();
|
|
111
|
-
if (selectedRef.current) {
|
|
112
|
-
selectedRef.current = false;
|
|
113
|
-
editorRef.current?.focus();
|
|
114
|
-
}
|
|
115
|
-
},
|
|
116
109
|
children: [inlineItems.length > 0 && /* @__PURE__ */jsxs(Fragment, {
|
|
117
110
|
children: [/* @__PURE__ */jsx(ItemSection, {
|
|
118
111
|
items: inlineItems,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DotsThreeIcon","useRef","useState","DropdownMenu","isCommandInCapabilities","ToolbarButton","SubscriptIcon","SuperscriptIcon","AlignLeftIcon","AlignCenterIcon","AlignRightIcon","AlignJustifyIcon","HorizontalRuleIcon","ClearFormattingIcon","SHORTCUTS","t","Fragment","jsx","jsxs","INLINE_ITEMS","label","subscript","command","icon","isActive","s","isSubscript","superscript","isSuperscript","ALIGN_ITEMS","alignLeft","textAlign","alignCenter","alignRight","alignJustify","BLOCK_ITEMS","horizontalRule","clearFormatting","MoreIcon","size","weight","ItemSection","items","state","onSelect","children","map","item","Icon","Item","closeOnSelect","backgroundColor","payload","MoreDropdown","editorRef","capabilities","disabled","open","setOpen","selectedRef","handleSelect","current","executeCommand","inlineItems","filter","alignItems","onOpenChange","placement","Trigger","asChild","onPress","tooltip","Content","minWidth","
|
|
1
|
+
{"version":3,"names":["DotsThreeIcon","useRef","useState","DropdownMenu","isCommandInCapabilities","ToolbarButton","SubscriptIcon","SuperscriptIcon","AlignLeftIcon","AlignCenterIcon","AlignRightIcon","AlignJustifyIcon","HorizontalRuleIcon","ClearFormattingIcon","SHORTCUTS","t","Fragment","jsx","jsxs","INLINE_ITEMS","label","subscript","command","icon","isActive","s","isSubscript","superscript","isSuperscript","ALIGN_ITEMS","alignLeft","textAlign","alignCenter","alignRight","alignJustify","BLOCK_ITEMS","horizontalRule","clearFormatting","MoreIcon","size","weight","ItemSection","items","state","onSelect","children","map","item","Icon","Item","closeOnSelect","backgroundColor","payload","MoreDropdown","editorRef","capabilities","disabled","open","setOpen","selectedRef","handleSelect","current","executeCommand","inlineItems","filter","alignItems","onOpenChange","placement","Trigger","asChild","onPress","tooltip","Content","minWidth","length","Separator"],"sources":["../../../src/toolbar/MoreDropdown.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -146,19 +146,18 @@ function MoreDropdown(param) {
|
|
|
146
146
|
tooltip: t("More"),
|
|
147
147
|
children: /* @__PURE__ */_jsx(MoreIcon, {})
|
|
148
148
|
})
|
|
149
|
-
}),
|
|
149
|
+
}),
|
|
150
|
+
/*
|
|
151
|
+
* MPO-85: no onCloseAutoFocus — DropdownMenu.Content stopped accepting
|
|
152
|
+
* and forwarding it, so the handler was already discarded before it
|
|
153
|
+
* failed the build. Intent, to restore with the pass-through: toolbar
|
|
154
|
+
* menus must not steal focus back to the trigger on select-close, so
|
|
155
|
+
* focus returns to the editor and typing continues. Escape still
|
|
156
|
+
* restores the trigger via the menu's own close().
|
|
157
|
+
*/
|
|
158
|
+
/* @__PURE__ */
|
|
159
|
+
_jsxs(DropdownMenu.Content, {
|
|
150
160
|
minWidth: 200,
|
|
151
|
-
// Toolbar menus must not steal focus back to the trigger on
|
|
152
|
-
// select-close: focus returns to the editor so typing continues.
|
|
153
|
-
// Escape still restores the trigger via the menu's own close().
|
|
154
|
-
onCloseAutoFocus: function onCloseAutoFocus(event) {
|
|
155
|
-
event.preventDefault();
|
|
156
|
-
if (selectedRef.current) {
|
|
157
|
-
var _editorRef_current;
|
|
158
|
-
selectedRef.current = false;
|
|
159
|
-
(_editorRef_current = editorRef.current) === null || _editorRef_current === void 0 ? void 0 : _editorRef_current.focus();
|
|
160
|
-
}
|
|
161
|
-
},
|
|
162
161
|
children: [inlineItems.length > 0 && /* @__PURE__ */_jsxs(_Fragment, {
|
|
163
162
|
children: [/* @__PURE__ */_jsx(ItemSection, {
|
|
164
163
|
items: inlineItems,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","DotsThreeIcon","useRef","useState","DropdownMenu","isCommandInCapabilities","ToolbarButton","SubscriptIcon","SuperscriptIcon","AlignLeftIcon","AlignCenterIcon","AlignRightIcon","AlignJustifyIcon","HorizontalRuleIcon","ClearFormattingIcon","SHORTCUTS","t","INLINE_ITEMS","label","subscript","command","icon","isActive","s","isSubscript","label2","superscript","isActive2","isSuperscript","ALIGN_ITEMS","label3","alignLeft","isActive3","textAlign","label4","alignCenter","isActive4","label5","alignRight","isActive5","label6","alignJustify","isActive6","BLOCK_ITEMS","label7","horizontalRule","label8","clearFormatting","MoreIcon","size","weight","ItemSection","param","items","state","onSelect","children","map","item","_item_isActive","Icon","label9","Item","closeOnSelect","backgroundColor","call","onSelect1","payload","MoreDropdown","editorRef","capabilities","disabled","open","setOpen","selectedRef","handleSelect","handleSelect2","_editorRef_current","current","executeCommand","inlineItems","filter","alignItems","onOpenChange","placement"
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","DotsThreeIcon","useRef","useState","DropdownMenu","isCommandInCapabilities","ToolbarButton","SubscriptIcon","SuperscriptIcon","AlignLeftIcon","AlignCenterIcon","AlignRightIcon","AlignJustifyIcon","HorizontalRuleIcon","ClearFormattingIcon","SHORTCUTS","t","INLINE_ITEMS","label","subscript","command","icon","isActive","s","isSubscript","label2","superscript","isActive2","isSuperscript","ALIGN_ITEMS","label3","alignLeft","isActive3","textAlign","label4","alignCenter","isActive4","label5","alignRight","isActive5","label6","alignJustify","isActive6","BLOCK_ITEMS","label7","horizontalRule","label8","clearFormatting","MoreIcon","size","weight","ItemSection","param","items","state","onSelect","children","map","item","_item_isActive","Icon","label9","Item","closeOnSelect","backgroundColor","call","onSelect1","payload","MoreDropdown","editorRef","capabilities","disabled","open","setOpen","selectedRef","handleSelect","handleSelect2","_editorRef_current","current","executeCommand","inlineItems","filter","alignItems","onOpenChange","placement"],"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 {
|
|
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
|
-
|
|
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__ */
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
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__ */
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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","
|
|
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":[]}
|