@telia-ace/knowledge-widget-bot-provider 0.0.1-alpha.5 → 0.0.1-alpha.52
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.
- package/dist/contact-method-list.js +111 -0
- package/dist/contact-method-list.js.map +1 -0
- package/dist/contact-method.js +154 -0
- package/dist/contact-method.js.map +1 -0
- package/dist/entry-handler.d.ts +2 -0
- package/dist/feedback-list.js +72 -0
- package/dist/feedback-list.js.map +1 -0
- package/dist/http-client.d.ts +42 -0
- package/{lib-esm → dist}/index.d.ts +0 -0
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -0
- package/dist/index2.js +914 -0
- package/dist/index2.js.map +1 -0
- package/dist/no-good-alternative.js +46 -0
- package/dist/no-good-alternative.js.map +1 -0
- package/dist/notification-list.js +74 -0
- package/dist/notification-list.js.map +1 -0
- package/dist/plugin.d.ts +3 -0
- package/dist/provider.d.ts +25 -0
- package/dist/store.d.ts +15 -0
- package/dist/styles.js +13 -0
- package/dist/styles.js.map +1 -0
- package/dist/types.d.ts +78 -0
- package/dist/ui/contact-method-list.d.ts +10 -0
- package/dist/ui/contact-method.d.ts +9 -0
- package/dist/ui/feedback-list.d.ts +8 -0
- package/dist/ui/no-good-alternative.d.ts +6 -0
- package/dist/ui/notification-list.d.ts +11 -0
- package/dist/ui/styles.d.ts +1 -0
- package/dist/utils.d.ts +26 -0
- package/package.json +44 -45
- package/lib/client/chat.client.d.ts +0 -15
- package/lib/client/chat.client.js +0 -80
- package/lib/client/contact-method.client.d.ts +0 -22
- package/lib/client/contact-method.client.js +0 -276
- package/lib/client/http.client.d.ts +0 -22
- package/lib/client/http.client.js +0 -114
- package/lib/client/middleware.client.d.ts +0 -13
- package/lib/client/middleware.client.js +0 -60
- package/lib/contract/custom-component/contact-method-item.d.ts +0 -8
- package/lib/contract/custom-component/contact-method-item.js +0 -76
- package/lib/contract/custom-component/contact-method-list.d.ts +0 -7
- package/lib/contract/custom-component/contact-method-list.js +0 -41
- package/lib/contract/custom-component/contact-method.d.ts +0 -3
- package/lib/contract/custom-component/contact-method.js +0 -38
- package/lib/contract/enum/server-entry-type.enum.d.ts +0 -6
- package/lib/contract/enum/server-entry-type.enum.js +0 -10
- package/lib/contract/model/conversation-api-model/list.model.d.ts +0 -5
- package/lib/contract/model/conversation-api-model/list.model.js +0 -2
- package/lib/contract/model/conversation-api-model/message.model.d.ts +0 -7
- package/lib/contract/model/conversation-api-model/message.model.js +0 -2
- package/lib/contract/model/http/action.model.d.ts +0 -3
- package/lib/contract/model/http/action.model.js +0 -2
- package/lib/contract/model/http/client-action.model.d.ts +0 -4
- package/lib/contract/model/http/client-action.model.js +0 -3
- package/lib/contract/model/http/client-envelope.model.d.ts +0 -9
- package/lib/contract/model/http/client-envelope.model.js +0 -2
- package/lib/contract/model/http/connect-options.model.d.ts +0 -5
- package/lib/contract/model/http/connect-options.model.js +0 -2
- package/lib/contract/model/http/global-state.model.d.ts +0 -8
- package/lib/contract/model/http/global-state.model.js +0 -2
- package/lib/contract/model/http/http-client-options.model.d.ts +0 -5
- package/lib/contract/model/http/http-client-options.model.js +0 -2
- package/lib/contract/model/http/server-entry.model.d.ts +0 -11
- package/lib/contract/model/http/server-entry.model.js +0 -2
- package/lib/contract/model/http/server-envelope.model.d.ts +0 -10
- package/lib/contract/model/http/server-envelope.model.js +0 -2
- package/lib/contract/model/middleware/aggregator-state.model.d.ts +0 -4
- package/lib/contract/model/middleware/aggregator-state.model.js +0 -3
- package/lib/contract/model/shared/loose-object.model.d.ts +0 -3
- package/lib/contract/model/shared/loose-object.model.js +0 -2
- package/lib/helper/chat.helper.d.ts +0 -8
- package/lib/helper/chat.helper.js +0 -21
- package/lib/helper/http.helper.d.ts +0 -13
- package/lib/helper/http.helper.js +0 -33
- package/lib/helper/middleware.helper.d.ts +0 -12
- package/lib/helper/middleware.helper.js +0 -72
- package/lib/helper/store.helper.d.ts +0 -22
- package/lib/helper/store.helper.js +0 -80
- package/lib/index.d.ts +0 -2
- package/lib/index.js +0 -8
- package/lib/interface/entry.interface.d.ts +0 -17
- package/lib/interface/entry.interface.js +0 -138
- package/lib/interface/middleware/contact-expanded.interface.d.ts +0 -0
- package/lib/interface/middleware/contact-expanded.interface.js +0 -50
- package/lib/interface/middleware/legacy-contact-methods.interface.d.ts +0 -0
- package/lib/interface/middleware/legacy-contact-methods.interface.js +0 -394
- package/lib/interface/middleware/paging.interface.d.ts +0 -4
- package/lib/interface/middleware/paging.interface.js +0 -55
- package/lib/interface/middleware/processor.interface.d.ts +0 -10
- package/lib/interface/middleware/processor.interface.js +0 -120
- package/lib/plugin.d.ts +0 -3
- package/lib/plugin.js +0 -172
- package/lib-esm/client/chat.client.d.ts +0 -15
- package/lib-esm/client/chat.client.js +0 -75
- package/lib-esm/client/contact-method.client.d.ts +0 -22
- package/lib-esm/client/contact-method.client.js +0 -270
- package/lib-esm/client/http.client.d.ts +0 -22
- package/lib-esm/client/http.client.js +0 -108
- package/lib-esm/client/middleware.client.d.ts +0 -13
- package/lib-esm/client/middleware.client.js +0 -55
- package/lib-esm/contract/custom-component/contact-method-item.d.ts +0 -8
- package/lib-esm/contract/custom-component/contact-method-item.js +0 -51
- package/lib-esm/contract/custom-component/contact-method-list.d.ts +0 -7
- package/lib-esm/contract/custom-component/contact-method-list.js +0 -13
- package/lib-esm/contract/custom-component/contact-method.d.ts +0 -3
- package/lib-esm/contract/custom-component/contact-method.js +0 -33
- package/lib-esm/contract/enum/server-entry-type.enum.d.ts +0 -6
- package/lib-esm/contract/enum/server-entry-type.enum.js +0 -7
- package/lib-esm/contract/model/conversation-api-model/list.model.d.ts +0 -5
- package/lib-esm/contract/model/conversation-api-model/list.model.js +0 -1
- package/lib-esm/contract/model/conversation-api-model/message.model.d.ts +0 -7
- package/lib-esm/contract/model/conversation-api-model/message.model.js +0 -1
- package/lib-esm/contract/model/http/action.model.d.ts +0 -3
- package/lib-esm/contract/model/http/action.model.js +0 -1
- package/lib-esm/contract/model/http/client-action.model.d.ts +0 -4
- package/lib-esm/contract/model/http/client-action.model.js +0 -2
- package/lib-esm/contract/model/http/client-envelope.model.d.ts +0 -9
- package/lib-esm/contract/model/http/client-envelope.model.js +0 -1
- package/lib-esm/contract/model/http/connect-options.model.d.ts +0 -5
- package/lib-esm/contract/model/http/connect-options.model.js +0 -1
- package/lib-esm/contract/model/http/global-state.model.d.ts +0 -8
- package/lib-esm/contract/model/http/global-state.model.js +0 -1
- package/lib-esm/contract/model/http/http-client-options.model.d.ts +0 -5
- package/lib-esm/contract/model/http/http-client-options.model.js +0 -1
- package/lib-esm/contract/model/http/server-entry.model.d.ts +0 -11
- package/lib-esm/contract/model/http/server-entry.model.js +0 -1
- package/lib-esm/contract/model/http/server-envelope.model.d.ts +0 -10
- package/lib-esm/contract/model/http/server-envelope.model.js +0 -1
- package/lib-esm/contract/model/middleware/aggregator-state.model.d.ts +0 -4
- package/lib-esm/contract/model/middleware/aggregator-state.model.js +0 -2
- package/lib-esm/contract/model/shared/loose-object.model.d.ts +0 -3
- package/lib-esm/contract/model/shared/loose-object.model.js +0 -1
- package/lib-esm/helper/chat.helper.d.ts +0 -8
- package/lib-esm/helper/chat.helper.js +0 -18
- package/lib-esm/helper/http.helper.d.ts +0 -13
- package/lib-esm/helper/http.helper.js +0 -30
- package/lib-esm/helper/middleware.helper.d.ts +0 -12
- package/lib-esm/helper/middleware.helper.js +0 -69
- package/lib-esm/helper/store.helper.d.ts +0 -22
- package/lib-esm/helper/store.helper.js +0 -77
- package/lib-esm/index.js +0 -2
- package/lib-esm/interface/entry.interface.d.ts +0 -17
- package/lib-esm/interface/entry.interface.js +0 -136
- package/lib-esm/interface/middleware/paging.interface.d.ts +0 -4
- package/lib-esm/interface/middleware/paging.interface.js +0 -53
- package/lib-esm/interface/middleware/processor.interface.d.ts +0 -10
- package/lib-esm/interface/middleware/processor.interface.js +0 -118
- package/lib-esm/plugin.d.ts +0 -3
- package/lib-esm/plugin.js +0 -144
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defProps = Object.defineProperties;
|
|
3
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
4
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
7
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
8
|
+
var __spreadValues = (a, b) => {
|
|
9
|
+
for (var prop in b || (b = {}))
|
|
10
|
+
if (__hasOwnProp.call(b, prop))
|
|
11
|
+
__defNormalProp(a, prop, b[prop]);
|
|
12
|
+
if (__getOwnPropSymbols)
|
|
13
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
14
|
+
if (__propIsEnum.call(b, prop))
|
|
15
|
+
__defNormalProp(a, prop, b[prop]);
|
|
16
|
+
}
|
|
17
|
+
return a;
|
|
18
|
+
};
|
|
19
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
20
|
+
import { ContactList, ContactMethod as ContactMethod$1 } from "@telia-ace/knowledge-widget-adapters";
|
|
21
|
+
import { useDispatch, useContainer } from "@telia-ace/knowledge-widget-ui";
|
|
22
|
+
import React, { useState, useMemo } from "react";
|
|
23
|
+
import styled from "styled-components";
|
|
24
|
+
import ContactMethod from "./contact-method.js";
|
|
25
|
+
import "@telia-ace/knowledge-widget-types-grid";
|
|
26
|
+
import "@telia-ace/widget-forms";
|
|
27
|
+
import "./index2.js";
|
|
28
|
+
import "@telia-ace/widget-conversation";
|
|
29
|
+
import "@telia-ace/widget-services";
|
|
30
|
+
import "@telia-ace/widget-utilities";
|
|
31
|
+
const ContactMethodList = ({ actions, entryId, groupId }) => {
|
|
32
|
+
const dispatch = useDispatch();
|
|
33
|
+
const container = useContainer();
|
|
34
|
+
const [expanded, setExpanded] = useState([]);
|
|
35
|
+
const items = useMemo(() => {
|
|
36
|
+
return actions.map((action) => {
|
|
37
|
+
return __spreadProps(__spreadValues({}, action.data), {
|
|
38
|
+
onClick: (_event, data) => {
|
|
39
|
+
if (data.inline && !data.expanded) {
|
|
40
|
+
setExpanded([...expanded, data.id]);
|
|
41
|
+
} else {
|
|
42
|
+
const { events } = container.get("$widget");
|
|
43
|
+
events.dispatch("provider:open-contact-method", {
|
|
44
|
+
entryId,
|
|
45
|
+
contactMethod: data,
|
|
46
|
+
actionKey: action.actionKey
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
}, [actions, container, entryId, expanded]);
|
|
53
|
+
if (!items.length) {
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
return /* @__PURE__ */ React.createElement(StyledContactList, {
|
|
57
|
+
contactMethods: items,
|
|
58
|
+
dispatch,
|
|
59
|
+
itemRenderer: (cm, props) => {
|
|
60
|
+
const isExpanded = expanded.includes(cm.id) || cm.expanded;
|
|
61
|
+
if (isExpanded && cm.inline) {
|
|
62
|
+
return /* @__PURE__ */ React.createElement(StyledContactMethod, {
|
|
63
|
+
contactMethodId: cm.id,
|
|
64
|
+
groupId,
|
|
65
|
+
guideId: cm.body.guideId
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
return /* @__PURE__ */ React.createElement(StyledGenericContactMethod, __spreadValues(__spreadValues({}, cm), props));
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
};
|
|
72
|
+
const StyledContactList = styled(ContactList)`
|
|
73
|
+
> ul > li {
|
|
74
|
+
a {
|
|
75
|
+
display: flex;
|
|
76
|
+
align-items: center;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
&:not(:last-child) {
|
|
80
|
+
${(p) => p.theme.border && `border-bottom: ${p.theme.border};`}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
`;
|
|
84
|
+
const StyledContactMethod = styled(ContactMethod)`
|
|
85
|
+
i {
|
|
86
|
+
margin: 0 ${(p) => {
|
|
87
|
+
var _a;
|
|
88
|
+
return (_a = p.theme.sizes) == null ? void 0 : _a.medium;
|
|
89
|
+
}} 0 0;
|
|
90
|
+
display: flex;
|
|
91
|
+
justify-content: center;
|
|
92
|
+
align-items: center;
|
|
93
|
+
}
|
|
94
|
+
`;
|
|
95
|
+
const StyledGenericContactMethod = styled(ContactMethod$1)`
|
|
96
|
+
padding: ${(p) => {
|
|
97
|
+
var _a;
|
|
98
|
+
return (_a = p.theme.sizes) == null ? void 0 : _a.medium;
|
|
99
|
+
}};
|
|
100
|
+
i {
|
|
101
|
+
margin: 0 ${(p) => {
|
|
102
|
+
var _a;
|
|
103
|
+
return (_a = p.theme.sizes) == null ? void 0 : _a.medium;
|
|
104
|
+
}} 0 0;
|
|
105
|
+
display: flex;
|
|
106
|
+
justify-content: center;
|
|
107
|
+
align-items: center;
|
|
108
|
+
}
|
|
109
|
+
`;
|
|
110
|
+
export { ContactMethodList as default };
|
|
111
|
+
//# sourceMappingURL=contact-method-list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contact-method-list.js","sources":["../src/ui/contact-method-list.tsx"],"sourcesContent":["import {\r\n ContactList,\r\n ContactMethod as GenericContactMethod,\r\n} from '@telia-ace/knowledge-widget-adapters';\r\nimport { useContainer, useDispatch } from '@telia-ace/knowledge-widget-ui';\r\nimport React, { useMemo, useState } from 'react';\r\nimport styled from 'styled-components';\r\nimport { ActionItem } from '../types';\r\nimport ContactMethod from './contact-method';\r\n\r\ntype Props = {\r\n actions: ActionItem[];\r\n contactMethodIds?: string[];\r\n entryId: string;\r\n groupId: string;\r\n};\r\nconst ContactMethodList: React.FC<Props> = ({ actions, entryId, groupId }) => {\r\n const dispatch = useDispatch();\r\n const container = useContainer();\r\n const [expanded, setExpanded] = useState<string[]>([]);\r\n\r\n const items = useMemo<any[]>(() => {\r\n return actions.map((action) => {\r\n return {\r\n ...action.data,\r\n onClick: (_event: any, data: any) => {\r\n if (data.inline && !data.expanded) {\r\n setExpanded([...expanded, data.id]);\r\n } else {\r\n const { events } = container.get('$widget');\r\n events.dispatch('provider:open-contact-method', {\r\n entryId,\r\n contactMethod: data,\r\n actionKey: action.actionKey,\r\n });\r\n }\r\n },\r\n };\r\n });\r\n }, [actions, container, entryId, expanded]);\r\n\r\n if (!items.length) {\r\n return null;\r\n }\r\n\r\n return (\r\n <StyledContactList\r\n contactMethods={items}\r\n dispatch={dispatch}\r\n itemRenderer={(cm: any, props: any) => {\r\n const isExpanded = expanded.includes(cm.id) || cm.expanded;\r\n if (isExpanded && cm.inline) {\r\n return (\r\n <StyledContactMethod\r\n contactMethodId={cm.id}\r\n groupId={groupId}\r\n guideId={cm.body.guideId}\r\n />\r\n );\r\n }\r\n return <StyledGenericContactMethod {...cm} {...props} />;\r\n }}\r\n />\r\n );\r\n};\r\n\r\nexport default ContactMethodList;\r\n\r\nconst StyledContactList = styled(ContactList)`\r\n > ul > li {\r\n a {\r\n display: flex;\r\n align-items: center;\r\n }\r\n\r\n &:not(:last-child) {\r\n ${(p) => p.theme.border && `border-bottom: ${p.theme.border};`}\r\n }\r\n }\r\n`;\r\n\r\nconst StyledContactMethod = styled(ContactMethod)`\r\n i {\r\n margin: 0 ${(p) => p.theme.sizes?.medium} 0 0;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n }\r\n`;\r\nconst StyledGenericContactMethod = styled(GenericContactMethod)`\r\n padding: ${(p) => p.theme.sizes?.medium};\r\n i {\r\n margin: 0 ${(p) => p.theme.sizes?.medium} 0 0;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n }\r\n`;\r\n"],"names":["GenericContactMethod"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgBA,MAAM,oBAAqC,CAAC,EAAE,SAAS,SAAS,cAAc;AAC1E,QAAM,WAAW;AACjB,QAAM,YAAY;AAClB,QAAM,CAAC,UAAU,eAAe,SAAmB,CAAE,CAAA;AAE/C,QAAA,QAAQ,QAAe,MAAM;AACxB,WAAA,QAAQ,IAAI,CAAC,WAAW;AACpB,aAAA,iCACA,OAAO,OADP;AAAA,QAEH,SAAS,CAAC,QAAa,SAAc;AACjC,cAAI,KAAK,UAAU,CAAC,KAAK,UAAU;AAC/B,wBAAY,CAAC,GAAG,UAAU,KAAK,EAAE,CAAC;AAAA,UAAA,OAC/B;AACH,kBAAM,EAAE,WAAW,UAAU,IAAI,SAAS;AAC1C,mBAAO,SAAS,gCAAgC;AAAA,cAC5C;AAAA,cACA,eAAe;AAAA,cACf,WAAW,OAAO;AAAA,YAAA,CACrB;AAAA,UACL;AAAA,QACJ;AAAA,MAAA;AAAA,IACJ,CACH;AAAA,KACF,CAAC,SAAS,WAAW,SAAS,QAAQ,CAAC;AAEtC,MAAA,CAAC,MAAM,QAAQ;AACR,WAAA;AAAA,EACX;AAEA,SACK,sBAAA,cAAA,mBAAA;AAAA,IACG,gBAAgB;AAAA,IAChB;AAAA,IACA,cAAc,CAAC,IAAS,UAAe;AACnC,YAAM,aAAa,SAAS,SAAS,GAAG,EAAE,KAAK,GAAG;AAC9C,UAAA,cAAc,GAAG,QAAQ;AACzB,eACK,sBAAA,cAAA,qBAAA;AAAA,UACG,iBAAiB,GAAG;AAAA,UACpB;AAAA,UACA,SAAS,GAAG,KAAK;AAAA,QAAA,CACrB;AAAA,MAER;AACA,aAAQ,sBAAA,cAAA,4BAAA,kCAA+B,KAAQ,MAAO;AAAA,IAC1D;AAAA,EAAA,CACJ;AAER;AAIA,MAAM,oBAAoB,OAAO,WAAW;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,cAQ9B,CAAC,MAAM,EAAE,MAAM,UAAU,kBAAkB,EAAE,MAAM;AAAA;AAAA;AAAA;AAKjE,MAAM,sBAAsB,OAAO,aAAa;AAAA;AAAA,oBAE5B,CAAC,MAAM;;AAAA,iBAAE,MAAM,UAAR,mBAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAM1C,MAAM,6BAA6B,OAAOA,eAAoB;AAAA,eAC/C,CAAC,MAAM;;AAAA,iBAAE,MAAM,UAAR,mBAAe;AAAA;AAAA;AAAA,oBAEjB,CAAC,MAAM;;AAAA,iBAAE,MAAM,UAAR,mBAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;"}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defProps = Object.defineProperties;
|
|
3
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
4
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
7
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
8
|
+
var __spreadValues = (a, b) => {
|
|
9
|
+
for (var prop in b || (b = {}))
|
|
10
|
+
if (__hasOwnProp.call(b, prop))
|
|
11
|
+
__defNormalProp(a, prop, b[prop]);
|
|
12
|
+
if (__getOwnPropSymbols)
|
|
13
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
14
|
+
if (__propIsEnum.call(b, prop))
|
|
15
|
+
__defNormalProp(a, prop, b[prop]);
|
|
16
|
+
}
|
|
17
|
+
return a;
|
|
18
|
+
};
|
|
19
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
20
|
+
var __async = (__this, __arguments, generator) => {
|
|
21
|
+
return new Promise((resolve, reject) => {
|
|
22
|
+
var fulfilled = (value) => {
|
|
23
|
+
try {
|
|
24
|
+
step(generator.next(value));
|
|
25
|
+
} catch (e) {
|
|
26
|
+
reject(e);
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
var rejected = (value) => {
|
|
30
|
+
try {
|
|
31
|
+
step(generator.throw(value));
|
|
32
|
+
} catch (e) {
|
|
33
|
+
reject(e);
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
|
|
37
|
+
step((generator = generator.apply(__this, __arguments)).next());
|
|
38
|
+
});
|
|
39
|
+
};
|
|
40
|
+
import { ContactMethod as ContactMethod$1 } from "@telia-ace/knowledge-widget-adapters";
|
|
41
|
+
import { DataType } from "@telia-ace/knowledge-widget-types-grid";
|
|
42
|
+
import { useContainer, useDispatch } from "@telia-ace/knowledge-widget-ui";
|
|
43
|
+
import { FormBuilder } from "@telia-ace/widget-forms";
|
|
44
|
+
import React, { useState, useRef, useEffect, useCallback } from "react";
|
|
45
|
+
import styled from "styled-components";
|
|
46
|
+
import { u as updateForm } from "./index2.js";
|
|
47
|
+
import "@telia-ace/widget-conversation";
|
|
48
|
+
import "@telia-ace/widget-services";
|
|
49
|
+
import "@telia-ace/widget-utilities";
|
|
50
|
+
const ContactMethod = ({ contactMethodId, guideId, groupId, className }) => {
|
|
51
|
+
const [contactMethod, setContactMethod] = useState();
|
|
52
|
+
const container = useContainer();
|
|
53
|
+
const dispatch = useDispatch();
|
|
54
|
+
const mountedRef = useRef(true);
|
|
55
|
+
useEffect(() => {
|
|
56
|
+
const { events } = container.get("$widget");
|
|
57
|
+
const unsubscribe = events.subscribe("bot-provider:form-submitted", (_, data) => __async(this, null, function* () {
|
|
58
|
+
var _a;
|
|
59
|
+
if (((_a = data.form.meta) == null ? void 0 : _a.groupId) !== groupId) {
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
const platform = yield container.getAsync("contactMethods");
|
|
63
|
+
const updatedMethod = __spreadProps(__spreadValues({}, contactMethod), {
|
|
64
|
+
body: __spreadProps(__spreadValues({}, contactMethod.body), {
|
|
65
|
+
form: data.form
|
|
66
|
+
})
|
|
67
|
+
});
|
|
68
|
+
const { errors, valid, errorTypes } = yield platform.validate(updatedMethod);
|
|
69
|
+
if (!valid) {
|
|
70
|
+
const builder = new FormBuilder(contactMethod.body.form);
|
|
71
|
+
setContactMethod(void 0);
|
|
72
|
+
builder.setValidationErrors(errors);
|
|
73
|
+
updatedMethod.body = __spreadProps(__spreadValues({}, updatedMethod.body), {
|
|
74
|
+
form: builder.get()
|
|
75
|
+
});
|
|
76
|
+
setContactMethod(__spreadValues({}, updatedMethod));
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
const result = yield platform.submit(updatedMethod);
|
|
80
|
+
updatedMethod.confirmation = result;
|
|
81
|
+
setContactMethod(updatedMethod);
|
|
82
|
+
}));
|
|
83
|
+
const unsubscribeEvaluate = events.subscribe("bot-provider:evaluate", (_, data) => __async(this, null, function* () {
|
|
84
|
+
if (data.id != contactMethodId) {
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
const platform = yield container.getAsync("contactMethods");
|
|
88
|
+
const updatedForm = yield platform.evaluate(contactMethod);
|
|
89
|
+
let updatedMethod = __spreadProps(__spreadValues({}, contactMethod), {
|
|
90
|
+
body: __spreadProps(__spreadValues({}, contactMethod.body), {
|
|
91
|
+
form: updatedForm
|
|
92
|
+
})
|
|
93
|
+
});
|
|
94
|
+
const updatedBody = updateForm(updatedMethod, {
|
|
95
|
+
submit: "Submit",
|
|
96
|
+
errors: {},
|
|
97
|
+
meta: { groupId }
|
|
98
|
+
});
|
|
99
|
+
updatedMethod = __spreadProps(__spreadValues({}, updatedMethod), {
|
|
100
|
+
body: updatedBody
|
|
101
|
+
});
|
|
102
|
+
setContactMethod(updatedMethod);
|
|
103
|
+
}));
|
|
104
|
+
return () => {
|
|
105
|
+
unsubscribe();
|
|
106
|
+
unsubscribeEvaluate();
|
|
107
|
+
};
|
|
108
|
+
}, [container, contactMethod, setContactMethod]);
|
|
109
|
+
const fetchContactMethod = useCallback((id) => __async(this, null, function* () {
|
|
110
|
+
const dataClient = yield container.getAsync("dataClient");
|
|
111
|
+
const cm = yield dataClient.fetch(DataType.ContactMethod, {
|
|
112
|
+
contactMethodId: id,
|
|
113
|
+
guideId
|
|
114
|
+
});
|
|
115
|
+
const body = updateForm(cm, {
|
|
116
|
+
submit: "Submit",
|
|
117
|
+
errors: {},
|
|
118
|
+
meta: { groupId }
|
|
119
|
+
});
|
|
120
|
+
cm.body = body;
|
|
121
|
+
cm.body.guideId = guideId;
|
|
122
|
+
if (!mountedRef.current) {
|
|
123
|
+
return null;
|
|
124
|
+
}
|
|
125
|
+
setContactMethod(cm);
|
|
126
|
+
}), [mountedRef]);
|
|
127
|
+
useEffect(() => {
|
|
128
|
+
fetchContactMethod(contactMethodId);
|
|
129
|
+
return () => {
|
|
130
|
+
mountedRef.current = false;
|
|
131
|
+
};
|
|
132
|
+
}, [contactMethodId, fetchContactMethod]);
|
|
133
|
+
if (!contactMethod) {
|
|
134
|
+
return null;
|
|
135
|
+
}
|
|
136
|
+
return /* @__PURE__ */ React.createElement(StyledGenericContactMethod, __spreadProps(__spreadValues({}, contactMethod), {
|
|
137
|
+
body: contactMethod.body,
|
|
138
|
+
inline: true,
|
|
139
|
+
expanded: true,
|
|
140
|
+
dispatch,
|
|
141
|
+
className
|
|
142
|
+
}));
|
|
143
|
+
};
|
|
144
|
+
const StyledGenericContactMethod = styled(ContactMethod$1)`
|
|
145
|
+
padding: ${(p) => {
|
|
146
|
+
var _a;
|
|
147
|
+
return (_a = p.theme.sizes) == null ? void 0 : _a.normal;
|
|
148
|
+
}} ${(p) => {
|
|
149
|
+
var _a;
|
|
150
|
+
return (_a = p.theme.sizes) == null ? void 0 : _a.medium;
|
|
151
|
+
}};
|
|
152
|
+
`;
|
|
153
|
+
export { ContactMethod as default };
|
|
154
|
+
//# sourceMappingURL=contact-method.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contact-method.js","sources":["../src/ui/contact-method.tsx"],"sourcesContent":["import {\r\n ContactMethod as GenericContactMethod,\r\n ContactMethodPlatform,\r\n} from '@telia-ace/knowledge-widget-adapters';\r\nimport { DataType } from '@telia-ace/knowledge-widget-types-grid';\r\nimport { useContainer, useDispatch } from '@telia-ace/knowledge-widget-ui';\r\nimport { FormBuilder } from '@telia-ace/widget-forms';\r\nimport { Widget } from '@webprovisions/platform';\r\nimport React, { useCallback, useEffect, useRef, useState } from 'react';\r\nimport styled from 'styled-components';\r\nimport { updateForm } from '../utils';\r\n\r\ntype Props = {\r\n contactMethodId: string;\r\n groupId: string;\r\n guideId?: string;\r\n className?: string;\r\n};\r\nconst ContactMethod: React.FC<Props> = ({ contactMethodId, guideId, groupId, className }) => {\r\n const [contactMethod, setContactMethod] = useState<any>();\r\n const container = useContainer();\r\n const dispatch = useDispatch();\r\n const mountedRef = useRef<boolean>(true);\r\n\r\n useEffect(() => {\r\n const { events } = container.get('$widget') as Widget;\r\n\r\n const unsubscribe = events.subscribe('bot-provider:form-submitted', async (_, data) => {\r\n // making sure that this is the form that is submitted\r\n if (data.form.meta?.groupId !== groupId) {\r\n return;\r\n }\r\n\r\n const platform = (await container.getAsync('contactMethods')) as ContactMethodPlatform;\r\n\r\n const updatedMethod = {\r\n ...contactMethod,\r\n body: {\r\n ...contactMethod.body,\r\n form: data.form,\r\n },\r\n };\r\n\r\n const { errors, valid, errorTypes } = await platform.validate(updatedMethod);\r\n\r\n if (!valid) {\r\n const builder = new FormBuilder(contactMethod.body.form);\r\n setContactMethod(undefined);\r\n\r\n builder.setValidationErrors(errors);\r\n\r\n updatedMethod.body = {\r\n ...updatedMethod.body,\r\n form: builder.get(),\r\n };\r\n\r\n setContactMethod({ ...updatedMethod });\r\n return;\r\n }\r\n\r\n const result = await platform.submit(updatedMethod);\r\n\r\n updatedMethod.confirmation = result;\r\n setContactMethod(updatedMethod);\r\n });\r\n\r\n const unsubscribeEvaluate = events.subscribe('bot-provider:evaluate', async (_, data) => {\r\n if (data.id != contactMethodId) {\r\n return;\r\n }\r\n\r\n const platform = (await container.getAsync('contactMethods')) as ContactMethodPlatform;\r\n\r\n const updatedForm = await platform.evaluate(contactMethod);\r\n\r\n let updatedMethod = {\r\n ...contactMethod,\r\n body: {\r\n ...contactMethod.body,\r\n form: updatedForm,\r\n },\r\n };\r\n\r\n const updatedBody = updateForm(updatedMethod, {\r\n submit: 'Submit',\r\n errors: {},\r\n meta: { groupId },\r\n });\r\n\r\n updatedMethod = {\r\n ...updatedMethod,\r\n body: updatedBody,\r\n };\r\n\r\n setContactMethod(updatedMethod);\r\n });\r\n\r\n return () => {\r\n unsubscribe();\r\n unsubscribeEvaluate();\r\n };\r\n }, [container, contactMethod, setContactMethod]);\r\n\r\n const fetchContactMethod = useCallback(\r\n async (id: string) => {\r\n const dataClient = await container.getAsync('dataClient');\r\n\r\n const cm = await dataClient.fetch(DataType.ContactMethod, {\r\n contactMethodId: id,\r\n guideId,\r\n });\r\n\r\n const body = updateForm(cm, {\r\n submit: 'Submit',\r\n errors: {},\r\n meta: { groupId },\r\n });\r\n cm.body = body;\r\n cm.body.guideId = guideId;\r\n\r\n if (!mountedRef.current) {\r\n return null;\r\n }\r\n setContactMethod(cm);\r\n },\r\n [mountedRef]\r\n );\r\n\r\n useEffect(() => {\r\n fetchContactMethod(contactMethodId);\r\n return () => {\r\n mountedRef.current = false; // clean up\r\n };\r\n }, [contactMethodId, fetchContactMethod]);\r\n\r\n if (!contactMethod) {\r\n return null;\r\n }\r\n return (\r\n <StyledGenericContactMethod\r\n {...contactMethod}\r\n body={contactMethod.body}\r\n inline={true}\r\n expanded={true}\r\n dispatch={dispatch}\r\n className={className}\r\n />\r\n );\r\n};\r\n\r\nexport default ContactMethod;\r\n\r\nconst StyledGenericContactMethod = styled(GenericContactMethod)`\r\n padding: ${(p) => p.theme.sizes?.normal} ${(p) => p.theme.sizes?.medium};\r\n`;\r\n"],"names":["GenericContactMethod"],"mappings":"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"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { useDispatch, Icon, List, list, Button, buttonCss, invertedHoverButton } from "@telia-ace/knowledge-widget-ui";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import styled from "styled-components";
|
|
4
|
+
import { m as messageContentPadding } from "./styles.js";
|
|
5
|
+
const FeedbackList = ({ actions }) => {
|
|
6
|
+
const dispatch = useDispatch();
|
|
7
|
+
return /* @__PURE__ */ React.createElement(StyledButtonList, {
|
|
8
|
+
items: actions,
|
|
9
|
+
"data-direction": "vertical",
|
|
10
|
+
renderItem: (item) => {
|
|
11
|
+
return /* @__PURE__ */ React.createElement("li", {
|
|
12
|
+
key: item.actionKey
|
|
13
|
+
}, /* @__PURE__ */ React.createElement(FeedbackButton, {
|
|
14
|
+
className: "humany-feedback-button",
|
|
15
|
+
disabled: false,
|
|
16
|
+
"aria-pressed": true,
|
|
17
|
+
"data-selected": true,
|
|
18
|
+
onClick: () => {
|
|
19
|
+
dispatch("action", item.actionKey);
|
|
20
|
+
}
|
|
21
|
+
}, /* @__PURE__ */ React.createElement(Icon, {
|
|
22
|
+
faIcon: item.actionKey == "yes" ? "smile-o" : "frown-o"
|
|
23
|
+
}), /* @__PURE__ */ React.createElement("span", null, item.label)));
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
};
|
|
27
|
+
const StyledButtonList = styled(List)`
|
|
28
|
+
${list}
|
|
29
|
+
${messageContentPadding}
|
|
30
|
+
display: flex;
|
|
31
|
+
gap: ${(p) => {
|
|
32
|
+
var _a;
|
|
33
|
+
return (_a = p.theme.sizes) == null ? void 0 : _a.normal;
|
|
34
|
+
}};
|
|
35
|
+
flex-direction: ${(p) => p["data-direction"] === "horizontal" ? "row" : "column"};
|
|
36
|
+
> li {
|
|
37
|
+
flex: 1;
|
|
38
|
+
margin: 0;
|
|
39
|
+
}
|
|
40
|
+
`;
|
|
41
|
+
const FeedbackButton = styled(Button)`
|
|
42
|
+
${buttonCss}
|
|
43
|
+
font-size: ${(p) => {
|
|
44
|
+
var _a;
|
|
45
|
+
return (_a = p.theme.fonts) == null ? void 0 : _a.normal;
|
|
46
|
+
}};
|
|
47
|
+
border-color: ${(p) => {
|
|
48
|
+
var _a;
|
|
49
|
+
return (_a = p.theme.colors) == null ? void 0 : _a.primary;
|
|
50
|
+
}};
|
|
51
|
+
font-weight: 300;
|
|
52
|
+
display: block;
|
|
53
|
+
width: 100%;
|
|
54
|
+
|
|
55
|
+
${(p) => {
|
|
56
|
+
var _a;
|
|
57
|
+
return invertedHoverButton({
|
|
58
|
+
primaryColor: `${(_a = p.theme.colors) == null ? void 0 : _a.primary}`,
|
|
59
|
+
secondaryColor: "#FFFFFF"
|
|
60
|
+
});
|
|
61
|
+
}}
|
|
62
|
+
i {
|
|
63
|
+
margin: 0 ${(p) => {
|
|
64
|
+
var _a;
|
|
65
|
+
return (_a = p.theme.sizes) == null ? void 0 : _a.small;
|
|
66
|
+
}} 0 0;
|
|
67
|
+
}
|
|
68
|
+
span {
|
|
69
|
+
}
|
|
70
|
+
`;
|
|
71
|
+
export { FeedbackList as default };
|
|
72
|
+
//# sourceMappingURL=feedback-list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feedback-list.js","sources":["../src/ui/feedback-list.tsx"],"sourcesContent":["import {\r\n Button,\r\n buttonCss,\r\n Icon,\r\n invertedHoverButton,\r\n list,\r\n List,\r\n useDispatch,\r\n} from '@telia-ace/knowledge-widget-ui';\r\nimport React from 'react';\r\nimport styled from 'styled-components';\r\nimport { messageContentPadding } from './styles';\r\n\r\ntype Props = {\r\n actions: { [key: string]: string }[];\r\n};\r\nconst FeedbackList: React.FC<Props> = ({ actions }) => {\r\n const dispatch = useDispatch();\r\n return (\r\n <StyledButtonList\r\n items={actions}\r\n data-direction={'vertical'}\r\n renderItem={(item: any) => {\r\n return (\r\n <li key={item.actionKey}>\r\n <FeedbackButton\r\n className=\"humany-feedback-button\"\r\n disabled={false}\r\n aria-pressed={true}\r\n data-selected={true}\r\n onClick={() => {\r\n dispatch('action', item.actionKey);\r\n }}\r\n >\r\n <Icon faIcon={item.actionKey == 'yes' ? 'smile-o' : 'frown-o'} />\r\n <span>{item.label}</span>\r\n </FeedbackButton>\r\n </li>\r\n );\r\n }}\r\n />\r\n );\r\n};\r\n\r\nexport default FeedbackList;\r\n\r\nconst StyledButtonList = styled(List)<{ 'data-direction': 'horizontal' | 'vertical' } & any>`\r\n ${list}\r\n ${messageContentPadding}\r\n display: flex;\r\n gap: ${(p) => p.theme.sizes?.normal};\r\n flex-direction: ${(p) => (p['data-direction'] === 'horizontal' ? 'row' : 'column')};\r\n > li {\r\n flex: 1;\r\n margin: 0;\r\n }\r\n`;\r\n\r\nconst FeedbackButton = styled(Button)<{\r\n 'data-selected': boolean;\r\n}>`\r\n ${buttonCss}\r\n font-size: ${(p) => p.theme.fonts?.normal};\r\n border-color: ${(p) => p.theme.colors?.primary};\r\n font-weight: 300;\r\n display: block;\r\n width: 100%;\r\n\r\n ${(p) =>\r\n invertedHoverButton({\r\n primaryColor: `${p.theme.colors?.primary}`,\r\n secondaryColor: '#FFFFFF',\r\n })}\r\n i {\r\n margin: 0 ${(p) => p.theme.sizes?.small} 0 0;\r\n }\r\n span {\r\n }\r\n`;\r\n"],"names":[],"mappings":";;;;AAgBM,MAAA,eAAgC,CAAC,EAAE,cAAc;AACnD,QAAM,WAAW;AACjB,SACK,sBAAA,cAAA,kBAAA;AAAA,IACG,OAAO;AAAA,IACP,kBAAgB;AAAA,IAChB,YAAY,CAAC,SAAc;AACvB,aACK,sBAAA,cAAA,MAAA;AAAA,QAAG,KAAK,KAAK;AAAA,MAAA,GACT,sBAAA,cAAA,gBAAA;AAAA,QACG,WAAU;AAAA,QACV,UAAU;AAAA,QACV,gBAAc;AAAA,QACd,iBAAe;AAAA,QACf,SAAS,MAAM;AACF,mBAAA,UAAU,KAAK,SAAS;AAAA,QACrC;AAAA,MAAA,GAEC,sBAAA,cAAA,MAAA;AAAA,QAAK,QAAQ,KAAK,aAAa,QAAQ,YAAY;AAAA,MAAA,CAAW,GAC9D,sBAAA,cAAA,QAAA,MAAM,KAAK,KAAM,CACtB,CACJ;AAAA,IAER;AAAA,EAAA,CACJ;AAER;AAIA,MAAM,mBAAmB,OAAO,IAAI;AAAA,MAC9B;AAAA,MACA;AAAA;AAAA,WAEK,CAAC,MAAM;;AAAA,iBAAE,MAAM,UAAR,mBAAe;AAAA;AAAA,sBACX,CAAC,MAAO,EAAE,sBAAsB,eAAe,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAO7E,MAAM,iBAAiB,OAAO,MAAM;AAAA,MAG9B;AAAA,iBACW,CAAC,MAAM;;AAAA,iBAAE,MAAM,UAAR,mBAAe;AAAA;AAAA,oBACnB,CAAC,MAAM;;AAAA,iBAAE,MAAM,WAAR,mBAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAKrC,CAAC;;AACC,6BAAoB;AAAA,IAChB,cAAc,GAAG,QAAE,MAAM,WAAR,mBAAgB;AAAA,IACjC,gBAAgB;AAAA,EACpB,CAAC;AAAA;AAAA;AAAA,oBAEW,CAAC,MAAM;;AAAA,iBAAE,MAAM,UAAR,mBAAe;AAAA;AAAA;AAAA;AAAA;AAAA;;"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Container, EventManager } from '@webprovisions/platform';
|
|
2
|
+
import Store from './store';
|
|
3
|
+
import { MessageGroup } from './types';
|
|
4
|
+
declare class HttpClient {
|
|
5
|
+
private endpoint;
|
|
6
|
+
private events;
|
|
7
|
+
private store;
|
|
8
|
+
private container;
|
|
9
|
+
private globalState;
|
|
10
|
+
private clientId;
|
|
11
|
+
private entries;
|
|
12
|
+
constructor(endpoint: string, events: EventManager, store: Store, container: Container);
|
|
13
|
+
start(): Promise<MessageGroup[]>;
|
|
14
|
+
sendMessage(message: string): Promise<MessageGroup[]>;
|
|
15
|
+
helpAction(): Promise<MessageGroup[]>;
|
|
16
|
+
nextAction(group: MessageGroup): Promise<{
|
|
17
|
+
meta: {
|
|
18
|
+
[x: string]: any;
|
|
19
|
+
};
|
|
20
|
+
items: {
|
|
21
|
+
message: any[];
|
|
22
|
+
id: string;
|
|
23
|
+
groupId: string;
|
|
24
|
+
isUser: boolean;
|
|
25
|
+
}[];
|
|
26
|
+
id: string;
|
|
27
|
+
isUser: boolean;
|
|
28
|
+
writer?: any;
|
|
29
|
+
} | undefined>;
|
|
30
|
+
showContactMethodAction(data: {
|
|
31
|
+
contactMethod: any;
|
|
32
|
+
actionKey: string;
|
|
33
|
+
entryId: string;
|
|
34
|
+
}): Promise<MessageGroup[] | undefined>;
|
|
35
|
+
defaultAction(action: string): Promise<MessageGroup[] | undefined>;
|
|
36
|
+
private createInitialEnvelope;
|
|
37
|
+
private postEnvelope;
|
|
38
|
+
private handleResponse;
|
|
39
|
+
private getHttpOptions;
|
|
40
|
+
private getEntryOfAction;
|
|
41
|
+
}
|
|
42
|
+
export default HttpClient;
|
|
File without changes
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
|