@telia-ace/knowledge-widget-bot-provider 0.0.1-alpha.18 → 0.0.1-alpha.21

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 (113) hide show
  1. package/LICENSE.txt +5 -5
  2. package/README.md +12 -12
  3. package/lib/client/chat.client.d.ts +15 -15
  4. package/lib/client/chat.client.js +84 -79
  5. package/lib/client/contact-method.client.d.ts +22 -22
  6. package/lib/client/contact-method.client.js +279 -273
  7. package/lib/client/http.client.d.ts +22 -22
  8. package/lib/client/http.client.js +119 -113
  9. package/lib/client/middleware.client.d.ts +13 -13
  10. package/lib/client/middleware.client.js +51 -46
  11. package/lib/contract/custom-component/contact-method-item.d.ts +8 -8
  12. package/lib/contract/custom-component/contact-method-item.js +72 -51
  13. package/lib/contract/custom-component/contact-method-list.d.ts +7 -7
  14. package/lib/contract/custom-component/contact-method-list.js +37 -13
  15. package/lib/contract/custom-component/contact-method.d.ts +3 -3
  16. package/lib/contract/custom-component/contact-method.js +38 -33
  17. package/lib/contract/enum/server-entry-type.enum.d.ts +6 -6
  18. package/lib/contract/enum/server-entry-type.enum.js +10 -7
  19. package/lib/contract/model/conversation-api-model/list.model.d.ts +5 -5
  20. package/lib/contract/model/conversation-api-model/list.model.js +2 -0
  21. package/lib/contract/model/conversation-api-model/message.model.d.ts +7 -7
  22. package/lib/contract/model/conversation-api-model/message.model.js +2 -0
  23. package/lib/contract/model/http/action.model.d.ts +3 -3
  24. package/lib/contract/model/http/action.model.js +2 -0
  25. package/lib/contract/model/http/client-action.model.d.ts +4 -4
  26. package/lib/contract/model/http/client-action.model.js +3 -1
  27. package/lib/contract/model/http/client-envelope.model.d.ts +9 -9
  28. package/lib/contract/model/http/client-envelope.model.js +2 -0
  29. package/lib/contract/model/http/connect-options.model.d.ts +5 -5
  30. package/lib/contract/model/http/connect-options.model.js +2 -0
  31. package/lib/contract/model/http/global-state.model.d.ts +8 -8
  32. package/lib/contract/model/http/global-state.model.js +2 -0
  33. package/lib/contract/model/http/http-client-options.model.d.ts +5 -5
  34. package/lib/contract/model/http/http-client-options.model.js +2 -0
  35. package/lib/contract/model/http/server-entry.model.d.ts +11 -11
  36. package/lib/contract/model/http/server-entry.model.js +2 -0
  37. package/lib/contract/model/http/server-envelope.model.d.ts +10 -10
  38. package/lib/contract/model/http/server-envelope.model.js +2 -0
  39. package/lib/contract/model/middleware/aggregator-state.model.d.ts +4 -4
  40. package/lib/contract/model/middleware/aggregator-state.model.js +3 -1
  41. package/lib/contract/model/shared/loose-object.model.d.ts +3 -3
  42. package/lib/contract/model/shared/loose-object.model.js +2 -0
  43. package/lib/helper/chat.helper.d.ts +8 -8
  44. package/lib/helper/chat.helper.js +21 -18
  45. package/lib/helper/http.helper.d.ts +13 -13
  46. package/lib/helper/http.helper.js +31 -28
  47. package/lib/helper/middleware.helper.d.ts +12 -12
  48. package/lib/helper/middleware.helper.js +70 -67
  49. package/lib/helper/store.helper.d.ts +22 -22
  50. package/lib/helper/store.helper.js +80 -77
  51. package/lib/index.d.ts +2 -2
  52. package/lib/index.js +8 -2
  53. package/lib/interface/entry.interface.d.ts +17 -17
  54. package/lib/interface/entry.interface.js +135 -133
  55. package/lib/interface/middleware/contact-expanded.interface.d.ts +0 -0
  56. package/lib/interface/middleware/contact-expanded.interface.js +50 -0
  57. package/lib/interface/middleware/legacy-contact-methods.interface.d.ts +0 -0
  58. package/lib/interface/middleware/legacy-contact-methods.interface.js +394 -0
  59. package/lib/interface/middleware/paging.interface.d.ts +4 -4
  60. package/lib/interface/middleware/paging.interface.js +55 -53
  61. package/lib/interface/middleware/processor.interface.d.ts +10 -10
  62. package/lib/interface/middleware/processor.interface.js +120 -118
  63. package/lib/plugin.d.ts +3 -3
  64. package/lib/plugin.js +172 -214
  65. package/lib-esm/client/chat.client.d.ts +15 -15
  66. package/lib-esm/client/chat.client.js +79 -79
  67. package/lib-esm/client/contact-method.client.d.ts +22 -22
  68. package/lib-esm/client/contact-method.client.js +273 -273
  69. package/lib-esm/client/http.client.d.ts +22 -22
  70. package/lib-esm/client/http.client.js +113 -113
  71. package/lib-esm/client/middleware.client.d.ts +13 -13
  72. package/lib-esm/client/middleware.client.js +46 -46
  73. package/lib-esm/contract/custom-component/contact-method-item.d.ts +8 -8
  74. package/lib-esm/contract/custom-component/contact-method-item.js +51 -51
  75. package/lib-esm/contract/custom-component/contact-method-list.d.ts +7 -7
  76. package/lib-esm/contract/custom-component/contact-method-list.js +13 -13
  77. package/lib-esm/contract/custom-component/contact-method.d.ts +3 -3
  78. package/lib-esm/contract/custom-component/contact-method.js +33 -33
  79. package/lib-esm/contract/enum/server-entry-type.enum.d.ts +6 -6
  80. package/lib-esm/contract/enum/server-entry-type.enum.js +7 -7
  81. package/lib-esm/contract/model/conversation-api-model/list.model.d.ts +5 -5
  82. package/lib-esm/contract/model/conversation-api-model/message.model.d.ts +7 -7
  83. package/lib-esm/contract/model/http/action.model.d.ts +3 -3
  84. package/lib-esm/contract/model/http/client-action.model.d.ts +4 -4
  85. package/lib-esm/contract/model/http/client-action.model.js +1 -1
  86. package/lib-esm/contract/model/http/client-envelope.model.d.ts +9 -9
  87. package/lib-esm/contract/model/http/connect-options.model.d.ts +5 -5
  88. package/lib-esm/contract/model/http/global-state.model.d.ts +8 -8
  89. package/lib-esm/contract/model/http/http-client-options.model.d.ts +5 -5
  90. package/lib-esm/contract/model/http/server-entry.model.d.ts +11 -11
  91. package/lib-esm/contract/model/http/server-envelope.model.d.ts +10 -10
  92. package/lib-esm/contract/model/middleware/aggregator-state.model.d.ts +4 -4
  93. package/lib-esm/contract/model/middleware/aggregator-state.model.js +1 -1
  94. package/lib-esm/contract/model/shared/loose-object.model.d.ts +3 -3
  95. package/lib-esm/helper/chat.helper.d.ts +8 -8
  96. package/lib-esm/helper/chat.helper.js +18 -18
  97. package/lib-esm/helper/http.helper.d.ts +13 -13
  98. package/lib-esm/helper/http.helper.js +28 -28
  99. package/lib-esm/helper/middleware.helper.d.ts +12 -12
  100. package/lib-esm/helper/middleware.helper.js +67 -67
  101. package/lib-esm/helper/store.helper.d.ts +22 -22
  102. package/lib-esm/helper/store.helper.js +77 -77
  103. package/lib-esm/index.d.ts +2 -2
  104. package/lib-esm/index.js +2 -2
  105. package/lib-esm/interface/entry.interface.d.ts +17 -17
  106. package/lib-esm/interface/entry.interface.js +133 -133
  107. package/lib-esm/interface/middleware/paging.interface.d.ts +4 -4
  108. package/lib-esm/interface/middleware/paging.interface.js +53 -53
  109. package/lib-esm/interface/middleware/processor.interface.d.ts +10 -10
  110. package/lib-esm/interface/middleware/processor.interface.js +118 -118
  111. package/lib-esm/plugin.d.ts +3 -3
  112. package/lib-esm/plugin.js +148 -214
  113. package/package.json +43 -52
@@ -1,118 +1,120 @@
1
- var ProcessorInterface = /** @class */ (function () {
2
- function ProcessorInterface() {
3
- }
4
- ProcessorInterface.prototype.process = function (entries) {
5
- var processedEntries = entries;
6
- processedEntries = this.deletePaging(processedEntries);
7
- processedEntries = this.delete(processedEntries);
8
- processedEntries = this.merge(processedEntries);
9
- processedEntries = this.moveLoader(processedEntries);
10
- return processedEntries;
11
- };
12
- ProcessorInterface.prototype.processUpdate = function (entry, updateEntryArray) {
13
- var _this = this;
14
- updateEntryArray
15
- .filter(function (t) { return t.type == 'List'; })
16
- .forEach(function (o) {
17
- var _a;
18
- (_a = o.content) === null || _a === void 0 ? void 0 : _a.items.forEach(function (t) {
19
- if (!(entry === null || entry === void 0 ? void 0 : entry.content.items.find(function (p) { return p.actionKey == t.actionKey; })))
20
- entry === null || entry === void 0 ? void 0 : entry.content.items.push(t);
21
- });
22
- Object.keys(o.actions).forEach(function (t) {
23
- _this.handleActionUpdateOrInsert(entry === null || entry === void 0 ? void 0 : entry.actions, t, o.actions);
24
- });
25
- });
26
- //moves the show more and if it helped to the end if it is needed
27
- var itemArray = entry === null || entry === void 0 ? void 0 : entry.content.items;
28
- if (itemArray.find(function (o) { return o.actionKey == 'next'; })) {
29
- itemArray.push(itemArray.splice(itemArray.indexOf(itemArray.find(function (o) { return o.actionKey == 'next'; })), 1)[0]);
30
- }
31
- if (itemArray.find(function (o) { return o.actionKey == 'help'; })) {
32
- itemArray.push(itemArray.splice(itemArray.indexOf(itemArray.find(function (o) { return o.actionKey == 'help'; })), 1)[0]);
33
- }
34
- return entry ? [entry] : [];
35
- };
36
- ProcessorInterface.prototype.handleActionUpdateOrInsert = function (currentArray, actionKey, action) {
37
- if (!!currentArray)
38
- currentArray[actionKey] = action[actionKey];
39
- };
40
- ProcessorInterface.prototype.deletePaging = function (entries) {
41
- return entries.filter(function (entry) {
42
- var isEmptyPaging = entry.type === 'List' &&
43
- entry.tags &&
44
- entry.tags.indexOf('paging') > -1 &&
45
- typeof entry.content === 'undefined';
46
- return !isEmptyPaging;
47
- });
48
- };
49
- ProcessorInterface.prototype.delete = function (entries) {
50
- return entries.filter(function (entry) { return entry.content !== null; });
51
- };
52
- ProcessorInterface.prototype.merge = function (entries) {
53
- var output = [];
54
- var merge = function (source, target) {
55
- if (target === void 0) { target = {}; }
56
- var content = {};
57
- if (source == null) {
58
- return null;
59
- }
60
- if (target) {
61
- Object.keys(target).forEach(function (key) {
62
- content[key] = target[key];
63
- });
64
- }
65
- Object.keys(source).forEach(function (key) {
66
- if (key == 'items') {
67
- if (!content[key])
68
- content[key] = [];
69
- content[key] = content[key].concat(source[key]);
70
- }
71
- else if (key == 'html')
72
- content[key] = content[key] + source[key];
73
- else
74
- content[key] = source[key];
75
- });
76
- return content;
77
- };
78
- var mergeLocalState = function (source, target) {
79
- if (source == null)
80
- return null;
81
- if (Object.keys(source.actions).length === 0)
82
- return target.localState;
83
- if (Object.keys(target.actions).length === 0)
84
- return source.localState;
85
- return target.localState;
86
- };
87
- entries.forEach(function (entry) {
88
- if (entry.relation) {
89
- var existingEntry = entries.find(function (o) { return o.id == entry.relation; });
90
- if (existingEntry) {
91
- var existingIndex = output.indexOf(existingEntry);
92
- existingEntry.localState = mergeLocalState(entry, existingEntry);
93
- existingEntry.content = merge(entry.content, existingEntry.content);
94
- existingEntry.actions = merge(entry.actions, existingEntry.actions);
95
- output[existingIndex] = existingEntry;
96
- }
97
- }
98
- else {
99
- output.push(entry);
100
- }
101
- });
102
- return output;
103
- };
104
- ProcessorInterface.prototype.moveLoader = function (entries) {
105
- // Moves the loader component to last position in stream
106
- var loaderEntry = entries.find(function (e) { return e.id === 'loader'; });
107
- if (!loaderEntry) {
108
- return entries;
109
- }
110
- var loaderIndex = entries.indexOf(loaderEntry);
111
- if (loaderIndex > -1) {
112
- entries.splice(entries.length - 1, 0, entries.splice(loaderIndex, 1)[0]);
113
- }
114
- return entries;
115
- };
116
- return ProcessorInterface;
117
- }());
118
- export default ProcessorInterface;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var ProcessorInterface = /** @class */ (function () {
4
+ function ProcessorInterface() {
5
+ }
6
+ ProcessorInterface.prototype.process = function (entries) {
7
+ var processedEntries = entries;
8
+ processedEntries = this.deletePaging(processedEntries);
9
+ processedEntries = this.delete(processedEntries);
10
+ processedEntries = this.merge(processedEntries);
11
+ processedEntries = this.moveLoader(processedEntries);
12
+ return processedEntries;
13
+ };
14
+ ProcessorInterface.prototype.processUpdate = function (entry, updateEntryArray) {
15
+ var _this = this;
16
+ updateEntryArray
17
+ .filter(function (t) { return t.type == 'List'; })
18
+ .forEach(function (o) {
19
+ var _a;
20
+ (_a = o.content) === null || _a === void 0 ? void 0 : _a.items.forEach(function (t) {
21
+ if (!(entry === null || entry === void 0 ? void 0 : entry.content.items.find(function (p) { return p.actionKey == t.actionKey; })))
22
+ entry === null || entry === void 0 ? void 0 : entry.content.items.push(t);
23
+ });
24
+ Object.keys(o.actions).forEach(function (t) {
25
+ _this.handleActionUpdateOrInsert(entry === null || entry === void 0 ? void 0 : entry.actions, t, o.actions);
26
+ });
27
+ });
28
+ //moves the show more and if it helped to the end if it is needed
29
+ var itemArray = entry === null || entry === void 0 ? void 0 : entry.content.items;
30
+ if (itemArray.find(function (o) { return o.actionKey == 'next'; })) {
31
+ itemArray.push(itemArray.splice(itemArray.indexOf(itemArray.find(function (o) { return o.actionKey == 'next'; })), 1)[0]);
32
+ }
33
+ if (itemArray.find(function (o) { return o.actionKey == 'help'; })) {
34
+ itemArray.push(itemArray.splice(itemArray.indexOf(itemArray.find(function (o) { return o.actionKey == 'help'; })), 1)[0]);
35
+ }
36
+ return entry ? [entry] : [];
37
+ };
38
+ ProcessorInterface.prototype.handleActionUpdateOrInsert = function (currentArray, actionKey, action) {
39
+ if (!!currentArray)
40
+ currentArray[actionKey] = action[actionKey];
41
+ };
42
+ ProcessorInterface.prototype.deletePaging = function (entries) {
43
+ return entries.filter(function (entry) {
44
+ var isEmptyPaging = entry.type === 'List' &&
45
+ entry.tags &&
46
+ entry.tags.indexOf('paging') > -1 &&
47
+ typeof entry.content === 'undefined';
48
+ return !isEmptyPaging;
49
+ });
50
+ };
51
+ ProcessorInterface.prototype.delete = function (entries) {
52
+ return entries.filter(function (entry) { return entry.content !== null; });
53
+ };
54
+ ProcessorInterface.prototype.merge = function (entries) {
55
+ var output = [];
56
+ var merge = function (source, target) {
57
+ if (target === void 0) { target = {}; }
58
+ var content = {};
59
+ if (source == null) {
60
+ return null;
61
+ }
62
+ if (target) {
63
+ Object.keys(target).forEach(function (key) {
64
+ content[key] = target[key];
65
+ });
66
+ }
67
+ Object.keys(source).forEach(function (key) {
68
+ if (key == 'items') {
69
+ if (!content[key])
70
+ content[key] = [];
71
+ content[key] = content[key].concat(source[key]);
72
+ }
73
+ else if (key == 'html')
74
+ content[key] = content[key] + source[key];
75
+ else
76
+ content[key] = source[key];
77
+ });
78
+ return content;
79
+ };
80
+ var mergeLocalState = function (source, target) {
81
+ if (source == null)
82
+ return null;
83
+ if (Object.keys(source.actions).length === 0)
84
+ return target.localState;
85
+ if (Object.keys(target.actions).length === 0)
86
+ return source.localState;
87
+ return target.localState;
88
+ };
89
+ entries.forEach(function (entry) {
90
+ if (entry.relation) {
91
+ var existingEntry = entries.find(function (o) { return o.id == entry.relation; });
92
+ if (existingEntry) {
93
+ var existingIndex = output.indexOf(existingEntry);
94
+ existingEntry.localState = mergeLocalState(entry, existingEntry);
95
+ existingEntry.content = merge(entry.content, existingEntry.content);
96
+ existingEntry.actions = merge(entry.actions, existingEntry.actions);
97
+ output[existingIndex] = existingEntry;
98
+ }
99
+ }
100
+ else {
101
+ output.push(entry);
102
+ }
103
+ });
104
+ return output;
105
+ };
106
+ ProcessorInterface.prototype.moveLoader = function (entries) {
107
+ // Moves the loader component to last position in stream
108
+ var loaderEntry = entries.find(function (e) { return e.id === 'loader'; });
109
+ if (!loaderEntry) {
110
+ return entries;
111
+ }
112
+ var loaderIndex = entries.indexOf(loaderEntry);
113
+ if (loaderIndex > -1) {
114
+ entries.splice(entries.length - 1, 0, entries.splice(loaderIndex, 1)[0]);
115
+ }
116
+ return entries;
117
+ };
118
+ return ProcessorInterface;
119
+ }());
120
+ exports.default = ProcessorInterface;
package/lib/plugin.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- import { Container } from '@webprovisions/platform';
2
- declare const ConversationPlugin: (container: Container) => Promise<void>;
3
- export default ConversationPlugin;
1
+ import { Container } from '@webprovisions/platform';
2
+ declare const ConversationPlugin: (container: Container) => Promise<void>;
3
+ export default ConversationPlugin;