* fix race condition for registering handler
* add close method
* use generics to reduce duplication
* rename packages to drop underscore for go convention
* rename interface to drop stutter with package name
Signed-off-by: ferhat elmas <elmas.ferhat@gmail.com>
The avatar column was too short to store long URLs from external OAuth
providers. When users log in via connector-google plugin, the Google
profile picture URL can exceed 1024 characters, causing a database error:
Error 1406 (22001): Data too long for column 'avatar' at row 1
This change expands the avatar column from VARCHAR(1024) to VARCHAR(2048).
Note: While URLs can technically exceed 2048 characters per specification,
2048 is the practical limit supported by most browsers and services.
URLs longer than 2048 characters are extremely rare in real-world usage.
- Upgraded all TipTap related dependencies in package.json and pnpm-lock.yaml to version 3.13.0 for improved functionality and compatibility.
- Ensured consistent versioning across all TipTap extensions and core packages.
- Introduced PluginSlot component for better plugin insertion in the editor.
- Updated MDEditor to default to 'markdown' mode for improved user experience.
- Refactored command methods in TipTap to use chaining for better selection handling.
- Enhanced PluginRender to load plugins asynchronously and prevent duplicate registrations.
- Added @tiptap/core version 3.13.0 to package.json and updated related dependencies in pnpm-lock.yaml.
- Refactored RichEditor to utilize new table extension with responsive wrapper and improved styling.
- Adjusted editor mode initialization in MDEditor to default to 'rich' for enhanced user experience.
- Removed redundant styles from index.scss to streamline the editor's appearance.
- Updated ToolItem component to ensure consistent return type for command functions.
- Modified heading toolbar to allow optional label parameter in handleClick function.
- Enhanced image component comments for clarity on editor state updates and event listener management.
- Cleaned up utility functions in htmlRender to remove unnecessary comments and improve readability.
- Introduced BaseEditorProps interface to standardize props across MarkdownEditor and RichEditor components.
- Improved initialization logic in RichEditor and MarkdownEditor to handle editor state more effectively.
- Updated useEditor hook to support initial values and prevent unnecessary updates during prop changes.
- Refactored command methods to utilize dispatch for state changes in CodeMirror editor.
- Updated the editor mode from WYSIWYG to Rich in the MDEditor component.
- Introduced a new RichEditor component utilizing TipTap for enhanced editing capabilities.
- Adjusted styles and references in the editor components to reflect the new naming convention.
- Removed unnecessary conditional rendering in the MDEditor component for the PluginRender.
- Simplified the MarkdownEditor component's useEffect hooks for better clarity.
- Refactored command methods to utilize self-referencing for improved maintainability.
## Summary
- Show success toast notification after user is added
- Refresh user list and navigate to 'normal' filter on page 1 to display
the newly added user
## Problem
When adding a user in Admin -> Users, the page had no feedback after
submission (as reported in #1457).
**Root cause:** The code only refreshed the user list if the current
filter was "all" or "staff", but the default filter is "normal".
Additionally, there was no success toast notification.
## Solution
1. Added toast notification to confirm successful user creation
2. After adding user, navigate to "normal" filter page 1 and refresh the
list so the new user is visible
## Test plan
1. Go to Admin -> Users
2. Click "Add User"
3. Submit user information
4. ✅ Success toast should appear
5. ✅ Page should navigate to "normal" filter
6. ✅ Newly added user should be visible in the list
Fixes#1457
---------
Co-authored-by: LinkinStars <linkinstar@foxmail.com>
- Added TipTap extensions for image, placeholder, table, and markdown support.
- Implemented WYSIWYG and Markdown editor components.
- Refactored editor context and tool items to utilize the new editor interface.
- Updated styles for the WYSIWYG editor.
- Removed deprecated utility functions and integrated new command methods for better editor interaction.