@domternal/extension-block-menu 0.7.1 → 0.7.2
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/index.cjs +10 -17
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +3 -3
- package/dist/index.d.ts +3 -3
- package/dist/index.js +10 -17
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -117,6 +117,11 @@ function createFloatingMenuPlugin(options) {
|
|
|
117
117
|
cleanupFloating = null;
|
|
118
118
|
element.removeAttribute("data-show");
|
|
119
119
|
};
|
|
120
|
+
const clearTriggeredFlag = (view) => {
|
|
121
|
+
if (!requireExplicitTrigger) return;
|
|
122
|
+
const triggered = pluginKey.getState(view.state)?.triggered ?? false;
|
|
123
|
+
if (triggered) view.dispatch(view.state.tr.setMeta(FLOATING_MENU_META, "hide"));
|
|
124
|
+
};
|
|
120
125
|
const focusFirstItem = () => {
|
|
121
126
|
const first = element.querySelector('[data-floating-menu-item]:not([aria-disabled="true"])') ?? element.querySelector('button, [tabindex]:not([tabindex="-1"])');
|
|
122
127
|
if (!first) return false;
|
|
@@ -166,12 +171,7 @@ function createFloatingMenuPlugin(options) {
|
|
|
166
171
|
}
|
|
167
172
|
const dismiss = () => {
|
|
168
173
|
hideMenu();
|
|
169
|
-
|
|
170
|
-
const triggered = pluginKey.getState(editor.view.state)?.triggered ?? false;
|
|
171
|
-
if (triggered) {
|
|
172
|
-
editor.view.dispatch(editor.view.state.tr.setMeta(FLOATING_MENU_META, "hide"));
|
|
173
|
-
}
|
|
174
|
-
}
|
|
174
|
+
clearTriggeredFlag(editor.view);
|
|
175
175
|
};
|
|
176
176
|
const onFocus = () => {
|
|
177
177
|
if (isVisibleNow(editor.view)) updatePosition(editor.view);
|
|
@@ -204,12 +204,7 @@ function createFloatingMenuPlugin(options) {
|
|
|
204
204
|
if (isVisibleNow(view)) updatePosition(view);
|
|
205
205
|
else {
|
|
206
206
|
hideMenu();
|
|
207
|
-
|
|
208
|
-
const triggered = pluginKey.getState(view.state)?.triggered ?? false;
|
|
209
|
-
if (triggered) {
|
|
210
|
-
view.dispatch(view.state.tr.setMeta(FLOATING_MENU_META, "hide"));
|
|
211
|
-
}
|
|
212
|
-
}
|
|
207
|
+
clearTriggeredFlag(view);
|
|
213
208
|
}
|
|
214
209
|
},
|
|
215
210
|
destroy: () => {
|
|
@@ -1821,11 +1816,9 @@ function createBlockContextMenuPlugin(options) {
|
|
|
1821
1816
|
editorEl.dispatchEvent(new Event("dm:dismiss-overlays", { bubbles: false }));
|
|
1822
1817
|
root.setAttribute("data-show", "");
|
|
1823
1818
|
lockScroll();
|
|
1824
|
-
{
|
|
1825
|
-
|
|
1826
|
-
|
|
1827
|
-
editor.view.dispatch(tr);
|
|
1828
|
-
}
|
|
1819
|
+
const openTr = editor.view.state.tr.setMeta(pluginKey, { activeBlockPos: detail.blockPos });
|
|
1820
|
+
openTr.setMeta("addToHistory", false);
|
|
1821
|
+
editor.view.dispatch(openTr);
|
|
1829
1822
|
cleanupFloating?.();
|
|
1830
1823
|
let anchorEl = detail.anchorElement;
|
|
1831
1824
|
const bubbleMenuRef = anchorEl.closest(".dm-bubble-menu");
|