@telia-ace/widget-conversation 1.0.15 → 1.0.16

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 (41) hide show
  1. package/LICENSE.txt +5 -5
  2. package/README.md +307 -256
  3. package/dist/agent.d.ts +17 -17
  4. package/dist/conversation-controller.d.ts +88 -88
  5. package/dist/conversation-form-adapter.d.ts +7 -7
  6. package/dist/conversation-platform.d.ts +50 -50
  7. package/dist/conversation-provider.d.ts +22 -22
  8. package/dist/conversation.js +783 -5
  9. package/dist/conversation.js.map +1 -1
  10. package/dist/index.d.ts +9 -9
  11. package/dist/index.js +868 -9
  12. package/dist/index.js.map +1 -1
  13. package/dist/resolve-entity-value.d.ts +10 -10
  14. package/dist/return-button.js.map +1 -1
  15. package/dist/types.d.ts +95 -110
  16. package/dist/ui/conversation/conversation-component.d.ts +37 -37
  17. package/dist/ui/conversation/conversation-content.d.ts +11 -12
  18. package/dist/ui/conversation/conversation-input.d.ts +6 -6
  19. package/dist/ui/conversation/conversation-loader.d.ts +8 -8
  20. package/dist/ui/conversation/conversation-message.d.ts +7 -7
  21. package/dist/ui/conversation/conversation-styles.d.ts +11 -11
  22. package/dist/ui/conversation/conversation.d.ts +6 -6
  23. package/dist/ui/conversation/index.d.ts +2 -3
  24. package/dist/ui/conversation/message-types/agent.d.ts +11 -11
  25. package/dist/ui/conversation/message-types/custom-message-list-item.d.ts +9 -9
  26. package/dist/ui/conversation/message-types/custom.d.ts +9 -9
  27. package/dist/ui/conversation/message-types/index.d.ts +5 -5
  28. package/dist/ui/conversation/message-types/system.d.ts +12 -12
  29. package/dist/ui/conversation/message-types/timestamp.d.ts +8 -8
  30. package/dist/ui/conversation/message-types/user.d.ts +8 -8
  31. package/dist/ui/index.d.ts +2 -2
  32. package/dist/ui/return-button/index.d.ts +2 -2
  33. package/dist/ui/return-button/return-button-component.d.ts +19 -19
  34. package/dist/ui/return-button/return-button.d.ts +6 -6
  35. package/dist/user.d.ts +7 -7
  36. package/dist/utils/custom-message.d.ts +3 -3
  37. package/dist/utils/index.d.ts +1 -1
  38. package/dist/utils/open-chat-widget.d.ts +4 -4
  39. package/package.json +8 -8
  40. package/dist/index2.js +0 -1678
  41. package/dist/index2.js.map +0 -1
@@ -1,88 +1,88 @@
1
- import { Container, EventListener, EventManager } from '@webprovisions/platform';
2
- import { ConversationProvider } from './conversation-provider';
3
- import { ConversationMessageContent, ConversationMessageSender, ConversationMessageSettings, ConversationMessageUpdateSettings, ConverstationMessageItem, NormalizedMessageSettings } from './types';
4
- import { User } from './user';
5
- export declare type ValidateHandler = (formValues: {
6
- [key: string]: any;
7
- }) => Promise<any>;
8
- export declare type SubmitHandler = (formValues: {
9
- [key: string]: any;
10
- }) => Promise<any>;
11
- export declare type Print = (content: string | ConversationMessageContent) => ConversationEntry;
12
- export declare type FormHandlers = {
13
- [key: string]: FormHandler;
14
- };
15
- export declare type FormHandler = {
16
- validate?: ValidateHandler;
17
- submit: SubmitHandler;
18
- };
19
- export declare type CancelLoaderDelegate = () => void;
20
- export declare class ConversationEntry {
21
- private writer;
22
- constructor(writer: EntryWriter);
23
- update(content: string | ConversationMessageUpdateSettings | ConverstationMessageItem<any> | ConverstationMessageItem<any>[]): void;
24
- remove(): void;
25
- private getNormalizedSettings;
26
- }
27
- export declare enum ConversationMessageType {
28
- User = "user",
29
- Agent = "agent",
30
- System = "system"
31
- }
32
- export declare type ConversationMessage = {
33
- key: string;
34
- timestamp: number | null;
35
- content: ConversationMessageContent | null;
36
- sender: ConversationMessageSender | null;
37
- type: ConversationMessageType;
38
- };
39
- export declare type EntryWriter = (content: ConversationMessageUpdateSettings | null) => void;
40
- export declare const getNormalizedMessageSettings: (settings: string | ConversationMessageSettings | ConverstationMessageItem<any> | ConverstationMessageItem<any>[]) => NormalizedMessageSettings;
41
- /**
42
- * Manages the stream of messages inside a `ConversationComponent` and provides external read-write
43
- * access to it as well as exposing emitted actions.
44
- */
45
- export declare class ConversationController {
46
- container: Container;
47
- id: string;
48
- formHandlers: FormHandlers;
49
- /**
50
- * Represents the current end user.
51
- */
52
- user: User;
53
- events: EventManager;
54
- providers: string[];
55
- active: boolean;
56
- private registeredProviders;
57
- private loaders;
58
- private componentMounted;
59
- messages: ConversationMessage[];
60
- private typingActors;
61
- constructor(container: Container, id: string);
62
- setProviders(providers: string[]): void;
63
- createProvider(name: string): ConversationProvider;
64
- providerIndex(name: string): number;
65
- dispose(): void;
66
- onDispose(fn: EventListener): import("@webprovisions/platform").EventSubscriptionCancellation;
67
- onStarted(fn: EventListener): import("@webprovisions/platform").EventSubscriptionCancellation;
68
- disposeProvider(target: ConversationProvider): void;
69
- onProvidersChange(fn: EventListener): import("@webprovisions/platform").EventSubscriptionCancellation;
70
- setComponentMountedState(mounted: boolean): void;
71
- getComponentMountedState(): boolean;
72
- onUnreadMessage(fn: EventListener): import("@webprovisions/platform").EventSubscriptionCancellation;
73
- createEntry(key: string, content: ConversationMessageContent, type: ConversationMessageType, sender?: ConversationMessageSender, timestamp?: number | null): ConversationEntry;
74
- print: (settings: string | ConversationMessageSettings) => ConversationEntry;
75
- update(): void;
76
- getMessageStream(): {
77
- messages: ConversationMessage[];
78
- loading: boolean;
79
- typingActors: ConversationMessageSender[];
80
- };
81
- setTypingState(sender: ConversationMessageSender, type?: ConversationMessageType): () => void;
82
- /**
83
- * Displays a loader in the conversation.
84
- */
85
- loader(): CancelLoaderDelegate;
86
- submitForm(key: string, handler: SubmitHandler): void;
87
- validateForm(key: string, handler: ValidateHandler): void;
88
- }
1
+ import { Container, EventListener, EventManager } from '@webprovisions/platform';
2
+ import { ConversationProvider } from './conversation-provider';
3
+ import { ConversationMessageContent, ConversationMessageSender, ConversationMessageSettings, ConversationMessageUpdateSettings, ConverstationMessageItem, NormalizedMessageSettings } from './types';
4
+ import { User } from './user';
5
+ export declare type ValidateHandler = (formValues: {
6
+ [key: string]: any;
7
+ }) => Promise<any>;
8
+ export declare type SubmitHandler = (formValues: {
9
+ [key: string]: any;
10
+ }) => Promise<any>;
11
+ export declare type Print = (content: string | ConversationMessageContent) => ConversationEntry;
12
+ export declare type FormHandlers = {
13
+ [key: string]: FormHandler;
14
+ };
15
+ export declare type FormHandler = {
16
+ validate?: ValidateHandler;
17
+ submit: SubmitHandler;
18
+ };
19
+ export declare type CancelLoaderDelegate = () => void;
20
+ export declare class ConversationEntry {
21
+ private writer;
22
+ constructor(writer: EntryWriter);
23
+ update(content: string | ConversationMessageUpdateSettings | ConverstationMessageItem<any> | ConverstationMessageItem<any>[]): void;
24
+ remove(): void;
25
+ private getNormalizedSettings;
26
+ }
27
+ export declare enum ConversationMessageType {
28
+ User = "user",
29
+ Agent = "agent",
30
+ System = "system"
31
+ }
32
+ export declare type ConversationMessage = {
33
+ key: string;
34
+ timestamp: number | null;
35
+ content: ConversationMessageContent | null;
36
+ sender: ConversationMessageSender | null;
37
+ type: ConversationMessageType;
38
+ };
39
+ export declare type EntryWriter = (content: ConversationMessageUpdateSettings | null) => void;
40
+ export declare const getNormalizedMessageSettings: (settings: string | ConversationMessageSettings | ConverstationMessageItem<any> | ConverstationMessageItem<any>[]) => NormalizedMessageSettings;
41
+ /**
42
+ * Manages the stream of messages inside a `ConversationComponent` and provides external read-write
43
+ * access to it as well as exposing emitted actions.
44
+ */
45
+ export declare class ConversationController {
46
+ container: Container;
47
+ id: string;
48
+ formHandlers: FormHandlers;
49
+ /**
50
+ * Represents the current end user.
51
+ */
52
+ user: User;
53
+ events: EventManager;
54
+ providers: string[];
55
+ active: boolean;
56
+ private registeredProviders;
57
+ private loaders;
58
+ private componentMounted;
59
+ messages: ConversationMessage[];
60
+ private typingActors;
61
+ constructor(container: Container, id: string);
62
+ setProviders(providers: string[]): void;
63
+ createProvider(name: string): ConversationProvider;
64
+ providerIndex(name: string): number;
65
+ dispose(): void;
66
+ onDispose(fn: EventListener): import("@webprovisions/platform").EventSubscriptionCancellation;
67
+ onStarted(fn: EventListener): import("@webprovisions/platform").EventSubscriptionCancellation;
68
+ disposeProvider(target: ConversationProvider): void;
69
+ onProvidersChange(fn: EventListener): import("@webprovisions/platform").EventSubscriptionCancellation;
70
+ setComponentMountedState(mounted: boolean): void;
71
+ getComponentMountedState(): boolean;
72
+ onUnreadMessage(fn: EventListener): import("@webprovisions/platform").EventSubscriptionCancellation;
73
+ createEntry(key: string, content: ConversationMessageContent, type: ConversationMessageType, sender?: ConversationMessageSender, timestamp?: number | null): ConversationEntry;
74
+ print: (settings: string | ConversationMessageSettings) => ConversationEntry;
75
+ update(): void;
76
+ getMessageStream(): {
77
+ messages: ConversationMessage[];
78
+ loading: boolean;
79
+ typingActors: ConversationMessageSender[];
80
+ };
81
+ setTypingState(sender: ConversationMessageSender, type?: ConversationMessageType): () => void;
82
+ /**
83
+ * Displays a loader in the conversation.
84
+ */
85
+ loader(): CancelLoaderDelegate;
86
+ submitForm(key: string, handler: SubmitHandler): void;
87
+ validateForm(key: string, handler: ValidateHandler): void;
88
+ }
@@ -1,7 +1,7 @@
1
- import { ConversationPlatform } from '.';
2
- export declare class ConversationFormAdapter {
3
- private platform;
4
- constructor(platform: ConversationPlatform);
5
- submit: (invoke: any, cancel: any) => (contactMethod: any) => Promise<any>;
6
- updateContactMethod: (contactMethod: any, errors?: any) => void;
7
- }
1
+ import { ConversationPlatform } from '.';
2
+ export declare class ConversationFormAdapter {
3
+ private platform;
4
+ constructor(platform: ConversationPlatform);
5
+ submit: (invoke: any, cancel: any) => (contactMethod: any) => Promise<any>;
6
+ updateContactMethod: (contactMethod: any, errors?: any) => void;
7
+ }
@@ -1,50 +1,50 @@
1
- import { ComponentNodeController, ComponentPlatform, ReactComponent } from '@telia-ace/widget-core';
2
- import { RouteData } from '@telia-ace/widget-routing';
3
- import { Container, EventManager, EventSubscriptionCancellation } from '@webprovisions/platform';
4
- import { ConversationController } from './conversation-controller';
5
- import { ConversationProvider } from './conversation-provider';
6
- export declare type ConversationHandler = (conversation: ConversationProvider, component: ComponentNodeController) => void | (() => void);
7
- export declare type UnregisterControllerDelegate = () => void;
8
- export declare type ConversationProviderRegistration = {
9
- name: string;
10
- handler: ConversationHandler;
11
- };
12
- export declare enum ConversationEndedBehavior {
13
- Deactivate = "deactivate",
14
- Navigate = "navigate",
15
- None = "none"
16
- }
17
- export declare type SessionInfo = {
18
- id?: string;
19
- route?: RouteData;
20
- conversationEndedBehavior?: ConversationEndedBehavior;
21
- };
22
- export declare class ConversationPlatform {
23
- private container;
24
- private components;
25
- events: EventManager;
26
- private controllers;
27
- private providers;
28
- private disposeProviders;
29
- private subscriptions;
30
- private storageWriter;
31
- private router;
32
- private buttonQuery;
33
- private sessionInfo;
34
- constructor(container: Container, components: ComponentPlatform);
35
- initialize(): void;
36
- addSubscription(sub: EventSubscriptionCancellation): void;
37
- static getInstance(container: Container, key?: string): Promise<ConversationPlatform>;
38
- navigateToConversationIfActive(id: string): Promise<void>;
39
- setConversationEndedBehavior(behavior: ConversationEndedBehavior): Promise<void>;
40
- createController(id: string): ConversationController;
41
- registerConversationItem(name: string, component: ReactComponent): Promise<void>;
42
- registerProvider(name: string, handler: ConversationHandler): void;
43
- registerController(conversation: ConversationController, component: ComponentNodeController): boolean;
44
- private writeToComponents;
45
- private invokeHandler;
46
- getComponentRoute(): Promise<RouteData | undefined>;
47
- dispose(): void;
48
- static handleContactMethodClick(event: any, container: Container, contactMethod: any, callback?: Function): Promise<void>;
49
- static handleContactMethodSubmit(container: Container, contactMethod: any): Promise<any>;
50
- }
1
+ import { ComponentNodeController, ComponentPlatform, ReactComponent } from '@telia-ace/widget-core';
2
+ import { RouteData } from '@telia-ace/widget-routing';
3
+ import { Container, EventManager, EventSubscriptionCancellation } from '@webprovisions/platform';
4
+ import { ConversationController } from './conversation-controller';
5
+ import { ConversationProvider } from './conversation-provider';
6
+ export declare type ConversationHandler = (conversation: ConversationProvider, component: ComponentNodeController) => void | (() => void);
7
+ export declare type UnregisterControllerDelegate = () => void;
8
+ export declare type ConversationProviderRegistration = {
9
+ name: string;
10
+ handler: ConversationHandler;
11
+ };
12
+ export declare enum ConversationEndedBehavior {
13
+ Deactivate = "deactivate",
14
+ Navigate = "navigate",
15
+ None = "none"
16
+ }
17
+ export declare type SessionInfo = {
18
+ id?: string;
19
+ route?: RouteData;
20
+ conversationEndedBehavior?: ConversationEndedBehavior;
21
+ };
22
+ export declare class ConversationPlatform {
23
+ private container;
24
+ private components;
25
+ events: EventManager;
26
+ private controllers;
27
+ private providers;
28
+ private disposeProviders;
29
+ private subscriptions;
30
+ private storageWriter;
31
+ private router;
32
+ private buttonQuery;
33
+ private sessionInfo;
34
+ constructor(container: Container, components: ComponentPlatform);
35
+ initialize(): void;
36
+ addSubscription(sub: EventSubscriptionCancellation): void;
37
+ static getInstance(container: Container, key?: string): Promise<ConversationPlatform>;
38
+ navigateToConversationIfActive(id: string): Promise<void>;
39
+ setConversationEndedBehavior(behavior: ConversationEndedBehavior): Promise<void>;
40
+ createController(id: string): ConversationController;
41
+ registerConversationItem(name: string, component: ReactComponent): Promise<void>;
42
+ registerProvider(name: string, handler: ConversationHandler): void;
43
+ registerController(conversation: ConversationController, component: ComponentNodeController): boolean;
44
+ private writeToComponents;
45
+ private invokeHandler;
46
+ getComponentRoute(): Promise<RouteData | undefined>;
47
+ dispose(): void;
48
+ static handleContactMethodClick(event: any, container: Container, contactMethod: any, callback?: Function): Promise<void>;
49
+ static handleContactMethodSubmit(container: Container, contactMethod: any): Promise<any>;
50
+ }
@@ -1,22 +1,22 @@
1
- import { Container, EventListener, EventSubscriptionCancellation } from '@webprovisions/platform';
2
- import { Agent, AgentSettings } from './agent';
3
- import { CancelLoaderDelegate, ConversationController, ConversationEntry, ConversationMessageType } from './conversation-controller';
4
- import { ConversationMessageContent, ConversationMessageSender, ConversationMessageSettings } from './types';
5
- export declare class ConversationProvider {
6
- name: string;
7
- private container;
8
- controller: ConversationController | null;
9
- private subscriptions;
10
- user: any;
11
- private constructor();
12
- static create(name: string, container: Container, controller: ConversationController): ConversationProvider;
13
- createAgent(settings?: AgentSettings): Agent | undefined;
14
- print(settings: string | ConversationMessageSettings): ConversationEntry | undefined;
15
- setTypingState(sender: ConversationMessageSender, type?: ConversationMessageType): (() => void) | undefined;
16
- loading(): CancelLoaderDelegate;
17
- createEntry(key: string, content: ConversationMessageContent, type: ConversationMessageType, sender?: ConversationMessageSender, timestamp?: number | null): ConversationEntry | undefined;
18
- dispose(): void;
19
- onUnreadMessage(fn: EventListener): EventSubscriptionCancellation | void;
20
- onMounted(fn: EventListener): EventSubscriptionCancellation | void;
21
- }
22
- export default ConversationProvider;
1
+ import { Container, EventListener, EventSubscriptionCancellation } from '@webprovisions/platform';
2
+ import { Agent, AgentSettings } from './agent';
3
+ import { CancelLoaderDelegate, ConversationController, ConversationEntry, ConversationMessageType } from './conversation-controller';
4
+ import { ConversationMessageContent, ConversationMessageSender, ConversationMessageSettings } from './types';
5
+ export declare class ConversationProvider {
6
+ name: string;
7
+ private container;
8
+ controller: ConversationController | null;
9
+ private subscriptions;
10
+ user: any;
11
+ private constructor();
12
+ static create(name: string, container: Container, controller: ConversationController): ConversationProvider;
13
+ createAgent(settings?: AgentSettings): Agent | undefined;
14
+ print(settings: string | ConversationMessageSettings): ConversationEntry | undefined;
15
+ setTypingState(sender: ConversationMessageSender, type?: ConversationMessageType): (() => void) | undefined;
16
+ loading(): CancelLoaderDelegate;
17
+ createEntry(key: string, content: ConversationMessageContent, type: ConversationMessageType, sender?: ConversationMessageSender, timestamp?: number | null): ConversationEntry | undefined;
18
+ dispose(): void;
19
+ onUnreadMessage(fn: EventListener): EventSubscriptionCancellation | void;
20
+ onMounted(fn: EventListener): EventSubscriptionCancellation | void;
21
+ }
22
+ export default ConversationProvider;