@telia-ace/knowledge-widget-ui 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/LICENSE.txt +6 -0
  2. package/README.md +3 -0
  3. package/lib/components/dialog-link.d.ts +12 -0
  4. package/lib/components/dialog-link.js +40 -0
  5. package/lib/components/dialog-list.d.ts +7 -0
  6. package/lib/components/dialog-list.js +72 -0
  7. package/lib/components/drawer-list.d.ts +5 -0
  8. package/lib/components/drawer-list.js +43 -0
  9. package/lib/components/dropdown-actions.d.ts +11 -0
  10. package/lib/components/dropdown-actions.js +25 -0
  11. package/lib/components/dropdown-list.d.ts +5 -0
  12. package/lib/components/dropdown-list.js +66 -0
  13. package/lib/components/favorite-button.d.ts +17 -0
  14. package/lib/components/favorite-button.js +65 -0
  15. package/lib/components/feedback.d.ts +11 -0
  16. package/lib/components/feedback.js +84 -0
  17. package/lib/components/guide-list.d.ts +46 -0
  18. package/lib/components/guide-list.js +202 -0
  19. package/lib/components/index.d.ts +10 -0
  20. package/lib/components/index.js +28 -0
  21. package/lib/components/loader.d.ts +9 -0
  22. package/lib/components/loader.js +50 -0
  23. package/lib/components/metadata.d.ts +17 -0
  24. package/lib/components/metadata.js +35 -0
  25. package/lib/hooks/index.d.ts +5 -0
  26. package/lib/hooks/index.js +14 -0
  27. package/lib/hooks/use-arrow-keys.d.ts +3 -0
  28. package/lib/hooks/use-arrow-keys.js +48 -0
  29. package/lib/hooks/use-debounce.d.ts +2 -0
  30. package/lib/hooks/use-debounce.js +41 -0
  31. package/lib/hooks/use-favorites.d.ts +8 -0
  32. package/lib/hooks/use-favorites.js +81 -0
  33. package/lib/hooks/use-hover.d.ts +2 -0
  34. package/lib/hooks/use-hover.js +29 -0
  35. package/lib/index.d.ts +7 -0
  36. package/lib/index.js +44 -0
  37. package/lib/missing-type-exports.d.ts +47 -0
  38. package/lib/missing-type-exports.js +3 -0
  39. package/lib/styles.d.ts +8 -0
  40. package/lib/styles.js +50 -0
  41. package/lib/utils/embedded-link-mapper.d.ts +4 -0
  42. package/lib/utils/embedded-link-mapper.js +62 -0
  43. package/lib/utils/guide-render-instructions.d.ts +9 -0
  44. package/lib/utils/guide-render-instructions.js +56 -0
  45. package/lib/utils/index.d.ts +1 -0
  46. package/lib/utils/index.js +8 -0
  47. package/lib-esm/components/dialog-link.d.ts +12 -0
  48. package/lib-esm/components/dialog-link.js +35 -0
  49. package/lib-esm/components/dialog-list.d.ts +7 -0
  50. package/lib-esm/components/dialog-list.js +44 -0
  51. package/lib-esm/components/drawer-list.d.ts +5 -0
  52. package/lib-esm/components/drawer-list.js +38 -0
  53. package/lib-esm/components/dropdown-actions.d.ts +11 -0
  54. package/lib-esm/components/dropdown-actions.js +20 -0
  55. package/lib-esm/components/dropdown-list.d.ts +5 -0
  56. package/lib-esm/components/dropdown-list.js +38 -0
  57. package/lib-esm/components/favorite-button.d.ts +17 -0
  58. package/lib-esm/components/favorite-button.js +40 -0
  59. package/lib-esm/components/feedback.d.ts +11 -0
  60. package/lib-esm/components/feedback.js +59 -0
  61. package/lib-esm/components/guide-list.d.ts +46 -0
  62. package/lib-esm/components/guide-list.js +173 -0
  63. package/lib-esm/components/index.d.ts +10 -0
  64. package/lib-esm/components/index.js +10 -0
  65. package/lib-esm/components/loader.d.ts +9 -0
  66. package/lib-esm/components/loader.js +21 -0
  67. package/lib-esm/components/metadata.d.ts +17 -0
  68. package/lib-esm/components/metadata.js +30 -0
  69. package/lib-esm/hooks/index.d.ts +5 -0
  70. package/lib-esm/hooks/index.js +4 -0
  71. package/lib-esm/hooks/use-arrow-keys.d.ts +3 -0
  72. package/lib-esm/hooks/use-arrow-keys.js +46 -0
  73. package/lib-esm/hooks/use-debounce.d.ts +2 -0
  74. package/lib-esm/hooks/use-debounce.js +39 -0
  75. package/lib-esm/hooks/use-favorites.d.ts +8 -0
  76. package/lib-esm/hooks/use-favorites.js +79 -0
  77. package/lib-esm/hooks/use-hover.d.ts +2 -0
  78. package/lib-esm/hooks/use-hover.js +27 -0
  79. package/lib-esm/index.d.ts +7 -0
  80. package/lib-esm/index.js +6 -0
  81. package/lib-esm/missing-type-exports.d.ts +47 -0
  82. package/lib-esm/missing-type-exports.js +2 -0
  83. package/lib-esm/styles.d.ts +8 -0
  84. package/lib-esm/styles.js +24 -0
  85. package/lib-esm/utils/embedded-link-mapper.d.ts +4 -0
  86. package/lib-esm/utils/embedded-link-mapper.js +57 -0
  87. package/lib-esm/utils/guide-render-instructions.d.ts +9 -0
  88. package/lib-esm/utils/guide-render-instructions.js +51 -0
  89. package/lib-esm/utils/index.d.ts +1 -0
  90. package/lib-esm/utils/index.js +1 -0
  91. package/package.json +48 -0
package/LICENSE.txt ADDED
@@ -0,0 +1,6 @@
1
+ Copyright © 2021, Telia Company AB. All rights reserved.
2
+
3
+ THIS PACKAGE AND CONTAINING SOFTWARE IS PART OF
4
+ THE HUMANY SERVICE. BY USING THIS SOFTWARE YOU
5
+ AGREE TO THE FOLLOWING TERMS AND CONDITIONS:
6
+ http://www.humany.com/legal
package/README.md ADDED
@@ -0,0 +1,3 @@
1
+ # `@telia-ace/knowledge-widget-ui`
2
+
3
+ Generic UI components for ACE knowledge widgets.
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ import { LinkProps } from '../missing-type-exports';
3
+ export declare type Props = Merge<LinkProps, {
4
+ parent: {
5
+ id: string;
6
+ title: string;
7
+ };
8
+ type: 'guide' | 'link' | 'default';
9
+ connection?: string;
10
+ }>;
11
+ declare const DialogLink: React.FC<Props>;
12
+ export default DialogLink;
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ var widget_ui_1 = require("@telia-ace/widget-ui");
18
+ var widget_utilities_1 = require("@telia-ace/widget-utilities");
19
+ var react_1 = __importDefault(require("react"));
20
+ var DialogLink = function (_a) {
21
+ var _b = _a.title, title = _b === void 0 ? '' : _b, className = _a.className, id = _a.id, parent = _a.parent, connection = _a.connection, type = _a.type, target = _a.target, href = _a.href, children = _a.children;
22
+ var props = {};
23
+ var _c = (0, widget_ui_1.useRouteData)(), name = _c.name, params = _c.params;
24
+ switch (type) {
25
+ case 'default':
26
+ case 'guide':
27
+ var parentId = parent.id, parentTitle = parent.title;
28
+ props.routeName = name;
29
+ props.params = (0, widget_utilities_1.createParams)(__assign(__assign({}, params), { guide: id, connection: id === parentId ? connection : undefined, uriName: id === parentId ? (0, widget_utilities_1.formatUrl)(parentTitle) : (0, widget_utilities_1.formatUrl)(title) }));
30
+ break;
31
+ case 'link':
32
+ props.href = href;
33
+ props.target = target;
34
+ break;
35
+ }
36
+ return (react_1.default.createElement(widget_ui_1.Link, __assign({ className: (0, widget_utilities_1.appendClassNames)(className, 'humany-dialog-link') }, props), children || (react_1.default.createElement(react_1.default.Fragment, null,
37
+ type === 'link' && react_1.default.createElement(widget_ui_1.Icon, { faIcon: "link" }),
38
+ react_1.default.createElement("span", null, title)))));
39
+ };
40
+ exports.default = DialogLink;
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import { Props as DialogLinkProps } from './dialog-link';
3
+ declare type Props = Merge<React.ComponentProps<'ul'>, {
4
+ dialog: DialogLinkProps[];
5
+ }>;
6
+ declare const _default: React.ForwardRefExoticComponent<Pick<Props, "dialog" | "key" | keyof React.HTMLAttributes<HTMLUListElement>> & React.RefAttributes<HTMLUListElement>>;
7
+ export default _default;
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __assign = (this && this.__assign) || function () {
7
+ __assign = Object.assign || function(t) {
8
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
9
+ s = arguments[i];
10
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11
+ t[p] = s[p];
12
+ }
13
+ return t;
14
+ };
15
+ return __assign.apply(this, arguments);
16
+ };
17
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
+ if (k2 === undefined) k2 = k;
19
+ var desc = Object.getOwnPropertyDescriptor(m, k);
20
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
21
+ desc = { enumerable: true, get: function() { return m[k]; } };
22
+ }
23
+ Object.defineProperty(o, k2, desc);
24
+ }) : (function(o, m, k, k2) {
25
+ if (k2 === undefined) k2 = k;
26
+ o[k2] = m[k];
27
+ }));
28
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
29
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
30
+ }) : function(o, v) {
31
+ o["default"] = v;
32
+ });
33
+ var __importStar = (this && this.__importStar) || function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ var __rest = (this && this.__rest) || function (s, e) {
41
+ var t = {};
42
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
43
+ t[p] = s[p];
44
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
45
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
46
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
47
+ t[p[i]] = s[p[i]];
48
+ }
49
+ return t;
50
+ };
51
+ var __importDefault = (this && this.__importDefault) || function (mod) {
52
+ return (mod && mod.__esModule) ? mod : { "default": mod };
53
+ };
54
+ Object.defineProperty(exports, "__esModule", { value: true });
55
+ var widget_ui_1 = require("@telia-ace/widget-ui");
56
+ var widget_utilities_1 = require("@telia-ace/widget-utilities");
57
+ var react_1 = __importStar(require("react"));
58
+ var styled_components_1 = __importDefault(require("styled-components"));
59
+ var dialog_link_1 = __importDefault(require("./dialog-link"));
60
+ exports.default = (0, react_1.forwardRef)(function (_a, ref) {
61
+ var className = _a.className, dialog = _a.dialog, other = __rest(_a, ["className", "dialog"]);
62
+ return !!dialog.length ? (react_1.default.createElement(StyledList, __assign({ className: (0, widget_utilities_1.appendClassNames)(className, 'humany-dialog'), items: dialog, renderItem: function (item) { return (react_1.default.createElement("li", { key: item.connection, "data-dialog": item.connection },
63
+ react_1.default.createElement(dialog_link_1.default, __assign({}, item)))); } }, other, { ref: ref }))) : null;
64
+ });
65
+ var StyledList = (0, styled_components_1.default)(widget_ui_1.List)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n ", "\n a {\n min-width: 150px;\n max-width: 400px;\n display: block;\n white-space: normal;\n ", "\n }\n\n i {\n margin: 0 ", " 0 0;\n }\n"], ["\n ", "\n a {\n min-width: 150px;\n max-width: 400px;\n display: block;\n white-space: normal;\n ", "\n }\n\n i {\n margin: 0 ", " 0 0;\n }\n"])), widget_ui_1.list, function (p) {
66
+ var _a;
67
+ return (0, widget_ui_1.invertedHoverButton)({
68
+ primaryColor: (_a = p.theme.colors) === null || _a === void 0 ? void 0 : _a.primary,
69
+ secondaryColor: '#FFFFFF',
70
+ });
71
+ }, function (p) { var _a; return (_a = p.theme.sizes) === null || _a === void 0 ? void 0 : _a.small; });
72
+ var templateObject_1;
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import { DrawerProps, ItemListProps } from '../missing-type-exports';
3
+ declare type Props = Merge<ItemListProps, DrawerProps>;
4
+ declare const DrawerList: React.FC<Props>;
5
+ export default DrawerList;
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __assign = (this && this.__assign) || function () {
7
+ __assign = Object.assign || function(t) {
8
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
9
+ s = arguments[i];
10
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11
+ t[p] = s[p];
12
+ }
13
+ return t;
14
+ };
15
+ return __assign.apply(this, arguments);
16
+ };
17
+ var __rest = (this && this.__rest) || function (s, e) {
18
+ var t = {};
19
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
20
+ t[p] = s[p];
21
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
22
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
23
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
24
+ t[p[i]] = s[p[i]];
25
+ }
26
+ return t;
27
+ };
28
+ var __importDefault = (this && this.__importDefault) || function (mod) {
29
+ return (mod && mod.__esModule) ? mod : { "default": mod };
30
+ };
31
+ Object.defineProperty(exports, "__esModule", { value: true });
32
+ var widget_ui_1 = require("@telia-ace/widget-ui");
33
+ var widget_utilities_1 = require("@telia-ace/widget-utilities");
34
+ var react_1 = __importDefault(require("react"));
35
+ var styled_components_1 = __importDefault(require("styled-components"));
36
+ var DrawerList = function (_a) {
37
+ var trigger = _a.trigger, header = _a.header, className = _a.className, animation = _a.animation, fullScreen = _a.fullScreen, onToggle = _a.onToggle, children = _a.children, ref = _a.ref, closeButtonAriaLabel = _a.closeButtonAriaLabel, other = __rest(_a, ["trigger", "header", "className", "animation", "fullScreen", "onToggle", "children", "ref", "closeButtonAriaLabel"]);
38
+ return (react_1.default.createElement(widget_ui_1.Drawer, { className: (0, widget_utilities_1.appendClassNames)(className, 'humany-drawer-list'), trigger: trigger, header: header, animation: animation, fullScreen: fullScreen, onToggle: onToggle, closeButtonAriaLabel: closeButtonAriaLabel },
39
+ react_1.default.createElement(StyledItemList, __assign({}, other), children)));
40
+ };
41
+ exports.default = DrawerList;
42
+ var StyledItemList = (0, styled_components_1.default)(widget_ui_1.ItemList)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n ", "\n font-family: ", ";\n padding: ", ";\n > ul > li {\n overflow: visible;\n font-weight: 300;\n font-size: ", ";\n }\n"], ["\n ", "\n font-family: ", ";\n padding: ", ";\n > ul > li {\n overflow: visible;\n font-weight: 300;\n font-size: ", ";\n }\n"])), widget_ui_1.itemList, function (p) { var _a; return (_a = p.theme.fonts) === null || _a === void 0 ? void 0 : _a.type; }, function (p) { var _a; return (_a = p.theme.sizes) === null || _a === void 0 ? void 0 : _a.medium; }, function (p) { var _a; return (_a = p.theme.fonts) === null || _a === void 0 ? void 0 : _a.normal; });
43
+ var templateObject_1;
@@ -0,0 +1,11 @@
1
+ import { ItemRenderer } from '@telia-ace/widget-ui';
2
+ import React from 'react';
3
+ declare type Props = {
4
+ trigger: React.ReactElement;
5
+ header?: React.ReactElement;
6
+ items?: any[];
7
+ renderItem?: ItemRenderer;
8
+ className?: string;
9
+ };
10
+ declare const DropdownActions: React.FC<Props>;
11
+ export default DropdownActions;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ var widget_ui_1 = require("@telia-ace/widget-ui");
11
+ var react_1 = __importDefault(require("react"));
12
+ var styled_components_1 = __importDefault(require("styled-components"));
13
+ var DropdownActions = function (_a) {
14
+ var items = _a.items, renderItem = _a.renderItem, trigger = _a.trigger, header = _a.header, children = _a.children;
15
+ return (react_1.default.createElement(widget_ui_1.Dropdown, { className: "humany-dropdown-actions", trigger: trigger },
16
+ react_1.default.createElement(Wrapper, null,
17
+ !!header && react_1.default.createElement(Header, null, header),
18
+ items && renderItem && (react_1.default.createElement(StyledList, { items: items, renderItem: renderItem })),
19
+ children)));
20
+ };
21
+ exports.default = DropdownActions;
22
+ var Wrapper = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n background: #fff;\n border: #ccc 1px solid;\n box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);\n font-family: ", ";\n font-size: ", ";\n"], ["\n background: #fff;\n border: #ccc 1px solid;\n box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);\n font-family: ", ";\n font-size: ", ";\n"])), function (p) { var _a; return (_a = p.theme.fonts) === null || _a === void 0 ? void 0 : _a.type; }, function (p) { var _a; return (_a = p.theme.fonts) === null || _a === void 0 ? void 0 : _a.normal; });
23
+ var Header = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n padding: ", ";\n padding-bottom: 0;\n font-size: ", ";\n font-weight: normal;\n white-space: nowrap;\n display: flex;\n align-items: center;\n\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n margin: 0;\n font-weight: normal;\n padding-bottom: 0;\n }\n\n svg,\n i {\n margin-right: ", ";\n }\n"], ["\n padding: ", ";\n padding-bottom: 0;\n font-size: ", ";\n font-weight: normal;\n white-space: nowrap;\n display: flex;\n align-items: center;\n\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n margin: 0;\n font-weight: normal;\n padding-bottom: 0;\n }\n\n svg,\n i {\n margin-right: ", ";\n }\n"])), function (p) { return p.theme.sizes.normal; }, function (p) { var _a; return (_a = p.theme.fonts) === null || _a === void 0 ? void 0 : _a.normal; }, function (p) { return p.theme.sizes.small; });
24
+ var StyledList = (0, styled_components_1.default)(widget_ui_1.List)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n list-style: none;\n padding: 0;\n margin: 0;\n padding: ", " 0;\n\n li {\n background: #fff;\n\n a {\n display: block;\n font-size: ", ";\n padding: ", ";\n cursor: pointer;\n color: #555;\n text-decoration: none;\n\n &:hover {\n background: #f9f9f9;\n color: ", ";\n }\n }\n }\n"], ["\n list-style: none;\n padding: 0;\n margin: 0;\n padding: ", " 0;\n\n li {\n background: #fff;\n\n a {\n display: block;\n font-size: ", ";\n padding: ", ";\n cursor: pointer;\n color: #555;\n text-decoration: none;\n\n &:hover {\n background: #f9f9f9;\n color: ", ";\n }\n }\n }\n"])), function (p) { return p.theme.sizes.small; }, function (p) { var _a; return (_a = p.theme.fonts) === null || _a === void 0 ? void 0 : _a.small; }, function (p) { var _a, _b; return "".concat((_a = p.theme.sizes) === null || _a === void 0 ? void 0 : _a.small, " ").concat((_b = p.theme.sizes) === null || _b === void 0 ? void 0 : _b.normal); }, function (p) { var _a; return (_a = p.theme.colors) === null || _a === void 0 ? void 0 : _a.primary; });
25
+ var templateObject_1, templateObject_2, templateObject_3;
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import { DropdownProps, ItemListProps } from '../missing-type-exports';
3
+ export declare type Props = Merge<DropdownProps, ItemListProps>;
4
+ declare const DropdownList: React.FC<Props>;
5
+ export default DropdownList;
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __assign = (this && this.__assign) || function () {
7
+ __assign = Object.assign || function(t) {
8
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
9
+ s = arguments[i];
10
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11
+ t[p] = s[p];
12
+ }
13
+ return t;
14
+ };
15
+ return __assign.apply(this, arguments);
16
+ };
17
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
+ if (k2 === undefined) k2 = k;
19
+ var desc = Object.getOwnPropertyDescriptor(m, k);
20
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
21
+ desc = { enumerable: true, get: function() { return m[k]; } };
22
+ }
23
+ Object.defineProperty(o, k2, desc);
24
+ }) : (function(o, m, k, k2) {
25
+ if (k2 === undefined) k2 = k;
26
+ o[k2] = m[k];
27
+ }));
28
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
29
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
30
+ }) : function(o, v) {
31
+ o["default"] = v;
32
+ });
33
+ var __importStar = (this && this.__importStar) || function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ var __rest = (this && this.__rest) || function (s, e) {
41
+ var t = {};
42
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
43
+ t[p] = s[p];
44
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
45
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
46
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
47
+ t[p[i]] = s[p[i]];
48
+ }
49
+ return t;
50
+ };
51
+ var __importDefault = (this && this.__importDefault) || function (mod) {
52
+ return (mod && mod.__esModule) ? mod : { "default": mod };
53
+ };
54
+ Object.defineProperty(exports, "__esModule", { value: true });
55
+ var widget_ui_1 = require("@telia-ace/widget-ui");
56
+ var widget_utilities_1 = require("@telia-ace/widget-utilities");
57
+ var react_1 = __importDefault(require("react"));
58
+ var styled_components_1 = __importStar(require("styled-components"));
59
+ var DropdownList = function (_a) {
60
+ var trigger = _a.trigger, className = _a.className, children = _a.children, closeButtonAriaLabel = _a.closeButtonAriaLabel, other = __rest(_a, ["trigger", "className", "children", "closeButtonAriaLabel"]);
61
+ return (react_1.default.createElement(widget_ui_1.Dropdown, { className: (0, widget_utilities_1.appendClassNames)(className, 'humany-dropdown-list'), closeButtonAriaLabel: closeButtonAriaLabel, trigger: trigger },
62
+ react_1.default.createElement(StyledItemList, __assign({}, other), children)));
63
+ };
64
+ exports.default = DropdownList;
65
+ var StyledItemList = (0, styled_components_1.default)(widget_ui_1.ItemList)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n ", "\n font-family: ", ";\n > div {\n ", "\n }\n > ul > li {\n overflow: visible;\n font-weight: 300;\n font-size: ", ";\n\n a {\n display: inline-block;\n\n @media (hover: hover) {\n &:hover {\n text-decoration: underline;\n }\n }\n }\n }\n"], ["\n ", "\n font-family: ", ";\n > div {\n ", "\n }\n > ul > li {\n overflow: visible;\n font-weight: 300;\n font-size: ", ";\n\n a {\n display: inline-block;\n\n @media (hover: hover) {\n &:hover {\n text-decoration: underline;\n }\n }\n }\n }\n"])), widget_ui_1.itemList, function (p) { var _a; return (_a = p.theme.fonts) === null || _a === void 0 ? void 0 : _a.type; }, (0, widget_ui_1.headingElement)('> h1', (0, styled_components_1.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n font-size: ", ";\n line-height: 1.2em;\n "], ["\n font-size: ", ";\n line-height: 1.2em;\n "])), function (p) { var _a; return (_a = p.theme.fonts) === null || _a === void 0 ? void 0 : _a.normal; })), function (p) { var _a; return (_a = p.theme.fonts) === null || _a === void 0 ? void 0 : _a.normal; });
66
+ var templateObject_1, templateObject_2;
@@ -0,0 +1,17 @@
1
+ import React from 'react';
2
+ import { FavoriteActions } from '../hooks';
3
+ declare type Props = {
4
+ isFavorite: boolean;
5
+ actions: FavoriteActions;
6
+ id: string;
7
+ addFavoriteTooltip?: string;
8
+ removeFavoriteCancelLabel?: string;
9
+ removeFavoriteConfirmLabel?: string;
10
+ removeFavoriteHeader?: string;
11
+ removeFavoriteLabel?: string;
12
+ removeFavoriteTooltip?: string;
13
+ buttonLabel?: string;
14
+ guideTitle?: string;
15
+ };
16
+ declare const FavoriteButton: React.FC<Props>;
17
+ export default FavoriteButton;
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7
+ if (k2 === undefined) k2 = k;
8
+ var desc = Object.getOwnPropertyDescriptor(m, k);
9
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
10
+ desc = { enumerable: true, get: function() { return m[k]; } };
11
+ }
12
+ Object.defineProperty(o, k2, desc);
13
+ }) : (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ o[k2] = m[k];
16
+ }));
17
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
18
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
19
+ }) : function(o, v) {
20
+ o["default"] = v;
21
+ });
22
+ var __importStar = (this && this.__importStar) || function (mod) {
23
+ if (mod && mod.__esModule) return mod;
24
+ var result = {};
25
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
26
+ __setModuleDefault(result, mod);
27
+ return result;
28
+ };
29
+ Object.defineProperty(exports, "__esModule", { value: true });
30
+ var widget_ui_1 = require("@telia-ace/widget-ui");
31
+ var react_1 = __importStar(require("react"));
32
+ var styled_components_1 = __importStar(require("styled-components"));
33
+ var styles_1 = require("../styles");
34
+ var FavoriteButton = function (_a) {
35
+ var addFavoriteTooltip = _a.addFavoriteTooltip, removeFavoriteCancelLabel = _a.removeFavoriteCancelLabel, removeFavoriteConfirmLabel = _a.removeFavoriteConfirmLabel, removeFavoriteHeader = _a.removeFavoriteHeader, removeFavoriteLabel = _a.removeFavoriteLabel, removeFavoriteTooltip = _a.removeFavoriteTooltip, id = _a.id, isFavorite = _a.isFavorite, guideTitle = _a.guideTitle, _b = _a.buttonLabel, buttonLabel = _b === void 0 ? '' : _b, _c = _a.actions, addFavorite = _c.addFavorite, removeFavorite = _c.removeFavorite;
36
+ var remove = (0, react_1.useCallback)(function () {
37
+ removeFavorite(id);
38
+ }, [id, removeFavorite]);
39
+ var add = (0, react_1.useCallback)(function () {
40
+ addFavorite(id);
41
+ }, [id, addFavorite]);
42
+ var tooltip = "".concat(isFavorite ? removeFavoriteTooltip : addFavoriteTooltip).concat(guideTitle ? ": \"".concat(guideTitle, "\"") : '');
43
+ return (react_1.default.createElement(react_1.default.Fragment, null, isFavorite ? (react_1.default.createElement(widget_ui_1.Confirm, { trigger: react_1.default.createElement(StyledButton, { className: "humany-favorite-button", title: tooltip, "aria-label": tooltip, "data-favorite": "true", "data-has-label": buttonLabel ? 'true' : 'false', "data-has-symbol": "true" },
44
+ react_1.default.createElement(widget_ui_1.SymbolBadge, { size: 16, symbol: { type: 'Svg', content: 'star-empty' } }),
45
+ buttonLabel && react_1.default.createElement(widget_ui_1.StyledText, null, buttonLabel)), onConfirm: remove, cancelLabel: removeFavoriteCancelLabel, confirmLabel: removeFavoriteConfirmLabel, header: removeFavoriteHeader, text: removeFavoriteLabel })) : (react_1.default.createElement(StyledButton, { className: "humany-favorite-button", title: tooltip, "aria-label": tooltip, onClick: add, "data-favorite": "false", "data-has-label": buttonLabel ? 'true' : 'false', "data-has-symbol": "true" },
46
+ react_1.default.createElement(widget_ui_1.SymbolBadge, { size: 16, symbol: { type: 'Svg', content: 'star-empty' } }),
47
+ buttonLabel && react_1.default.createElement(widget_ui_1.StyledText, null, buttonLabel)))));
48
+ };
49
+ exports.default = FavoriteButton;
50
+ var StyledButton = (0, styled_components_1.default)(styles_1.StyledListButton)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n grid-area: favorite;\n\n &:focus {\n ", ";\n }\n\n ", "\n"], ["\n grid-area: favorite;\n\n &:focus {\n ", ";\n }\n\n ", "\n"])), function (p) {
51
+ var _a;
52
+ return ((_a = p.theme.accessibility) === null || _a === void 0 ? void 0 : _a.isTabbing) && (0, styled_components_1.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n svg {\n ", "\n }\n "], ["\n svg {\n ", "\n }\n "])), function (p) {
53
+ var _a, _b;
54
+ return p['data-favorite'] === 'true'
55
+ ? "\n fill: transparent;\n\n path {\n fill: transparent;\n }\n "
56
+ : "\n fill: ".concat((_a = p.theme.colors) === null || _a === void 0 ? void 0 : _a.text, ";\n\n path {\n fill: ").concat((_b = p.theme.colors) === null || _b === void 0 ? void 0 : _b.text, ";\n }\n ");
57
+ });
58
+ }, function (p) {
59
+ var _a, _b, _c, _d, _e, _f, _g;
60
+ return ((_a = p.theme.colors) === null || _a === void 0 ? void 0 : _a.text) && (0, styled_components_1.css)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n svg {\n stroke: ", ";\n\n path {\n stroke: ", ";\n }\n\n ", "\n }\n\n &:hover {\n svg {\n ", "\n }\n }\n "], ["\n svg {\n stroke: ", ";\n\n path {\n stroke: ", ";\n }\n\n ", "\n }\n\n &:hover {\n svg {\n ", "\n }\n }\n "])), (_b = p.theme.colors) === null || _b === void 0 ? void 0 : _b.text, (_c = p.theme.colors) === null || _c === void 0 ? void 0 : _c.text, p['data-favorite'] === 'true' &&
61
+ "\n fill: ".concat((_d = p.theme.colors) === null || _d === void 0 ? void 0 : _d.text, ";\n\n path {\n fill: ").concat((_e = p.theme.colors) === null || _e === void 0 ? void 0 : _e.text, ";\n }\n "), p['data-favorite'] === 'true'
62
+ ? "\n fill: transparent;\n\n path {\n fill: transparent;\n }\n "
63
+ : "\n fill: ".concat((_f = p.theme.colors) === null || _f === void 0 ? void 0 : _f.text, ";\n\n path {\n fill: ").concat((_g = p.theme.colors) === null || _g === void 0 ? void 0 : _g.text, ";\n }\n "));
64
+ });
65
+ var templateObject_1, templateObject_2, templateObject_3;
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ export declare type Props = Merge<React.ComponentProps<'div'>, {
3
+ onFeedback?: (feedback: 'positive' | 'negative') => void;
4
+ positive?: string;
5
+ negative?: string;
6
+ header?: string;
7
+ selected?: 'positive' | 'negative';
8
+ direction?: 'horizontal' | 'vertical';
9
+ }>;
10
+ declare const _default: React.ForwardRefExoticComponent<Pick<Props, "header" | "key" | keyof React.HTMLAttributes<HTMLDivElement> | "selected" | "direction" | "positive" | "negative" | "onFeedback"> & React.RefAttributes<HTMLDivElement>>;
11
+ export default _default;
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __assign = (this && this.__assign) || function () {
7
+ __assign = Object.assign || function(t) {
8
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
9
+ s = arguments[i];
10
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11
+ t[p] = s[p];
12
+ }
13
+ return t;
14
+ };
15
+ return __assign.apply(this, arguments);
16
+ };
17
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
+ if (k2 === undefined) k2 = k;
19
+ var desc = Object.getOwnPropertyDescriptor(m, k);
20
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
21
+ desc = { enumerable: true, get: function() { return m[k]; } };
22
+ }
23
+ Object.defineProperty(o, k2, desc);
24
+ }) : (function(o, m, k, k2) {
25
+ if (k2 === undefined) k2 = k;
26
+ o[k2] = m[k];
27
+ }));
28
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
29
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
30
+ }) : function(o, v) {
31
+ o["default"] = v;
32
+ });
33
+ var __importStar = (this && this.__importStar) || function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ var __rest = (this && this.__rest) || function (s, e) {
41
+ var t = {};
42
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
43
+ t[p] = s[p];
44
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
45
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
46
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
47
+ t[p[i]] = s[p[i]];
48
+ }
49
+ return t;
50
+ };
51
+ Object.defineProperty(exports, "__esModule", { value: true });
52
+ var widget_ui_1 = require("@telia-ace/widget-ui");
53
+ var widget_utilities_1 = require("@telia-ace/widget-utilities");
54
+ var react_1 = __importStar(require("react"));
55
+ var styled_components_1 = __importStar(require("styled-components"));
56
+ exports.default = (0, react_1.forwardRef)(function (_a, ref) {
57
+ var _b = _a.onFeedback, onFeedback = _b === void 0 ? function () { } : _b, _c = _a.direction, direction = _c === void 0 ? 'horizontal' : _c, className = _a.className, header = _a.header, positive = _a.positive, negative = _a.negative, selected = _a.selected, other = __rest(_a, ["onFeedback", "direction", "className", "header", "positive", "negative", "selected"]);
58
+ return (react_1.default.createElement(Wrapper, __assign({ className: (0, widget_utilities_1.appendClassNames)(className, 'humany-feedback'), "data-direction": direction }, (0, widget_ui_1.convertToStringAttributes)(other), { ref: ref }),
59
+ !!header && react_1.default.createElement(Header, null, header),
60
+ react_1.default.createElement(FeedbackButton, { className: "humany-feedback-button", disabled: !!selected, "aria-pressed": selected === 'positive', "data-selected": selected === 'positive', "data-direction": direction, onClick: function () { return onFeedback('positive'); } },
61
+ react_1.default.createElement(widget_ui_1.Icon, { faIcon: "smile-o" }),
62
+ react_1.default.createElement("span", null, positive)),
63
+ react_1.default.createElement(FeedbackButton, { className: "humany-feedback-button", disabled: !!selected, "aria-pressed": selected === 'negative', "data-selected": selected === 'negative', "data-direction": direction, onClick: function () { return onFeedback('negative'); } },
64
+ react_1.default.createElement(widget_ui_1.Icon, { faIcon: "frown-o" }),
65
+ react_1.default.createElement("span", null, negative))));
66
+ });
67
+ var Header = (0, styled_components_1.default)(widget_ui_1.StyledText)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n font-weight: normal;\n margin: 0 0 ", ";\n font-size: ", ";\n display: block;\n"], ["\n font-weight: normal;\n margin: 0 0 ", ";\n font-size: ", ";\n display: block;\n"])), function (p) { var _a; return (_a = p.theme.sizes) === null || _a === void 0 ? void 0 : _a.normal; }, function (p) { var _a; return (_a = p.theme.fonts) === null || _a === void 0 ? void 0 : _a.normal; });
68
+ var FeedbackButton = (0, styled_components_1.default)(widget_ui_1.Button)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n display: inline-block;\n font-size: ", ";\n font-weight: 300;\n && {\n margin-right: ", ";\n }\n\n ", "\n\n ", "\n\n ", "\n\n i {\n margin: 0 ", " 0 0;\n }\n"], ["\n display: inline-block;\n font-size: ", ";\n font-weight: 300;\n && {\n margin-right: ", ";\n }\n\n ", "\n\n ", "\n\n ", "\n\n i {\n margin: 0 ", " 0 0;\n }\n"])), function (p) { var _a; return (_a = p.theme.fonts) === null || _a === void 0 ? void 0 : _a.normal; }, function (p) { var _a; return (_a = p.theme.sizes) === null || _a === void 0 ? void 0 : _a.large; }, function (p) {
69
+ var _a, _b;
70
+ return p['data-direction'] === 'horizontal' && (0, styled_components_1.css)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n width: 225px;\n max-width: calc(50% - ", " - ", ");\n "], ["\n width: 225px;\n max-width: calc(50% - ", " - ", ");\n "])), (_a = p.theme.sizes) === null || _a === void 0 ? void 0 : _a.large, (_b = p.theme.sizes) === null || _b === void 0 ? void 0 : _b.small);
71
+ }, function (p) {
72
+ return p['data-direction'] === 'vertical' && (0, styled_components_1.css)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n min-width: 190px;\n "], ["\n min-width: 190px;\n "])));
73
+ }, function (p) {
74
+ var _a;
75
+ return (0, widget_ui_1.invertedHoverButton)({
76
+ active: p['data-selected'],
77
+ primaryColor: (_a = p.theme.colors) === null || _a === void 0 ? void 0 : _a.primary,
78
+ secondaryColor: '#FFFFFF',
79
+ });
80
+ }, function (p) { var _a; return (_a = p.theme.sizes) === null || _a === void 0 ? void 0 : _a.small; });
81
+ var Wrapper = styled_components_1.default.div(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), function (p) {
82
+ return p['data-direction'] === 'vertical' && (0, styled_components_1.css)(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n > button {\n width: 100%;\n &:not(:last-child) {\n margin-bottom: ", ";\n }\n }\n "], ["\n > button {\n width: 100%;\n &:not(:last-child) {\n margin-bottom: ", ";\n }\n }\n "])), function (p) { var _a; return (_a = p.theme.sizes) === null || _a === void 0 ? void 0 : _a.normal; });
83
+ });
84
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6;
@@ -0,0 +1,46 @@
1
+ import { Guide } from '@telia-ace/knowledge-widget-core';
2
+ import { DispatchAction, ItemRenderer } from '@telia-ace/widget-ui';
3
+ import { Params } from '@telia-ace/widget-utilities';
4
+ import React from 'react';
5
+ import { ItemListProps } from '../missing-type-exports';
6
+ import { Props as MetadataProps } from './metadata';
7
+ declare type Routing = {
8
+ guide?: string;
9
+ page?: string;
10
+ };
11
+ declare type ParamMappers = {
12
+ guide?: (guide: Guide) => Params;
13
+ page?: () => Params;
14
+ };
15
+ export declare type Props = Merge<ItemListProps, {
16
+ paramMappers?: ParamMappers;
17
+ routing?: Routing;
18
+ pageLabel?: string;
19
+ symbolSize?: number;
20
+ renderItem?: ItemRenderer;
21
+ pageRole?: 'link' | 'button';
22
+ pageCaret?: 'right' | 'down';
23
+ showTags?: boolean;
24
+ showFavoriteToggle?: boolean;
25
+ addFavoriteTooltip?: string;
26
+ removeFavoriteCancelLabel?: string;
27
+ removeFavoriteConfirmLabel?: string;
28
+ removeFavoriteHeader?: string;
29
+ removeFavoriteLabel?: string;
30
+ removeFavoriteTooltip?: string;
31
+ metadata?: Partial<MetadataProps>;
32
+ dispatch?: DispatchAction;
33
+ localPaging?: boolean;
34
+ expandable?: boolean;
35
+ onItemClick?: (e: React.MouseEvent, guide: Guide) => void;
36
+ }>;
37
+ export declare const AccordionListItem: React.ForwardRefExoticComponent<{
38
+ title: string;
39
+ id: string;
40
+ route: string;
41
+ symbolSize?: number | undefined;
42
+ collapseUri?: string | undefined;
43
+ children?: React.ReactNode;
44
+ } & React.RefAttributes<HTMLLIElement>>;
45
+ declare const _default: React.ForwardRefExoticComponent<Pick<Props, "symbol" | "header" | "html" | "metadata" | "text" | "key" | "renderItem" | "items" | "renderLi" | keyof React.HTMLAttributes<HTMLDivElement> | "htmlParseInstruction" | "customHeader" | "ulProps" | "addFavoriteTooltip" | "removeFavoriteCancelLabel" | "removeFavoriteConfirmLabel" | "removeFavoriteHeader" | "removeFavoriteLabel" | "removeFavoriteTooltip" | "paramMappers" | "routing" | "pageLabel" | "symbolSize" | "pageRole" | "pageCaret" | "showTags" | "showFavoriteToggle" | "dispatch" | "localPaging" | "expandable" | "onItemClick"> & React.RefAttributes<HTMLDivElement>>;
46
+ export default _default;