{"record":{"id":"b292b1d3706d31ac","repo":"ueberdosis/tiptap","slug":"bubblemenu-component-is-not-rendered-inside-of-an","errorCode":null,"errorMessage":"BubbleMenu component is not rendered inside of an editor component or does not have editor prop.","messagePattern":"BubbleMenu component is not rendered inside of an editor component or does not have editor prop\\.","errorType":"console","errorClass":null,"httpStatus":null,"severity":"error","filePath":"packages/react/src/menus/BubbleMenu.tsx","lineNumber":91,"sourceCode":"    /**\n     * Track whether the plugin has been initialized, so we only send updates\n     * after the initial registration.\n     */\n    const [pluginInitialized, setPluginInitialized] = useState(false)\n\n    /**\n     * Track whether we need to skip the first options update dispatch.\n     * This prevents unnecessary updates right after plugin initialization.\n     */\n    const skipFirstUpdateRef = useRef(true)\n\n    useEffect(() => {\n      if (pluginEditor?.isDestroyed) {\n        return\n      }\n\n      if (!pluginEditor) {\n        console.warn(\n          'BubbleMenu component is not rendered inside of an editor component or does not have editor prop.',\n        )\n        return\n      }\n\n      const bubbleMenuElement = menuEl.current\n      bubbleMenuElement.style.visibility = 'hidden'\n      bubbleMenuElement.style.position = 'absolute'\n\n      const plugin = BubbleMenuPlugin({\n        ...bubbleMenuPluginPropsRef.current,\n        editor: pluginEditor,\n        element: bubbleMenuElement,\n      })\n\n      pluginEditor.registerPlugin(plugin)\n\n      const createdPluginKey = bubbleMenuPluginPropsRef.current.pluginKey","sourceCodeStart":73,"sourceCodeEnd":109,"githubUrl":"https://github.com/ueberdosis/tiptap/blob/496d53afd7e4e3c7424b4749adeff4f45e27ddb0/packages/react/src/menus/BubbleMenu.tsx#L73-L109","documentation":"Error \"BubbleMenu component is not rendered inside of an editor component or does not have editor prop.\" thrown in ueberdosis/tiptap.","triggerScenarios":"Thrown at packages/react/src/menus/BubbleMenu.tsx:91 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"496d53afd7e4e3c7424b4749adeff4f45e27ddb0","analyzedAt":"2026-08-26T22:41:43.400Z","schemaVersion":2},"datasetVersion":"2026-08-27T03:17:27.898Z"}