WebSocket의 봄 보안을 완전히 구성 - CSRF를 완전히 비활성화하고 WebSocket Handhake에 대한 세션 생성 IF REQUIRED를 활성화
/ws/** 엔드포인트에 대한 CSRF를 비활성화하고 SockJS /ws/info 405 오류를 수정하기 위해 보안 구성을 단순화
컴파일 오류가 발생하는 잘못된 메소드 호출 제거 (MediaSession, getStatusCode on ServerHttpResponse)
WebSocket connection - use public domain kamocrm.com:8443 instead of private IP
- Use public domain with port 8443 (e.g., kamocrm.com:8443) - Public address forwards to NodePort 30843 on private IP 192.168.42.191 - Extracts base domain from...
WebSocket connection - use direct node IP via NodePort 30843 (bypasses Traefik)
- Connect directly to node IP 192.168.42.191:30843 for WebSocket - NodePort 30843 exposes MediaService port 8443 directly - Bypasses Traefik to avoid WebSocket ...
WebSocket 미들웨어 및 ServersTransport 추가
- WebSocket 업그레이드 헤더에 대한 Media-websocket-upgrade 미들웨어 추가 - HTTP/2 (WebSocket은 HTTP/1.1을 요구합니다)를 비활성화하는 매체 websocket-transport 추가 - Traefik ingress를 통한 적절한 WebSo...
WebSocket connection - use Traefik ingress instead of direct port 8443
- Changed WebSocket URL to connect through Traefik on standard HTTPS port (443) - Removed port 8443 from domain connections (Traefik routes to service on port 8...
WebSocket live message delivery - disable ChatMessageHandler subscription, enhance logging
- Disabled ChatMessageHandler subscription to chat.session.> that was consuming messages without forwarding to WebSocket - Enhanced WebSocketConfig logging to t...
변경 NATS DeliverPolicy from all to New to avoid message replay - 구독 후 새로운 메시지를 전달
NATS 구독의 독특한 소비자 이름에 대한 지원 추가 - 사용자 정의 소비자 이름을 수용하는 과부하된 구독 () 방법을 추가 - 독립적 인 NATS 소비자를 가질 수있는 여러 채팅 세션을 허용 - 메시지 전달 충돌을 유발하는 모든 세션이 동일한 소비자를 공유하는 문제 수정
Prevent self-chat and improve session creation error handling - Add validation in MemberItem to prevent opening chat with own member ID - Add backend validation in MediaController to prevent self-chat sessions - Improve error handling in ChatDock to not retry 4xx client errors
Ensure page fits viewport while preserving internal content scrollbars
Resolve vertical overflow on settings member page by removing viewport height calculations
Replace MUI Grid with CSS Grid for compatibility with MUI v7
- Replaced Grid component with Box using CSS Grid layout - Maintains responsive breakpoints (xs: 1, sm: 2, md: 3, lg: 4 columns) - Fixes TypeScript build error ...
Remove glitchy row animations when toggling checkboxes - Replace 'transition: all' with specific property transitions to prevent layout animations - Memoize sortedFields array to prevent unnecessary recreations - Only animate visual properties (colors, opacity) instead of layout properties
Move subStatusOptions definition after availableStatuses to fix declaration order
Move statusTabMap definition after availableStatuses to fix build error
Add missing Next.js API route handlers for custom-forms
- Create /api/security/custom-forms route handler for GET and POST - Create /api/security/custom-forms/[id] route handler for GET, PUT, and DELETE - Proxy reque...
Improve form creation error handling and validation
- Filter out fields with empty fieldIds before sending to backend - Filter out empty stacks from form data - Add validation error if fieldId is invalid during d...
CustomFormService createForm/updateForm에서 null 체크 및 검증 추가
- NullPointerException을 방지하기 위해 trim().toLowerCase()를 호출하기 전에 fieldId에 대한 null/empty 체크 추가 - 명확한 오류 메시지와 필수 필드 (fieldType, title, fieldId)에 대한 포괄적 인 검증 추가 - Cre...
Add missing imports in FormEditor
- Add FIELD_TYPES_ARRAY import from fieldTypes - Add validateFieldId and normalizeFieldId imports from fieldValidation - Fixes TypeScript compilation errors
Replace Grid with CSS Grid layout in FieldTypeSelector
- Remove Grid component usage that was causing TypeScript errors - Replace with Box using CSS Grid for responsive layout - Maintains same visual layout and resp...
Fix TypeScript errors in FieldTypeSelector and remove unused imports
- Replace dynamic icon lookup with explicit icon map to avoid type assertion issues - Import all required icons directly from lucide-react - Remove unused Field...
Fix TypeScript errors in FieldConfigurationPanel
- Replace array.includes() with direct equality checks to avoid type narrowing issues - Remove unused Card import from FormEditor - Prefix unused stackIndex par...
Fix build errors in custom forms components
- Fix import error: getAllFields should be imported from utils, not fieldValidation - Fix TypeScript errors: Replace 'any' types with proper FieldType - Fix une...