@botpress/webchat 2.3.6 → 2.4.0-beta.1

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 (54) hide show
  1. package/{.eslintrc.js → .eslintrc.cjs} +1 -0
  2. package/.turbo/turbo-build.log +8 -8
  3. package/dist/client/client.d.ts +33 -41
  4. package/dist/client/index.d.ts +2 -0
  5. package/dist/client/legacyClient.d.ts +55 -0
  6. package/dist/client/types.d.ts +2 -11
  7. package/dist/components/Block.d.ts +4 -2
  8. package/dist/components/CloseWindowButton.d.ts +7 -0
  9. package/dist/components/Composer/Composer.d.ts +13 -1
  10. package/dist/components/Container/Container.d.ts +9 -1
  11. package/dist/components/Header/Header.d.ts +5 -1
  12. package/dist/components/Loader/Loader.d.ts +5 -0
  13. package/dist/components/Loader/index.d.ts +1 -0
  14. package/dist/components/Marquee/Marquee.d.ts +7 -1
  15. package/dist/components/Message/Message.d.ts +10 -6
  16. package/dist/components/MessageList/MessageList.d.ts +12 -7
  17. package/dist/components/RestartConversationButton.d.ts +7 -0
  18. package/dist/components/Webchat.d.ts +28 -1
  19. package/dist/components/index.d.ts +1 -1
  20. package/dist/components/renderers/Audio/Audio.d.ts +4 -2
  21. package/dist/components/renderers/Button/Button.d.ts +1 -1
  22. package/dist/components/renderers/Carousel/Carousel.d.ts +4 -2
  23. package/dist/components/renderers/Dropdown/Dropdown.d.ts +1 -1
  24. package/dist/components/renderers/File/File.d.ts +4 -2
  25. package/dist/components/renderers/Image/Image.d.ts +4 -2
  26. package/dist/components/renderers/Location/Location.d.ts +4 -2
  27. package/dist/components/renderers/Video/Video.d.ts +4 -2
  28. package/dist/components/renderers/index.d.ts +1 -1
  29. package/dist/contexts/index.d.ts +0 -1
  30. package/dist/gen/signals/index.d.ts +4 -4
  31. package/dist/gen/signals/messageCreated.z.d.ts +4 -4
  32. package/dist/hooks/index.d.ts +4 -1
  33. package/dist/hooks/useConversationId.d.ts +4 -0
  34. package/dist/hooks/useIsTyping.d.ts +4 -0
  35. package/dist/hooks/useUserCredentials.d.ts +5 -0
  36. package/dist/hooks/useWebchatClient.d.ts +47 -0
  37. package/dist/index.d.ts +3 -3
  38. package/dist/index.js +23798 -24577
  39. package/dist/index.umd.cjs +134 -134
  40. package/dist/providers/index.d.ts +0 -1
  41. package/dist/stores/index.d.ts +1 -0
  42. package/dist/stores/messagesStore.d.ts +20 -0
  43. package/dist/stores/offlineStore.d.ts +0 -2
  44. package/dist/stores/webchatStore.d.ts +5 -53
  45. package/dist/style.css +1 -1
  46. package/dist/styles/classes.d.ts +3 -0
  47. package/dist/types/block-type.d.ts +21 -5
  48. package/dist/utils/message.d.ts +2 -2
  49. package/package.json +3 -1
  50. package/dist/components/CloseWindow.d.ts +0 -5
  51. package/dist/components/RestartConversation.d.ts +0 -5
  52. package/dist/contexts/WebchatContext.d.ts +0 -73
  53. package/dist/hooks/useWebchatStore.d.ts +0 -2
  54. package/dist/providers/WebchatProvider.d.ts +0 -4
@@ -0,0 +1,47 @@
1
+ import type { Events, User } from '../client/types';
2
+ import { type FileType, type MessageObject } from '../types';
3
+ import { EventEmitter } from '../utils';
4
+ import type { Message as WebchatMessage } from '../adapters/webchat';
5
+ import { getClient } from '../client';
6
+ type UserResponse = Awaited<ReturnType<Awaited<ReturnType<typeof getClient>['getUser']>>>['user'];
7
+ type Props = {
8
+ userKey?: string;
9
+ conversationId?: string;
10
+ clientId: string;
11
+ apiUrl?: string;
12
+ sseTimeout?: number;
13
+ };
14
+ type ScopedClient = {
15
+ sendMessage: (payload: WebchatMessage) => Promise<void>;
16
+ updateUser: (user: User) => Promise<User>;
17
+ sendEvent: (event: Record<string, any>) => Promise<void>;
18
+ uploadFile: (file: File) => Promise<{
19
+ fileUrl: string;
20
+ name: string;
21
+ type: FileType;
22
+ }>;
23
+ getUser: () => Promise<UserResponse>;
24
+ };
25
+ export type UseWebchatClientReturn = {
26
+ clientState: 'connected' | 'disconnected' | 'error';
27
+ on: EventEmitter<Events>['on'];
28
+ client: ScopedClient;
29
+ messages: MessageObject[];
30
+ conversationId: string;
31
+ newConversation: () => void;
32
+ isFetchingMessages: boolean;
33
+ user?: UserResponse;
34
+ isTyping: boolean;
35
+ } | {
36
+ clientState: 'connecting';
37
+ on: EventEmitter<Events>['on'];
38
+ client: undefined;
39
+ messages: MessageObject[];
40
+ conversationId: undefined;
41
+ newConversation: () => void;
42
+ isFetchingMessages: boolean;
43
+ user: undefined;
44
+ isTyping: undefined;
45
+ };
46
+ export declare function useWebchatClient({ apiUrl, clientId, ...props }: Props): UseWebchatClientReturn;
47
+ export {};
package/dist/index.d.ts CHANGED
@@ -9,7 +9,7 @@ export * from './providers';
9
9
  export * from './types';
10
10
  export * from './schemas';
11
11
  export { webchatClasses } from './styles';
12
- export { type WebchatClient, type WebchatEvents } from './client';
13
- export { getClient } from './get-client';
14
- export { useClient, useWebchatStore } from './hooks';
12
+ export { type WebchatClient, type WebchatEvents, getClient, type Client } from './client';
13
+ export { useClient, useWebchatClient, type UseWebchatClientReturn } from './hooks';
15
14
  export { generateThemeStylesheet } from './utils';
15
+ export { useWebchatStore, useOfflineStore } from './stores';