ajaxter-chat 3.1.0 → 3.2.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.
@@ -1,42 +1,148 @@
1
+ export interface AjaxterWidgetTheme {
2
+ header: {
3
+ background: string;
4
+ text: string;
5
+ };
6
+ agent: {
7
+ messageBackground: string;
8
+ messageText: string;
9
+ };
10
+ visitor: {
11
+ messageBackground: string;
12
+ messageText: string;
13
+ };
14
+ }
15
+ export interface AjaxterWidgetFeatures {
16
+ emoji: boolean;
17
+ rating: boolean;
18
+ transcript: boolean;
19
+ voice: boolean;
20
+ attachment: boolean;
21
+ webCall: boolean;
22
+ }
23
+ export interface AjaxterMinimized {
24
+ desktop: {
25
+ type: 'slide' | 'round' | 'square';
26
+ height?: number;
27
+ width?: number;
28
+ borderRadiusTop?: number;
29
+ borderRadiusBottom?: number;
30
+ };
31
+ mobile: {
32
+ type: 'round' | 'slide' | 'square';
33
+ };
34
+ }
35
+ export interface AjaxterWidgetSettings {
36
+ type: 'inline' | 'popup' | 'embed';
37
+ language: string;
38
+ minimized: AjaxterMinimized;
39
+ maximized: {
40
+ desktop: {
41
+ height: number;
42
+ width: number;
43
+ };
44
+ };
45
+ theme: AjaxterWidgetTheme;
46
+ notification?: {
47
+ all?: {
48
+ sound?: boolean;
49
+ agentTyping?: boolean;
50
+ visitorTyping?: boolean;
51
+ };
52
+ desktop?: {
53
+ preview?: boolean;
54
+ };
55
+ mobile?: {
56
+ preview?: boolean;
57
+ };
58
+ };
59
+ behavior?: {
60
+ defaultView?: string;
61
+ };
62
+ visibility?: {
63
+ all?: {
64
+ showWhenOffline?: boolean;
65
+ };
66
+ desktop?: {
67
+ position?: string;
68
+ show?: boolean;
69
+ };
70
+ mobile?: {
71
+ position?: string;
72
+ show?: boolean;
73
+ };
74
+ };
75
+ features: AjaxterWidgetFeatures;
76
+ scheduler?: {
77
+ enabled: boolean;
78
+ config?: unknown;
79
+ };
80
+ states?: Record<string, unknown>;
81
+ }
82
+ /** Internal fields that drive the npm widget behaviour */
83
+ export interface AjaxterInternalConfig {
84
+ id: string;
85
+ apiKey: string;
86
+ status: ChatStatus;
87
+ chatType: ChatType;
88
+ /** 'slider' = side drawer, 'popup' = centered modal, 'inline' = embedded in page */
89
+ displayMode: DisplayMode;
90
+ primaryColor: string;
91
+ buttonLabel: string;
92
+ brandName: string | null;
93
+ supportPhone: string | null;
94
+ privacyPolicyUrl: string | null;
95
+ showPrivacyNotice: boolean;
96
+ allowVoiceMessage: boolean;
97
+ allowAttachment: boolean;
98
+ allowEmoji: boolean;
99
+ allowWebCall: boolean;
100
+ maxEmojiCount: number;
101
+ allowTranscript: boolean;
102
+ allowReport: boolean;
103
+ allowBlock: boolean;
104
+ }
105
+ /** Full response shape from GET /api/chat-config */
106
+ export interface AjaxterConfigResponse {
107
+ ok: boolean;
108
+ data: {
109
+ settingsVersion: string;
110
+ propertyName: string;
111
+ branding: {
112
+ name: string;
113
+ };
114
+ widget: AjaxterWidgetSettings;
115
+ _internal: AjaxterInternalConfig;
116
+ developers: ChatUser[];
117
+ users: ChatUser[];
118
+ sampleChats: Record<string, ChatMessage[]>;
119
+ sampleTickets: Ticket[];
120
+ blockedUsers: string[];
121
+ };
122
+ }
123
+ /** The merged WidgetConfig shape used throughout the widget components */
1
124
  export interface WidgetConfig {
2
125
  id: string;
3
126
  apiKey: string;
4
127
  status: ChatStatus;
5
128
  chatType: ChatType;
129
+ displayMode: DisplayMode;
6
130
  primaryColor: string;
7
131
  buttonLabel: string;
8
132
  buttonPosition: 'bottom-right' | 'bottom-left';
9
133
  welcomeTitle: string;
10
134
  welcomeSubtitle: string;
11
- /** Shown in footer (e.g. branch / location name) */
12
135
  branch?: string;
13
- /** Optional label above branch (e.g. "Answers by") */
14
136
  footerPoweredBy?: string;
15
- /** Shown on home “Call Us” (tel: link) */
16
137
  supportPhone?: string;
17
- /**
18
- * Who is using the widget. `developer` = support staff: “Need Support” becomes “Provide Support”
19
- * and lists customers; “New Conversation” lists other developers (excl. viewerUid).
20
- */
21
138
  viewerType?: 'user' | 'developer';
22
- /** Current user id when viewerType is developer — excluded from developer pick lists */
23
139
  viewerUid?: string;
24
- /** Display name for transfer notes (optional) */
25
140
  viewerName?: string;
26
- /**
27
- * Host app project scope (set when embedding passes `viewer.projectId`).
28
- * Use for API calls; lists can be filtered to users in the same project.
29
- */
30
141
  viewerProjectId?: string;
31
- /** Privacy Policy URL (linked from chat consent banner) */
32
142
  privacyPolicyUrl?: string;
33
- /** Set false to hide the consent note above the composer */
34
143
  showPrivacyNotice?: boolean;
35
- /** Product brand (e.g. Ajaxter) */
36
144
  brandName?: string;
37
- /** Home promotion: “Take a Website Tour” link */
38
145
  websiteTourUrl?: string;
39
- /** Optional override for the lead line in the promotion card */
40
146
  promotionLead?: string;
41
147
  allowVoiceMessage: boolean;
42
148
  allowAttachment: boolean;
@@ -46,28 +152,13 @@ export interface WidgetConfig {
46
152
  allowTranscriptDownload: boolean;
47
153
  allowReport: boolean;
48
154
  allowBlock: boolean;
49
- /**
50
- * When `true` (set by the server if this viewer is spam-blocked or not in allowed user/ticket/chat lists),
51
- * the widget hides all normal navigation and shows only the blocked-user screen with a re-enable request form.
52
- */
53
155
  viewerBlocked?: boolean;
54
- /** Optional override for the blocked message (default is a fixed spam notice). */
55
156
  blockedViewerMessage?: string;
56
- /**
57
- * Absolute URL for `POST` JSON re-enable requests. If omitted, the submit button explains that no endpoint is configured.
58
- * @example https://api.example.com/widgets/reenable-request
59
- */
60
157
  reenableRequestUrl?: string;
61
- /**
62
- * Current presence from your API/DB (include in chatData or a session payload).
63
- * When set, it initializes the status control and overrides session-only cache.
64
- */
65
158
  presenceStatus?: PresenceStatus;
66
- /**
67
- * Production: `POST` JSON `{ widgetId, apiKey, viewerUid?, status }` to save presence in your database.
68
- * The client still mirrors to sessionStorage as a local fallback.
69
- */
70
159
  presenceUpdateUrl?: string;
160
+ /** Full Ajaxter settings from server (for display-mode, theming, etc.) */
161
+ ajaxterSettings?: AjaxterWidgetSettings;
71
162
  }
72
163
  export interface RemoteChatData {
73
164
  widget: WidgetConfig;
@@ -79,13 +170,13 @@ export interface RemoteChatData {
79
170
  }
80
171
  export type ChatStatus = 'ACTIVE' | 'DISABLE' | 'MAINTENANCE';
81
172
  export type ChatType = 'SUPPORT' | 'CHAT' | 'BOTH';
173
+ export type DisplayMode = 'slider' | 'popup' | 'inline';
82
174
  export type UserType = 'developer' | 'user';
83
175
  export type OnlineStatus = 'online' | 'away' | 'offline';
84
176
  export type BottomTab = 'home' | 'chats' | 'tickets';
85
177
  export type Screen = 'home' | 'user-list' | 'chat' | 'recent-chats' | 'tickets' | 'ticket-new' | 'ticket-detail' | 'block-list' | 'call';
86
178
  export type UserListContext = 'support' | 'conversation';
87
179
  export type MessageType = 'text' | 'voice' | 'attachment' | 'emoji';
88
- /** Home status selector; persist via `presenceUpdateUrl` in production */
89
180
  export type PresenceStatus = 'ACTIVE' | 'AWAY' | 'DND';
90
181
  export interface ChatUser {
91
182
  uid: string;
@@ -97,10 +188,6 @@ export interface ChatUser {
97
188
  avatar: string | null;
98
189
  status: OnlineStatus;
99
190
  designation: string;
100
- /**
101
- * When `true` for the row matching the current viewer (`viewerUid` / `viewer.uid`),
102
- * the widget shows the spam/blocked screen (same as `widget.viewerBlocked`).
103
- */
104
191
  viewerBlocked?: boolean;
105
192
  }
106
193
  export interface ChatMessage {
@@ -113,12 +200,9 @@ export interface ChatMessage {
113
200
  status: 'sent' | 'delivered' | 'read';
114
201
  attachmentName?: string;
115
202
  attachmentSize?: string;
116
- /** Blob URL for attachment download (local send) */
117
203
  attachmentUrl?: string;
118
- /** e.g. image/png — used for inline image preview in bubbles */
119
204
  attachmentMime?: string;
120
205
  voiceDuration?: number;
121
- /** Blob URL for in-bubble audio playback (local recording) */
122
206
  voiceUrl?: string;
123
207
  }
124
208
  export interface Ticket {
@@ -150,6 +234,7 @@ export interface CallSession {
150
234
  export interface LocalEnvConfig {
151
235
  apiKey: string;
152
236
  widgetId: string;
237
+ socketUrl: string;
153
238
  }
154
239
  export interface ChatWidgetTheme {
155
240
  primaryColor?: string;
@@ -160,15 +245,10 @@ export interface ChatWidgetTheme {
160
245
  buttonPosition?: 'bottom-right' | 'bottom-left';
161
246
  borderRadius?: string;
162
247
  }
163
- /**
164
- * Pass the logged-in user from your React app so the widget matches identity and UI (user vs developer).
165
- * Overrides `viewerUid`, `viewerName`, `viewerType` from remote `chatData.json` when provided.
166
- */
167
248
  export interface ChatWidgetViewer {
168
249
  uid: string;
169
250
  name: string;
170
251
  type: UserType;
171
- /** When set, directory lists only include users whose `ChatUser.project` equals this string (exact match). */
172
252
  projectId?: string;
173
253
  }
174
254
  export interface ChatWidgetProps {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  "use strict";
2
+ // ─── Ajaxter Server Config Shape ─────────────────────────────────────────────
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";AAAA,gFAAgF"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "ajaxter-chat",
3
- "version": "3.1.0",
4
- "description": "Drawer-based chat widget with real-time WebSocket, WebRTC calling, voice messages, tickets, block list, and transcript download.",
3
+ "version": "3.2.0",
4
+ "description": "Drawer/popup/inline chat widget with real-time Socket.IO, WebRTC calling, voice messages, tickets, and display-mode config from server.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "files": ["dist", "src", "public"],
@@ -13,7 +13,11 @@
13
13
  },
14
14
  "peerDependencies": {
15
15
  "react": ">=17.0.0",
16
- "react-dom": ">=17.0.0"
16
+ "react-dom": ">=17.0.0",
17
+ "socket.io-client": ">=4.0.0"
18
+ },
19
+ "peerDependenciesMeta": {
20
+ "socket.io-client": { "optional": false }
17
21
  },
18
22
  "devDependencies": {
19
23
  "@types/node": "^22.0.0",
@@ -23,6 +27,6 @@
23
27
  "react-dom": "^18.0.0",
24
28
  "typescript": "^5.0.0"
25
29
  },
26
- "keywords": ["react","nextjs","chat","widget","webrtc","support","tickets","drawer","typescript","websocket","realtime"],
30
+ "keywords": ["react","nextjs","chat","widget","webrtc","support","tickets","drawer","popup","typescript","websocket","realtime","socket.io"],
27
31
  "license": "MIT"
28
32
  }