@veracity/vui 2.7.0 → 2.8.0-rc.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 (153) hide show
  1. package/dist/cjs/breadcrumbs/breadcrumbs.d.ts.map +1 -1
  2. package/dist/cjs/breadcrumbs/breadcrumbs.js +7 -3
  3. package/dist/cjs/breadcrumbs/breadcrumbs.types.d.ts +0 -3
  4. package/dist/cjs/breadcrumbs/breadcrumbs.types.d.ts.map +1 -1
  5. package/dist/cjs/breadcrumbs/breadcrumbsItem.d.ts.map +1 -1
  6. package/dist/cjs/breadcrumbs/breadcrumbsItem.js +2 -6
  7. package/dist/cjs/breadcrumbs/breadcrumbsSeparator.d.ts.map +1 -1
  8. package/dist/cjs/breadcrumbs/breadcrumbsSeparator.js +4 -1
  9. package/dist/cjs/breadcrumbs/theme.d.ts +66 -4
  10. package/dist/cjs/breadcrumbs/theme.d.ts.map +1 -1
  11. package/dist/cjs/breadcrumbs/theme.js +61 -5
  12. package/dist/cjs/footer/footer.d.ts.map +1 -1
  13. package/dist/cjs/footer/footer.js +21 -4
  14. package/dist/cjs/footer/footer.types.d.ts +3 -0
  15. package/dist/cjs/footer/footer.types.d.ts.map +1 -1
  16. package/dist/cjs/header/header.d.ts +2 -0
  17. package/dist/cjs/header/header.d.ts.map +1 -1
  18. package/dist/cjs/header/header.js +2 -0
  19. package/dist/cjs/header/header.types.d.ts +14 -0
  20. package/dist/cjs/header/header.types.d.ts.map +1 -1
  21. package/dist/cjs/header/headerAccount.d.ts +1 -0
  22. package/dist/cjs/header/headerAccount.d.ts.map +1 -1
  23. package/dist/cjs/header/headerAccount.js +4 -9
  24. package/dist/cjs/header/headerAccountUserInfo.js +2 -2
  25. package/dist/cjs/header/headerLinkItem.js +2 -2
  26. package/dist/cjs/header/headerMainLinks.d.ts.map +1 -1
  27. package/dist/cjs/header/headerMainLinks.js +0 -1
  28. package/dist/cjs/header/headerMobileContent.d.ts.map +1 -1
  29. package/dist/cjs/header/headerMobileContent.js +2 -1
  30. package/dist/cjs/header/headerServices.d.ts.map +1 -1
  31. package/dist/cjs/header/headerServices.js +5 -4
  32. package/dist/cjs/header/headerSupport.d.ts +5 -0
  33. package/dist/cjs/header/headerSupport.d.ts.map +1 -0
  34. package/dist/cjs/header/headerSupport.js +45 -0
  35. package/dist/cjs/header/loggedInHeader.d.ts.map +1 -1
  36. package/dist/cjs/header/loggedInHeader.js +51 -8
  37. package/dist/cjs/icons/baseIcons/cul/culDatasetAlt.d.ts +4 -0
  38. package/dist/cjs/icons/baseIcons/cul/culDatasetAlt.d.ts.map +1 -0
  39. package/dist/cjs/icons/baseIcons/cul/culDatasetAlt.js +8 -0
  40. package/dist/cjs/icons/baseIcons/icons.d.ts +1 -0
  41. package/dist/cjs/icons/baseIcons/icons.d.ts.map +1 -1
  42. package/dist/cjs/icons/baseIcons/icons.js +10 -8
  43. package/dist/cjs/icons/baseIcons/types.d.ts +1 -1
  44. package/dist/cjs/icons/baseIcons/types.d.ts.map +1 -1
  45. package/dist/cjs/theme/components.d.ts +109 -35
  46. package/dist/cjs/theme/components.d.ts.map +1 -1
  47. package/dist/cjs/theme/defaultTheme.d.ts +109 -35
  48. package/dist/cjs/theme/defaultTheme.d.ts.map +1 -1
  49. package/dist/cjs/tree/theme.d.ts +43 -33
  50. package/dist/cjs/tree/theme.d.ts.map +1 -1
  51. package/dist/cjs/tree/theme.js +48 -43
  52. package/dist/cjs/tree/tree.d.ts.map +1 -1
  53. package/dist/cjs/tree/tree.js +4 -2
  54. package/dist/cjs/tree/tree.types.d.ts +10 -3
  55. package/dist/cjs/tree/tree.types.d.ts.map +1 -1
  56. package/dist/cjs/tree/treeItem.d.ts +2 -2
  57. package/dist/cjs/tree/treeItem.d.ts.map +1 -1
  58. package/dist/cjs/tree/treeItem.js +64 -43
  59. package/dist/cjs/tutorial/tutorialCard.d.ts.map +1 -1
  60. package/dist/cjs/tutorial/tutorialCard.js +3 -2
  61. package/dist/cjs/utils/styles.d.ts +1 -2
  62. package/dist/cjs/utils/styles.d.ts.map +1 -1
  63. package/dist/cjs/utils/styles.js +14 -6
  64. package/dist/esm/breadcrumbs/breadcrumbs.d.ts.map +1 -1
  65. package/dist/esm/breadcrumbs/breadcrumbs.js +7 -3
  66. package/dist/esm/breadcrumbs/breadcrumbs.types.d.ts +0 -3
  67. package/dist/esm/breadcrumbs/breadcrumbs.types.d.ts.map +1 -1
  68. package/dist/esm/breadcrumbs/breadcrumbsItem.d.ts.map +1 -1
  69. package/dist/esm/breadcrumbs/breadcrumbsItem.js +2 -6
  70. package/dist/esm/breadcrumbs/breadcrumbsSeparator.d.ts.map +1 -1
  71. package/dist/esm/breadcrumbs/breadcrumbsSeparator.js +6 -1
  72. package/dist/esm/breadcrumbs/theme.d.ts +66 -4
  73. package/dist/esm/breadcrumbs/theme.d.ts.map +1 -1
  74. package/dist/esm/breadcrumbs/theme.js +61 -5
  75. package/dist/esm/footer/footer.d.ts.map +1 -1
  76. package/dist/esm/footer/footer.js +21 -4
  77. package/dist/esm/footer/footer.types.d.ts +3 -0
  78. package/dist/esm/footer/footer.types.d.ts.map +1 -1
  79. package/dist/esm/header/header.d.ts +2 -0
  80. package/dist/esm/header/header.d.ts.map +1 -1
  81. package/dist/esm/header/header.js +2 -0
  82. package/dist/esm/header/header.types.d.ts +14 -0
  83. package/dist/esm/header/header.types.d.ts.map +1 -1
  84. package/dist/esm/header/headerAccount.d.ts +1 -0
  85. package/dist/esm/header/headerAccount.d.ts.map +1 -1
  86. package/dist/esm/header/headerAccount.js +5 -10
  87. package/dist/esm/header/headerAccountUserInfo.js +2 -2
  88. package/dist/esm/header/headerLinkItem.js +2 -2
  89. package/dist/esm/header/headerMainLinks.d.ts.map +1 -1
  90. package/dist/esm/header/headerMainLinks.js +0 -1
  91. package/dist/esm/header/headerMobileContent.d.ts.map +1 -1
  92. package/dist/esm/header/headerMobileContent.js +3 -2
  93. package/dist/esm/header/headerServices.d.ts.map +1 -1
  94. package/dist/esm/header/headerServices.js +5 -4
  95. package/dist/esm/header/headerSupport.d.ts +5 -0
  96. package/dist/esm/header/headerSupport.d.ts.map +1 -0
  97. package/dist/esm/header/headerSupport.js +27 -0
  98. package/dist/esm/header/loggedInHeader.d.ts.map +1 -1
  99. package/dist/esm/header/loggedInHeader.js +46 -9
  100. package/dist/esm/icons/baseIcons/cul/culDatasetAlt.d.ts +4 -0
  101. package/dist/esm/icons/baseIcons/cul/culDatasetAlt.d.ts.map +1 -0
  102. package/dist/esm/icons/baseIcons/cul/culDatasetAlt.js +6 -0
  103. package/dist/esm/icons/baseIcons/icons.d.ts +1 -0
  104. package/dist/esm/icons/baseIcons/icons.d.ts.map +1 -1
  105. package/dist/esm/icons/baseIcons/icons.js +1 -0
  106. package/dist/esm/icons/baseIcons/types.d.ts +1 -1
  107. package/dist/esm/icons/baseIcons/types.d.ts.map +1 -1
  108. package/dist/esm/theme/components.d.ts +109 -35
  109. package/dist/esm/theme/components.d.ts.map +1 -1
  110. package/dist/esm/theme/defaultTheme.d.ts +109 -35
  111. package/dist/esm/theme/defaultTheme.d.ts.map +1 -1
  112. package/dist/esm/tree/theme.d.ts +43 -33
  113. package/dist/esm/tree/theme.d.ts.map +1 -1
  114. package/dist/esm/tree/theme.js +48 -43
  115. package/dist/esm/tree/tree.d.ts.map +1 -1
  116. package/dist/esm/tree/tree.js +4 -2
  117. package/dist/esm/tree/tree.types.d.ts +10 -3
  118. package/dist/esm/tree/tree.types.d.ts.map +1 -1
  119. package/dist/esm/tree/treeItem.d.ts +2 -2
  120. package/dist/esm/tree/treeItem.d.ts.map +1 -1
  121. package/dist/esm/tree/treeItem.js +63 -45
  122. package/dist/esm/tutorial/tutorialCard.d.ts.map +1 -1
  123. package/dist/esm/tutorial/tutorialCard.js +3 -2
  124. package/dist/esm/utils/styles.d.ts +1 -2
  125. package/dist/esm/utils/styles.d.ts.map +1 -1
  126. package/dist/esm/utils/styles.js +12 -4
  127. package/package.json +1 -1
  128. package/src/breadcrumbs/breadcrumbs.tsx +14 -3
  129. package/src/breadcrumbs/breadcrumbs.types.ts +0 -3
  130. package/src/breadcrumbs/breadcrumbsItem.tsx +2 -7
  131. package/src/breadcrumbs/breadcrumbsSeparator.tsx +11 -5
  132. package/src/breadcrumbs/theme.ts +61 -5
  133. package/src/footer/footer.tsx +71 -4
  134. package/src/footer/footer.types.ts +3 -0
  135. package/src/header/header.tsx +3 -0
  136. package/src/header/header.types.ts +15 -0
  137. package/src/header/headerAccount.tsx +6 -14
  138. package/src/header/headerAccountUserInfo.tsx +2 -2
  139. package/src/header/headerLinkItem.tsx +2 -2
  140. package/src/header/headerMainLinks.tsx +0 -1
  141. package/src/header/headerMobileContent.tsx +4 -3
  142. package/src/header/headerServices.tsx +12 -4
  143. package/src/header/headerSupport.tsx +76 -0
  144. package/src/header/loggedInHeader.tsx +130 -13
  145. package/src/icons/baseIcons/cul/culDatasetAlt.ts +9 -0
  146. package/src/icons/baseIcons/icons.ts +1 -0
  147. package/src/icons/baseIcons/types.ts +1 -0
  148. package/src/tree/theme.ts +50 -49
  149. package/src/tree/tree.tsx +10 -16
  150. package/src/tree/tree.types.ts +10 -3
  151. package/src/tree/treeItem.tsx +89 -61
  152. package/src/tutorial/tutorialCard.tsx +4 -2
  153. package/src/utils/styles.ts +15 -6
@@ -41,34 +41,31 @@ exports.TreeItem = exports.TreeItemBase = void 0;
41
41
  const react_1 = __importStar(require("react"));
42
42
  const box_1 = require("../box");
43
43
  const core_1 = require("../core");
44
+ const list_1 = require("../list");
44
45
  const utils_1 = require("../utils");
45
46
  const context_1 = require("./context");
46
47
  const treeIcon_1 = __importDefault(require("./treeIcon"));
47
48
  const treeText_1 = __importDefault(require("./treeText"));
48
- exports.TreeItemBase = core_1.styled.divBox `
49
+ /*@formatter:off*/
50
+ exports.TreeItemBase = core_1.styled.liBox `
49
51
  display: flex;
50
52
  flex-direction: column;
51
- line-height: normal;
52
- outline: none;
53
- align-content: flex-start;
54
- align-items: flex-start;
55
- overflow: visible;
56
- height: auto;
57
-
58
- & [aria-disabled='true'] {
59
- cursor: not-allowed;
60
- user-select: none;
61
- }
53
+ transition-duration: fast;
54
+ width: 100%;
62
55
  `;
56
+ /*@formatter:on*/
63
57
  /**
64
58
  * Displays a tree item with text and optional icons. Can be shown as selected.
65
59
  */
66
60
  exports.TreeItem = (0, core_1.vui)((props, ref) => {
61
+ var _a, _b, _c, _d;
67
62
  const mergedProps = Object.assign(Object.assign({}, (0, context_1.useTreeContext)()), props);
68
- const { activeItemId, activeItemIndex, children, center, centerH, centerV = true, className, iconCollapse = 'falMinus', isCollapsed, disabled, iconExpand = 'falPlus', id, items, isActive, isTruncated, key, onClickTreeItem, onToggle, text } = mergedProps, rest = __rest(mergedProps, ["activeItemId", "activeItemIndex", "children", "center", "centerH", "centerV", "className", "iconCollapse", "isCollapsed", "disabled", "iconExpand", "id", "items", "isActive", "isTruncated", "key", "onClickTreeItem", "onToggle", "text"]);
63
+ const { activeItemId, activeItemIndex, children, center, centerH, centerV = true, className, iconCollapse = 'falMinus', isCollapsed, disabled, iconExpand = 'falPlus', id, items, isActive, isFirstLevel, isTruncated, key, onClickTreeItem, onToggle, propagatedPL, plUnit = 26, text } = mergedProps, rest = __rest(mergedProps, ["activeItemId", "activeItemIndex", "children", "center", "centerH", "centerV", "className", "iconCollapse", "isCollapsed", "disabled", "iconExpand", "id", "items", "isActive", "isFirstLevel", "isTruncated", "key", "onClickTreeItem", "onToggle", "propagatedPL", "plUnit", "text"]);
69
64
  const styles = (0, core_1.useStyleConfig)('Tree', (0, context_1.useTreeContext)());
70
- const _a = styles.item, { activeBg, h, hoverBg, p, px, py, selectedBg } = _a, itemStyles = __rest(_a, ["activeBg", "h", "hoverBg", "p", "px", "py", "selectedBg"]);
65
+ const _e = styles.item, { activeBg, bg, color, h, hoverBg, hoverColor, p, px, py, selectedBg } = _e, itemStyles = __rest(_e, ["activeBg", "bg", "color", "h", "hoverBg", "hoverColor", "p", "px", "py", "selectedBg"]);
71
66
  const [collapsedInternal, setIsCollapsedInternal] = (0, react_1.useState)(false);
67
+ const innerBoxPl = propagatedPL || 0;
68
+ const innerListPl = innerBoxPl + (plUnit || 0);
72
69
  (0, react_1.useEffect)(() => {
73
70
  setIsCollapsedInternal(!!isCollapsed);
74
71
  }, [isCollapsed]);
@@ -85,46 +82,70 @@ exports.TreeItem = (0, core_1.vui)((props, ref) => {
85
82
  // Avoids triggering parent's onClick
86
83
  e.stopPropagation();
87
84
  };
88
- const interactiveProps = !disabled
89
- ? {
90
- cursor: 'pointer',
91
- focusVisibleRing: 2,
92
- hoverBg: 'transparent',
93
- activeBg: 'transparent',
94
- userSelect: 'none'
95
- }
96
- : {};
97
85
  const hoverTreeItem = (e, type) => {
98
- var _a, _b, _c;
86
+ var _a, _b, _c, _d, _e, _f;
99
87
  const target = e.target;
88
+ let parentDiv = undefined;
100
89
  if (target.classList.contains('vui-treeItem-permanent')) {
101
- target.style.backgroundColor = type === 'over' ? '#e2f1ff' : 'transparent';
102
- e.stopPropagation();
90
+ parentDiv = target;
91
+ }
92
+ else {
93
+ const parentLi = target.closest('.vui-treeItem');
94
+ parentDiv = parentLi === null || parentLi === void 0 ? void 0 : parentLi.getElementsByClassName('vui-treeItem-permanent')[0];
95
+ }
96
+ const isDivActive = parentDiv.classList.contains('vui-treeItem-active') ? true : false;
97
+ // translate the list-item style over to the div
98
+ if (parentDiv.classList.contains('vui-treeItem-permanent')) {
99
+ // is it a fist level item?
100
+ if (parentDiv.classList.contains('vui-treeItem-firstLevel')) {
101
+ if (type === 'over') {
102
+ parentDiv.style.backgroundColor = (0, utils_1.vuiColorToRGBA)(((_a = styles === null || styles === void 0 ? void 0 : styles.firstLevelItem) === null || _a === void 0 ? void 0 : _a.hoverBg) || 'transparent');
103
+ }
104
+ if (type === 'out') {
105
+ parentDiv.style.backgroundColor = isDivActive
106
+ ? (0, utils_1.vuiColorToRGBA)(((_b = styles === null || styles === void 0 ? void 0 : styles.firstLevelItem) === null || _b === void 0 ? void 0 : _b.activeBg) || 'transparent')
107
+ : (0, utils_1.vuiColorToRGBA)(((_c = styles === null || styles === void 0 ? void 0 : styles.firstLevelItem) === null || _c === void 0 ? void 0 : _c.bg) || 'transparent');
108
+ }
109
+ }
110
+ else {
111
+ // it is NOT first level
112
+ if (type === 'over') {
113
+ parentDiv.style.backgroundColor = (0, utils_1.vuiColorToRGBA)(((_d = styles === null || styles === void 0 ? void 0 : styles.item) === null || _d === void 0 ? void 0 : _d.hoverBg) || 'transparent');
114
+ }
115
+ if (type === 'out') {
116
+ parentDiv.style.backgroundColor = isDivActive
117
+ ? (0, utils_1.vuiColorToRGBA)(((_e = styles === null || styles === void 0 ? void 0 : styles.item) === null || _e === void 0 ? void 0 : _e.activeBg) || 'transparent')
118
+ : (0, utils_1.vuiColorToRGBA)(((_f = styles === null || styles === void 0 ? void 0 : styles.item) === null || _f === void 0 ? void 0 : _f.bg) || 'transparent');
119
+ }
120
+ }
103
121
  }
104
122
  else {
105
123
  e.preventDefault();
106
- const permanent = (_a = target
107
- .closest('.vui-treeItem')) === null || _a === void 0 ? void 0 : _a.getElementsByClassName('vui-treeItem-permanent')[0];
108
- const collapsible = (_b = target
109
- .closest('.vui-treeItem')) === null || _b === void 0 ? void 0 : _b.getElementsByClassName('vui-treeItem-collapsible')[0];
110
- const active = (_c = target.closest('.vui-treeItem')) === null || _c === void 0 ? void 0 : _c.getElementsByClassName('vui-treeItem-active')[0];
111
- permanent ? (permanent.style.backgroundColor = type === 'over' ? '#e2f1ff' : 'transparent') : null;
112
- collapsible ? (collapsible.style.backgroundColor = 'transparent') : null;
113
- active ? (active.style.backgroundColor = 'hsl(139, 100%, 90%)') : null;
114
124
  }
125
+ e.stopPropagation();
115
126
  };
116
127
  const isCollapsable = ((0, utils_1.isArray)(children) && children.length > 0) || ((0, utils_1.isArray)(items) && items.length > 0);
117
128
  const isActiveInternal = (!activeItemIndex && isActive) || activeItemIndex === id;
118
- return (react_1.default.createElement(exports.TreeItemBase, Object.assign({ alignItems: "start", className: (0, utils_1.cs)('vui-treeItem', className), h: collapsedInternal ? h : isCollapsable ? 'auto' : h, id: id, m: 0, onClick: !disabled ? (e) => toggle(e) : undefined, onMouseOut: !disabled ? (e) => hoverTreeItem(e, 'out') : undefined, onMouseOver: !disabled ? (e) => hoverTreeItem(e, 'over') : undefined, p: 0, ref: ref, w: 1 }, itemStyles, interactiveProps, rest, { hoverBg: "transparent" }),
119
- react_1.default.createElement(box_1.Box, { flexDirection: "column", hoverBg: "transparent", m: 0, pl: 2, pr: 0, py: py, w: 1 },
120
- react_1.default.createElement(box_1.Box, { alignItems: "center", bg: isActiveInternal ? 'hsl(139, 100%, 90%)' : 'transparent', className: isActiveInternal ? 'vui-treeItem-active' : 'vui-treeItem-permanent', flexDirection: "row", hoverBg: "transparent", m: 0, p: 0, w: 1 },
121
- items && (items === null || items === void 0 ? void 0 : items.length) > 0 && (react_1.default.createElement(react_1.default.Fragment, null, collapsedInternal ? react_1.default.createElement(treeIcon_1.default, { mr: 1, name: iconExpand }) : react_1.default.createElement(treeIcon_1.default, { mr: 1, name: iconCollapse }))),
122
- (items === null || items === void 0 ? void 0 : items.length) === 0 && react_1.default.createElement(treeIcon_1.default, { mr: 1, name: "cusDotFullAlt" }),
123
- (0, utils_1.isReactText)(text) ? react_1.default.createElement(treeText_1.default, Object.assign({}, { isTruncated, text })) : text),
124
- isCollapsable && !collapsedInternal && (react_1.default.createElement(box_1.Box, { className: "vui-treeItem-collapsible", flexDirection: "column", hoverBg: "transparent", m: 0, p: 0, w: 1 }, children !== null && children !== void 0 ? children : ((0, utils_1.isArray)(items)
129
+ let textMl = items && (items === null || items === void 0 ? void 0 : items.length) > 0 ? 0 : 1.5;
130
+ if (!isCollapsable) {
131
+ textMl += 3.8;
132
+ }
133
+ // hoverBg cannot be styled directly from theme, it has to be JS manipulated because of event propagation
134
+ return (react_1.default.createElement(exports.TreeItemBase, Object.assign({ className: (0, utils_1.cs)('vui-treeItem', isFirstLevel ? 'vui-treeItem-firstLevel' : '', className), color: isFirstLevel ? (_a = styles === null || styles === void 0 ? void 0 : styles.firstLevelItem) === null || _a === void 0 ? void 0 : _a.color : color, h: collapsedInternal ? h : isCollapsable ? 'auto' : h, id: id.toString(), m: 0, onClick: !disabled ? (e) => toggle(e) : undefined, onMouseOut: !disabled ? (e) => hoverTreeItem(e, 'out') : undefined, onMouseOver: !disabled ? (e) => hoverTreeItem(e, 'over') : undefined, p: 0, propagatedPL: propagatedPL, ref: ref, w: 1 }, itemStyles, { bg: isFirstLevel
135
+ ? isActiveInternal
136
+ ? (_b = styles === null || styles === void 0 ? void 0 : styles.firstLevelItem) === null || _b === void 0 ? void 0 : _b.activeBg
137
+ : (_c = styles === null || styles === void 0 ? void 0 : styles.firstLevelItem) === null || _c === void 0 ? void 0 : _c.bg
138
+ : isActiveInternal
139
+ ? (_d = styles === null || styles === void 0 ? void 0 : styles.item) === null || _d === void 0 ? void 0 : _d.activeBg
140
+ : bg, hoverBg: undefined }, rest),
141
+ react_1.default.createElement(react_1.default.Fragment, null,
142
+ react_1.default.createElement(box_1.Box, { centerV: true, className: (0, utils_1.cs)('vui-treeItem-permanent', isActiveInternal ? 'vui-treeItem-active' : '', isFirstLevel ? 'vui-treeItem-firstLevel' : ''), fontWeight: isActiveInternal ? '600' : '500', pl: `${innerBoxPl}px` },
143
+ items && (items === null || items === void 0 ? void 0 : items.length) > 0 && (react_1.default.createElement(react_1.default.Fragment, null, collapsedInternal ? react_1.default.createElement(treeIcon_1.default, { mx: 1.5, name: iconExpand }) : react_1.default.createElement(treeIcon_1.default, { mx: 1.5, name: iconCollapse }))),
144
+ (0, utils_1.isReactText)(text) ? react_1.default.createElement(treeText_1.default, Object.assign({ ml: textMl }, { isTruncated, text })) : text),
145
+ isCollapsable && !collapsedInternal && (react_1.default.createElement(list_1.List, { w: 1 }, children !== null && children !== void 0 ? children : ((0, utils_1.isArray)(items)
125
146
  ? items.map((_a, index) => {
126
- var { key } = _a, props = __rest(_a, ["key"]);
127
- return (react_1.default.createElement(exports.TreeItem, Object.assign({ activeItemIndex: activeItemIndex, iconCollapse: iconCollapse, iconExpand: iconExpand, key: key !== null && key !== void 0 ? key : index, onClickTreeItem: onClickTreeItem }, props)));
147
+ var { key, propagatedPL } = _a, props = __rest(_a, ["key", "propagatedPL"]);
148
+ return (react_1.default.createElement(exports.TreeItem, Object.assign({ activeItemIndex: activeItemIndex, iconCollapse: iconCollapse, iconExpand: iconExpand, key: key !== null && key !== void 0 ? key : index, onClickTreeItem: onClickTreeItem, propagatedPL: innerListPl }, props)));
128
149
  })
129
150
  : items))))));
130
151
  });
@@ -1 +1 @@
1
- {"version":3,"file":"tutorialCard.d.ts","sourceRoot":"","sources":["../../../src/tutorial/tutorialCard.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAyC,MAAM,kBAAkB,CAAA;AAG3F,wBAAgB,YAAY,CAAC,EAC3B,WAAsB,EACtB,SAAS,EACT,KAAK,EACL,YAAY,EACZ,KAAK,EAAE,UAAe,EACtB,cAAc,EACd,QAAQ,EACR,SAAS,EACT,QAAQ,EACT,EAAE,iBAAiB,eAqHnB"}
1
+ {"version":3,"file":"tutorialCard.d.ts","sourceRoot":"","sources":["../../../src/tutorial/tutorialCard.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAyC,MAAM,kBAAkB,CAAA;AAG3F,wBAAgB,YAAY,CAAC,EAC3B,WAAsB,EACtB,SAAS,EACT,KAAK,EACL,YAAY,EACZ,KAAK,EAAE,UAAe,EACtB,cAAc,EACd,QAAQ,EACR,SAAS,EACT,QAAQ,EACT,EAAE,iBAAiB,eAuHnB"}
@@ -60,7 +60,8 @@ function TutorialCard({ actionLabel = 'Action', className, title, readMoreLink,
60
60
  showSkipButton && !isFinalStep && (react_1.default.createElement(index_1.Button, { mr: 2, onClick: onDismiss, variant: "primaryLight" }, "Skip")),
61
61
  isFinalStep && (react_1.default.createElement(index_1.Button, { mr: 2, onClick: onFinish, variant: "primaryLight" }, "Finish")),
62
62
  !!onAction && (react_1.default.createElement(index_1.Button, { mr: 6, onClick: onAction, variant: "primaryLight" },
63
- actionLabel,
64
- onAction)))))));
63
+ react_1.default.createElement(react_1.default.Fragment, null,
64
+ actionLabel,
65
+ onAction))))))));
65
66
  }
66
67
  exports.TutorialCard = TutorialCard;
@@ -7,10 +7,9 @@ export declare function parseHSL(color: string): {
7
7
  s: number;
8
8
  l: number;
9
9
  };
10
- /** Builds RGBA string. */
11
- export declare const buildRGBA: (r: number, g: number, b: number, alpha?: number) => string;
12
10
  /** Converts hex color value to rgb with optional alpha property. */
13
11
  export declare function hexToRGBA(hex: string, alpha?: number): string;
12
+ export declare function vuiColorToRGBA(color: string, alpha?: number): string;
14
13
  /** Converts hsl color value to rgb with optional alpha property. */
15
14
  export declare function HSLToRGBA(h: number, s: number, l: number, alpha?: number): string;
16
15
  /** Styling to add ellipsis for long texts. */
@@ -1 +1 @@
1
- {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../src/utils/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAElC,+EAA+E;AAC/E,wBAAgB,EAAE,CAAC,GAAG,UAAU,EAAE,GAAG,EAAE,UAEtC;AAED,6BAA6B;AAC7B,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM;;;;EAIrC;AAED,0BAA0B;AAC1B,eAAO,MAAM,SAAS,MAAO,MAAM,KAAK,MAAM,KAAK,MAAM,UAAU,MAAM,WACW,CAAA;AAEpF,oEAAoE;AACpE,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,UAgBpD;AAED,oEAAoE;AACpE,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,UA0CxE;AAED,8CAA8C;AAC9C,eAAO,MAAM,gBAAgB;;;;CAI5B,CAAA"}
1
+ {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../src/utils/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAIlC,+EAA+E;AAC/E,wBAAgB,EAAE,CAAC,GAAG,UAAU,EAAE,GAAG,EAAE,UAEtC;AAED,6BAA6B;AAC7B,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM;;;;EAIrC;AAED,oEAAoE;AACpE,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,UAgBpD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,UAS3D;AAED,oEAAoE;AACpE,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,UA0CxE;AAED,8CAA8C;AAC9C,eAAO,MAAM,gBAAgB;;;;CAI5B,CAAA"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ellipsisOverflow = exports.HSLToRGBA = exports.hexToRGBA = exports.buildRGBA = exports.parseHSL = exports.cs = void 0;
3
+ exports.ellipsisOverflow = exports.HSLToRGBA = exports.vuiColorToRGBA = exports.hexToRGBA = exports.parseHSL = exports.cs = void 0;
4
+ const theme_1 = require("../theme");
4
5
  /** Concatenates individual className arguments and returns a single string. */
5
6
  function cs(...classNames) {
6
7
  return classNames.filter(Boolean).join(' ');
@@ -14,9 +15,6 @@ function parseHSL(color) {
14
15
  return { h: Number(res === null || res === void 0 ? void 0 : res[0]) || 0, s: Number(res === null || res === void 0 ? void 0 : res[1]) || 0, l: Number(res === null || res === void 0 ? void 0 : res[2]) || 0 };
15
16
  }
16
17
  exports.parseHSL = parseHSL;
17
- /** Builds RGBA string. */
18
- const buildRGBA = (r, g, b, alpha) => alpha !== undefined ? `rgba(${r}, ${g}, ${b}, ${alpha})` : `rgb(${r}, ${g}, ${b})`;
19
- exports.buildRGBA = buildRGBA;
20
18
  /** Converts hex color value to rgb with optional alpha property. */
21
19
  function hexToRGBA(hex, alpha) {
22
20
  let hexStr = hex;
@@ -30,9 +28,19 @@ function hexToRGBA(hex, alpha) {
30
28
  const r = parseInt(hexStr.slice(0, 2), 16);
31
29
  const g = parseInt(hexStr.slice(2, 4), 16);
32
30
  const b = parseInt(hexStr.slice(4, 6), 16);
33
- return (0, exports.buildRGBA)(r, g, b, alpha);
31
+ return alpha !== undefined ? `rgba(${r}, ${g}, ${b}, ${alpha})` : `rgb(${r}, ${g}, ${b})`;
34
32
  }
35
33
  exports.hexToRGBA = hexToRGBA;
34
+ function vuiColorToRGBA(color, alpha) {
35
+ if (!color.includes('.'))
36
+ return 'transparent';
37
+ const [colorName, shade] = color.split('.');
38
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
39
+ // @ts-ignore
40
+ const x = parseHSL(theme_1.colors[colorName][shade]);
41
+ return HSLToRGBA(x.h, x.s, x.l, alpha || shade === 'main' ? 1 : parseInt(shade));
42
+ }
43
+ exports.vuiColorToRGBA = vuiColorToRGBA;
36
44
  /** Converts hsl color value to rgb with optional alpha property. */
37
45
  function HSLToRGBA(h, s, l, alpha) {
38
46
  s /= 100;
@@ -72,7 +80,7 @@ function HSLToRGBA(h, s, l, alpha) {
72
80
  r = Math.round((r + m) * 255);
73
81
  g = Math.round((g + m) * 255);
74
82
  b = Math.round((b + m) * 255);
75
- return (0, exports.buildRGBA)(r, g, b, alpha);
83
+ return alpha !== undefined ? `rgba(${r}, ${g}, ${b}, ${alpha})` : `rgb(${r}, ${g}, ${b})`;
76
84
  }
77
85
  exports.HSLToRGBA = HSLToRGBA;
78
86
  /** Styling to add ellipsis for long texts. */
@@ -1 +1 @@
1
- {"version":3,"file":"breadcrumbs.d.ts","sourceRoot":"","sources":["../../../src/breadcrumbs/breadcrumbs.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA+B,YAAY,EAAE,MAAM,SAAS,CAAA;AAEnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,eAAe,MAAM,mBAAmB,CAAA;AAI/C,eAAO,MAAM,eAAe,+HAI3B,CAAA;AAED,8KAA8K;AAC9K,eAAO,MAAM,WAAW;UAmBhB,sBAAsB;CAC7B,CAAA;AAID,eAAe,WAAW,CAAA"}
1
+ {"version":3,"file":"breadcrumbs.d.ts","sourceRoot":"","sources":["../../../src/breadcrumbs/breadcrumbs.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA+B,YAAY,EAAE,MAAM,SAAS,CAAA;AAEnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,eAAe,MAAM,mBAAmB,CAAA;AAI/C,eAAO,MAAM,eAAe,+HAQ3B,CAAA;AAED,8KAA8K;AAC9K,eAAO,MAAM,WAAW;UA0BhB,sBAAsB;CAC7B,CAAA;AAID,eAAe,WAAW,CAAA"}
@@ -8,16 +8,20 @@ export const BreadcrumbsBase = styled.divBox `
8
8
  display: flex;
9
9
  min-width: 0;
10
10
  transition-duration: normal;
11
+
12
+ .vui-breadcrumbs-item:last-of-type {
13
+ font-weight: 600;
14
+ }
11
15
  `;
12
16
  /** Breadcrumbs consist of a list of items that help a user visualize a page's location within the hierarchical structure of a website, and allow correspondent navigation. */
13
17
  export const Breadcrumbs = vui((props, ref) => {
14
- const { children, className, size, ...rest } = props;
18
+ const { children, className, size, variant, ...rest } = props;
15
19
  const styles = useStyleConfig('Breadcrumbs', props);
16
- const context = useMemo(() => filterUndefined({ size }), [size]);
20
+ const context = useMemo(() => filterUndefined({ size, variant }), [size, variant]);
17
21
  const aliasedProps = filterUndefined({});
18
22
  const arrayChildren = Children.toArray(children);
19
23
  return (React.createElement(BreadcrumbsProvider, { value: context },
20
- React.createElement(BreadcrumbsBase, { className: cs('vui-breadcrumbs', className), ref: ref, ...styles, ...aliasedProps, ...rest }, Children.map(arrayChildren, (child, key) => (React.createElement(Fragment, { key: key },
24
+ React.createElement(BreadcrumbsBase, { className: cs('vui-breadcrumbs', className), ref: ref, ...styles.main, ...aliasedProps, ...rest }, Children.map(arrayChildren, (child, key) => (React.createElement(Fragment, { key: key },
21
25
  child,
22
26
  key !== arrayChildren.length - 1 && React.createElement(BreadcrumbsSeparator, null)))))));
23
27
  });
@@ -1,6 +1,5 @@
1
1
  import { ReactNode } from 'react';
2
2
  import { BoxProps } from '../box';
3
- import { IconProp } from '../icon';
4
3
  import { SystemProps } from '../system';
5
4
  import { ThemingProps } from '../theme';
6
5
  export declare type BreadcrumbsProps = SystemProps & ThemingProps<'Breadcrumbs'>;
@@ -9,8 +8,6 @@ export declare type BreadcrumbsItemProps = BoxProps & {
9
8
  className?: string;
10
9
  /** Content */
11
10
  children?: ReactNode;
12
- /** Icon */
13
- icon?: IconProp;
14
11
  };
15
12
  export declare type BreadcrumbsSeparatorProps = BoxProps & {
16
13
  /** Custom class name */
@@ -1 +1 @@
1
- {"version":3,"file":"breadcrumbs.types.d.ts","sourceRoot":"","sources":["../../../src/breadcrumbs/breadcrumbs.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjC,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,oBAAY,gBAAgB,GAAG,WAAW,GAAG,YAAY,CAAC,aAAa,CAAC,CAAA;AAExE,oBAAY,oBAAoB,GAAG,QAAQ,GAAG;IAC5C,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc;IACd,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,WAAW;IACX,IAAI,CAAC,EAAE,QAAQ,CAAA;CAChB,CAAA;AAED,oBAAY,yBAAyB,GAAG,QAAQ,GAAG;IACjD,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc;IACd,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,yCAAyC;IACzC,OAAO,CAAC,EAAE,SAAS,CAAA;CACpB,CAAA"}
1
+ {"version":3,"file":"breadcrumbs.types.d.ts","sourceRoot":"","sources":["../../../src/breadcrumbs/breadcrumbs.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjC,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,oBAAY,gBAAgB,GAAG,WAAW,GAAG,YAAY,CAAC,aAAa,CAAC,CAAA;AAExE,oBAAY,oBAAoB,GAAG,QAAQ,GAAG;IAC5C,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc;IACd,QAAQ,CAAC,EAAE,SAAS,CAAA;CACrB,CAAA;AAED,oBAAY,yBAAyB,GAAG,QAAQ,GAAG;IACjD,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc;IACd,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,yCAAyC;IACzC,OAAO,CAAC,EAAE,SAAS,CAAA;CACpB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"breadcrumbsItem.d.ts","sourceRoot":"","sources":["../../../src/breadcrumbs/breadcrumbsItem.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAyC,YAAY,EAAE,MAAM,SAAS,CAAA;AAG7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAG1D,yBAAyB;AACzB,eAAO,MAAM,eAAe,2CAmBmB,CAAA;AAE/C,eAAe,eAAe,CAAA"}
1
+ {"version":3,"file":"breadcrumbsItem.d.ts","sourceRoot":"","sources":["../../../src/breadcrumbs/breadcrumbsItem.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAyC,YAAY,EAAE,MAAM,SAAS,CAAA;AAE7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAG1D,yBAAyB;AACzB,eAAO,MAAM,eAAe,2CAemB,CAAA;AAE/C,eAAe,eAAe,CAAA"}
@@ -1,16 +1,12 @@
1
1
  import React from 'react';
2
2
  import { Box } from '../box';
3
3
  import { omitThemingProps, useStyleConfig, vui } from '../core';
4
- import { Icon } from '../icon';
5
4
  import { cs } from '../utils';
6
5
  import { useBreadcrumbsContext } from './context';
7
6
  /** A Breadcrumb item. */
8
7
  export const BreadcrumbsItem = vui((props, ref) => {
9
- const { className, children, icon, ...rest } = omitThemingProps(props);
8
+ const { className, children, ...rest } = omitThemingProps(props);
10
9
  const styles = useStyleConfig('Breadcrumbs', useBreadcrumbsContext());
11
- const color = rest.color || 'darkBlue.main';
12
- return (React.createElement(Box, { alignItems: "center", className: cs('vui-breadcrumbs-item', className), color: color, p: 0, ref: ref, ...rest, ...styles.item },
13
- !!icon && React.createElement(Icon, { name: icon, pathFill: color, size: "sm" }),
14
- children));
10
+ return (React.createElement(Box, { alignItems: "center", className: cs('vui-breadcrumbs-item', className), p: 0, ref: ref, ...styles.item, ...rest }, children));
15
11
  });
16
12
  export default BreadcrumbsItem;
@@ -1 +1 @@
1
- {"version":3,"file":"breadcrumbsSeparator.d.ts","sourceRoot":"","sources":["../../../src/breadcrumbs/breadcrumbsSeparator.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAA;AAE/D,6BAA6B;AAC7B,eAAO,MAAM,oBAAoB,8CAA+C,yBAAyB,gBAIxG,CAAA;AAED,eAAe,oBAAoB,CAAA"}
1
+ {"version":3,"file":"breadcrumbsSeparator.d.ts","sourceRoot":"","sources":["../../../src/breadcrumbs/breadcrumbsSeparator.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAA;AAG/D,6BAA6B;AAC7B,eAAO,MAAM,oBAAoB,8CAA+C,yBAAyB,gBAQxG,CAAA;AAED,eAAe,oBAAoB,CAAA"}
@@ -1,7 +1,12 @@
1
1
  import React from 'react';
2
2
  import { Box } from '../box';
3
+ import { useStyleConfig } from '../core';
3
4
  import { Icon } from '../icon';
4
5
  import { cs } from '../utils';
6
+ import { useBreadcrumbsContext } from './context';
5
7
  /** Breadcrumbs separator. */
6
- export const BreadcrumbsSeparator = ({ className, children, content, ...rest }) => (React.createElement(Box, { alignItems: "center", className: cs('vui-breadcrumbs-separator', className), p: 0, ...rest }, content || children || React.createElement(Icon, { name: "falAngleRight", pathFill: "darkBlue.main" })));
8
+ export const BreadcrumbsSeparator = ({ className, children, content, ...rest }) => {
9
+ const styles = useStyleConfig('Breadcrumbs', useBreadcrumbsContext());
10
+ return (React.createElement(Box, { alignItems: "center", className: cs('vui-breadcrumbs-separator', className), p: 0, ...rest }, content || children || React.createElement(Icon, { name: "falAngleRight", ...styles.separator })));
11
+ };
7
12
  export default BreadcrumbsSeparator;
@@ -2,19 +2,81 @@ declare const _default: {
2
2
  baseStyle: {};
3
3
  defaultProps: {
4
4
  size: string;
5
+ variant: string;
5
6
  };
6
7
  sizes: {
8
+ xs: {
9
+ item: {
10
+ fontSize: number;
11
+ lineHeight: string;
12
+ };
13
+ separator: {
14
+ size: string;
15
+ };
16
+ };
7
17
  sm: {
8
- item: {};
18
+ item: {
19
+ fontSize: number;
20
+ lineHeight: string;
21
+ };
22
+ separator: {
23
+ size: string;
24
+ };
9
25
  };
10
26
  md: {
11
- item: {};
27
+ item: {
28
+ fontSize: number;
29
+ lineHeight: string;
30
+ };
31
+ separator: {
32
+ size: string;
33
+ };
12
34
  };
13
35
  lg: {
14
- item: {};
36
+ item: {
37
+ fontSize: number;
38
+ lineHeight: string;
39
+ };
40
+ separator: {
41
+ size: string;
42
+ };
43
+ };
44
+ };
45
+ variants: {
46
+ dark: {
47
+ item: {
48
+ color: string;
49
+ };
50
+ main: {
51
+ bg: string;
52
+ };
53
+ separator: {
54
+ pathFill: string;
55
+ };
56
+ };
57
+ white: {
58
+ item: {
59
+ color: string;
60
+ };
61
+ main: {
62
+ bg: string;
63
+ };
64
+ separator: {
65
+ pathFill: string;
66
+ };
67
+ };
68
+ light: {
69
+ item: {
70
+ color: string;
71
+ };
72
+ main: {
73
+ bg: string;
74
+ };
75
+ separator: {
76
+ pathFill: string;
77
+ };
15
78
  };
16
79
  };
17
- variants: {};
18
80
  };
19
81
  export default _default;
20
82
  //# sourceMappingURL=theme.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../../src/breadcrumbs/theme.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAoBA,wBAKC"}
1
+ {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../../src/breadcrumbs/theme.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4EA,wBAKC"}
@@ -1,19 +1,75 @@
1
1
  const baseStyle = {};
2
2
  const defaultProps = {
3
- size: 'md'
3
+ size: 'md',
4
+ variant: 'dark'
4
5
  };
5
6
  const sizes = {
7
+ xs: {
8
+ item: {
9
+ fontSize: 12,
10
+ lineHeight: '18px'
11
+ },
12
+ separator: {
13
+ size: 'xs'
14
+ }
15
+ },
6
16
  sm: {
7
- item: {}
17
+ item: {
18
+ fontSize: 14,
19
+ lineHeight: '22px'
20
+ },
21
+ separator: {
22
+ size: 'sm'
23
+ }
8
24
  },
9
25
  md: {
10
- item: {}
26
+ item: { fontSize: 16, lineHeight: '26px' },
27
+ separator: {
28
+ size: 'md'
29
+ }
11
30
  },
12
31
  lg: {
13
- item: {}
32
+ item: { fontSize: 18, lineHeight: '32px' },
33
+ separator: {
34
+ size: 'lg'
35
+ }
36
+ }
37
+ };
38
+ const variants = {
39
+ dark: {
40
+ item: {
41
+ color: 'seaBlue.main'
42
+ },
43
+ main: {
44
+ bg: 'transparent'
45
+ },
46
+ separator: {
47
+ pathFill: 'sandstone.10'
48
+ }
49
+ },
50
+ white: {
51
+ item: {
52
+ color: 'white'
53
+ },
54
+ main: {
55
+ bg: 'darkBlue.main'
56
+ },
57
+ separator: {
58
+ pathFill: 'white'
59
+ }
60
+ },
61
+ light: {
62
+ item: {
63
+ color: 'digiGreen.main'
64
+ },
65
+ main: {
66
+ bg: 'darkBlue.main'
67
+ },
68
+ separator: {
69
+ pathFill: 'white'
70
+ }
14
71
  }
15
72
  };
16
- const variants = {};
17
73
  export default {
18
74
  baseStyle,
19
75
  defaultProps,
@@ -1 +1 @@
1
- {"version":3,"file":"footer.d.ts","sourceRoot":"","sources":["../../../src/footer/footer.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAwC,YAAY,EAAE,MAAM,SAAS,CAAA;AAM5E,OAAO,EAAkB,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5D,OAAO,YAAY,MAAM,gBAAgB,CAAA;AACzC,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAC3C,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAC3C,OAAO,UAAU,MAAM,cAAc,CAAA;AACrC,OAAO,SAAS,MAAM,aAAa,CAAA;AACnC,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAK3C,eAAO,MAAM,UAAU,+HAItB,CAAA;AAGD,oGAAoG;AACpG,eAAO,MAAM,MAAM;YAqGT,mBAAmB;aAClB,oBAAoB;aACpB,oBAAoB;UACvB,iBAAiB;SAClB,gBAAgB;aACZ,oBAAoB;CAC9B,CAAA;AASD,eAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"footer.d.ts","sourceRoot":"","sources":["../../../src/footer/footer.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAwC,YAAY,EAAE,MAAM,SAAS,CAAA;AAM5E,OAAO,EAAkB,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5D,OAAO,YAAY,MAAM,gBAAgB,CAAA;AACzC,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAC3C,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAC3C,OAAO,UAAU,MAAM,cAAc,CAAA;AACrC,OAAO,SAAS,MAAM,aAAa,CAAA;AACnC,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAK3C,eAAO,MAAM,UAAU,+HAItB,CAAA;AAGD,oGAAoG;AACpG,eAAO,MAAM,MAAM;YAuKT,mBAAmB;aAClB,oBAAoB;aACpB,oBAAoB;UACvB,iBAAiB;SAClB,gBAAgB;aACZ,oBAAoB;CAC9B,CAAA;AASD,eAAe,MAAM,CAAA"}
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ import { Box } from '../box';
2
3
  import { styled, useDown, useStyleConfig, vui } from '../core';
3
4
  import { Divider } from '../divider';
4
5
  import { Link } from '../link';
@@ -22,9 +23,14 @@ export const FooterBase = styled.divBox `
22
23
  /*@formatter:on*/
23
24
  /** Branded Veracity Footer with trademark and links sections. Controls max-width of the content. */
24
25
  export const Footer = vui((props, ref) => {
25
- const { children, className, columns, linkedIn, size, variant, isSlim, ...rest } = props;
26
+ const { applicationLinks, applicationStaticItems = [], children, className, columns, isApplication = false, linkedIn, size, variant, isSlim, ...rest } = props;
26
27
  const context = { size, variant };
27
28
  const styles = useStyleConfig('Footer', props);
29
+ if (isApplication) {
30
+ if (!applicationLinks) {
31
+ console.error('Footer: isApplication is true but applicationLinks is not set.');
32
+ }
33
+ }
28
34
  const slimLinks = [
29
35
  {
30
36
  id: 'home',
@@ -46,8 +52,19 @@ export const Footer = vui((props, ref) => {
46
52
  const downMd = useDown('md');
47
53
  const downLg = useDown('lg');
48
54
  return (React.createElement(FooterProvider, { value: context },
49
- React.createElement(FooterBase, { className: cs('vui-footer', className), py: isSlim ? (downMd ? '16px' : '9px') : 5, ...styles.container, ref: ref, ...rest },
50
- isSlim && (React.createElement(FooterContent, { alignContent: "center", alignItems: "center", maxW: { xs: 343, sm: 305, md: 720, lg: 975 } },
55
+ React.createElement(FooterBase, { className: cs('vui-footer', isApplication ? 'vui-footer-app' : '', className), px: isApplication ? '40px' : 3, py: isSlim ? (downMd ? '16px' : '9px') : 5, ...styles.container, ref: ref, ...rest },
56
+ isApplication && (React.createElement(FooterContent, { alignContent: "center", alignItems: "center", maxW: "100%" },
57
+ React.createElement(FooterRow, { alignContent: "space-between", w: 1 },
58
+ React.createElement(Box, { alignItems: "self-start", columnGap: 3, flex: { xs: '0 0 100%', sm: '0 0 100%', md: '0 0 100%', lg: '0 0 50%' }, py: { xs: 1, sm: 1, md: 1.25, lg: 1.5 }, wrap: true }, applicationLinks?.map((link, index) => (React.createElement(Box, { flex: { xs: '0 0 50%', sm: '0 0 auto' }, key: index, minW: 70 },
59
+ React.createElement(FooterLink, { ...link }))))),
60
+ downLg && React.createElement(Divider, { borderColor: "sandstone.main", mb: 0.5, mt: 1, w: 1 }),
61
+ React.createElement(Box, { centerV: true, columnGap: 3, flex: { xs: '0 0 100%', sm: '0 0 100%', md: '0 0 100%', lg: '0 0 50%' }, justifyContent: { sm: 'center', lg: 'flex-end' }, py: { xs: 1, sm: 1, md: 1.25, lg: 1.5 }, wrap: true },
62
+ applicationStaticItems?.map((text, index) => (React.createElement(Box, { key: index },
63
+ React.createElement(T, { size: "sm" }, text)))),
64
+ React.createElement(Box, null,
65
+ React.createElement(Link, { fontWeight: "demi", href: linkedIn ?? defaultLinkedInUrl, iconLeft: React.createElement(Link.Icon, { mr: 1, name: "cubCircleLinkedIn", radius: "50%", size: "xs" }), isExternal: true, size: { _: 'sm', md: 'md' }, ...styles.link },
66
+ React.createElement(FooterHeading, { fontSize: "16px", mb: 0, text: "Follow us" }))))))),
67
+ !isApplication && isSlim && (React.createElement(FooterContent, { alignContent: "center", alignItems: "center", maxW: { xs: 343, sm: 305, md: 720, lg: 975 } },
51
68
  React.createElement(FooterRow, null,
52
69
  slimLinks.map((link, index) => {
53
70
  /** if the screen is small drop one specific link */
@@ -64,7 +81,7 @@ export const Footer = vui((props, ref) => {
64
81
  React.createElement(FooterSlimColumn, null,
65
82
  React.createElement(Link, { fontWeight: "demi", href: linkedIn ?? defaultLinkedInUrl, iconLeft: React.createElement(Link.Icon, { mr: 1, name: "cubCircleLinkedIn", radius: "50%", size: "xs" }), isExternal: true, size: { _: 'sm', md: 'md' }, ...styles.link },
66
83
  React.createElement(FooterHeading, { fontSize: "16px", mb: 0, text: "Follow us" })))))),
67
- !isSlim && (React.createElement(FooterContent, null,
84
+ !isApplication && !isSlim && (React.createElement(FooterContent, null,
68
85
  children ??
69
86
  (columns && (React.createElement(FooterRow, null, columns.map((sections, index) => (React.createElement(FooterColumn, { key: index, sections: sections })))))),
70
87
  children || columns ? React.createElement(Divider, { borderColor: "sandstone.main", my: 4 }) : null,
@@ -16,8 +16,11 @@ export declare type FooterLinkData = {
16
16
  url: string;
17
17
  };
18
18
  export declare type FooterProps = Omit<BoxProps, 'size' | 'variant'> & ThemingProps<'Footer'> & Pick<FooterTrademarkProps, 'linkedIn'> & {
19
+ applicationLinks?: FooterLinkData[];
20
+ applicationStaticItems?: string[];
19
21
  /** Data defining content of multiple columns. */
20
22
  columns?: FooterColumnData[];
23
+ isApplication?: boolean;
21
24
  isSlim?: boolean;
22
25
  };
23
26
  /** Section consists of multiple links with text (label) and url */
@@ -1 +1 @@
1
- {"version":3,"file":"footer.types.d.ts","sourceRoot":"","sources":["../../../src/footer/footer.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,yEAAyE;AACzE,oBAAY,gBAAgB,GAAG,iBAAiB,EAAE,CAAA;AAElD,oBAAY,iBAAiB,GAAG,QAAQ,GAAG;IACzC,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,iBAAiB,EAAE,CAAA;CAC/B,CAAA;AAED,oBAAY,kBAAkB,GAAG,QAAQ,CAAA;AAEzC,oBAAY,aAAa,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;AAEjE,oDAAoD;AACpD,oBAAY,cAAc,GAAG;IAC3B,kEAAkE;IAClE,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AAED,oBAAY,WAAW,GAAG,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC,GAC1D,YAAY,CAAC,QAAQ,CAAC,GACtB,IAAI,CAAC,oBAAoB,EAAE,UAAU,CAAC,GAAG;IACvC,iDAAiD;IACjD,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CAAA;AAEH,mEAAmE;AACnE,oBAAY,iBAAiB,GAAG;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,2CAA2C;IAC3C,KAAK,CAAC,EAAE,cAAc,EAAE,CAAA;CACzB,CAAA;AAED,oBAAY,kBAAkB,GAAG,QAAQ,GAAG;IAC1C,kDAAkD;IAClD,OAAO,CAAC,EAAE,iBAAiB,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC,OAAO,CAAA;IACpD,oDAAoD;IACpD,KAAK,CAAC,EAAE,iBAAiB,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,OAAO,CAAA;CACjD,CAAA;AAED,oBAAY,oBAAoB,GAAG,QAAQ,GAAG;IAC5C,kEAAkE;IAClE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAAA"}
1
+ {"version":3,"file":"footer.types.d.ts","sourceRoot":"","sources":["../../../src/footer/footer.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,yEAAyE;AACzE,oBAAY,gBAAgB,GAAG,iBAAiB,EAAE,CAAA;AAElD,oBAAY,iBAAiB,GAAG,QAAQ,GAAG;IACzC,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,iBAAiB,EAAE,CAAA;CAC/B,CAAA;AAED,oBAAY,kBAAkB,GAAG,QAAQ,CAAA;AAEzC,oBAAY,aAAa,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;AAEjE,oDAAoD;AACpD,oBAAY,cAAc,GAAG;IAC3B,kEAAkE;IAClE,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AAED,oBAAY,WAAW,GAAG,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC,GAC1D,YAAY,CAAC,QAAQ,CAAC,GACtB,IAAI,CAAC,oBAAoB,EAAE,UAAU,CAAC,GAAG;IACvC,gBAAgB,CAAC,EAAE,cAAc,EAAE,CAAA;IACnC,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAA;IACjC,iDAAiD;IACjD,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CAAA;AAEH,mEAAmE;AACnE,oBAAY,iBAAiB,GAAG;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,2CAA2C;IAC3C,KAAK,CAAC,EAAE,cAAc,EAAE,CAAA;CACzB,CAAA;AAED,oBAAY,kBAAkB,GAAG,QAAQ,GAAG;IAC1C,kDAAkD;IAClD,OAAO,CAAC,EAAE,iBAAiB,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC,OAAO,CAAA;IACpD,oDAAoD;IACpD,KAAK,CAAC,EAAE,iBAAiB,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,OAAO,CAAA;CACjD,CAAA;AAED,oBAAY,oBAAoB,GAAG,QAAQ,GAAG;IAC5C,kEAAkE;IAClE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAAA"}
@@ -15,11 +15,13 @@ import HeaderNotifications from './headerNotifications';
15
15
  import HeaderServices from './headerServices';
16
16
  import HeaderServicesMessage from './headerServicesMessage';
17
17
  import HeaderSignIn from './headerSignIn';
18
+ import HeaderSupport from './headerSupport';
18
19
  export declare const HeaderBase: import("styled-components").StyledComponent<"header", import("styled-components").DefaultTheme, import("..").SystemProps, never>;
19
20
  /** Branded Veracity Header with logo, links, services, account and other data. Controls max-width of the content. */
20
21
  export declare const Header: VuiComponent<"header", HeaderProps> & {
21
22
  Account: typeof HeaderAccount;
22
23
  AccountUserInfo: typeof HeaderAccountUserInfo;
24
+ Support: typeof HeaderSupport;
23
25
  ApplicationName: typeof HeaderApplicationName;
24
26
  Content: typeof HeaderContent;
25
27
  CreateAccount: typeof HeaderCreateAccount;
@@ -1 +1 @@
1
- {"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../src/header/header.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAgD,YAAY,EAAE,MAAM,SAAS,CAAA;AAGpF,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAC3C,OAAO,qBAAqB,MAAM,yBAAyB,CAAA;AAC3D,OAAO,qBAAqB,MAAM,yBAAyB,CAAA;AAC3D,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAC3C,OAAO,mBAAmB,MAAM,uBAAuB,CAAA;AACvD,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAC3C,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAC7C,OAAO,UAAU,MAAM,cAAc,CAAA;AACrC,OAAO,eAAe,MAAM,mBAAmB,CAAA;AAC/C,OAAO,mBAAmB,MAAM,uBAAuB,CAAA;AACvD,OAAO,kBAAkB,MAAM,sBAAsB,CAAA;AACrD,OAAO,mBAAmB,MAAM,uBAAuB,CAAA;AACvD,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAC7C,OAAO,qBAAqB,MAAM,yBAAyB,CAAA;AAC3D,OAAO,YAAY,MAAM,gBAAgB,CAAA;AAGzC,eAAO,MAAM,UAAU,kIAMtB,CAAA;AAGD,qHAAqH;AACrH,eAAO,MAAM,MAAM;aA4CR,oBAAoB;qBACZ,4BAA4B;qBAC5B,4BAA4B;aACpC,oBAAoB;mBACd,0BAA0B;aAChC,oBAAoB;cACnB,qBAAqB;UACzB,iBAAiB;eACZ,sBAAsB;mBAClB,0BAA0B;kBAC3B,yBAAyB;mBACxB,0BAA0B;cAC/B,qBAAqB;qBACd,4BAA4B;YACrC,mBAAmB;CAC5B,CAAA;AAkBD,eAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../src/header/header.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAgD,YAAY,EAAE,MAAM,SAAS,CAAA;AAGpF,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAC3C,OAAO,qBAAqB,MAAM,yBAAyB,CAAA;AAC3D,OAAO,qBAAqB,MAAM,yBAAyB,CAAA;AAC3D,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAC3C,OAAO,mBAAmB,MAAM,uBAAuB,CAAA;AACvD,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAC3C,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAC7C,OAAO,UAAU,MAAM,cAAc,CAAA;AACrC,OAAO,eAAe,MAAM,mBAAmB,CAAA;AAC/C,OAAO,mBAAmB,MAAM,uBAAuB,CAAA;AACvD,OAAO,kBAAkB,MAAM,sBAAsB,CAAA;AACrD,OAAO,mBAAmB,MAAM,uBAAuB,CAAA;AACvD,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAC7C,OAAO,qBAAqB,MAAM,yBAAyB,CAAA;AAC3D,OAAO,YAAY,MAAM,gBAAgB,CAAA;AACzC,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAG3C,eAAO,MAAM,UAAU,kIAMtB,CAAA;AAGD,qHAAqH;AACrH,eAAO,MAAM,MAAM;aA4CR,oBAAoB;qBACZ,4BAA4B;aACpC,oBAAoB;qBACZ,4BAA4B;aACpC,oBAAoB;mBACd,0BAA0B;aAChC,oBAAoB;cACnB,qBAAqB;UACzB,iBAAiB;eACZ,sBAAsB;mBAClB,0BAA0B;kBAC3B,yBAAyB;mBACxB,0BAA0B;cAC/B,qBAAqB;qBACd,4BAA4B;YACrC,mBAAmB;CAC5B,CAAA;AAmBD,eAAe,MAAM,CAAA"}