@telia-ace/knowledge-widget-bot-provider 0.0.1-alpha.46 → 0.0.1-alpha.49

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 (139) hide show
  1. package/LICENSE.txt +5 -5
  2. package/README.md +12 -12
  3. package/{lib-esm → dist}/client/chat.client.d.ts +16 -16
  4. package/{lib → dist}/client/contact-method.client.d.ts +34 -34
  5. package/{lib → dist}/client/http.client.d.ts +26 -26
  6. package/{lib → dist}/client/middleware.client.d.ts +14 -14
  7. package/dist/components/feedback-list.d.ts +8 -0
  8. package/dist/components/no-good-alternative.d.ts +6 -0
  9. package/dist/contact-method.js +102 -0
  10. package/dist/contact-method.js.map +1 -0
  11. package/{lib-esm → dist}/contract/custom-component/contact-method-item.d.ts +9 -9
  12. package/{lib-esm → dist}/contract/custom-component/contact-method-list.d.ts +7 -7
  13. package/{lib-esm → dist}/contract/custom-component/contact-method.d.ts +3 -3
  14. package/{lib-esm → dist}/contract/custom-component/entry-context.d.ts +5 -5
  15. package/{lib → dist}/contract/enum/server-entry-type.enum.d.ts +7 -7
  16. package/{lib → dist}/contract/model/conversation-api-model/list.model.d.ts +5 -5
  17. package/{lib-esm → dist}/contract/model/conversation-api-model/message.model.d.ts +7 -7
  18. package/{lib → dist}/contract/model/http/action.model.d.ts +3 -3
  19. package/{lib → dist}/contract/model/http/client-action.model.d.ts +4 -4
  20. package/{lib → dist}/contract/model/http/client-envelope.model.d.ts +9 -9
  21. package/{lib-esm → dist}/contract/model/http/connect-options.model.d.ts +5 -5
  22. package/{lib-esm → dist}/contract/model/http/global-state.model.d.ts +8 -8
  23. package/{lib-esm → dist}/contract/model/http/http-client-options.model.d.ts +5 -5
  24. package/{lib-esm → dist}/contract/model/http/server-entry.model.d.ts +11 -11
  25. package/{lib-esm → dist}/contract/model/http/server-envelope.model.d.ts +10 -10
  26. package/{lib-esm → dist}/contract/model/middleware/aggregator-state.model.d.ts +4 -4
  27. package/{lib → dist}/contract/model/shared/loose-object.model.d.ts +3 -3
  28. package/dist/feedback-list.js +104 -0
  29. package/dist/feedback-list.js.map +1 -0
  30. package/{lib-esm → dist}/helper/chat.helper.d.ts +8 -8
  31. package/{lib-esm → dist}/helper/http.helper.d.ts +13 -13
  32. package/{lib-esm → dist}/helper/middleware.helper.d.ts +12 -12
  33. package/{lib → dist}/helper/store.helper.d.ts +23 -23
  34. package/{lib-esm → dist}/index.d.ts +2 -2
  35. package/dist/index.js +1152 -0
  36. package/dist/index.js.map +1 -0
  37. package/{lib-esm → dist}/interface/entry.interface.d.ts +20 -20
  38. package/{lib-esm → dist}/interface/middleware/paging.interface.d.ts +4 -4
  39. package/{lib-esm → dist}/interface/middleware/processor.interface.d.ts +10 -10
  40. package/dist/no-good-alternative.js +33 -0
  41. package/dist/no-good-alternative.js.map +1 -0
  42. package/{lib-esm → dist}/plugin.d.ts +3 -3
  43. package/dist/ui/feedback-list.d.ts +8 -0
  44. package/dist/ui/no-good-alternative.d.ts +6 -0
  45. package/{lib-esm → dist}/utils.d.ts +2 -2
  46. package/package.json +14 -15
  47. package/lib/client/chat.client.d.ts +0 -16
  48. package/lib/client/chat.client.js +0 -145
  49. package/lib/client/contact-method.client.js +0 -337
  50. package/lib/client/http.client.js +0 -211
  51. package/lib/client/middleware.client.js +0 -125
  52. package/lib/contract/custom-component/contact-method-item.d.ts +0 -9
  53. package/lib/contract/custom-component/contact-method-item.js +0 -34
  54. package/lib/contract/custom-component/contact-method-list.d.ts +0 -7
  55. package/lib/contract/custom-component/contact-method-list.js +0 -13
  56. package/lib/contract/custom-component/contact-method.d.ts +0 -3
  57. package/lib/contract/custom-component/contact-method.js +0 -35
  58. package/lib/contract/custom-component/entry-context.d.ts +0 -5
  59. package/lib/contract/custom-component/entry-context.js +0 -4
  60. package/lib/contract/enum/server-entry-type.enum.js +0 -8
  61. package/lib/contract/model/conversation-api-model/list.model.js +0 -1
  62. package/lib/contract/model/conversation-api-model/message.model.d.ts +0 -7
  63. package/lib/contract/model/conversation-api-model/message.model.js +0 -1
  64. package/lib/contract/model/http/action.model.js +0 -1
  65. package/lib/contract/model/http/client-action.model.js +0 -2
  66. package/lib/contract/model/http/client-envelope.model.js +0 -1
  67. package/lib/contract/model/http/connect-options.model.d.ts +0 -5
  68. package/lib/contract/model/http/connect-options.model.js +0 -1
  69. package/lib/contract/model/http/global-state.model.d.ts +0 -8
  70. package/lib/contract/model/http/global-state.model.js +0 -1
  71. package/lib/contract/model/http/http-client-options.model.d.ts +0 -5
  72. package/lib/contract/model/http/http-client-options.model.js +0 -1
  73. package/lib/contract/model/http/server-entry.model.d.ts +0 -11
  74. package/lib/contract/model/http/server-entry.model.js +0 -1
  75. package/lib/contract/model/http/server-envelope.model.d.ts +0 -10
  76. package/lib/contract/model/http/server-envelope.model.js +0 -1
  77. package/lib/contract/model/middleware/aggregator-state.model.d.ts +0 -4
  78. package/lib/contract/model/middleware/aggregator-state.model.js +0 -2
  79. package/lib/contract/model/shared/loose-object.model.js +0 -1
  80. package/lib/helper/chat.helper.d.ts +0 -8
  81. package/lib/helper/chat.helper.js +0 -18
  82. package/lib/helper/http.helper.d.ts +0 -13
  83. package/lib/helper/http.helper.js +0 -28
  84. package/lib/helper/middleware.helper.d.ts +0 -12
  85. package/lib/helper/middleware.helper.js +0 -68
  86. package/lib/helper/store.helper.js +0 -169
  87. package/lib/index.d.ts +0 -2
  88. package/lib/index.js +0 -2
  89. package/lib/interface/entry.interface.d.ts +0 -20
  90. package/lib/interface/entry.interface.js +0 -306
  91. package/lib/interface/middleware/paging.interface.d.ts +0 -4
  92. package/lib/interface/middleware/paging.interface.js +0 -53
  93. package/lib/interface/middleware/processor.interface.d.ts +0 -10
  94. package/lib/interface/middleware/processor.interface.js +0 -118
  95. package/lib/plugin.d.ts +0 -3
  96. package/lib/plugin.js +0 -154
  97. package/lib/utils.d.ts +0 -2
  98. package/lib/utils.js +0 -79
  99. package/lib-esm/client/chat.client.js +0 -145
  100. package/lib-esm/client/contact-method.client.d.ts +0 -34
  101. package/lib-esm/client/contact-method.client.js +0 -337
  102. package/lib-esm/client/http.client.d.ts +0 -26
  103. package/lib-esm/client/http.client.js +0 -211
  104. package/lib-esm/client/middleware.client.d.ts +0 -14
  105. package/lib-esm/client/middleware.client.js +0 -125
  106. package/lib-esm/contract/custom-component/contact-method-item.js +0 -34
  107. package/lib-esm/contract/custom-component/contact-method-list.js +0 -13
  108. package/lib-esm/contract/custom-component/contact-method.js +0 -35
  109. package/lib-esm/contract/custom-component/entry-context.js +0 -4
  110. package/lib-esm/contract/enum/server-entry-type.enum.d.ts +0 -7
  111. package/lib-esm/contract/enum/server-entry-type.enum.js +0 -8
  112. package/lib-esm/contract/model/conversation-api-model/list.model.d.ts +0 -5
  113. package/lib-esm/contract/model/conversation-api-model/list.model.js +0 -1
  114. package/lib-esm/contract/model/conversation-api-model/message.model.js +0 -1
  115. package/lib-esm/contract/model/http/action.model.d.ts +0 -3
  116. package/lib-esm/contract/model/http/action.model.js +0 -1
  117. package/lib-esm/contract/model/http/client-action.model.d.ts +0 -4
  118. package/lib-esm/contract/model/http/client-action.model.js +0 -2
  119. package/lib-esm/contract/model/http/client-envelope.model.d.ts +0 -9
  120. package/lib-esm/contract/model/http/client-envelope.model.js +0 -1
  121. package/lib-esm/contract/model/http/connect-options.model.js +0 -1
  122. package/lib-esm/contract/model/http/global-state.model.js +0 -1
  123. package/lib-esm/contract/model/http/http-client-options.model.js +0 -1
  124. package/lib-esm/contract/model/http/server-entry.model.js +0 -1
  125. package/lib-esm/contract/model/http/server-envelope.model.js +0 -1
  126. package/lib-esm/contract/model/middleware/aggregator-state.model.js +0 -2
  127. package/lib-esm/contract/model/shared/loose-object.model.d.ts +0 -3
  128. package/lib-esm/contract/model/shared/loose-object.model.js +0 -1
  129. package/lib-esm/helper/chat.helper.js +0 -18
  130. package/lib-esm/helper/http.helper.js +0 -28
  131. package/lib-esm/helper/middleware.helper.js +0 -68
  132. package/lib-esm/helper/store.helper.d.ts +0 -23
  133. package/lib-esm/helper/store.helper.js +0 -169
  134. package/lib-esm/index.js +0 -2
  135. package/lib-esm/interface/entry.interface.js +0 -306
  136. package/lib-esm/interface/middleware/paging.interface.js +0 -53
  137. package/lib-esm/interface/middleware/processor.interface.js +0 -118
  138. package/lib-esm/plugin.js +0 -154
  139. package/lib-esm/utils.js +0 -79
@@ -1,211 +0,0 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- var __generator = (this && this.__generator) || function (thisArg, body) {
11
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
12
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
- function verb(n) { return function (v) { return step([n, v]); }; }
14
- function step(op) {
15
- if (f) throw new TypeError("Generator is already executing.");
16
- while (_) try {
17
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
- if (y = 0, t) op = [op[0] & 2, t.value];
19
- switch (op[0]) {
20
- case 0: case 1: t = op; break;
21
- case 4: _.label++; return { value: op[1], done: false };
22
- case 5: _.label++; y = op[1]; op = [0]; continue;
23
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
- default:
25
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
- if (t[2]) _.ops.pop();
30
- _.trys.pop(); continue;
31
- }
32
- op = body.call(thisArg, _);
33
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
- }
36
- };
37
- import { readStorage } from '@telia-ace/widget-services';
38
- import { v4 as newGuid } from 'uuid';
39
- import { ChatHelper } from '../helper/chat.helper';
40
- import { HttpHelper } from '../helper/http.helper';
41
- import { MiddlewareHelper } from '../helper/middleware.helper';
42
- import { StoreHelper } from '../helper/store.helper';
43
- import ChatClient from './chat.client';
44
- import MiddlewareClient from './middleware.client';
45
- var HttpClient = /** @class */ (function () {
46
- function HttpClient(endpoint, clientId, container) {
47
- this.options = {
48
- credentials: HttpHelper.getCredentials(),
49
- clientId: clientId,
50
- };
51
- this.apiEndpoint = endpoint;
52
- this.projectionPath = window.location.href;
53
- this.endpointUrl = HttpHelper.combineUrl(this.projectionPath, 'conversations');
54
- this.clientId = this.options.clientId;
55
- this.middlewareClient = new MiddlewareClient(container);
56
- this.chatClient = new ChatClient(container);
57
- this.container = container;
58
- }
59
- HttpClient.prototype.firstHit = function () {
60
- return __awaiter(this, void 0, void 0, function () {
61
- var entries, meta, agent, envelope;
62
- return __generator(this, function (_a) {
63
- switch (_a.label) {
64
- case 0: return [4 /*yield*/, MiddlewareHelper.getEntrySessionStorage()];
65
- case 1:
66
- entries = (_a.sent());
67
- if (!(entries && entries.length > 0)) return [3 /*break*/, 5];
68
- return [4 /*yield*/, StoreHelper.rehydrateState()];
69
- case 2:
70
- _a.sent();
71
- return [4 /*yield*/, readStorage(this.container, 'bot-provider-conversation-meta')];
72
- case 3:
73
- meta = _a.sent();
74
- if (meta === null || meta === void 0 ? void 0 : meta.agent) {
75
- agent = ChatHelper.getAgent();
76
- agent.update({
77
- name: meta.agent.name,
78
- avatar: meta.agent.avatar,
79
- });
80
- }
81
- return [4 /*yield*/, this.chatClient.processMessageArrayAndStoreIt(entries)];
82
- case 4:
83
- _a.sent();
84
- return [3 /*break*/, 7];
85
- case 5:
86
- envelope = this.constructFirstHitEnvelope();
87
- return [4 /*yield*/, this.postAndHandleTheData(envelope)];
88
- case 6:
89
- _a.sent();
90
- _a.label = 7;
91
- case 7: return [2 /*return*/];
92
- }
93
- });
94
- });
95
- };
96
- // for updates, such as paging changes
97
- HttpClient.prototype.handleUpdate = function (action) {
98
- var envelope = this.constructInputEnvelope(action);
99
- return this.postAndHandleTheUpdateData(envelope, action);
100
- };
101
- // for action clicks
102
- HttpClient.prototype.handleInput = function (action) {
103
- var envelope = this.constructInputEnvelope(action);
104
- return this.postAndHandleTheData(envelope, action);
105
- };
106
- // for category burger
107
- HttpClient.prototype.handleCategories = function () {
108
- var envelope = this.constructCategoriesEnvelope();
109
- return this.postAndHandleTheData(envelope);
110
- };
111
- // for text entries by user
112
- HttpClient.prototype.handlePhrase = function (phrase) {
113
- var envelope = this.constructPhraseEnvelope(phrase);
114
- var id = newGuid();
115
- var entry = {
116
- id: id,
117
- type: 'Text',
118
- timestamp: new Date(),
119
- content: {
120
- $type: 'Humany.Matching.Bots.Conversations.Content.Text, Humany.Matching',
121
- html: "".concat(phrase),
122
- },
123
- actions: {},
124
- tags: {},
125
- };
126
- var message = {
127
- id: id,
128
- message: ['html', { body: "<p>".concat(phrase, "</p>") }],
129
- entry: entry,
130
- isUser: true,
131
- conversationEntry: {},
132
- };
133
- StoreHelper.insertMessageToStore(message);
134
- return this.postAndHandleTheData(envelope);
135
- };
136
- HttpClient.prototype.postAndHandleTheData = function (envelope, action) {
137
- var _this = this;
138
- return fetch(this.apiEndpoint, this.getHttpOptions(envelope))
139
- .then(function (response) {
140
- if (response.ok)
141
- return response.json();
142
- throw response;
143
- })
144
- .then(function (data) {
145
- _this.handleResponseData(data, action);
146
- })
147
- .catch(function (err) { return console.log(err); });
148
- };
149
- HttpClient.prototype.postAndHandleTheUpdateData = function (envelope, action) {
150
- var _this = this;
151
- return fetch(this.apiEndpoint, this.getHttpOptions(envelope))
152
- .then(function (response) {
153
- if (response.ok)
154
- return response.json();
155
- throw response;
156
- })
157
- .then(function (data) {
158
- _this.handleUpdateResponseData(data, action);
159
- })
160
- .catch(function (err) { return console.log(err); });
161
- };
162
- HttpClient.prototype.getHttpOptions = function (envelope) {
163
- return Object.assign({}, HttpHelper.fetchOptions, {
164
- body: JSON.stringify(envelope),
165
- credentials: this.options.credentials,
166
- });
167
- };
168
- HttpClient.prototype.constructInputEnvelope = function (action) {
169
- return {
170
- action: StoreHelper.getAction(action),
171
- localState: StoreHelper.getLocalState(action),
172
- globalState: StoreHelper.getGlobalState(),
173
- clientId: this.clientId,
174
- };
175
- };
176
- HttpClient.prototype.constructCategoriesEnvelope = function () {
177
- return {
178
- action: {
179
- content: {
180
- $type: 'Humany.Matching.Bots.Conversations.Actions.BrowseCategories, Humany.Matching',
181
- },
182
- key: 'browseCategories',
183
- },
184
- globalState: StoreHelper.getGlobalState(),
185
- clientId: this.clientId,
186
- };
187
- };
188
- HttpClient.prototype.constructPhraseEnvelope = function (phrase) {
189
- return {
190
- command: { phrase: phrase },
191
- globalState: StoreHelper.getGlobalState(),
192
- clientId: this.clientId,
193
- };
194
- };
195
- HttpClient.prototype.constructFirstHitEnvelope = function () {
196
- return {
197
- command: { site: this.endpointUrl },
198
- clientId: this.clientId,
199
- globalState: {},
200
- };
201
- };
202
- HttpClient.prototype.handleResponseData = function (envelope, action) {
203
- StoreHelper.setGlobalState(envelope.globalState);
204
- return this.middlewareClient.handleEntries(envelope.entries, action);
205
- };
206
- HttpClient.prototype.handleUpdateResponseData = function (envelope, action) {
207
- return this.middlewareClient.handleUpdate(envelope.entries, action);
208
- };
209
- return HttpClient;
210
- }());
211
- export { HttpClient };
@@ -1,14 +0,0 @@
1
- import { Container } from '@webprovisions/platform';
2
- import { ServerEntry } from '../contract/model/http/server-entry.model';
3
- export default class MiddlewareClient {
4
- private paging;
5
- private processor;
6
- private entryInterface;
7
- private chatClient;
8
- constructor(container: Container);
9
- static initialize(container: any, widget: any): void;
10
- handleEntries(entries: ServerEntry[], action?: string): Promise<void>;
11
- handleUpdate(entries: ServerEntry[], action?: string): Promise<void>;
12
- checkForUpdate(input: string): boolean;
13
- private executeMiddlewares;
14
- }
@@ -1,125 +0,0 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- var __generator = (this && this.__generator) || function (thisArg, body) {
11
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
12
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
- function verb(n) { return function (v) { return step([n, v]); }; }
14
- function step(op) {
15
- if (f) throw new TypeError("Generator is already executing.");
16
- while (_) try {
17
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
- if (y = 0, t) op = [op[0] & 2, t.value];
19
- switch (op[0]) {
20
- case 0: case 1: t = op; break;
21
- case 4: _.label++; return { value: op[1], done: false };
22
- case 5: _.label++; y = op[1]; op = [0]; continue;
23
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
- default:
25
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
- if (t[2]) _.ops.pop();
30
- _.trys.pop(); continue;
31
- }
32
- op = body.call(thisArg, _);
33
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
- }
36
- };
37
- import { createStorageWriter, StorageCategory } from '@telia-ace/widget-services';
38
- import { ChatHelper } from '../helper/chat.helper';
39
- import { MiddlewareHelper } from '../helper/middleware.helper';
40
- import { StoreHelper } from '../helper/store.helper';
41
- import EntryInterface from '../interface/entry.interface';
42
- import PagingInterface from '../interface/middleware/paging.interface';
43
- import ProcessorInterface from '../interface/middleware/processor.interface';
44
- import ChatClient from './chat.client';
45
- var MiddlewareClient = /** @class */ (function () {
46
- function MiddlewareClient(container) {
47
- this.paging = new PagingInterface();
48
- this.processor = new ProcessorInterface();
49
- this.entryInterface = new EntryInterface(container);
50
- this.chatClient = new ChatClient(container);
51
- }
52
- MiddlewareClient.initialize = function (container, widget) {
53
- MiddlewareHelper.setContainer(container);
54
- MiddlewareHelper.setWidget(widget);
55
- };
56
- // called on all standard scenarios like actions and user messages
57
- MiddlewareClient.prototype.handleEntries = function (entries, action) {
58
- return __awaiter(this, void 0, void 0, function () {
59
- var widgetEntry, agent, write, o, messageArray;
60
- return __generator(this, function (_a) {
61
- switch (_a.label) {
62
- case 0:
63
- widgetEntry = (entries || []).find(function (e) { return e.type === 'Widget'; });
64
- if (!widgetEntry) return [3 /*break*/, 2];
65
- agent = ChatHelper.getAgent();
66
- if (!agent) return [3 /*break*/, 2];
67
- agent.update({
68
- name: widgetEntry.content.agent.name,
69
- avatar: widgetEntry.content.agent.avatar,
70
- });
71
- return [4 /*yield*/, createStorageWriter(MiddlewareHelper.getContainer(), 'bot-provider-conversation-meta', StorageCategory.Necessary)];
72
- case 1:
73
- write = _a.sent();
74
- write({
75
- agent: {
76
- name: widgetEntry.content.agent.name,
77
- avatar: widgetEntry.content.agent.avatar,
78
- },
79
- });
80
- _a.label = 2;
81
- case 2:
82
- o = this.executeMiddlewares(entries, false, action);
83
- return [4 /*yield*/, this.entryInterface.transformArray(o)];
84
- case 3:
85
- messageArray = _a.sent();
86
- this.chatClient.processMessageArrayAndStoreIt(messageArray);
87
- return [2 /*return*/];
88
- }
89
- });
90
- });
91
- };
92
- // called on situations such as paging changes
93
- // when no new entries will be printed
94
- MiddlewareClient.prototype.handleUpdate = function (entries, action) {
95
- return __awaiter(this, void 0, void 0, function () {
96
- var o, messageArray;
97
- return __generator(this, function (_a) {
98
- switch (_a.label) {
99
- case 0:
100
- o = this.executeMiddlewares(entries, true, action);
101
- return [4 /*yield*/, this.entryInterface.transformArray(o)];
102
- case 1:
103
- messageArray = _a.sent();
104
- this.chatClient.updateMessageArrayAndStoreIt(messageArray);
105
- return [2 /*return*/];
106
- }
107
- });
108
- });
109
- };
110
- // checks whether the action was of an update type
111
- MiddlewareClient.prototype.checkForUpdate = function (input) {
112
- return input === 'next';
113
- };
114
- MiddlewareClient.prototype.executeMiddlewares = function (entries, isUpdate, action) {
115
- if (isUpdate && action)
116
- entries = this.processor.processUpdate(StoreHelper.getEntry(action), entries);
117
- else {
118
- entries = this.processor.process(entries);
119
- }
120
- entries = this.paging.process(entries);
121
- return entries;
122
- };
123
- return MiddlewareClient;
124
- }());
125
- export default MiddlewareClient;
@@ -1,34 +0,0 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- import { ContactMethod as GenericContactMethod } from '@telia-ace/knowledge-widget-adapters';
13
- import { useDispatch } from '@telia-ace/knowledge-widget-ui';
14
- import React, { useContext } from 'react';
15
- import { EntryContext } from './entry-context';
16
- var ContactMethodItem = function (_a) {
17
- var contactMethod = _a.contactMethod, className = _a.className;
18
- var dispatch = useDispatch();
19
- var entryId = useContext(EntryContext).entryId;
20
- return (React.createElement(GenericContactMethod, __assign({ className: className, onClick: function (event) {
21
- if (contactMethod.inline) {
22
- // preventing default to use a custom expand action
23
- event.preventDefault();
24
- dispatch('expand', {
25
- entryId: entryId,
26
- contactMethodId: contactMethod.id,
27
- });
28
- }
29
- else {
30
- dispatch('action', "".concat(contactMethod.id, "/contact-methods/").concat(contactMethod.title));
31
- }
32
- }, dispatch: dispatch }, contactMethod, { inline: true })));
33
- };
34
- export default ContactMethodItem;
@@ -1,13 +0,0 @@
1
- var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
- if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
- return cooked;
4
- };
5
- import React, { Fragment } from 'react';
6
- import styled from 'styled-components';
7
- import ContactMethodItem from './contact-method-item';
8
- var ContactMethodList = function (props) {
9
- return (React.createElement(Fragment, null, props.contactMethodList.map(function (contactMethod) { return (React.createElement(StyledContactMethod, { key: contactMethod.id, type: props.type, contactMethod: contactMethod, expanded: !!contactMethod.executeImmediately || undefined })); })));
10
- };
11
- var StyledContactMethod = styled(ContactMethodItem)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n border-bottom: 1px solid rgb(239, 239, 239);\n padding: ", ";\n\n &:last-child {\n border-bottom: none;\n }\n"], ["\n border-bottom: 1px solid rgb(239, 239, 239);\n padding: ", ";\n\n &:last-child {\n border-bottom: none;\n }\n"])), function (p) { var _a; return (_a = p.theme.sizes) === null || _a === void 0 ? void 0 : _a.medium; });
12
- export default ContactMethodList;
13
- var templateObject_1;
@@ -1,35 +0,0 @@
1
- var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
- if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
- return cooked;
4
- };
5
- import { DataType } from '@telia-ace/knowledge-widget-types-grid';
6
- import React from 'react';
7
- import styled from 'styled-components';
8
- import ContactMethodItem from './contact-method-item';
9
- import ContactMethodList from './contact-method-list';
10
- import { EntryContext } from './entry-context';
11
- var ContactMethod = function (props) {
12
- var _a, _b;
13
- var type;
14
- var methodList;
15
- if (props.contactMethods && ((_a = props.contactMethods.contactMethods) === null || _a === void 0 ? void 0 : _a.length) > 0) {
16
- type = DataType.ContactMethods;
17
- methodList = props.contactMethods.contactMethods;
18
- }
19
- else if (props.contactMethods.categories && ((_b = props.contactMethods.categories) === null || _b === void 0 ? void 0 : _b.length) > 0) {
20
- type = DataType.ContactMethodCategories;
21
- methodList = props.contactMethods.categories.filter(function (o) { return o.matches > 0; });
22
- }
23
- else {
24
- type = DataType.ContactMethod;
25
- methodList = props.contactMethods;
26
- }
27
- if (!methodList.length) {
28
- return React.createElement(StyledContactMethodItem, { type: type, contactMethod: methodList });
29
- }
30
- return (React.createElement(EntryContext.Provider, { value: props.entry },
31
- React.createElement(ContactMethodList, { type: type, contactMethodList: methodList })));
32
- };
33
- var StyledContactMethodItem = styled(ContactMethodItem)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n padding: ", ";\n"], ["\n padding: ", ";\n"])), function (p) { var _a; return (_a = p.theme.sizes) === null || _a === void 0 ? void 0 : _a.medium; });
34
- export default ContactMethod;
35
- var templateObject_1;
@@ -1,4 +0,0 @@
1
- import { createContext } from 'react';
2
- export var EntryContext = createContext({
3
- entryId: null,
4
- });
@@ -1,7 +0,0 @@
1
- export declare enum ServerEntryTypeEnum {
2
- Widget = 0,
3
- Text = 1,
4
- Contact = 2,
5
- List = 3,
6
- Error = 4
7
- }
@@ -1,8 +0,0 @@
1
- export var ServerEntryTypeEnum;
2
- (function (ServerEntryTypeEnum) {
3
- ServerEntryTypeEnum[ServerEntryTypeEnum["Widget"] = 0] = "Widget";
4
- ServerEntryTypeEnum[ServerEntryTypeEnum["Text"] = 1] = "Text";
5
- ServerEntryTypeEnum[ServerEntryTypeEnum["Contact"] = 2] = "Contact";
6
- ServerEntryTypeEnum[ServerEntryTypeEnum["List"] = 3] = "List";
7
- ServerEntryTypeEnum[ServerEntryTypeEnum["Error"] = 4] = "Error";
8
- })(ServerEntryTypeEnum || (ServerEntryTypeEnum = {}));
@@ -1,5 +0,0 @@
1
- export interface List {
2
- title?: string;
3
- body?: string;
4
- items: object;
5
- }
@@ -1,3 +0,0 @@
1
- export interface Action {
2
- [label: string]: any;
3
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,4 +0,0 @@
1
- export interface ClientAction {
2
- key: string;
3
- content: any;
4
- }
@@ -1,2 +0,0 @@
1
- ;
2
- export {};
@@ -1,9 +0,0 @@
1
- import { LooseObject } from "../shared/loose-object.model";
2
- import { ClientAction } from "./client-action.model";
3
- export interface ClientEnvelope {
4
- command?: LooseObject;
5
- action?: ClientAction;
6
- globalState?: LooseObject;
7
- localState?: LooseObject;
8
- clientId?: string;
9
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1,3 +0,0 @@
1
- export interface LooseObject {
2
- [key: string]: any;
3
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,18 +0,0 @@
1
- var ChatHelper = /** @class */ (function () {
2
- function ChatHelper() {
3
- }
4
- ChatHelper.setUser = function (user) {
5
- this.user = user;
6
- };
7
- ChatHelper.setAgent = function (agent) {
8
- this.agent = agent;
9
- };
10
- ChatHelper.getUser = function () {
11
- return this.user;
12
- };
13
- ChatHelper.getAgent = function () {
14
- return this.agent;
15
- };
16
- return ChatHelper;
17
- }());
18
- export { ChatHelper };
@@ -1,28 +0,0 @@
1
- var HttpHelper = /** @class */ (function () {
2
- function HttpHelper() {
3
- }
4
- HttpHelper.combineUrl = function (basePath, path) {
5
- return basePath + path;
6
- };
7
- HttpHelper.getCredentials = function () {
8
- return 'same-origin';
9
- };
10
- HttpHelper.fetchOptions = {
11
- method: 'POST',
12
- headers: {
13
- Accept: 'application/json',
14
- 'Content-Type': 'application/json',
15
- },
16
- };
17
- HttpHelper.managedSubdomainSuffixes = ['stage', 'alpha', 'beta', 'gamma'];
18
- HttpHelper.parseSubdomain = function (input) {
19
- var index = input.lastIndexOf('-');
20
- var lastPart = input.substr(index + 1);
21
- if (HttpHelper.managedSubdomainSuffixes.indexOf(lastPart) > -1) {
22
- return input.substr(0, index);
23
- }
24
- return input;
25
- };
26
- return HttpHelper;
27
- }());
28
- export { HttpHelper };
@@ -1,68 +0,0 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- var __generator = (this && this.__generator) || function (thisArg, body) {
11
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
12
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
- function verb(n) { return function (v) { return step([n, v]); }; }
14
- function step(op) {
15
- if (f) throw new TypeError("Generator is already executing.");
16
- while (_) try {
17
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
- if (y = 0, t) op = [op[0] & 2, t.value];
19
- switch (op[0]) {
20
- case 0: case 1: t = op; break;
21
- case 4: _.label++; return { value: op[1], done: false };
22
- case 5: _.label++; y = op[1]; op = [0]; continue;
23
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
- default:
25
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
- if (t[2]) _.ops.pop();
30
- _.trys.pop(); continue;
31
- }
32
- op = body.call(thisArg, _);
33
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
- }
36
- };
37
- import { createStorageWriter, readStorage, StorageCategory } from '@telia-ace/widget-services';
38
- var MiddlewareHelper = /** @class */ (function () {
39
- function MiddlewareHelper() {
40
- }
41
- MiddlewareHelper.setContainer = function (container) {
42
- MiddlewareHelper.container = container;
43
- };
44
- MiddlewareHelper.setWidget = function (widget) {
45
- this.widget = widget;
46
- };
47
- MiddlewareHelper.getContainer = function () {
48
- return this.container;
49
- };
50
- MiddlewareHelper.getWidget = function () {
51
- return this.widget;
52
- };
53
- MiddlewareHelper.getEntrySessionStorage = function () {
54
- return readStorage(this.container, this.sessionMessageStorageVariable);
55
- };
56
- var _a;
57
- _a = MiddlewareHelper;
58
- MiddlewareHelper.sessionMessageStorageVariable = 'conversation-plugin-messages';
59
- MiddlewareHelper.setEntrySessionStorage = function (messages) { return __awaiter(void 0, void 0, void 0, function () {
60
- return __generator(_a, function (_b) {
61
- return [2 /*return*/, createStorageWriter(MiddlewareHelper.container, MiddlewareHelper.sessionMessageStorageVariable, StorageCategory.Necessary).then(function (write) {
62
- return write(messages);
63
- })];
64
- });
65
- }); };
66
- return MiddlewareHelper;
67
- }());
68
- export { MiddlewareHelper };