@connectycube/chat-widget 0.24.0 → 0.26.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.
Files changed (79) hide show
  1. package/CHANGELOG.md +47 -2
  2. package/dist/index.es.js +14945 -14130
  3. package/dist/index.umd.js +90 -66
  4. package/dist/react19/index.es.js +14871 -14056
  5. package/dist/react19/types/App.d.ts +6 -33
  6. package/dist/react19/types/components/home/main/message/message-status-mark.d.ts +6 -0
  7. package/dist/react19/types/components/home/main/user-status/user-status-badge.d.ts +7 -0
  8. package/dist/react19/types/components/home/main/user-status/user-status-select.d.ts +3 -0
  9. package/dist/react19/types/components/home/main/user-status/user-status.d.ts +6 -0
  10. package/dist/react19/types/components/home/sidebar/user-item.d.ts +2 -0
  11. package/dist/react19/types/components/shadcn-ui/button.d.ts +1 -1
  12. package/dist/react19/types/components/shadcn-ui/tooltip.d.ts +7 -0
  13. package/dist/react19/types/components/shared/avatar.d.ts +2 -0
  14. package/dist/react19/types/components/shared/chat-status-mark.d.ts +2 -0
  15. package/dist/react19/types/components/widget/widget-app.d.ts +8 -0
  16. package/dist/react19/types/components/{shared → widget}/widget-button.d.ts +2 -8
  17. package/dist/react19/types/components/{shared → widget}/widget-messages-badge.d.ts +0 -2
  18. package/dist/react19/types/components/{shared → widget}/widget-online-badge.d.ts +0 -2
  19. package/dist/react19/types/components/widget/widget-overlay.d.ts +7 -0
  20. package/dist/react19/types/components/widget/widget-portal.d.ts +8 -0
  21. package/dist/react19/types/components/widget/widget-shadow-root.d.ts +6 -0
  22. package/dist/react19/types/helpers/connectycube.d.ts +13 -1
  23. package/dist/react19/types/helpers/widget.d.ts +5 -0
  24. package/dist/react19/types/hooks/index.d.ts +1 -0
  25. package/dist/react19/types/hooks/store/useAppDefaultChatStore.d.ts +1 -1
  26. package/dist/react19/types/hooks/store/useAppInterfaceStore.d.ts +4 -0
  27. package/dist/react19/types/hooks/store/useAppNotificationStore.d.ts +1 -1
  28. package/dist/react19/types/hooks/store/useAppQuickActionsStore.d.ts +1 -1
  29. package/dist/react19/types/hooks/store/useAppSettingsStore.d.ts +3 -0
  30. package/dist/react19/types/hooks/store/useOnlineUsersCountStore.d.ts +5 -0
  31. package/dist/react19/types/hooks/store/useUserSettingsStore.d.ts +6 -3
  32. package/dist/react19/types/hooks/useAppPresets.d.ts +34 -0
  33. package/dist/react19/types/locales/el/translation.json.d.ts +5 -1
  34. package/dist/react19/types/locales/en/translation.json.d.ts +5 -1
  35. package/dist/react19/types/locales/ua/translation.json.d.ts +5 -1
  36. package/dist/types/App.d.ts +6 -33
  37. package/dist/types/components/home/main/message/message-status-mark.d.ts +6 -0
  38. package/dist/types/components/home/main/user-status/user-status-badge.d.ts +7 -0
  39. package/dist/types/components/home/main/user-status/user-status-select.d.ts +3 -0
  40. package/dist/types/components/home/main/user-status/user-status.d.ts +6 -0
  41. package/dist/types/components/home/sidebar/user-item.d.ts +2 -0
  42. package/dist/types/components/shadcn-ui/button.d.ts +1 -1
  43. package/dist/types/components/shadcn-ui/tooltip.d.ts +7 -0
  44. package/dist/types/components/shared/avatar.d.ts +2 -0
  45. package/dist/types/components/shared/chat-status-mark.d.ts +2 -0
  46. package/dist/types/components/widget/widget-app.d.ts +8 -0
  47. package/dist/types/components/{shared → widget}/widget-button.d.ts +2 -8
  48. package/dist/types/components/{shared → widget}/widget-messages-badge.d.ts +0 -2
  49. package/dist/types/components/{shared → widget}/widget-online-badge.d.ts +0 -2
  50. package/dist/types/components/widget/widget-overlay.d.ts +7 -0
  51. package/dist/types/components/widget/widget-portal.d.ts +8 -0
  52. package/dist/types/components/widget/widget-shadow-root.d.ts +6 -0
  53. package/dist/types/helpers/connectycube.d.ts +13 -1
  54. package/dist/types/helpers/widget.d.ts +5 -0
  55. package/dist/types/hooks/index.d.ts +1 -0
  56. package/dist/types/hooks/store/useAppDefaultChatStore.d.ts +1 -1
  57. package/dist/types/hooks/store/useAppInterfaceStore.d.ts +4 -0
  58. package/dist/types/hooks/store/useAppNotificationStore.d.ts +1 -1
  59. package/dist/types/hooks/store/useAppQuickActionsStore.d.ts +1 -1
  60. package/dist/types/hooks/store/useAppSettingsStore.d.ts +3 -0
  61. package/dist/types/hooks/store/useOnlineUsersCountStore.d.ts +5 -0
  62. package/dist/types/hooks/store/useUserSettingsStore.d.ts +6 -3
  63. package/dist/types/hooks/useAppPresets.d.ts +34 -0
  64. package/dist/types/locales/el/translation.json.d.ts +5 -1
  65. package/dist/types/locales/en/translation.json.d.ts +5 -1
  66. package/dist/types/locales/ua/translation.json.d.ts +5 -1
  67. package/package.json +45 -42
  68. package/dist/react19/types/components/app-login.d.ts +0 -8
  69. package/dist/react19/types/components/app-shadow-root.d.ts +0 -6
  70. package/dist/types/components/app-login.d.ts +0 -8
  71. package/dist/types/components/app-shadow-root.d.ts +0 -6
  72. /package/dist/react19/types/components/home/main/{message-attachment.d.ts → message/message-attachment.d.ts} +0 -0
  73. /package/dist/react19/types/components/home/main/{message-body.d.ts → message/message-body.d.ts} +0 -0
  74. /package/dist/react19/types/components/home/main/{message-url-preview.d.ts → message/message-url-preview.d.ts} +0 -0
  75. /package/dist/react19/types/components/home/main/{message.d.ts → message/message.d.ts} +0 -0
  76. /package/dist/types/components/home/main/{message-attachment.d.ts → message/message-attachment.d.ts} +0 -0
  77. /package/dist/types/components/home/main/{message-body.d.ts → message/message-body.d.ts} +0 -0
  78. /package/dist/types/components/home/main/{message-url-preview.d.ts → message/message-url-preview.d.ts} +0 -0
  79. /package/dist/types/components/home/main/{message.d.ts → message/message.d.ts} +0 -0
@@ -0,0 +1,8 @@
1
+ import { ReactNode } from 'react';
2
+ type WidgetPortalProps = {
3
+ children: ReactNode;
4
+ embedded?: boolean;
5
+ style?: React.CSSProperties;
6
+ };
7
+ declare const WidgetPortal: React.FC<WidgetPortalProps>;
8
+ export default WidgetPortal;
@@ -0,0 +1,6 @@
1
+ import { ReactNode } from 'react';
2
+ type WidgetShadowRootProps = {
3
+ children: ReactNode;
4
+ };
5
+ declare const WidgetShadowRoot: React.FC<WidgetShadowRootProps>;
6
+ export default WidgetShadowRoot;
@@ -1,5 +1,13 @@
1
1
  import { Config, Users, Auth, Chat, EmptyResponse, PushNotifications } from 'connectycube/types';
2
2
  import { PushSubscriptionData } from './notifications';
3
+ export declare enum SIGNAL {
4
+ UPDATE_USER = "user/UPDATE"
5
+ }
6
+ export declare enum USER_STATUS {
7
+ AVAILABLE = "Available",
8
+ BUSY = "Busy",
9
+ AWAY = "Away"
10
+ }
3
11
  export declare const SESSION_KEY = "@connectycube/chat-widget:session";
4
12
  export declare const initConnectyCubeSDK: (credentials: Config.Credentials, config?: Config.Options) => void;
5
13
  export declare const tryReuseSession: (userName?: string, userId?: string, userAvatar?: string, userProfileLink?: string) => Promise<boolean>;
@@ -14,12 +22,16 @@ export declare const setSessionToLocalStorage: (session: Auth.Session) => void;
14
22
  export declare const getSessionFromLocalStorage: () => Auth.Session | null;
15
23
  export declare const clearSessionInLocalStorage: () => void;
16
24
  export declare const getCurrentUser: () => Users.User | null | undefined;
25
+ export declare const parseUserCustomData: (user: Users.User | null | undefined) => {
26
+ [key: string]: any;
27
+ } | null;
17
28
  export declare const getUserSettings: () => {
18
29
  [key: string]: any;
19
30
  } | null;
31
+ export declare const getUserStatus: (user: Users.User | null | undefined) => USER_STATUS;
20
32
  export declare const updateUserSettings: (settings: {
21
33
  [key: string]: any;
22
- }) => Promise<Users.User>;
34
+ }, onlyLocal?: boolean) => Promise<Users.User>;
23
35
  export declare const getSessionToken: () => string | null;
24
36
  export declare const getSessionUserId: () => number | null;
25
37
  export declare const isSessionExpired: () => boolean;
@@ -0,0 +1,5 @@
1
+ export declare const stripSpecificTailwindSupports: (css: string) => string;
2
+ export declare enum dataPrefix {
3
+ WRAPPER = "data-connectycube-chat-widget-wrapper",
4
+ FOCUSED = "data-connectycube-chat-widget-focused"
5
+ }
@@ -14,6 +14,7 @@ export { default as useShadowRootStore } from './store/useShadowRootStore';
14
14
  export { default as useUnreadCountStore } from './store/useUnreadCountStore';
15
15
  export { default as useUserSettingsStore } from './store/useUserSettingsStore';
16
16
  export { default as useAppAuthorization } from './useAppAuthorization';
17
+ export { default as useAppPresets } from './useAppPresets';
17
18
  export { default as useLastActivity } from './useLastActivity';
18
19
  export { default as useNotification } from './useNotification';
19
20
  export { default as usePageFocus } from './usePageFocus';
@@ -1,6 +1,6 @@
1
1
  export type DefaultChat = {
2
2
  id: string;
3
- opponentUserId: number;
3
+ opponentUserId: string;
4
4
  type: '1on1' | 'group';
5
5
  name?: string;
6
6
  metadata?: {
@@ -1,6 +1,7 @@
1
1
  export type AppInterfaceStoreProps = {
2
2
  opened: boolean;
3
3
  splitView: boolean;
4
+ showChatStatus: boolean;
4
5
  showOnlineUsersTab: boolean;
5
6
  hideNewChatButton: boolean;
6
7
  hideNewUserChatOption: boolean;
@@ -9,12 +10,15 @@ export type AppInterfaceStoreProps = {
9
10
  export interface AppInterfaceStoreState extends AppInterfaceStoreProps {
10
11
  setOpened: (opened: boolean) => void;
11
12
  setSplitView: (splitView: boolean) => void;
13
+ setShowChatStatus: (showChatStatus: boolean) => void;
12
14
  setShowOnlineUsersTab: (showOnlineUsersTab: boolean) => void;
13
15
  setHideNewChatButton: (hideNewChatButton: boolean) => void;
14
16
  setHideNewUserChatOption: (hideNewUserChatOption: boolean) => void;
15
17
  setHideNewGroupChatOption: (hideNewGroupChatOption: boolean) => void;
18
+ toggleOpened: () => void;
16
19
  resetOpened: () => void;
17
20
  resetSplitView: () => void;
21
+ resetShowChatStatus: () => void;
18
22
  resetShowOnlineUsersTab: () => void;
19
23
  resetHideNewChatButton: () => void;
20
24
  resetHideNewUserChatOption: () => void;
@@ -20,7 +20,7 @@ export interface AppNotificationStoreState extends AppNotificationStoreProps {
20
20
  setServiceWorkerPath: (serviceWorkerPath?: string | URL) => void;
21
21
  resetServiceWorkerPath: () => void;
22
22
  }
23
- export declare const notificationStoreInitialState: {
23
+ export declare const appNotificationStoreInitialState: {
24
24
  muted: boolean;
25
25
  showNotifications: boolean;
26
26
  playSound: boolean;
@@ -10,7 +10,7 @@ export interface AppQuickActionsStoreState extends AppQuickActionsStoreProps {
10
10
  setQuickActions: (quickActions: QuickActions) => void;
11
11
  resetQuickActions: () => void;
12
12
  }
13
- export declare const quickActionsStoreInitialState: AppQuickActionsStoreProps;
13
+ export declare const appQuickActionsStoreInitialState: AppQuickActionsStoreProps;
14
14
  declare const useAppQuickActionsStore: import('zustand').UseBoundStore<import('zustand').StoreApi<AppQuickActionsStoreState>>;
15
15
  export declare const setAppQuickActionsStore: (state: Partial<AppQuickActionsStoreProps>) => void;
16
16
  export declare const resetAppQuickActionsStore: () => void;
@@ -1,6 +1,7 @@
1
1
  export type AppSettingStoreProps = {
2
2
  attachmentsAccept: string;
3
3
  attachmentsAcceptList: string[];
4
+ enableUserStatuses: boolean;
4
5
  enableLastSeen: boolean;
5
6
  enableContentReporting: boolean;
6
7
  enableBlockList: boolean;
@@ -9,12 +10,14 @@ export type AppSettingStoreProps = {
9
10
  };
10
11
  export interface AppSettingStoreState extends AppSettingStoreProps {
11
12
  setAttachmentsAccept: (attachmentsAccept: string) => void;
13
+ setEnableUserStatuses: (enableUserStatuses: boolean) => void;
12
14
  setEnableLastSeen: (enableLastSeen: boolean) => void;
13
15
  setEnableContentReporting: (enableContentReporting: boolean) => void;
14
16
  setEnableBlockList: (enableBlockList: boolean) => void;
15
17
  setEnableUrlPreview: (enableUrlPreview: boolean) => void;
16
18
  setLimitUrlsPreviews: (limitUrlsPreviews: number) => void;
17
19
  resetAttachmentsAccept: () => void;
20
+ resetEnableUserStatuses: () => void;
18
21
  resetEnableLastSeen: () => void;
19
22
  resetEnableContentReporting: () => void;
20
23
  resetEnableBlockList: () => void;
@@ -9,6 +9,11 @@ interface OnlineUsersCountState {
9
9
  resetEnableOnlineUsersBadge: () => void;
10
10
  resetOnlineUsersCount: () => void;
11
11
  }
12
+ export declare const onlineUsersCountInitialState: {
13
+ requestOnlineUsersInterval: number;
14
+ enableOnlineUsersBadge: boolean;
15
+ onlineUsersCount: number;
16
+ };
12
17
  declare const useOnlineUsersCountStore: import('zustand').UseBoundStore<import('zustand').StoreApi<OnlineUsersCountState>>;
13
18
  export declare const resetOnlineUsersCountStore: () => void;
14
19
  export default useOnlineUsersCountStore;
@@ -1,12 +1,15 @@
1
+ import { USER_STATUS } from '../../helpers/connectycube';
1
2
  type UserSettingsStateProps = {
3
+ userStatus: USER_STATUS;
2
4
  isNotifications: boolean;
3
5
  isNotificationSound: boolean;
4
6
  isPushNotifications: boolean;
5
7
  };
6
8
  interface UserSettingsState extends UserSettingsStateProps {
7
- setIsNotifications: (enabled: boolean) => Promise<void>;
8
- setIsNotificationSound: (enabled: boolean) => Promise<void>;
9
- setIsPushNotifications: (enabled: boolean) => Promise<void>;
9
+ setUserStatus: (status: USER_STATUS, onlyLocal?: boolean) => Promise<void>;
10
+ setIsNotifications: (enabled: boolean, onlyLocal?: boolean) => Promise<void>;
11
+ setIsNotificationSound: (enabled: boolean, onlyLocal?: boolean) => Promise<void>;
12
+ setIsPushNotifications: (enabled: boolean, onlyLocal?: boolean) => Promise<void>;
10
13
  }
11
14
  declare const useUserSettingsStore: import('zustand').UseBoundStore<import('zustand').StoreApi<UserSettingsState>>;
12
15
  export declare const managePushNotificationsSubscription: (enable: boolean) => Promise<boolean>;
@@ -0,0 +1,34 @@
1
+ import { DefaultChat } from './store/useAppDefaultChatStore';
2
+ import { QuickActions } from './store/useAppQuickActionsStore';
3
+ export type AppPresets = {
4
+ open?: boolean;
5
+ embedView?: boolean;
6
+ splitView?: boolean;
7
+ showChatStatus?: boolean;
8
+ showOnlineUsersTab?: boolean;
9
+ hideNewChatButton?: boolean;
10
+ hideNewUserChatOption?: boolean;
11
+ hideNewGroupChatOption?: boolean;
12
+ muted?: boolean;
13
+ showNotifications?: boolean;
14
+ playSound?: boolean;
15
+ webPushNotifications?: boolean;
16
+ webPushVapidPublicKey?: string;
17
+ serviceWorkerPath?: string | URL;
18
+ attachmentsAccept?: string;
19
+ enableUserStatuses?: boolean;
20
+ enableLastSeen?: boolean;
21
+ enableContentReporting?: boolean;
22
+ enableBlockList?: boolean;
23
+ enableOnlineUsersBadge?: boolean;
24
+ getOnlineUsersInterval?: number;
25
+ enableUrlPreview?: boolean;
26
+ limitUrlsPreviews?: number;
27
+ quickActions?: QuickActions;
28
+ defaultChat?: DefaultChat | null;
29
+ onUnreadCountChange?: (count: number) => void;
30
+ onOnlineUsersCountChange?: (count: number) => void;
31
+ onOpenChange?: (open: boolean) => void;
32
+ };
33
+ declare const useAppPresets: ({ embedView, open, splitView, showChatStatus, showOnlineUsersTab, hideNewChatButton, hideNewUserChatOption, hideNewGroupChatOption, muted, showNotifications, playSound, webPushNotifications, serviceWorkerPath, webPushVapidPublicKey, attachmentsAccept, enableUserStatuses, enableLastSeen, enableContentReporting, enableBlockList, enableUrlPreview, limitUrlsPreviews, quickActions, defaultChat, enableOnlineUsersBadge, getOnlineUsersInterval, onUnreadCountChange, onOnlineUsersCountChange, onOpenChange, }: AppPresets) => void;
34
+ export default useAppPresets;
@@ -58,7 +58,11 @@ declare const _default: {
58
58
  "Notifications": "Ειδοποιήσεις",
59
59
  "NotificationSound": "Ήχος ειδοποίησης",
60
60
  "PushNotifications": "Ειδοποιήσεις push",
61
- "PleaseWait": "Παρακαλώ περιμένετε"
61
+ "PleaseWait": "Παρακαλώ περιμένετε",
62
+ "Available": "Διαθέσιμος/η",
63
+ "Busy": "Απασχολημένος/η",
64
+ "Away": "Απουσιάζω",
65
+ "Online": "Συνδεδεμένος/η"
62
66
  }
63
67
  ;
64
68
 
@@ -58,7 +58,11 @@ declare const _default: {
58
58
  "Notifications": "Notifications",
59
59
  "NotificationSound": "Notification sound",
60
60
  "PushNotifications": "Push notifications",
61
- "PleaseWait": "Please wait"
61
+ "PleaseWait": "Please wait",
62
+ "Available": "Available",
63
+ "Busy": "Busy",
64
+ "Away": "Away",
65
+ "Online": "Online"
62
66
  }
63
67
  ;
64
68
 
@@ -58,7 +58,11 @@ declare const _default: {
58
58
  "Notifications": "Сповіщення",
59
59
  "NotificationSound": "Звук сповіщення",
60
60
  "PushNotifications": "Push-сповіщення",
61
- "PleaseWait": "Будь ласка, зачекайте"
61
+ "PleaseWait": "Будь ласка, зачекайте",
62
+ "Available": "Присутній",
63
+ "Busy": "Зайнятий",
64
+ "Away": "Відсутній",
65
+ "Online": "В мережі"
62
66
  }
63
67
  ;
64
68
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@connectycube/chat-widget",
3
3
  "description": "A React component that seamlessly integrates ConnectyCube's real-time chat capabilities into your web applications. This widget offers an out-of-the-box solution for embedding chat features—such as instant messaging, user presence, and file sharing—without the overhead of building a complete chat system from scratch.",
4
- "version": "0.24.0",
4
+ "version": "0.26.0",
5
5
  "license": "GPL-3.0-only",
6
6
  "homepage": "https://github.com/ConnectyCube/connectycube-chat-widget#readme",
7
7
  "bugs": {
@@ -39,12 +39,14 @@
39
39
  "exports": {
40
40
  ".": {
41
41
  "types": "./dist/types/index.d.ts",
42
+ "require": "./dist/index.umd.js",
42
43
  "import": "./dist/index.es.js",
43
- "require": "./dist/index.umd.js"
44
+ "default": "./dist/index.es.js"
44
45
  },
45
46
  "./react19": {
46
47
  "types": "./dist/react19/types/index.d.ts",
47
- "import": "./dist/react19/index.es.js"
48
+ "import": "./dist/react19/index.es.js",
49
+ "default": "./dist/react19/index.es.js"
48
50
  }
49
51
  },
50
52
  "files": [
@@ -64,13 +66,12 @@
64
66
  "tailwindcss": "npx @tailwindcss/cli -i ./src/index.css -o ./src/widget.css",
65
67
  "tailwindcss:watch": "npx @tailwindcss/cli -i ./src/index.css -o ./src/widget.css --watch",
66
68
  "tailwindcss:minify": "npx @tailwindcss/cli -i ./src/index.css -o ./src/widget.css --minify",
67
- "dev": "npm run react:default && npx npm-run-all --parallel vite:dev tailwindcss:watch",
68
- "dev:18": "npm run react:18 && npx npm-run-all --parallel vite:dev tailwindcss:watch",
69
- "dev:19": "npm run react:19 && npx npm-run-all --parallel vite:dev tailwindcss:watch",
69
+ "dev": "npx npm-run-all --parallel vite:dev tailwindcss:watch",
70
70
  "build": "npm run tailwindcss:minify && npm run react:18 && REACT_VERSION=18 npm run vite:build && npm run react:19 && REACT_VERSION=19 npm run vite:build && npm run react:default",
71
71
  "build:18": "npm run tailwindcss:minify && npm run react:18 && REACT_VERSION=18 npm run vite:build",
72
72
  "build:19": "npm run tailwindcss:minify && npm run react:19 && REACT_VERSION=19 npm run vite:build",
73
- "preview": "npm run tailwindcss && npm run react:default && npm run vite:preview",
73
+ "build:default": "npm run tailwindcss:minify && npm run vite:build",
74
+ "preview": "npm run tailwindcss && npm run vite:preview",
74
75
  "lint": "eslint .",
75
76
  "test": "vitest",
76
77
  "test:ci": "vitest run",
@@ -78,64 +79,66 @@
78
79
  "version": "sh ./fetch-version.sh"
79
80
  },
80
81
  "dependencies": {
81
- "@connectycube/use-chat": "^0.20.0",
82
- "@radix-ui/react-alert-dialog": "^1.1.7",
83
- "@radix-ui/react-avatar": "^1.1.4",
84
- "@radix-ui/react-dialog": "^1.1.7",
85
- "@radix-ui/react-dropdown-menu": "^2.1.7",
86
- "@radix-ui/react-label": "^2.1.3",
87
- "@radix-ui/react-slot": "^1.2.0",
88
- "@radix-ui/react-switch": "^1.1.4",
89
- "@radix-ui/react-tabs": "^1.1.4",
82
+ "@connectycube/use-chat": "^0.23.0",
83
+ "@radix-ui/react-alert-dialog": "^1.1.13",
84
+ "@radix-ui/react-avatar": "^1.1.9",
85
+ "@radix-ui/react-dialog": "^1.1.13",
86
+ "@radix-ui/react-dropdown-menu": "^2.1.14",
87
+ "@radix-ui/react-label": "^2.1.6",
88
+ "@radix-ui/react-slot": "^1.2.2",
89
+ "@radix-ui/react-switch": "^1.2.4",
90
+ "@radix-ui/react-tabs": "^1.1.11",
91
+ "@radix-ui/react-tooltip": "^1.2.6",
90
92
  "class-variance-authority": "^0.7.1",
91
93
  "clsx": "^2.1.1",
94
+ "connectycube": "^4.3.0",
92
95
  "get-browser-fingerprint": "^4.1.0",
93
- "i18next": "^25.0.0",
96
+ "i18next": "^25.1.2",
94
97
  "jsdom": "^26.1.0",
95
- "linkify-react": "^4.2.0",
96
- "linkifyjs": "^4.2.0",
97
- "lucide-react": "^0.488.0",
98
+ "linkify-react": "^4.3.1",
99
+ "linkifyjs": "^4.3.1",
100
+ "lucide-react": "^0.506.0",
98
101
  "next-themes": "^0.4.6",
99
- "react-hook-form": "^7.55.0",
100
- "react-i18next": "^15.4.1",
102
+ "react-hook-form": "^7.56.3",
103
+ "react-i18next": "^15.5.1",
101
104
  "react-icons": "^5.5.0",
102
105
  "react-intersection-observer": "^9.16.0",
103
106
  "react-player": "^2.16.0",
104
- "zustand": "^5.0.3"
107
+ "zustand": "^5.0.4"
105
108
  },
106
109
  "peerDependencies": {
107
- "connectycube": "^4.3.0",
108
110
  "react": "^18 || ^19",
109
111
  "react-dom": "^18 || ^19"
110
112
  },
111
113
  "devDependencies": {
112
- "@eslint/js": "^9.24.0",
113
- "@tailwindcss/postcss": "^4.1.4",
114
- "@tailwindcss/vite": "^4.1.4",
115
- "@types/node": "^22.14.1",
116
- "@types/react": "^19.1.2",
117
- "@types/react-dom": "^19.1.2",
118
- "@vitejs/plugin-react": "^4.4.0",
119
- "@vitest/coverage-v8": "^3.1.1",
120
- "eslint": "^9.24.0",
114
+ "@eslint/js": "^9.26.0",
115
+ "@tailwindcss/postcss": "^4.1.5",
116
+ "@tailwindcss/vite": "^4.1.5",
117
+ "@types/node": "^22.15.17",
118
+ "@types/react": "^19.1.3",
119
+ "@types/react-dom": "^19.1.3",
120
+ "@vitejs/plugin-react": "^4.4.1",
121
+ "@vitest/coverage-v8": "^3.1.3",
122
+ "eslint": "^9.26.0",
121
123
  "eslint-plugin-react-hooks": "^5.2.0",
122
- "eslint-plugin-react-refresh": "^0.4.19",
123
- "globals": "^16.0.0",
124
+ "eslint-plugin-react-refresh": "^0.4.20",
125
+ "globals": "^16.1.0",
124
126
  "prettier": "3.5.3",
125
127
  "sonner": "^2.0.3",
126
128
  "tailwind-merge": "^3.2.0",
127
- "tailwindcss": "^4.1.4",
128
- "tw-animate-css": "^1.2.5",
129
+ "tailwind-scrollbar": "^4.0.2",
130
+ "tailwindcss": "^4.1.5",
131
+ "tw-animate-css": "^1.2.9",
129
132
  "typescript": "^5.8.3",
130
- "typescript-eslint": "^8.30.1",
131
- "vite": "^6.3.1",
133
+ "typescript-eslint": "^8.32.0",
134
+ "vite": "^6.3.5",
132
135
  "vite-plugin-css-injected-by-js": "^3.5.2",
133
136
  "vite-plugin-dts": "^4.5.3",
134
- "vitest": "^3.1.1"
137
+ "vitest": "^3.1.3"
135
138
  },
136
139
  "optionalDependencies": {
137
- "@rollup/rollup-linux-x64-gnu": "4.40.0",
138
- "@tailwindcss/oxide-linux-x64-gnu": "^4.1.4",
140
+ "@rollup/rollup-linux-x64-gnu": "4.40.2",
141
+ "@tailwindcss/oxide-linux-x64-gnu": "^4.1.5",
139
142
  "lightningcss-linux-x64-gnu": "^1.29.3"
140
143
  },
141
144
  "engines": {
@@ -1,8 +0,0 @@
1
- type AppLoginProps = {
2
- id?: string;
3
- name?: string;
4
- avatar?: string;
5
- userProfileLink?: string;
6
- };
7
- declare const AppLogin: React.FC<AppLoginProps>;
8
- export default AppLogin;
@@ -1,6 +0,0 @@
1
- import { ReactNode } from 'react';
2
- type AppShadowRootProps = {
3
- children: ReactNode;
4
- };
5
- declare const AppShadowRoot: React.FC<AppShadowRootProps>;
6
- export default AppShadowRoot;
@@ -1,8 +0,0 @@
1
- type AppLoginProps = {
2
- id?: string;
3
- name?: string;
4
- avatar?: string;
5
- userProfileLink?: string;
6
- };
7
- declare const AppLogin: React.FC<AppLoginProps>;
8
- export default AppLogin;
@@ -1,6 +0,0 @@
1
- import { ReactNode } from 'react';
2
- type AppShadowRootProps = {
3
- children: ReactNode;
4
- };
5
- declare const AppShadowRoot: React.FC<AppShadowRootProps>;
6
- export default AppShadowRoot;