gotrip-fx-transaction-form 1.0.293-dev → 1.0.294-dev

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gotrip-fx-transaction-form",
3
- "version": "1.0.293-dev",
3
+ "version": "1.0.294-dev",
4
4
  "description": "FX Transaction Form ES6 module",
5
5
  "main": "index.js",
6
6
  "types": "types/index.d.ts",
@@ -8,5 +8,6 @@ export type EmbededIndividualAppProps = {
8
8
  type?: ESdkFormType;
9
9
  scrollable?: boolean;
10
10
  recommendBoxHeight?: string;
11
+ chatTopics?: string[];
11
12
  };
12
- export declare const EmbededIndividualApp: ({ apiKey, externalCssUrl, hide, defaultBank, displayDefaultBankLogo, type, scrollable, recommendBoxHeight, }: EmbededIndividualAppProps) => import("react/jsx-runtime").JSX.Element;
13
+ export declare const EmbededIndividualApp: ({ apiKey, externalCssUrl, hide, defaultBank, displayDefaultBankLogo, type, scrollable, recommendBoxHeight, chatTopics, }: EmbededIndividualAppProps) => import("react/jsx-runtime").JSX.Element;
@@ -7,6 +7,7 @@ type InitProps = {
7
7
  scrollable?: boolean;
8
8
  utm?: Record<string, string> | null;
9
9
  publicId?: string;
10
+ chatTopics?: string[];
10
11
  };
11
12
  interface GoTripSDKProps {
12
13
  init: (props: InitProps) => void;
@@ -1,4 +1,4 @@
1
- import { IChatMessage, IChatSession } from '../types/chat';
1
+ import { EChatTopic, IChatMessage, IChatSession } from '../types/chat';
2
2
  interface ChatStore {
3
3
  session: IChatSession | null;
4
4
  messages: IChatMessage[];
@@ -8,6 +8,7 @@ interface ChatStore {
8
8
  sessionUnreadCounts: Record<number, number>;
9
9
  adminIsOnline: boolean | null;
10
10
  agencyIsOnline: boolean | null;
11
+ allowedTopics: EChatTopic[] | null;
11
12
  setSession: (session: IChatSession | null) => void;
12
13
  setMessages: (messages: IChatMessage[]) => void;
13
14
  addMessage: (message: IChatMessage) => void;
@@ -26,6 +27,7 @@ interface ChatStore {
26
27
  getSessionUnread: (sessionId: number) => number;
27
28
  setAdminIsOnline: (isOnline: boolean | null) => void;
28
29
  setAgencyIsOnline: (isOnline: boolean | null) => void;
30
+ setAllowedTopics: (topics: EChatTopic[] | null) => void;
29
31
  }
30
32
  export declare const useChatStore: import('zustand').UseBoundStore<import('zustand').StoreApi<ChatStore>>;
31
33
  export {};
@@ -38,6 +38,7 @@ export interface IChatSession {
38
38
  id: number;
39
39
  publicId: string;
40
40
  agencyUserId: number;
41
+ browserKey?: string | null;
41
42
  agencyInfo?: AgencyInfo;
42
43
  assignedAdminId: number | null;
43
44
  adminInfo?: AdminInfo;
@@ -7,5 +7,6 @@ export declare enum ESdkFormType {
7
7
  EXCHANGE_RATE_TABLE = "exchange_rate_table",
8
8
  INSURANCE_APPROVAL = "insurance_approval",
9
9
  MOTOR_INSURANCE_CAR_APPROVAL = "motor_insurance_car_approval",
10
- MOTOR_INSURANCE_BIKE_APPROVAL = "motor_insurance_bike_approval"
10
+ MOTOR_INSURANCE_BIKE_APPROVAL = "motor_insurance_bike_approval",
11
+ CHAT_SUPPORT = "chat_support"
11
12
  }
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Stable per-browser chat identity. Read-or-create a UUID in localStorage.
3
+ *
4
+ * The same agency identity (e.g. all visitors of a tenant behind one api-key)
5
+ * is split into one chat session per browser using this key. It is sent to the
6
+ * backend on every chat request (REST header `x-chat-browser-key`) and on the
7
+ * socket handshake (`auth.browserKey`).
8
+ *
9
+ * Idempotent: the first call on a browser writes the key; later calls reuse it.
10
+ * Call it once at app bootstrap so the key exists before any chat call fires.
11
+ */
12
+ export declare const getChatBrowserKey: () => string;
@@ -7,7 +7,7 @@ export declare const requestNotificationPermission: () => void;
7
7
  /**
8
8
  * Initialize Socket.IO connection with authentication token
9
9
  */
10
- export declare const initializeSocket: (token: string) => Socket;
10
+ export declare const initializeSocket: (token?: string) => Socket;
11
11
  /**
12
12
  * Get the current socket instance
13
13
  */