@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/lib/index.d.ts ADDED
@@ -0,0 +1,7 @@
1
+ import { AccordionListItem, DialogLink, DialogList, DrawerList, DropdownActions, DropdownList, FavoriteButton, Feedback, GuideList, Loader, LoaderWrapper, Metadata } from './components';
2
+ import { FavoriteActions, useArrowKeys, useDebounce, useFavorites, useHover } from './hooks';
3
+ import { genericHtml, loadingOpacity, SmallCaret, StyledHeaderText, StyledListButton } from './styles';
4
+ import { guideRenderInstructions } from './utils';
5
+ export * from '@telia-ace/widget-ui';
6
+ export { useFavorites, useDebounce, useArrowKeys, useHover, guideRenderInstructions, Metadata, AccordionListItem, GuideList, DialogLink, DialogList, FavoriteButton, Feedback, Loader, LoaderWrapper, DrawerList, DropdownActions, DropdownList, genericHtml, SmallCaret, StyledHeaderText, StyledListButton, loadingOpacity, };
7
+ export type { FavoriteActions };
package/lib/index.js ADDED
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.loadingOpacity = exports.StyledListButton = exports.StyledHeaderText = exports.SmallCaret = exports.genericHtml = exports.DropdownList = exports.DropdownActions = exports.DrawerList = exports.LoaderWrapper = exports.Loader = exports.Feedback = exports.FavoriteButton = exports.DialogList = exports.DialogLink = exports.GuideList = exports.AccordionListItem = exports.Metadata = exports.guideRenderInstructions = exports.useHover = exports.useArrowKeys = exports.useDebounce = exports.useFavorites = void 0;
18
+ var components_1 = require("./components");
19
+ Object.defineProperty(exports, "AccordionListItem", { enumerable: true, get: function () { return components_1.AccordionListItem; } });
20
+ Object.defineProperty(exports, "DialogLink", { enumerable: true, get: function () { return components_1.DialogLink; } });
21
+ Object.defineProperty(exports, "DialogList", { enumerable: true, get: function () { return components_1.DialogList; } });
22
+ Object.defineProperty(exports, "DrawerList", { enumerable: true, get: function () { return components_1.DrawerList; } });
23
+ Object.defineProperty(exports, "DropdownActions", { enumerable: true, get: function () { return components_1.DropdownActions; } });
24
+ Object.defineProperty(exports, "DropdownList", { enumerable: true, get: function () { return components_1.DropdownList; } });
25
+ Object.defineProperty(exports, "FavoriteButton", { enumerable: true, get: function () { return components_1.FavoriteButton; } });
26
+ Object.defineProperty(exports, "Feedback", { enumerable: true, get: function () { return components_1.Feedback; } });
27
+ Object.defineProperty(exports, "GuideList", { enumerable: true, get: function () { return components_1.GuideList; } });
28
+ Object.defineProperty(exports, "Loader", { enumerable: true, get: function () { return components_1.Loader; } });
29
+ Object.defineProperty(exports, "LoaderWrapper", { enumerable: true, get: function () { return components_1.LoaderWrapper; } });
30
+ Object.defineProperty(exports, "Metadata", { enumerable: true, get: function () { return components_1.Metadata; } });
31
+ var hooks_1 = require("./hooks");
32
+ Object.defineProperty(exports, "useArrowKeys", { enumerable: true, get: function () { return hooks_1.useArrowKeys; } });
33
+ Object.defineProperty(exports, "useDebounce", { enumerable: true, get: function () { return hooks_1.useDebounce; } });
34
+ Object.defineProperty(exports, "useFavorites", { enumerable: true, get: function () { return hooks_1.useFavorites; } });
35
+ Object.defineProperty(exports, "useHover", { enumerable: true, get: function () { return hooks_1.useHover; } });
36
+ var styles_1 = require("./styles");
37
+ Object.defineProperty(exports, "genericHtml", { enumerable: true, get: function () { return styles_1.genericHtml; } });
38
+ Object.defineProperty(exports, "loadingOpacity", { enumerable: true, get: function () { return styles_1.loadingOpacity; } });
39
+ Object.defineProperty(exports, "SmallCaret", { enumerable: true, get: function () { return styles_1.SmallCaret; } });
40
+ Object.defineProperty(exports, "StyledHeaderText", { enumerable: true, get: function () { return styles_1.StyledHeaderText; } });
41
+ Object.defineProperty(exports, "StyledListButton", { enumerable: true, get: function () { return styles_1.StyledListButton; } });
42
+ var utils_1 = require("./utils");
43
+ Object.defineProperty(exports, "guideRenderInstructions", { enumerable: true, get: function () { return utils_1.guideRenderInstructions; } });
44
+ __exportStar(require("@telia-ace/widget-ui"), exports);
@@ -0,0 +1,47 @@
1
+ import { DrawerAnimationType, HtmlParseInstruction, ItemRenderer } from '@telia-ace/widget-ui';
2
+ import { ReactElement } from 'react';
3
+ export declare type LinkProps = Merge<React.ComponentProps<'a'>, {
4
+ disabled?: boolean;
5
+ routeName?: string;
6
+ params?: {
7
+ [key: string]: any;
8
+ };
9
+ to?: string;
10
+ }>;
11
+ export declare type DrawerProps = {
12
+ header?: string | React.ReactNode;
13
+ className?: string;
14
+ animation?: {
15
+ type: DrawerAnimationType;
16
+ duration?: number;
17
+ };
18
+ trigger: React.ReactElement;
19
+ fullScreen?: boolean;
20
+ closeButtonAriaLabel?: string;
21
+ onToggle?: (visible: boolean) => void;
22
+ };
23
+ export declare type ListProps = Merge<React.ComponentProps<'ul'>, {
24
+ renderItem: ItemRenderer;
25
+ items: any[];
26
+ renderLi?: boolean;
27
+ }>;
28
+ export declare type HtmlProps = Merge<React.ComponentProps<'div'>, {
29
+ html: string;
30
+ htmlParseInstruction?: HtmlParseInstruction;
31
+ }>;
32
+ export declare type ParagraphProps = Merge<HtmlProps, {
33
+ text?: string;
34
+ html?: string;
35
+ header?: string;
36
+ symbol?: Symbol;
37
+ }>;
38
+ export declare type ItemListProps = Merge<ListProps, ParagraphProps> & {
39
+ customHeader?: any;
40
+ ulProps?: any;
41
+ };
42
+ export declare type DropdownProps = {
43
+ className?: string;
44
+ children?: any;
45
+ trigger: ReactElement;
46
+ closeButtonAriaLabel?: string;
47
+ };
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ // SHOULD BE EXPORTED FROM @telia-ace/widget-ui
@@ -0,0 +1,8 @@
1
+ /// <reference types="react" />
2
+ export declare const loadingOpacity: import("styled-components").FlattenInterpolation<import("styled-components").ThemedStyledProps<{
3
+ 'data-loading': boolean;
4
+ }, any>>;
5
+ export declare const genericHtml: import("styled-components").FlattenInterpolation<any>;
6
+ export declare const SmallCaret: import("styled-components").StyledComponent<import("react").FC<import("@telia-ace/widget-ui").IconProps>, any, {}, never>;
7
+ export declare const StyledHeaderText: import("styled-components").StyledComponent<import("react").FC<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>>, any, {}, never>;
8
+ export declare const StyledListButton: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<Pick<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "key" | keyof import("react").ButtonHTMLAttributes<HTMLButtonElement>> & import("react").RefAttributes<HTMLButtonElement>>, any, any, never>;
package/lib/styles.js ADDED
@@ -0,0 +1,50 @@
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
+ exports.StyledListButton = exports.StyledHeaderText = exports.SmallCaret = exports.genericHtml = exports.loadingOpacity = void 0;
31
+ var widget_ui_1 = require("@telia-ace/widget-ui");
32
+ var styled_components_1 = __importStar(require("styled-components"));
33
+ var loader_1 = require("./components/loader");
34
+ exports.loadingOpacity = (0, styled_components_1.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n ", ";\n ", "\n > * {\n transition: 200ms ease-out opacity;\n opacity: ", ";\n }\n ", " {\n opacity: ", ";\n }\n"], ["\n ", ";\n ", "\n > * {\n transition: 200ms ease-out opacity;\n opacity: ", ";\n }\n ", " {\n opacity: ", ";\n }\n"])), function (p) { return p['data-loading'] && 'position: relative;'; }, function (p) { return p['data-loading'] && 'min-height: 150px;'; }, function (p) { return (p['data-loading'] ? '0.5' : '1'); }, loader_1.Wrapper, function (p) { return (p['data-loading'] ? '1' : '0'); });
35
+ exports.genericHtml = (0, styled_components_1.css)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n font-size: ", ";\n font-weight: 300;\n line-height: 1.5em;\n color: ", ";\n\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n word-break: break-word;\n &:first-child {\n margin-top: 0;\n }\n &:only-child {\n margin: 0;\n }\n &:last-child {\n margin-bottom: 0;\n }\n }\n\n a {\n color: ", ";\n &:focus {\n ", ";\n }\n }\n\n img {\n max-width: 100% !important;\n height: auto !important;\n }\n\n p {\n word-break: break-word;\n margin: ", " 0;\n }\n\n p:first-child {\n margin: 0 0 ", ";\n }\n\n p:last-child {\n margin: ", " 0 0;\n }\n\n p:only-child {\n margin: 0;\n }\n"], ["\n font-size: ", ";\n font-weight: 300;\n line-height: 1.5em;\n color: ", ";\n\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n word-break: break-word;\n &:first-child {\n margin-top: 0;\n }\n &:only-child {\n margin: 0;\n }\n &:last-child {\n margin-bottom: 0;\n }\n }\n\n a {\n color: ", ";\n &:focus {\n ", ";\n }\n }\n\n img {\n max-width: 100% !important;\n height: auto !important;\n }\n\n p {\n word-break: break-word;\n margin: ", " 0;\n }\n\n p:first-child {\n margin: 0 0 ", ";\n }\n\n p:last-child {\n margin: ", " 0 0;\n }\n\n p:only-child {\n margin: 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.colors) === null || _a === void 0 ? void 0 : _a.text; }, function (p) { var _a; return (_a = p.theme.colors) === null || _a === void 0 ? void 0 : _a.link; }, function (p) { var _a; return ((_a = p.theme.accessibility) === null || _a === void 0 ? void 0 : _a.isTabbing) && widget_ui_1.linkTabStyle; }, 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.sizes) === null || _a === void 0 ? void 0 : _a.normal; }, function (p) { var _a; return (_a = p.theme.sizes) === null || _a === void 0 ? void 0 : _a.normal; });
36
+ exports.SmallCaret = (0, styled_components_1.default)(widget_ui_1.Icon)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n && {\n font-size: ", ";\n }\n width: 1.2em;\n"], ["\n && {\n font-size: ", ";\n }\n width: 1.2em;\n"])), function (p) { var _a; return (_a = p.theme.fonts) === null || _a === void 0 ? void 0 : _a.small; });
37
+ exports.StyledHeaderText = (0, styled_components_1.default)(widget_ui_1.Text)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n font-size: ", ";\n font-weight: normal;\n line-height: 1.2em;\n color: ", ";\n"], ["\n font-size: ", ";\n font-weight: normal;\n line-height: 1.2em;\n color: ", ";\n"])), function (p) { var _a; return (_a = p.theme.fonts) === null || _a === void 0 ? void 0 : _a.medium; }, function (p) { var _a; return (_a = p.theme.colors) === null || _a === void 0 ? void 0 : _a.text; });
38
+ exports.StyledListButton = (0, styled_components_1.default)(widget_ui_1.Button)(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n display: flex;\n align-items: center;\n\n ", "\n\n &:focus {\n ", ";\n }\n\n span {\n flex: 1;\n font-weight: 300;\n }\n"], ["\n display: flex;\n align-items: center;\n\n ", "\n\n &:focus {\n ", ";\n }\n\n span {\n flex: 1;\n font-weight: 300;\n }\n"])), function (p) {
39
+ var _a;
40
+ return p['data-has-label'] === 'true' &&
41
+ p['data-has-symbol'] === 'true' &&
42
+ "\n svg, i {\n margin: 0 ".concat((_a = p.theme.sizes) === null || _a === void 0 ? void 0 : _a.small, " 0 0;\n }\n ");
43
+ }, function (p) {
44
+ var _a;
45
+ return ((_a = p.theme.accessibility) === null || _a === void 0 ? void 0 : _a.isTabbing) && (0, styled_components_1.css)(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n ", "\n\n svg, i {\n ", "\n }\n "], ["\n ", "\n\n svg, i {\n ", "\n }\n "])), function (p) { return p['data-has-label'] === 'true' && widget_ui_1.paddedBorderTabStyle; }, function (p) {
46
+ return p['data-has-label'] === 'false' &&
47
+ p['data-has-symbol'] === 'true' && (0, styled_components_1.css)(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n ", "\n box-sizing: content-box;\n "], ["\n ", "\n box-sizing: content-box;\n "])), widget_ui_1.paddedBorderTabStyle);
48
+ });
49
+ });
50
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7;
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { Container } from '@webprovisions/platform';
3
+ declare const embeddedLinkMapper: (container: Container) => ({ children, ...props }: any) => JSX.Element;
4
+ export default embeddedLinkMapper;
@@ -0,0 +1,62 @@
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 __rest = (this && this.__rest) || function (s, e) {
14
+ var t = {};
15
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
+ t[p] = s[p];
17
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
+ t[p[i]] = s[p[i]];
21
+ }
22
+ return t;
23
+ };
24
+ var __importDefault = (this && this.__importDefault) || function (mod) {
25
+ return (mod && mod.__esModule) ? mod : { "default": mod };
26
+ };
27
+ Object.defineProperty(exports, "__esModule", { value: true });
28
+ var widget_ui_1 = require("@telia-ace/widget-ui");
29
+ var react_1 = __importDefault(require("react"));
30
+ // Determine if href starts with a hashtag
31
+ var isAnchorLink = function (href) {
32
+ var re = new RegExp('^#', 'i');
33
+ var match = re.test(href);
34
+ return match;
35
+ };
36
+ var embeddedLinkMapper = function (container) {
37
+ return function (_a) {
38
+ var children = _a.children, props = __rest(_a, ["children"]);
39
+ var _b = container.get('$widget'), implementation = _b.implementation, currentWidgetName = _b.name;
40
+ var _c = props.href, href = _c === void 0 ? '' : _c;
41
+ if (isAnchorLink(href)) {
42
+ return (react_1.default.createElement(widget_ui_1.AnchorLink, { smooth: true, to: href }, children));
43
+ }
44
+ var escapedBindings = implementation.bindings
45
+ .map(function (binding) { return binding.replace(/\./g, '\\.'); })
46
+ .join('|');
47
+ var regexp = new RegExp("^((http[s]?:)?//)?(".concat(escapedBindings, ")/([^\\s]+)"));
48
+ var expArray = regexp.exec(href);
49
+ if (expArray && expArray.length >= 4) {
50
+ var targetWidgetName = expArray[4];
51
+ var targetWidget = implementation.widgets.get(targetWidgetName);
52
+ // blob links should not be treated as a widget link
53
+ if (targetWidget &&
54
+ !targetWidgetName.startsWith('blob?') &&
55
+ !targetWidgetName.startsWith(currentWidgetName)) {
56
+ return react_1.default.createElement(widget_ui_1.WidgetLink, { widgetName: targetWidgetName }, children);
57
+ }
58
+ }
59
+ return react_1.default.createElement("a", __assign({}, props), children);
60
+ };
61
+ };
62
+ exports.default = embeddedLinkMapper;
@@ -0,0 +1,9 @@
1
+ import { Container } from '@webprovisions/platform';
2
+ import React from 'react';
3
+ declare const guideRenderInstructions: (container: Container, dialog?: any[]) => {
4
+ transform: {
5
+ img: (attrs: React.DetailedHTMLProps<React.HtmlHTMLAttributes<HTMLImageElement>, HTMLImageElement>) => JSX.Element;
6
+ a: (attr: any) => JSX.Element;
7
+ };
8
+ };
9
+ export default guideRenderInstructions;
@@ -0,0 +1,56 @@
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 __rest = (this && this.__rest) || function (s, e) {
14
+ var t = {};
15
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
+ t[p] = s[p];
17
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
+ t[p[i]] = s[p[i]];
21
+ }
22
+ return t;
23
+ };
24
+ var __importDefault = (this && this.__importDefault) || function (mod) {
25
+ return (mod && mod.__esModule) ? mod : { "default": mod };
26
+ };
27
+ Object.defineProperty(exports, "__esModule", { value: true });
28
+ var widget_ui_1 = require("@telia-ace/widget-ui");
29
+ var react_1 = __importDefault(require("react"));
30
+ var components_1 = require("../components");
31
+ var embedded_link_mapper_1 = __importDefault(require("./embedded-link-mapper"));
32
+ var imageLightboxRenderer = function (attrs) { return react_1.default.createElement(widget_ui_1.Lightbox, { attrs: attrs }); };
33
+ var guideRenderInstructions = function (container, dialog) {
34
+ if (dialog === void 0) { dialog = []; }
35
+ return {
36
+ transform: {
37
+ img: imageLightboxRenderer,
38
+ a: function (attr) {
39
+ var children = attr.children, otherAttr = __rest(attr, ["children"]);
40
+ var connectionId = otherAttr['data-target'];
41
+ if (connectionId && dialog.length) {
42
+ var item = dialog.find(function (_a) {
43
+ var connection = _a.connection;
44
+ return connection === connectionId;
45
+ });
46
+ if (item) {
47
+ return react_1.default.createElement(components_1.DialogLink, __assign({}, item), children);
48
+ }
49
+ }
50
+ var defaultInstructions = (0, embedded_link_mapper_1.default)(container);
51
+ return defaultInstructions(attr);
52
+ },
53
+ },
54
+ };
55
+ };
56
+ exports.default = guideRenderInstructions;
@@ -0,0 +1 @@
1
+ export { default as guideRenderInstructions } from './guide-render-instructions';
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.guideRenderInstructions = void 0;
7
+ var guide_render_instructions_1 = require("./guide-render-instructions");
8
+ Object.defineProperty(exports, "guideRenderInstructions", { enumerable: true, get: function () { return __importDefault(guide_render_instructions_1).default; } });
@@ -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,35 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ import { Icon, Link, useRouteData } from '@telia-ace/widget-ui';
13
+ import { appendClassNames, createParams, formatUrl } from '@telia-ace/widget-utilities';
14
+ import React from 'react';
15
+ var DialogLink = function (_a) {
16
+ 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;
17
+ var props = {};
18
+ var _c = useRouteData(), name = _c.name, params = _c.params;
19
+ switch (type) {
20
+ case 'default':
21
+ case 'guide':
22
+ var parentId = parent.id, parentTitle = parent.title;
23
+ props.routeName = name;
24
+ props.params = createParams(__assign(__assign({}, params), { guide: id, connection: id === parentId ? connection : undefined, uriName: id === parentId ? formatUrl(parentTitle) : formatUrl(title) }));
25
+ break;
26
+ case 'link':
27
+ props.href = href;
28
+ props.target = target;
29
+ break;
30
+ }
31
+ return (React.createElement(Link, __assign({ className: appendClassNames(className, 'humany-dialog-link') }, props), children || (React.createElement(React.Fragment, null,
32
+ type === 'link' && React.createElement(Icon, { faIcon: "link" }),
33
+ React.createElement("span", null, title)))));
34
+ };
35
+ export 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,44 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ var __assign = (this && this.__assign) || function () {
6
+ __assign = Object.assign || function(t) {
7
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
8
+ s = arguments[i];
9
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
10
+ t[p] = s[p];
11
+ }
12
+ return t;
13
+ };
14
+ return __assign.apply(this, arguments);
15
+ };
16
+ var __rest = (this && this.__rest) || function (s, e) {
17
+ var t = {};
18
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
19
+ t[p] = s[p];
20
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
21
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
22
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
23
+ t[p[i]] = s[p[i]];
24
+ }
25
+ return t;
26
+ };
27
+ import { invertedHoverButton, List, list } from '@telia-ace/widget-ui';
28
+ import { appendClassNames } from '@telia-ace/widget-utilities';
29
+ import React, { forwardRef } from 'react';
30
+ import styled from 'styled-components';
31
+ import DialogLink from './dialog-link';
32
+ export default forwardRef(function (_a, ref) {
33
+ var className = _a.className, dialog = _a.dialog, other = __rest(_a, ["className", "dialog"]);
34
+ return !!dialog.length ? (React.createElement(StyledList, __assign({ className: appendClassNames(className, 'humany-dialog'), items: dialog, renderItem: function (item) { return (React.createElement("li", { key: item.connection, "data-dialog": item.connection },
35
+ React.createElement(DialogLink, __assign({}, item)))); } }, other, { ref: ref }))) : null;
36
+ });
37
+ var StyledList = styled(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"])), list, function (p) {
38
+ var _a;
39
+ return invertedHoverButton({
40
+ primaryColor: (_a = p.theme.colors) === null || _a === void 0 ? void 0 : _a.primary,
41
+ secondaryColor: '#FFFFFF',
42
+ });
43
+ }, function (p) { var _a; return (_a = p.theme.sizes) === null || _a === void 0 ? void 0 : _a.small; });
44
+ 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,38 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ var __assign = (this && this.__assign) || function () {
6
+ __assign = Object.assign || function(t) {
7
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
8
+ s = arguments[i];
9
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
10
+ t[p] = s[p];
11
+ }
12
+ return t;
13
+ };
14
+ return __assign.apply(this, arguments);
15
+ };
16
+ var __rest = (this && this.__rest) || function (s, e) {
17
+ var t = {};
18
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
19
+ t[p] = s[p];
20
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
21
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
22
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
23
+ t[p[i]] = s[p[i]];
24
+ }
25
+ return t;
26
+ };
27
+ import { Drawer, ItemList, itemList } from '@telia-ace/widget-ui';
28
+ import { appendClassNames } from '@telia-ace/widget-utilities';
29
+ import React from 'react';
30
+ import styled from 'styled-components';
31
+ var DrawerList = function (_a) {
32
+ 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"]);
33
+ return (React.createElement(Drawer, { className: appendClassNames(className, 'humany-drawer-list'), trigger: trigger, header: header, animation: animation, fullScreen: fullScreen, onToggle: onToggle, closeButtonAriaLabel: closeButtonAriaLabel },
34
+ React.createElement(StyledItemList, __assign({}, other), children)));
35
+ };
36
+ export default DrawerList;
37
+ var StyledItemList = styled(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"])), 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; });
38
+ 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,20 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ import { Dropdown, List } from '@telia-ace/widget-ui';
6
+ import React from 'react';
7
+ import styled from 'styled-components';
8
+ var DropdownActions = function (_a) {
9
+ var items = _a.items, renderItem = _a.renderItem, trigger = _a.trigger, header = _a.header, children = _a.children;
10
+ return (React.createElement(Dropdown, { className: "humany-dropdown-actions", trigger: trigger },
11
+ React.createElement(Wrapper, null,
12
+ !!header && React.createElement(Header, null, header),
13
+ items && renderItem && (React.createElement(StyledList, { items: items, renderItem: renderItem })),
14
+ children)));
15
+ };
16
+ export default DropdownActions;
17
+ var Wrapper = styled.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; });
18
+ var Header = styled.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; });
19
+ var StyledList = styled(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; });
20
+ 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,38 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ var __assign = (this && this.__assign) || function () {
6
+ __assign = Object.assign || function(t) {
7
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
8
+ s = arguments[i];
9
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
10
+ t[p] = s[p];
11
+ }
12
+ return t;
13
+ };
14
+ return __assign.apply(this, arguments);
15
+ };
16
+ var __rest = (this && this.__rest) || function (s, e) {
17
+ var t = {};
18
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
19
+ t[p] = s[p];
20
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
21
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
22
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
23
+ t[p[i]] = s[p[i]];
24
+ }
25
+ return t;
26
+ };
27
+ import { Dropdown, headingElement, ItemList, itemList } from '@telia-ace/widget-ui';
28
+ import { appendClassNames } from '@telia-ace/widget-utilities';
29
+ import React from 'react';
30
+ import styled, { css } from 'styled-components';
31
+ var DropdownList = function (_a) {
32
+ var trigger = _a.trigger, className = _a.className, children = _a.children, closeButtonAriaLabel = _a.closeButtonAriaLabel, other = __rest(_a, ["trigger", "className", "children", "closeButtonAriaLabel"]);
33
+ return (React.createElement(Dropdown, { className: appendClassNames(className, 'humany-dropdown-list'), closeButtonAriaLabel: closeButtonAriaLabel, trigger: trigger },
34
+ React.createElement(StyledItemList, __assign({}, other), children)));
35
+ };
36
+ export default DropdownList;
37
+ var StyledItemList = styled(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"])), itemList, function (p) { var _a; return (_a = p.theme.fonts) === null || _a === void 0 ? void 0 : _a.type; }, headingElement('> h1', 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; });
38
+ 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;