@telia-ace/widget-components-widget-header 1.0.3 → 1.0.6
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/{lib-esm → dist}/avatar.d.ts +0 -0
- package/{lib-esm → dist}/back.d.ts +0 -0
- package/{lib-esm → dist}/close.d.ts +0 -0
- package/{lib-esm → dist}/index.d.ts +0 -0
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -0
- package/dist/index2.js +114 -0
- package/dist/index2.js.map +1 -0
- package/{lib-esm → dist}/minimize.d.ts +0 -0
- package/{lib-esm → dist}/node.d.ts +0 -0
- package/{lib-esm → dist}/utils.d.ts +0 -0
- package/{lib-esm → dist}/widget-header-component.d.ts +0 -0
- package/{lib-esm → dist}/widget-header.d.ts +0 -0
- package/dist/widget-header.js +291 -0
- package/dist/widget-header.js.map +1 -0
- package/package.json +14 -13
- package/lib/avatar.d.ts +0 -7
- package/lib/avatar.js +0 -80
- package/lib/back.d.ts +0 -7
- package/lib/back.js +0 -13
- package/lib/close.d.ts +0 -7
- package/lib/close.js +0 -14
- package/lib/index.d.ts +0 -2
- package/lib/index.js +0 -7
- package/lib/minimize.d.ts +0 -7
- package/lib/minimize.js +0 -14
- package/lib/node.d.ts +0 -7
- package/lib/node.js +0 -91
- package/lib/utils.d.ts +0 -9
- package/lib/utils.js +0 -90
- package/lib/widget-header-component.d.ts +0 -28
- package/lib/widget-header-component.js +0 -102
- package/lib/widget-header.d.ts +0 -7
- package/lib/widget-header.js +0 -99
- package/lib-esm/avatar.js +0 -52
- package/lib-esm/back.js +0 -8
- package/lib-esm/close.js +0 -9
- package/lib-esm/index.js +0 -2
- package/lib-esm/minimize.js +0 -9
- package/lib-esm/node.js +0 -63
- package/lib-esm/utils.js +0 -84
- package/lib-esm/widget-header-component.js +0 -77
- package/lib-esm/widget-header.js +0 -71
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
package/dist/index2.js
ADDED
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { createEventSubscriber } from "@telia-ace/widget-core";
|
|
2
|
+
import { createReactComponent } from "@telia-ace/widget-ui";
|
|
3
|
+
import { removeNullAndUndefinedValues } from "@telia-ace/widget-utilities";
|
|
4
|
+
const calculateMargin = (leftNodes, rightNodes, textAlign) => {
|
|
5
|
+
if (textAlign !== "center") {
|
|
6
|
+
return {};
|
|
7
|
+
}
|
|
8
|
+
const calculate = (nodes) => {
|
|
9
|
+
return nodes.reduce((acc, node) => {
|
|
10
|
+
const [padding] = node.padding.split("px");
|
|
11
|
+
const [size] = node.size.split("px");
|
|
12
|
+
return acc + (+size + +padding * 2);
|
|
13
|
+
}, 0);
|
|
14
|
+
};
|
|
15
|
+
const leftSize = calculate(leftNodes);
|
|
16
|
+
const rightSize = calculate(rightNodes);
|
|
17
|
+
const total = leftSize - rightSize;
|
|
18
|
+
if (total === 0) {
|
|
19
|
+
return {};
|
|
20
|
+
}
|
|
21
|
+
const direction = leftSize > rightSize ? "right" : "left";
|
|
22
|
+
return {
|
|
23
|
+
[direction]: `${Math.abs(total)}px`
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
const createNodes = (actions) => {
|
|
27
|
+
return Object.keys(actions).reduce((acc, key) => {
|
|
28
|
+
const node = actions[key];
|
|
29
|
+
if (!node) {
|
|
30
|
+
return acc;
|
|
31
|
+
}
|
|
32
|
+
const [left, right] = acc;
|
|
33
|
+
const arr = node.position === "left" ? left : right;
|
|
34
|
+
actions[key].symbol;
|
|
35
|
+
arr.push({
|
|
36
|
+
symbol: node.symbol && typeof node.symbol === "string" ? { type: "Uri", content: node.symbol } : node.symbol,
|
|
37
|
+
type: key,
|
|
38
|
+
padding: node.padding || "10px",
|
|
39
|
+
label: node.label,
|
|
40
|
+
size: node.size || "64px",
|
|
41
|
+
tooltip: node.tooltip,
|
|
42
|
+
order: node.order || 0,
|
|
43
|
+
show: node.show
|
|
44
|
+
});
|
|
45
|
+
return acc;
|
|
46
|
+
}, [[], []]);
|
|
47
|
+
};
|
|
48
|
+
const isOnInitialRoute = (container) => container.getAsync("router").then((router) => {
|
|
49
|
+
if (!router) {
|
|
50
|
+
return true;
|
|
51
|
+
}
|
|
52
|
+
const initialRoute = router.getInitialRoute();
|
|
53
|
+
const { name, params } = router.getRouteData();
|
|
54
|
+
removeNullAndUndefinedValues(params);
|
|
55
|
+
if ((initialRoute == null ? void 0 : initialRoute.name) !== name || Object.keys(params).length > 0) {
|
|
56
|
+
return false;
|
|
57
|
+
}
|
|
58
|
+
return true;
|
|
59
|
+
});
|
|
60
|
+
const WidgetHeaderComponent = (container) => {
|
|
61
|
+
return createReactComponent(container, "widget-header", import("./widget-header.js"), (component) => {
|
|
62
|
+
const { events } = container.get("$widget");
|
|
63
|
+
const [subscribe, unsubscribe] = createEventSubscriber(events);
|
|
64
|
+
const { actions = {} } = component.properties();
|
|
65
|
+
component.actions.create("close", (data, options) => {
|
|
66
|
+
if (options.preventDefault) {
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
const widget = container.get("$widget");
|
|
70
|
+
return widget.invoke("close");
|
|
71
|
+
});
|
|
72
|
+
component.actions.create("back", (data, options) => {
|
|
73
|
+
if (options.preventDefault) {
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
return container.getAsync("router").then((router) => {
|
|
77
|
+
router.goBack();
|
|
78
|
+
});
|
|
79
|
+
});
|
|
80
|
+
component.properties((properties) => {
|
|
81
|
+
const { actions: actions2 = {} } = properties;
|
|
82
|
+
if (!actions2.back) {
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
Object.keys(actions2).forEach((key) => {
|
|
86
|
+
const node = actions2[key];
|
|
87
|
+
if (key === "back") {
|
|
88
|
+
node.show = properties.showBack;
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
return { actions: actions2 };
|
|
92
|
+
});
|
|
93
|
+
component.actions.create("show-back", (showBack) => {
|
|
94
|
+
component.writeProperties({ showBack });
|
|
95
|
+
});
|
|
96
|
+
if (actions.back) {
|
|
97
|
+
const showBack = () => isOnInitialRoute(container).then((onInitialRoute) => component.actions.dispatch("show-back", !onInitialRoute));
|
|
98
|
+
showBack();
|
|
99
|
+
subscribe("router:changed", showBack);
|
|
100
|
+
}
|
|
101
|
+
component.actions.create("minimize", (data, options) => {
|
|
102
|
+
if (options.preventDefault) {
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
const widget = container.get("$widget");
|
|
106
|
+
return widget.invoke("hide");
|
|
107
|
+
});
|
|
108
|
+
return () => {
|
|
109
|
+
unsubscribe();
|
|
110
|
+
};
|
|
111
|
+
});
|
|
112
|
+
};
|
|
113
|
+
export { WidgetHeaderComponent as W, calculateMargin as a, createNodes as c };
|
|
114
|
+
//# sourceMappingURL=index2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index2.js","sources":["../src/utils.ts","../src/widget-header-component.ts"],"sourcesContent":["import { RoutingService } from '@telia-ace/widget-routing';\r\nimport { removeNullAndUndefinedValues } from '@telia-ace/widget-utilities';\r\nimport { Container } from '@webprovisions/platform';\r\nimport { ActionNode, Symbol } from './widget-header-component';\r\n\r\nexport const calculateMargin = (\r\n leftNodes: ActionNode[],\r\n rightNodes: ActionNode[],\r\n textAlign: string\r\n) => {\r\n if (textAlign !== 'center') {\r\n return {};\r\n }\r\n\r\n const calculate = (nodes: ActionNode[]) => {\r\n return nodes.reduce<number>((acc, node) => {\r\n const [padding] = node.padding.split('px');\r\n const [size] = node.size.split('px');\r\n return acc + (+size + +padding * 2);\r\n }, 0);\r\n };\r\n const leftSize = calculate(leftNodes);\r\n const rightSize = calculate(rightNodes);\r\n\r\n const total = leftSize - rightSize;\r\n\r\n if (total === 0) {\r\n return {};\r\n }\r\n\r\n const direction = leftSize > rightSize ? 'right' : 'left';\r\n return {\r\n [direction]: `${Math.abs(total)}px`,\r\n };\r\n};\r\n\r\nexport const createNodes = (actions: { [key: string]: ActionNode }) => {\r\n return Object.keys(actions).reduce<[ActionNode[], ActionNode[]]>(\r\n (acc, key) => {\r\n const node = actions[key];\r\n if (!node) {\r\n return acc;\r\n }\r\n const [left, right] = acc;\r\n const arr = node.position === 'left' ? left : right;\r\n\r\n let symbol = actions[key].symbol;\r\n if (symbol && typeof symbol === 'string') {\r\n symbol = {\r\n type: 'Uri',\r\n content: symbol,\r\n };\r\n }\r\n\r\n arr.push({\r\n symbol:\r\n node.symbol && typeof node.symbol === 'string'\r\n ? { type: 'Uri', content: node.symbol }\r\n : (node.symbol as Symbol),\r\n type: key,\r\n padding: node.padding || '10px',\r\n label: node.label,\r\n size: node.size || '64px',\r\n tooltip: node.tooltip,\r\n order: node.order || 0,\r\n show: node.show,\r\n });\r\n\r\n return acc;\r\n },\r\n [[], []]\r\n );\r\n};\r\n\r\nexport const isOnInitialRoute = (container: Container) =>\r\n container.getAsync('router').then((router: RoutingService) => {\r\n if (!router) {\r\n return true;\r\n }\r\n const initialRoute = router.getInitialRoute();\r\n const { name, params } = router.getRouteData();\r\n\r\n removeNullAndUndefinedValues(params);\r\n\r\n if (initialRoute?.name !== name || Object.keys(params).length > 0) {\r\n return false;\r\n }\r\n\r\n return true;\r\n });\r\n","import { createEventSubscriber } from '@telia-ace/widget-core';\r\nimport { RoutingService } from '@telia-ace/widget-routing';\r\nimport { createReactComponent } from '@telia-ace/widget-ui';\r\nimport { Container } from '@webprovisions/platform';\r\nimport { isOnInitialRoute } from './utils';\r\n\r\nexport type Symbol = {\r\n type: 'Uri' | 'Svg' | 'FontAwesome' | 'Text' | string;\r\n content: string;\r\n};\r\n\r\nexport type ActionNode = {\r\n type: string;\r\n label?: string;\r\n position?: 'right' | 'left';\r\n symbol?: Symbol;\r\n size: string;\r\n padding: string;\r\n tooltip?: string;\r\n order?: number;\r\n show?: boolean;\r\n};\r\n\r\nexport type WidgetHeaderComponentProps = {\r\n header: string;\r\n tagline: string;\r\n textAlign?: string;\r\n actions?: { [key: string]: ActionNode };\r\n tooltip?: string;\r\n route?: string;\r\n};\r\n\r\nconst WidgetHeaderComponent = (container: Container) => {\r\n return createReactComponent(\r\n container,\r\n 'widget-header',\r\n import('./widget-header'),\r\n (component) => {\r\n const { events } = container.get('$widget');\r\n const [subscribe, unsubscribe] = createEventSubscriber(events);\r\n\r\n const { actions = {} } = component.properties<WidgetHeaderComponentProps>();\r\n\r\n component.actions.create('close', (data, options) => {\r\n if (options.preventDefault) {\r\n return;\r\n }\r\n\r\n const widget = container.get('$widget');\r\n return widget.invoke('close');\r\n });\r\n component.actions.create('back', (data, options) => {\r\n if (options.preventDefault) {\r\n return;\r\n }\r\n\r\n return container.getAsync('router').then((router: RoutingService) => {\r\n router.goBack();\r\n });\r\n });\r\n\r\n component.properties((properties) => {\r\n const { actions = {} } = properties;\r\n\r\n if (!actions.back) {\r\n return;\r\n }\r\n\r\n Object.keys(actions).forEach((key) => {\r\n const node = actions[key];\r\n if (key === 'back') {\r\n node.show = properties.showBack;\r\n }\r\n });\r\n\r\n return { actions };\r\n });\r\n\r\n component.actions.create('show-back', (showBack) => {\r\n component.writeProperties({ showBack });\r\n });\r\n\r\n if (actions.back) {\r\n const showBack = () =>\r\n isOnInitialRoute(container).then((onInitialRoute) =>\r\n component.actions.dispatch('show-back', !onInitialRoute)\r\n );\r\n\r\n showBack();\r\n subscribe('router:changed', showBack);\r\n }\r\n\r\n component.actions.create('minimize', (data, options) => {\r\n if (options.preventDefault) {\r\n return;\r\n }\r\n\r\n const widget = container.get('$widget');\r\n return widget.invoke('hide');\r\n });\r\n\r\n return () => {\r\n unsubscribe();\r\n };\r\n }\r\n );\r\n};\r\n\r\nexport default WidgetHeaderComponent;\r\n"],"names":[],"mappings":"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"}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,291 @@
|
|
|
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 __objRest = (source, exclude) => {
|
|
21
|
+
var target = {};
|
|
22
|
+
for (var prop in source)
|
|
23
|
+
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
24
|
+
target[prop] = source[prop];
|
|
25
|
+
if (source != null && __getOwnPropSymbols)
|
|
26
|
+
for (var prop of __getOwnPropSymbols(source)) {
|
|
27
|
+
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
28
|
+
target[prop] = source[prop];
|
|
29
|
+
}
|
|
30
|
+
return target;
|
|
31
|
+
};
|
|
32
|
+
import { SymbolBadge, borderTabStyle, useDispatch, TransitionComponent, useProperties, Typography, headingElement, Link, linkTabStyle } from "@telia-ace/widget-ui";
|
|
33
|
+
import { appendClassNames } from "@telia-ace/widget-utilities";
|
|
34
|
+
import React from "react";
|
|
35
|
+
import styled, { css } from "styled-components";
|
|
36
|
+
import { c as createNodes, a as calculateMargin } from "./index2.js";
|
|
37
|
+
import "@telia-ace/widget-core";
|
|
38
|
+
const Avatar = ({ node }) => {
|
|
39
|
+
if (!node.symbol) {
|
|
40
|
+
return null;
|
|
41
|
+
}
|
|
42
|
+
let size;
|
|
43
|
+
const isSvg = node.symbol.type === "Svg";
|
|
44
|
+
if (node.symbol.type === "Svg") {
|
|
45
|
+
const sizeNumber = parseInt(node.size, 10);
|
|
46
|
+
if (!isNaN(sizeNumber)) {
|
|
47
|
+
size = sizeNumber;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
return /* @__PURE__ */ React.createElement(Wrapper$1, {
|
|
51
|
+
symbol: node.symbol,
|
|
52
|
+
svg: isSvg,
|
|
53
|
+
size,
|
|
54
|
+
backgroundSize: "cover"
|
|
55
|
+
});
|
|
56
|
+
};
|
|
57
|
+
const Wrapper$1 = styled((_a) => {
|
|
58
|
+
var _b = _a, { svg } = _b, other = __objRest(_b, ["svg"]);
|
|
59
|
+
return /* @__PURE__ */ React.createElement(SymbolBadge, __spreadValues({}, other));
|
|
60
|
+
})`
|
|
61
|
+
color: ${(p) => {
|
|
62
|
+
var _a;
|
|
63
|
+
return (_a = p.theme.colors) == null ? void 0 : _a.text;
|
|
64
|
+
}};
|
|
65
|
+
${(p) => !p.svg && css`
|
|
66
|
+
border-radius: 50%;
|
|
67
|
+
overflow: hidden;
|
|
68
|
+
`}
|
|
69
|
+
`;
|
|
70
|
+
const Back = ({ node }) => {
|
|
71
|
+
const symbol = node.symbol || { type: "Svg", content: "back" };
|
|
72
|
+
return /* @__PURE__ */ React.createElement(SymbolBadge, {
|
|
73
|
+
size: 20,
|
|
74
|
+
symbol
|
|
75
|
+
});
|
|
76
|
+
};
|
|
77
|
+
const Close = ({ node }) => {
|
|
78
|
+
const symbol = node.symbol || { type: "Svg", content: "close" };
|
|
79
|
+
const size = parseInt(node == null ? void 0 : node.size, 10) || 14;
|
|
80
|
+
return /* @__PURE__ */ React.createElement(SymbolBadge, {
|
|
81
|
+
size,
|
|
82
|
+
symbol
|
|
83
|
+
});
|
|
84
|
+
};
|
|
85
|
+
const Minimize = ({ node }) => {
|
|
86
|
+
const symbol = node.symbol || { type: "Svg", content: "minimize" };
|
|
87
|
+
const size = parseInt(node == null ? void 0 : node.size, 10) || 20;
|
|
88
|
+
return /* @__PURE__ */ React.createElement(SymbolBadge, {
|
|
89
|
+
size,
|
|
90
|
+
symbol
|
|
91
|
+
});
|
|
92
|
+
};
|
|
93
|
+
const Node = (_c) => {
|
|
94
|
+
var _d = _c, { className = "" } = _d, node = __objRest(_d, ["className"]);
|
|
95
|
+
const dispatch = useDispatch();
|
|
96
|
+
const { size, padding, type, tooltip, show = true } = node;
|
|
97
|
+
if (type === "back") {
|
|
98
|
+
return /* @__PURE__ */ React.createElement(NodeWrapper, {
|
|
99
|
+
size: size || "64px",
|
|
100
|
+
padding: padding || "10px"
|
|
101
|
+
}, /* @__PURE__ */ React.createElement(TransitionComponent, {
|
|
102
|
+
in: show,
|
|
103
|
+
timeout: 300,
|
|
104
|
+
transitions: {
|
|
105
|
+
enter: {
|
|
106
|
+
type: "scale",
|
|
107
|
+
easing: "cubic-bezier(.08,.84,.74,1.84)"
|
|
108
|
+
},
|
|
109
|
+
exit: {
|
|
110
|
+
type: "scale",
|
|
111
|
+
easing: "ease-out"
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}, (state, css2) => /* @__PURE__ */ React.createElement(ActionButton, {
|
|
115
|
+
title: tooltip,
|
|
116
|
+
"aria-label": tooltip,
|
|
117
|
+
animationCss: css2,
|
|
118
|
+
onClick: () => {
|
|
119
|
+
dispatch("back");
|
|
120
|
+
}
|
|
121
|
+
}, /* @__PURE__ */ React.createElement(Back, {
|
|
122
|
+
node
|
|
123
|
+
}))));
|
|
124
|
+
}
|
|
125
|
+
if (!show) {
|
|
126
|
+
return null;
|
|
127
|
+
}
|
|
128
|
+
return /* @__PURE__ */ React.createElement(NodeWrapper, {
|
|
129
|
+
size: size || "64px",
|
|
130
|
+
padding: padding || "10px",
|
|
131
|
+
squareRatio: type === "avatar"
|
|
132
|
+
}, type === "avatar" && /* @__PURE__ */ React.createElement(Avatar, {
|
|
133
|
+
node
|
|
134
|
+
}), type === "close" && /* @__PURE__ */ React.createElement(ActionButton, {
|
|
135
|
+
title: tooltip,
|
|
136
|
+
"aria-label": tooltip,
|
|
137
|
+
onClick: () => {
|
|
138
|
+
dispatch("close");
|
|
139
|
+
}
|
|
140
|
+
}, /* @__PURE__ */ React.createElement(Close, {
|
|
141
|
+
node
|
|
142
|
+
})), type === "minimize" && /* @__PURE__ */ React.createElement(ActionButton, {
|
|
143
|
+
title: tooltip,
|
|
144
|
+
"aria-label": tooltip,
|
|
145
|
+
onClick: () => {
|
|
146
|
+
dispatch("minimize");
|
|
147
|
+
}
|
|
148
|
+
}, /* @__PURE__ */ React.createElement(Minimize, {
|
|
149
|
+
node
|
|
150
|
+
})));
|
|
151
|
+
};
|
|
152
|
+
const NodeWrapper = styled.div`
|
|
153
|
+
flex: 1;
|
|
154
|
+
max-width: ${(p) => p.size};
|
|
155
|
+
${(p) => p.squareRatio && `max-height: ${p.size};`}
|
|
156
|
+
text-align: center;
|
|
157
|
+
padding: 0 ${(p) => p.padding};
|
|
158
|
+
&& {
|
|
159
|
+
box-sizing: content-box;
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
svg {
|
|
163
|
+
vertical-align: middle;
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
i {
|
|
167
|
+
color: ${(p) => {
|
|
168
|
+
var _a;
|
|
169
|
+
return (_a = p.theme.colors) == null ? void 0 : _a.text;
|
|
170
|
+
}};
|
|
171
|
+
font-size: ${(p) => p.size};
|
|
172
|
+
min-width: 1em;
|
|
173
|
+
min-height: 1em;
|
|
174
|
+
display: inline-block;
|
|
175
|
+
}
|
|
176
|
+
`;
|
|
177
|
+
const ActionButton = styled.button`
|
|
178
|
+
${(p) => !!p.animationCss && p.animationCss};
|
|
179
|
+
background: none;
|
|
180
|
+
border: none;
|
|
181
|
+
cursor: pointer;
|
|
182
|
+
padding: 0;
|
|
183
|
+
&:focus {
|
|
184
|
+
${(p) => {
|
|
185
|
+
var _a, _b, _c;
|
|
186
|
+
return ((_a = p.theme.accessibility) == null ? void 0 : _a.isTabbing) && css`
|
|
187
|
+
${borderTabStyle};
|
|
188
|
+
border-color: ${(_c = (_b = p.theme.accessibility) == null ? void 0 : _b.colors) == null ? void 0 : _c.inactiveText};
|
|
189
|
+
`;
|
|
190
|
+
}};
|
|
191
|
+
}
|
|
192
|
+
`;
|
|
193
|
+
const WidgetHeader = (_e) => {
|
|
194
|
+
var _f = _e, { className } = _f, other = __objRest(_f, ["className"]);
|
|
195
|
+
const {
|
|
196
|
+
header,
|
|
197
|
+
tagline,
|
|
198
|
+
route,
|
|
199
|
+
tooltip = "",
|
|
200
|
+
actions = {},
|
|
201
|
+
textAlign = "center"
|
|
202
|
+
} = useProperties();
|
|
203
|
+
const [leftNodes, rightNodes] = createNodes(actions);
|
|
204
|
+
leftNodes.sort((a, b) => (a.order || 0) - (b.order || 0));
|
|
205
|
+
rightNodes.sort((a, b) => (a.order || 0) - (b.order || 0));
|
|
206
|
+
return /* @__PURE__ */ React.createElement(Wrapper, __spreadProps(__spreadValues({}, other), {
|
|
207
|
+
className: appendClassNames(className, "humany-widget-header")
|
|
208
|
+
}), leftNodes.map((node, key) => /* @__PURE__ */ React.createElement(Node, __spreadValues({
|
|
209
|
+
key: `${node.type}+_${key}`
|
|
210
|
+
}, node))), /* @__PURE__ */ React.createElement(MainNode, {
|
|
211
|
+
textAlign,
|
|
212
|
+
margin: calculateMargin(leftNodes, rightNodes, textAlign)
|
|
213
|
+
}, route ? /* @__PURE__ */ React.createElement(StyledLink, {
|
|
214
|
+
routeName: route,
|
|
215
|
+
title: tooltip,
|
|
216
|
+
"aria-label": tooltip
|
|
217
|
+
}, /* @__PURE__ */ React.createElement(Typography, {
|
|
218
|
+
variant: "h1"
|
|
219
|
+
}, header)) : /* @__PURE__ */ React.createElement(Typography, {
|
|
220
|
+
variant: "h1"
|
|
221
|
+
}, header), tagline && /* @__PURE__ */ React.createElement(Tagline, null, tagline)), rightNodes.map((node, key) => /* @__PURE__ */ React.createElement(Node, __spreadValues({
|
|
222
|
+
key: `${node.type}+_${key}`
|
|
223
|
+
}, node))));
|
|
224
|
+
};
|
|
225
|
+
const Wrapper = styled.div`
|
|
226
|
+
display: flex;
|
|
227
|
+
flex-direction: row;
|
|
228
|
+
align-items: center;
|
|
229
|
+
|
|
230
|
+
${headingElement("h1", css`
|
|
231
|
+
font-size: ${(p) => {
|
|
232
|
+
var _a;
|
|
233
|
+
return (_a = p.theme.fonts) == null ? void 0 : _a.huge;
|
|
234
|
+
}};
|
|
235
|
+
margin: 0;
|
|
236
|
+
font-weight: 300;
|
|
237
|
+
color: ${(p) => {
|
|
238
|
+
var _a;
|
|
239
|
+
return (_a = p.theme.colors) == null ? void 0 : _a.text;
|
|
240
|
+
}};
|
|
241
|
+
`)}
|
|
242
|
+
|
|
243
|
+
p {
|
|
244
|
+
color: ${(p) => {
|
|
245
|
+
var _a;
|
|
246
|
+
return (_a = p.theme.colors) == null ? void 0 : _a.text;
|
|
247
|
+
}};
|
|
248
|
+
margin: 0;
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
svg {
|
|
252
|
+
line,
|
|
253
|
+
path,
|
|
254
|
+
circle {
|
|
255
|
+
stroke: ${(p) => {
|
|
256
|
+
var _a;
|
|
257
|
+
return (_a = p.theme.colors) == null ? void 0 : _a.text;
|
|
258
|
+
}};
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
`;
|
|
262
|
+
const Tagline = styled.p`
|
|
263
|
+
font-size: ${(p) => {
|
|
264
|
+
var _a;
|
|
265
|
+
return (_a = p.theme.fonts) == null ? void 0 : _a.normal;
|
|
266
|
+
}};
|
|
267
|
+
font-weight: 300;
|
|
268
|
+
`;
|
|
269
|
+
const MainNode = styled.div`
|
|
270
|
+
flex: 1;
|
|
271
|
+
text-align: ${(p) => p.textAlign};
|
|
272
|
+
|
|
273
|
+
margin-right: ${(p) => p.margin.right || 0};
|
|
274
|
+
margin-left: ${(p) => p.margin.left || 0};
|
|
275
|
+
`;
|
|
276
|
+
const StyledLink = styled(Link)`
|
|
277
|
+
text-decoration: none;
|
|
278
|
+
&:focus {
|
|
279
|
+
${headingElement("h1", css`
|
|
280
|
+
${(p) => {
|
|
281
|
+
var _a;
|
|
282
|
+
return ((_a = p.theme.accessibility) == null ? void 0 : _a.isTabbing) && css`
|
|
283
|
+
${linkTabStyle}
|
|
284
|
+
display: inline-block;
|
|
285
|
+
`;
|
|
286
|
+
}};
|
|
287
|
+
`)}
|
|
288
|
+
}
|
|
289
|
+
`;
|
|
290
|
+
export { WidgetHeader as default };
|
|
291
|
+
//# sourceMappingURL=widget-header.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"widget-header.js","sources":["../src/avatar.tsx","../src/back.tsx","../src/close.tsx","../src/minimize.tsx","../src/node.tsx","../src/widget-header.tsx"],"sourcesContent":["import { SymbolBadge } from '@telia-ace/widget-ui';\r\nimport React from 'react';\r\nimport styled, { css } from 'styled-components';\r\nimport { ActionNode } from './widget-header-component';\r\n\r\ntype Props = { node: ActionNode };\r\nconst Avatar: React.FC<Props> = ({ node }) => {\r\n if (!node.symbol) {\r\n return null;\r\n }\r\n\r\n let size;\r\n const isSvg = node.symbol.type === 'Svg';\r\n if (node.symbol.type === 'Svg') {\r\n const sizeNumber = parseInt(node.size, 10);\r\n\r\n if (!isNaN(sizeNumber)) {\r\n size = sizeNumber;\r\n }\r\n }\r\n\r\n return <Wrapper symbol={node.symbol} svg={isSvg} size={size} backgroundSize=\"cover\" />;\r\n};\r\n\r\nexport default Avatar;\r\n\r\nconst Wrapper = styled(({ svg, ...other }) => <SymbolBadge {...other} />)`\r\n color: ${(p) => p.theme.colors?.text};\r\n ${(p) =>\r\n !p.svg &&\r\n css`\r\n border-radius: 50%;\r\n overflow: hidden;\r\n `}\r\n`;\r\n","import { SymbolBadge } from '@telia-ace/widget-ui';\r\nimport React from 'react';\r\nimport { ActionNode } from './widget-header-component';\r\n\r\ntype Props = {\r\n node: ActionNode;\r\n};\r\nconst Back: React.FC<Props> = ({ node }) => {\r\n const symbol = node.symbol || { type: 'Svg', content: 'back' };\r\n return <SymbolBadge size={20} symbol={symbol} />;\r\n};\r\n\r\nexport default Back;\r\n","import { SymbolBadge } from '@telia-ace/widget-ui';\r\nimport React from 'react';\r\nimport { ActionNode } from './widget-header-component';\r\n\r\ntype Props = {\r\n node: ActionNode;\r\n};\r\nconst Close: React.FC<Props> = ({ node }) => {\r\n const symbol = node.symbol || { type: 'Svg', content: 'close' };\r\n const size = parseInt(node?.size, 10) || 14;\r\n return <SymbolBadge size={size} symbol={symbol} />;\r\n};\r\n\r\nexport default Close;\r\n","import { SymbolBadge } from '@telia-ace/widget-ui';\r\nimport React from 'react';\r\nimport { ActionNode } from './widget-header-component';\r\n\r\ntype Props = {\r\n node: ActionNode;\r\n};\r\nconst Minimize: React.FC<Props> = ({ node }) => {\r\n const symbol = node.symbol || { type: 'Svg', content: 'minimize' };\r\n const size = parseInt(node?.size, 10) || 20;\r\n return <SymbolBadge size={size} symbol={symbol} />;\r\n};\r\n\r\nexport default Minimize;\r\n","import { borderTabStyle, TransitionComponent, useDispatch } from '@telia-ace/widget-ui';\r\nimport React from 'react';\r\nimport styled, { css } from 'styled-components';\r\nimport Avatar from './avatar';\r\nimport Back from './back';\r\nimport Close from './close';\r\nimport Minimize from './minimize';\r\nimport { ActionNode } from './widget-header-component';\r\n\r\ntype Props = Merge<\r\n ActionNode,\r\n {\r\n className?: string;\r\n }\r\n>;\r\n\r\nconst Node: React.FC<Props> = ({ className = '', ...node }) => {\r\n const dispatch = useDispatch();\r\n\r\n const { size, padding, type, tooltip, show = true } = node;\r\n\r\n if (type === 'back') {\r\n return (\r\n <NodeWrapper size={size || '64px'} padding={padding || '10px'}>\r\n <TransitionComponent\r\n in={show}\r\n timeout={300}\r\n transitions={{\r\n enter: {\r\n type: 'scale',\r\n easing: 'cubic-bezier(.08,.84,.74,1.84)',\r\n },\r\n exit: {\r\n type: 'scale',\r\n easing: 'ease-out',\r\n },\r\n }}\r\n >\r\n {(state: any, css: any) => (\r\n <ActionButton\r\n title={tooltip}\r\n aria-label={tooltip}\r\n animationCss={css}\r\n onClick={() => {\r\n dispatch('back');\r\n }}\r\n >\r\n <Back node={node} />\r\n </ActionButton>\r\n )}\r\n </TransitionComponent>\r\n </NodeWrapper>\r\n );\r\n }\r\n\r\n if (!show) {\r\n return null;\r\n }\r\n\r\n return (\r\n <NodeWrapper\r\n size={size || '64px'}\r\n padding={padding || '10px'}\r\n squareRatio={type === 'avatar'}\r\n >\r\n {type === 'avatar' && <Avatar node={node} />}\r\n {type === 'close' && (\r\n <ActionButton\r\n title={tooltip}\r\n aria-label={tooltip}\r\n onClick={() => {\r\n dispatch('close');\r\n }}\r\n >\r\n <Close node={node} />\r\n </ActionButton>\r\n )}\r\n {type === 'minimize' && (\r\n <ActionButton\r\n title={tooltip}\r\n aria-label={tooltip}\r\n onClick={() => {\r\n dispatch('minimize');\r\n }}\r\n >\r\n <Minimize node={node} />\r\n </ActionButton>\r\n )}\r\n </NodeWrapper>\r\n );\r\n};\r\n\r\nexport default Node;\r\n\r\nconst NodeWrapper = styled.div<{ size: string; padding: string; squareRatio?: boolean }>`\r\n flex: 1;\r\n max-width: ${(p) => p.size};\r\n ${(p) => p.squareRatio && `max-height: ${p.size};`}\r\n text-align: center;\r\n padding: 0 ${(p) => p.padding};\r\n && {\r\n box-sizing: content-box;\r\n }\r\n\r\n svg {\r\n vertical-align: middle;\r\n }\r\n\r\n i {\r\n color: ${(p) => p.theme.colors?.text};\r\n font-size: ${(p) => p.size};\r\n min-width: 1em;\r\n min-height: 1em;\r\n display: inline-block;\r\n }\r\n`;\r\nconst ActionButton = styled.button<any>`\r\n ${(p) => !!p.animationCss && p.animationCss};\r\n background: none;\r\n border: none;\r\n cursor: pointer;\r\n padding: 0;\r\n &:focus {\r\n ${(p) =>\r\n p.theme.accessibility?.isTabbing &&\r\n css`\r\n ${borderTabStyle};\r\n border-color: ${p.theme.accessibility?.colors?.inactiveText};\r\n `};\r\n }\r\n`;\r\n","import {\r\n headingElement,\r\n Link,\r\n linkTabStyle,\r\n Typography,\r\n useProperties,\r\n} from '@telia-ace/widget-ui';\r\nimport { appendClassNames } from '@telia-ace/widget-utilities';\r\nimport React from 'react';\r\nimport styled, { css } from 'styled-components';\r\nimport Node from './node';\r\nimport { calculateMargin, createNodes } from './utils';\r\nimport { WidgetHeaderComponentProps } from './widget-header-component';\r\n\r\ntype Props = {\r\n className: string;\r\n role?: string;\r\n};\r\n\r\nconst WidgetHeader: React.FC<Props> = ({ className, ...other }) => {\r\n const {\r\n header,\r\n tagline,\r\n route,\r\n tooltip = '',\r\n actions = {},\r\n textAlign = 'center',\r\n } = useProperties<WidgetHeaderComponentProps>();\r\n\r\n const [leftNodes, rightNodes] = createNodes(actions);\r\n leftNodes.sort((a, b) => (a.order || 0) - (b.order || 0));\r\n rightNodes.sort((a, b) => (a.order || 0) - (b.order || 0));\r\n return (\r\n <Wrapper {...other} className={appendClassNames(className, 'humany-widget-header')}>\r\n {leftNodes.map((node, key) => (\r\n <Node key={`${node.type}+_${key}`} {...node} />\r\n ))}\r\n\r\n <MainNode\r\n textAlign={textAlign}\r\n margin={calculateMargin(leftNodes, rightNodes, textAlign)}\r\n >\r\n {route ? (\r\n <StyledLink routeName={route} title={tooltip} aria-label={tooltip}>\r\n <Typography variant=\"h1\">{header}</Typography>\r\n </StyledLink>\r\n ) : (\r\n <Typography variant=\"h1\">{header}</Typography>\r\n )}\r\n {tagline && <Tagline>{tagline}</Tagline>}\r\n </MainNode>\r\n\r\n {rightNodes.map((node, key) => (\r\n <Node key={`${node.type}+_${key}`} {...node} />\r\n ))}\r\n </Wrapper>\r\n );\r\n};\r\n\r\nexport default WidgetHeader;\r\n\r\nconst Wrapper = styled.div`\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n\r\n ${headingElement(\r\n 'h1',\r\n css`\r\n font-size: ${(p) => p.theme.fonts?.huge};\r\n margin: 0;\r\n font-weight: 300;\r\n color: ${(p) => p.theme.colors?.text};\r\n `\r\n )}\r\n\r\n p {\r\n color: ${(p) => p.theme.colors?.text};\r\n margin: 0;\r\n }\r\n\r\n svg {\r\n line,\r\n path,\r\n circle {\r\n stroke: ${(p) => p.theme.colors?.text};\r\n }\r\n }\r\n`;\r\n\r\nconst Tagline = styled.p`\r\n font-size: ${(p) => p.theme.fonts?.normal};\r\n font-weight: 300;\r\n`;\r\n\r\nconst MainNode = styled.div<{\r\n textAlign: string;\r\n margin: { left?: string; right?: string };\r\n}>`\r\n flex: 1;\r\n text-align: ${(p) => p.textAlign};\r\n\r\n margin-right: ${(p) => p.margin.right || 0};\r\n margin-left: ${(p) => p.margin.left || 0};\r\n`;\r\n\r\nconst StyledLink = styled(Link)<any>`\r\n text-decoration: none;\r\n &:focus {\r\n ${headingElement(\r\n 'h1',\r\n css`\r\n ${(p) =>\r\n p.theme.accessibility?.isTabbing &&\r\n css`\r\n ${linkTabStyle}\r\n display: inline-block;\r\n `};\r\n `\r\n )}\r\n }\r\n`;\r\n"],"names":["Wrapper"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,35 +1,36 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@telia-ace/widget-components-widget-header",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.6",
|
|
4
4
|
"description": "Widget header component for ACE Widgets.",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.txt",
|
|
6
6
|
"author": "Telia Company AB",
|
|
7
7
|
"keywords": [
|
|
8
8
|
"telia"
|
|
9
9
|
],
|
|
10
|
-
"
|
|
11
|
-
"
|
|
10
|
+
"module": "dist/index.js",
|
|
11
|
+
"types": "dist/index.d.ts",
|
|
12
12
|
"files": [
|
|
13
13
|
"LICENSE.txt",
|
|
14
14
|
"README.md",
|
|
15
|
-
"
|
|
16
|
-
"lib-esm/"
|
|
15
|
+
"dist/"
|
|
17
16
|
],
|
|
18
17
|
"publishConfig": {
|
|
19
18
|
"access": "public"
|
|
20
19
|
},
|
|
21
20
|
"scripts": {
|
|
22
|
-
"clean": "
|
|
23
|
-
"
|
|
21
|
+
"clean": "rimraf ./dist",
|
|
22
|
+
"precompile": "tsc -emitDeclarationOnly",
|
|
23
|
+
"compile": "vite build"
|
|
24
24
|
},
|
|
25
25
|
"sideEffects": false,
|
|
26
|
-
"typings": "lib/index.d.ts",
|
|
27
26
|
"dependencies": {
|
|
28
|
-
"@telia-ace/widget-core": "^1.0.
|
|
29
|
-
"@telia-ace/widget-routing": "^1.0.
|
|
30
|
-
"@telia-ace/widget-ui": "^1.0.
|
|
27
|
+
"@telia-ace/widget-core": "^1.0.5",
|
|
28
|
+
"@telia-ace/widget-routing": "^1.0.6",
|
|
29
|
+
"@telia-ace/widget-ui": "^1.0.9",
|
|
31
30
|
"@telia-ace/widget-utilities": "^1.0.1",
|
|
32
|
-
"@webprovisions/platform": "^1.1.2"
|
|
31
|
+
"@webprovisions/platform": "^1.1.2"
|
|
32
|
+
},
|
|
33
|
+
"peerDependencies": {
|
|
33
34
|
"react": "^16.8.0",
|
|
34
35
|
"react-dom": "^16.8.0",
|
|
35
36
|
"styled-components": "^4.3.2"
|
|
@@ -39,5 +40,5 @@
|
|
|
39
40
|
"@types/react-dom": "^16.8.0",
|
|
40
41
|
"@types/styled-components": "^5.1.7"
|
|
41
42
|
},
|
|
42
|
-
"gitHead": "
|
|
43
|
+
"gitHead": "2cb095d784f90b8a0783f02898c67ca3c46169cf"
|
|
43
44
|
}
|
package/lib/avatar.d.ts
DELETED
package/lib/avatar.js
DELETED
|
@@ -1,80 +0,0 @@
|
|
|
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 react_1 = __importDefault(require("react"));
|
|
57
|
-
var styled_components_1 = __importStar(require("styled-components"));
|
|
58
|
-
var Avatar = function (_a) {
|
|
59
|
-
var node = _a.node;
|
|
60
|
-
if (!node.symbol) {
|
|
61
|
-
return null;
|
|
62
|
-
}
|
|
63
|
-
var size;
|
|
64
|
-
var isSvg = node.symbol.type === 'Svg';
|
|
65
|
-
if (node.symbol.type === 'Svg') {
|
|
66
|
-
var sizeNumber = parseInt(node.size, 10);
|
|
67
|
-
if (!isNaN(sizeNumber)) {
|
|
68
|
-
size = sizeNumber;
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
return react_1.default.createElement(Wrapper, { symbol: node.symbol, svg: isSvg, size: size, backgroundSize: "cover" });
|
|
72
|
-
};
|
|
73
|
-
exports.default = Avatar;
|
|
74
|
-
var Wrapper = (0, styled_components_1.default)(function (_a) {
|
|
75
|
-
var svg = _a.svg, other = __rest(_a, ["svg"]);
|
|
76
|
-
return react_1.default.createElement(widget_ui_1.SymbolBadge, __assign({}, other));
|
|
77
|
-
})(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n color: ", ";\n ", "\n"], ["\n color: ", ";\n ", "\n"])), function (p) { var _a; return (_a = p.theme.colors) === null || _a === void 0 ? void 0 : _a.text; }, function (p) {
|
|
78
|
-
return !p.svg && (0, styled_components_1.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n border-radius: 50%;\n overflow: hidden;\n "], ["\n border-radius: 50%;\n overflow: hidden;\n "])));
|
|
79
|
-
});
|
|
80
|
-
var templateObject_1, templateObject_2;
|
package/lib/back.d.ts
DELETED
package/lib/back.js
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
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
|
-
var widget_ui_1 = require("@telia-ace/widget-ui");
|
|
7
|
-
var react_1 = __importDefault(require("react"));
|
|
8
|
-
var Back = function (_a) {
|
|
9
|
-
var node = _a.node;
|
|
10
|
-
var symbol = node.symbol || { type: 'Svg', content: 'back' };
|
|
11
|
-
return react_1.default.createElement(widget_ui_1.SymbolBadge, { size: 20, symbol: symbol });
|
|
12
|
-
};
|
|
13
|
-
exports.default = Back;
|