@ethora/chat-component 26.5.4 → 26.5.5

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.
@@ -2,14 +2,15 @@ export declare const AddNewIcon: ({ color, ...props }: {
2
2
  [x: string]: any;
3
3
  color?: string;
4
4
  }) => import("react/jsx-runtime").JSX.Element;
5
- export declare const AttachIcon: ({ color, ...props }: any) => import("react/jsx-runtime").JSX.Element;
5
+ export declare const AttachIcon: ({ color, bgcolor, ...props }: any) => import("react/jsx-runtime").JSX.Element;
6
6
  export declare const CloseIcon: ({ color, ...props }: any) => import("react/jsx-runtime").JSX.Element;
7
7
  export declare const DownloadIcon: ({ color, ...props }: any) => import("react/jsx-runtime").JSX.Element;
8
- export declare const RecordIcon: ({ color, ...props }: any) => import("react/jsx-runtime").JSX.Element;
8
+ export declare const RecordIcon: ({ color, bgcolor, ...props }: any) => import("react/jsx-runtime").JSX.Element;
9
9
  export declare const RemoveIcon: (props: any) => import("react/jsx-runtime").JSX.Element;
10
- export declare const SendIcon: ({ color, ...props }: {
10
+ export declare const SendIcon: ({ color, bgcolor, ...props }: {
11
11
  [x: string]: any;
12
12
  color?: string;
13
+ bgcolor?: string;
13
14
  }) => import("react/jsx-runtime").JSX.Element;
14
15
  export declare const GoogleIcon: ({ ...props }: {
15
16
  [x: string]: any;
@@ -22,18 +23,6 @@ export declare const SearchIcon: ({ color, ...props }: {
22
23
  [x: string]: any;
23
24
  color?: string;
24
25
  }) => import("react/jsx-runtime").JSX.Element;
25
- export declare const VideoCallIcon: ({ color, ...props }: {
26
- [x: string]: any;
27
- color?: string;
28
- }) => import("react/jsx-runtime").JSX.Element;
29
- export declare const AudioCallIcon: ({ color, ...props }: {
30
- [x: string]: any;
31
- color?: string;
32
- }) => import("react/jsx-runtime").JSX.Element;
33
- export declare const HangUpIcon: ({ color, ...props }: {
34
- [x: string]: any;
35
- color?: string;
36
- }) => import("react/jsx-runtime").JSX.Element;
37
26
  export declare const ReferalsIcon: ({ color, ...props }: {
38
27
  [x: string]: any;
39
28
  color?: string;
@@ -3,6 +3,7 @@ interface SearchInputProps extends React.InputHTMLAttributes<HTMLInputElement> {
3
3
  icon?: React.ReactNode;
4
4
  animated?: boolean;
5
5
  direction?: 'left' | 'right';
6
+ colorBg?: string;
6
7
  }
7
8
  declare const SearchInput: React.FC<SearchInputProps>;
8
9
  export { SearchInput };
@@ -2,6 +2,7 @@ import { default as React } from 'react';
2
2
  interface StyledInputProps {
3
3
  label?: string;
4
4
  color?: string;
5
+ colorBg?: string;
5
6
  helperText?: string;
6
7
  error?: boolean;
7
8
  [key: string]: any;
@@ -2,6 +2,7 @@ export declare const InputContainer: import('styled-components/dist/types').ISty
2
2
  export declare const MessageInputContainer: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
3
3
  export declare const MessageInput: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, {
4
4
  $color?: string;
5
+ $colorBg?: string;
5
6
  }>> & string;
6
7
  export declare const HiddenFileInput: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, never>> & string;
7
8
  export declare const Timer: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
@@ -11,13 +12,17 @@ export declare const FilePreviewContainer: import('styled-components/dist/types'
11
12
  export declare const FilePreview: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
12
13
  export declare const ImagePreview: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').ImgHTMLAttributes<HTMLImageElement>, HTMLImageElement>, never>> & string;
13
14
  export declare const VideoPreview: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').VideoHTMLAttributes<HTMLVideoElement>, HTMLVideoElement>, never>> & string;
14
- export declare const StyledInput: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components').FastOmit<import('react').DetailedHTMLProps<import('react').InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, never>> & string;
15
+ export declare const StyledInput: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, {
16
+ $colorBg?: string;
17
+ }>> & string;
15
18
  export declare const TextareaWrapper: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
16
19
  $dynamicHeight?: number;
17
20
  $color?: string;
18
21
  $isFocused?: boolean;
22
+ $colorBg?: string;
19
23
  }>> & string;
20
24
  export declare const TextareaInput: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Substitute<import('react').DetailedHTMLProps<import('react').TextareaHTMLAttributes<HTMLTextAreaElement>, HTMLTextAreaElement>, {
21
25
  $dynamicHeight?: number;
22
26
  $color?: string;
27
+ $colorBg?: string;
23
28
  }>> & string;
@@ -8,6 +8,15 @@ import { IConfig } from '../types/types';
8
8
  * `colors.icons`.
9
9
  */
10
10
  export declare const resolveIconColor: (config?: Pick<IConfig, "colors"> | null) => string;
11
+ /**
12
+ * Resolve the background colour to use behind the chat's icon "chips" (attach,
13
+ * send, microphone, file preview, etc.).
14
+ *
15
+ * Priority: explicit `config.colors.iconsBg` → `config.colors.secondary` →
16
+ * white. Lets a host theme the icon backgrounds independently from `secondary`
17
+ * via `colors.iconsBg`, while keeping the historical white default.
18
+ */
19
+ export declare const resolveIconBgColor: (config?: Pick<IConfig, "colors"> | null) => string;
11
20
  /** CSS variable read by the chat's chrome icons as their default colour. */
12
21
  export declare const ICON_COLOR_VAR = "--ethora-icon-color";
13
22
  /**
@@ -2,5 +2,4 @@ export declare const useStoreConsole: () => {
2
2
  chatSettingStore: any;
3
3
  rooms: any;
4
4
  roomHeapSlice: import('../roomStore/roomHeapSlice').roomHeapSliceState;
5
- call: import('immer').WritableDraft<import('../roomStore/callSlice').CallState>;
6
5
  };
@@ -11,10 +11,12 @@ interface UnreadMessagesStats {
11
11
  displayTotal: string;
12
12
  displayByRoom: UnreadMessagesDisplayMap;
13
13
  /**
14
- * True while the unread counts are not trustworthy yet — i.e. until the
15
- * room list has been populated at least once (from cache or the API), or
16
- * until the first rooms load cycle finishes for an account with no rooms.
17
- * Lets consumers show a spinner/skeleton instead of a misleading "0".
14
+ * True while the unread counts are still settling on first load. Instead of
15
+ * surfacing the count as it ramps up (0 → 2 → 3 … as history backfills), the
16
+ * hook keeps `loading` true until the per-room counts have stopped changing
17
+ * for a short window, then latches it to false. After that first settle,
18
+ * live message increments update the counts immediately and never flip
19
+ * `loading` back on — it's a first-load indicator, not a per-update one.
18
20
  */
19
21
  loading: boolean;
20
22
  /** Alias of `loading` — matches the React Native SDK field name. */