@veracity/vui 0.4.0 → 0.5.0

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 (165) hide show
  1. package/button/button.d.ts +15 -1
  2. package/button/button.js +3 -3
  3. package/button/theme.d.ts +2 -0
  4. package/button/theme.js +3 -2
  5. package/buttonGroup/buttonGroup.d.ts +1 -1
  6. package/buttonGroup/buttonGroup.js +1 -1
  7. package/buttonGroup/helpers.js +3 -1
  8. package/checkbox/checkbox.d.ts +1 -1
  9. package/core/consts.d.ts +7 -0
  10. package/core/consts.js +8 -1
  11. package/core/index.d.ts +1 -0
  12. package/core/index.js +1 -0
  13. package/core/links.d.ts +20 -0
  14. package/core/links.js +173 -0
  15. package/dialog/consts.d.ts +3 -0
  16. package/dialog/consts.js +30 -0
  17. package/dialog/context.d.ts +4 -0
  18. package/dialog/context.js +23 -0
  19. package/dialog/dialog.d.ts +26 -0
  20. package/dialog/dialog.js +122 -0
  21. package/dialog/dialog.types.d.ts +47 -0
  22. package/dialog/dialog.types.js +2 -0
  23. package/dialog/dialogBody.d.ts +9 -0
  24. package/dialog/dialogBody.js +85 -0
  25. package/dialog/dialogCancelButton.d.ts +4 -0
  26. package/dialog/dialogCancelButton.js +30 -0
  27. package/dialog/dialogCloseButton.d.ts +4 -0
  28. package/dialog/dialogCloseButton.js +30 -0
  29. package/dialog/dialogFooter.d.ts +4 -0
  30. package/dialog/dialogFooter.js +45 -0
  31. package/dialog/dialogHeader.d.ts +4 -0
  32. package/dialog/dialogHeader.js +53 -0
  33. package/dialog/dialogIcon.d.ts +4 -0
  34. package/dialog/dialogIcon.js +32 -0
  35. package/dialog/dialogSubmitButton.d.ts +4 -0
  36. package/dialog/dialogSubmitButton.js +28 -0
  37. package/dialog/dialogTitle.d.ts +4 -0
  38. package/dialog/dialogTitle.js +30 -0
  39. package/dialog/index.d.ts +13 -0
  40. package/dialog/index.js +30 -0
  41. package/dialog/theme.d.ts +22 -0
  42. package/dialog/theme.js +28 -0
  43. package/footer/context.d.ts +4 -0
  44. package/footer/context.js +23 -0
  45. package/footer/footer.d.ts +2 -0
  46. package/footer/footer.js +11 -29
  47. package/footer/footer.types.d.ts +19 -16
  48. package/footer/footerColumn.d.ts +2 -218
  49. package/footer/footerColumn.js +16 -2
  50. package/footer/footerContent.d.ts +3 -0
  51. package/footer/footerContent.js +28 -0
  52. package/footer/footerHeading.js +2 -1
  53. package/footer/footerLink.js +2 -1
  54. package/footer/footerRow.js +2 -1
  55. package/footer/footerSection.js +4 -3
  56. package/footer/footerTrademark.d.ts +3 -5
  57. package/footer/footerTrademark.js +23 -6
  58. package/footer/helpers.d.ts +6 -8
  59. package/footer/helpers.js +79 -21
  60. package/footer/index.d.ts +1 -1
  61. package/footer/index.js +1 -1
  62. package/footer/theme.js +1 -1
  63. package/grid/grid.d.ts +5 -0
  64. package/grid/grid.js +47 -0
  65. package/grid/grid.types.d.ts +3 -0
  66. package/grid/grid.types.js +2 -0
  67. package/grid/index.d.ts +3 -0
  68. package/grid/index.js +20 -0
  69. package/grid/theme.d.ts +7 -0
  70. package/grid/theme.js +12 -0
  71. package/header/header.d.ts +7 -6
  72. package/header/header.js +12 -12
  73. package/header/header.types.d.ts +27 -31
  74. package/header/headerAccount.d.ts +5 -1
  75. package/header/headerAccount.js +17 -38
  76. package/header/headerAccount.types.d.ts +12 -12
  77. package/header/headerAccountUserInfo.d.ts +4 -0
  78. package/header/headerAccountUserInfo.js +46 -0
  79. package/header/headerContent.d.ts +2 -3
  80. package/header/headerContent.js +2 -2
  81. package/header/headerCreateAccount.js +4 -4
  82. package/header/headerLogo.js +6 -4
  83. package/header/headerMainLinks.d.ts +4 -0
  84. package/header/{headerLinksList.js → headerMainLinks.js} +5 -5
  85. package/header/headerNotifications.js +8 -7
  86. package/header/headerServices.d.ts +5 -1
  87. package/header/headerServices.js +18 -13
  88. package/header/headerServicesMessage.d.ts +4 -0
  89. package/header/headerServicesMessage.js +49 -0
  90. package/header/headerSignIn.js +4 -2
  91. package/header/helpers.d.ts +6 -15
  92. package/header/helpers.js +82 -33
  93. package/header/index.d.ts +3 -2
  94. package/header/index.js +3 -2
  95. package/header/loggedInHeader.js +9 -9
  96. package/header/loggedOutHeader.js +9 -9
  97. package/header/theme.d.ts +8 -6
  98. package/header/theme.js +9 -5
  99. package/index.d.ts +2 -0
  100. package/index.js +2 -0
  101. package/input/input.js +1 -1
  102. package/link/linkText.js +1 -1
  103. package/list/listHeading.js +1 -1
  104. package/list/listItem.js +1 -1
  105. package/list/theme.d.ts +2 -4
  106. package/list/theme.js +2 -4
  107. package/modal/{modalBackdrop.d.ts → ModalBackdrop.d.ts} +1 -1
  108. package/modal/{modalBackdrop.js → ModalBackdrop.js} +6 -7
  109. package/modal/ModalContent.d.ts +4 -0
  110. package/modal/ModalContent.js +38 -0
  111. package/modal/index.d.ts +2 -0
  112. package/modal/index.js +2 -0
  113. package/modal/modal.d.ts +7 -2
  114. package/modal/modal.js +30 -26
  115. package/modal/modal.types.d.ts +8 -2
  116. package/modal/theme.d.ts +1 -0
  117. package/modal/theme.js +2 -0
  118. package/notification/theme.js +1 -1
  119. package/package.json +1 -1
  120. package/popover/popoverTrigger.js +7 -2
  121. package/radio/radio.d.ts +1 -1
  122. package/radio/radioGroup.js +1 -1
  123. package/system/custom.d.ts +0 -4
  124. package/system/custom.js +1 -15
  125. package/system/effects.d.ts +4 -4
  126. package/system/grids.d.ts +5 -3
  127. package/system/system.d.ts +2 -2
  128. package/system/system.js +1 -1
  129. package/system/transitions.d.ts +1 -1
  130. package/tag/tag.js +1 -2
  131. package/tag/theme.d.ts +1 -0
  132. package/tag/theme.js +2 -1
  133. package/textarea/textarea.js +2 -2
  134. package/theme/components.d.ts +47 -10
  135. package/theme/components.js +48 -42
  136. package/theme/defaultTheme.d.ts +76 -11
  137. package/theme/foundations/gridTemplateColumns.d.ts +15 -0
  138. package/theme/foundations/gridTemplateColumns.js +16 -0
  139. package/theme/foundations/gridTemplateRows.d.ts +9 -0
  140. package/theme/foundations/gridTemplateRows.js +10 -0
  141. package/theme/foundations/index.d.ts +29 -1
  142. package/theme/foundations/index.js +6 -0
  143. package/theme/foundations/timingFunctions.d.ts +2 -0
  144. package/theme/foundations/timingFunctions.js +3 -0
  145. package/theme/foundations/zIndices.d.ts +6 -1
  146. package/theme/foundations/zIndices.js +6 -1
  147. package/theme/types.d.ts +9 -1
  148. package/utils/assertion.d.ts +2 -0
  149. package/utils/assertion.js +6 -1
  150. package/utils/function.d.ts +4 -0
  151. package/utils/function.js +19 -1
  152. package/utils/index.d.ts +1 -1
  153. package/utils/index.js +1 -1
  154. package/utils/number.d.ts +2 -0
  155. package/utils/number.js +10 -0
  156. package/utils/object.js +9 -17
  157. package/utils/react.d.ts +2 -0
  158. package/utils/react.js +6 -1
  159. package/footer/consts.d.ts +0 -169
  160. package/footer/consts.js +0 -141
  161. package/header/consts.d.ts +0 -58
  162. package/header/consts.js +0 -76
  163. package/header/headerLinksList.d.ts +0 -4
  164. package/utils/string.d.ts +0 -5
  165. package/utils/string.js +0 -19
@@ -1,6 +1,4 @@
1
- /// <reference types="react" />
2
- import { BoxProps } from '../box';
3
- import { PropsOf } from '../utils';
4
- /** Veracity trademark. Always included in the Footer. */
5
- declare const FooterTrademark: (props: PropsOf<'div', BoxProps>) => JSX.Element;
1
+ import { FooterTrademarkProps } from './footer.types';
2
+ /** Section includes a heading and a set of links. */
3
+ export declare const FooterTrademark: import("../core").VuiComponent<"div", FooterTrademarkProps>;
6
4
  export default FooterTrademark;
@@ -10,23 +10,40 @@ var __assign = (this && this.__assign) || function () {
10
10
  };
11
11
  return __assign.apply(this, arguments);
12
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
+ };
13
24
  var __importDefault = (this && this.__importDefault) || function (mod) {
14
25
  return (mod && mod.__esModule) ? mod : { "default": mod };
15
26
  };
16
27
  Object.defineProperty(exports, "__esModule", { value: true });
28
+ exports.FooterTrademark = void 0;
17
29
  var react_1 = __importDefault(require("react"));
18
30
  var box_1 = __importDefault(require("../box"));
31
+ var core_1 = require("../core");
19
32
  var link_1 = __importDefault(require("../link"));
20
33
  var t_1 = __importDefault(require("../t"));
34
+ var context_1 = require("./context");
21
35
  var footerColumn_1 = __importDefault(require("./footerColumn"));
22
- /** Veracity trademark. Always included in the Footer. */
23
- var FooterTrademark = function (props) {
24
- return (react_1.default.createElement(box_1.default, __assign({ className: "vui-footerTrademark", w: "100%", wrap: true }, props),
36
+ var defaultLinkedInUrl = 'https://www.linkedin.com/showcase/veracity-data-platform';
37
+ /** Section includes a heading and a set of links. */
38
+ exports.FooterTrademark = (0, core_1.vui)(function (props, ref) {
39
+ var linkedIn = props.linkedIn, rest = __rest(props, ["linkedIn"]);
40
+ var styles = (0, core_1.useStyleConfig)('Footer', (0, context_1.useFooterContext)());
41
+ return (react_1.default.createElement(box_1.default, __assign({ className: "vui-footerTrademark", ref: ref, w: "100%", wrap: true }, styles.trademark, rest),
25
42
  react_1.default.createElement(footerColumn_1.default, { centerV: true, flex: { xs: '0 0 100%', md: '0 0 25%' } },
26
- react_1.default.createElement(link_1.default, { colorScheme: "white", fontWeight: "demi", href: "https://www.linkedin.com/showcase/veracity-data-platform/", iconLeft: react_1.default.createElement(link_1.default.Icon, { mr: 1, name: "fabLinkedin", size: "sm" }), isExternal: true }, "Follow us")),
43
+ react_1.default.createElement(link_1.default, { colorScheme: "white", fontWeight: "demi", href: linkedIn !== null && linkedIn !== void 0 ? linkedIn : defaultLinkedInUrl, iconLeft: react_1.default.createElement(link_1.default.Icon, { mr: 1, name: "fabLinkedin", size: "sm" }), isExternal: true }, "Follow us")),
27
44
  react_1.default.createElement(footerColumn_1.default, { centerV: true, flex: { xs: '0 0 100%', md: '0 0 75%' } },
28
45
  react_1.default.createElement(t_1.default, { size: "xs" },
29
46
  react_1.default.createElement(t_1.default, { size: "xs", weight: "demi" }, "Veracity by DNV"),
30
47
  ", DNV AS, NO-1322 H\u00F8vik, Norway"))));
31
- };
32
- exports.default = FooterTrademark;
48
+ });
49
+ exports.default = exports.FooterTrademark;
@@ -1,9 +1,7 @@
1
1
  import { Environment } from '../utils';
2
- import { FooterColumnsData } from './footer.types';
3
- /**
4
- * Computes Footer columns with appropriate sections and links.
5
- * Links are selected per environment and modified based on log in state.
6
- * @param environment current application environment
7
- * @param isLoggedIn is current user logged in
8
- */
9
- export declare function getFooterColumns(environment: Environment, isLoggedIn?: boolean): FooterColumnsData;
2
+ import { FooterColumnData } from './footer.types';
3
+ /** Loads templates for Footer links and enriches them with urls from LinksContext. */
4
+ export declare function useFooterLinks(env: Environment): {
5
+ columns: FooterColumnData[] | undefined;
6
+ linkedIn: string | undefined;
7
+ };
package/footer/helpers.js CHANGED
@@ -10,6 +10,42 @@ var __assign = (this && this.__assign) || function () {
10
10
  };
11
11
  return __assign.apply(this, arguments);
12
12
  };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ var __generator = (this && this.__generator) || function (thisArg, body) {
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
+ function verb(n) { return function (v) { return step([n, v]); }; }
26
+ function step(op) {
27
+ if (f) throw new TypeError("Generator is already executing.");
28
+ while (_) try {
29
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
+ if (y = 0, t) op = [op[0] & 2, t.value];
31
+ switch (op[0]) {
32
+ case 0: case 1: t = op; break;
33
+ case 4: _.label++; return { value: op[1], done: false };
34
+ case 5: _.label++; y = op[1]; op = [0]; continue;
35
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
+ default:
37
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
+ if (t[2]) _.ops.pop();
42
+ _.trys.pop(); continue;
43
+ }
44
+ op = body.call(thisArg, _);
45
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
+ }
48
+ };
13
49
  var __read = (this && this.__read) || function (o, n) {
14
50
  var m = typeof Symbol === "function" && o[Symbol.iterator];
15
51
  if (!m) return o;
@@ -27,29 +63,51 @@ var __read = (this && this.__read) || function (o, n) {
27
63
  return ar;
28
64
  };
29
65
  Object.defineProperty(exports, "__esModule", { value: true });
30
- exports.getFooterColumns = void 0;
66
+ exports.useFooterLinks = void 0;
67
+ var react_1 = require("react");
68
+ var core_1 = require("../core");
31
69
  var utils_1 = require("../utils");
32
- var consts_1 = require("./consts");
33
- /**
34
- * Computes Footer columns with appropriate sections and links.
35
- * Links are selected per environment and modified based on log in state.
36
- * @param environment current application environment
37
- * @param isLoggedIn is current user logged in
38
- */
39
- function getFooterColumns(environment, isLoggedIn) {
40
- if (isLoggedIn === void 0) { isLoggedIn = false; }
41
- // Ok to clone object with JSON here
42
- var columns = JSON.parse(JSON.stringify(consts_1.footerColumnsTemplate));
43
- Object.entries(columns).forEach(function (_a) {
44
- var _b = __read(_a, 2), columnName = _b[0], column = _b[1];
45
- Object.entries(column).forEach(function (_a) {
46
- var _b = __read(_a, 2), sectionName = _b[0], section = _b[1];
47
- columns[columnName][sectionName].links = section.links.map(function (link) {
48
- var url = consts_1.footerLinks[environment][link.url];
49
- return __assign(__assign({}, link), { url: (0, utils_1.getLoggedInLink)(url, isLoggedIn) });
70
+ /** Loads templates for Footer links and enriches them with urls from LinksContext. */
71
+ function useFooterLinks(env) {
72
+ var _a;
73
+ var _b = __read((0, react_1.useState)({}), 2), templates = _b[0], setTemplates = _b[1];
74
+ var _c = __read((0, core_1.useLinks)(), 1), links = _c[0];
75
+ (0, react_1.useEffect)(function () {
76
+ loadFooterlinks();
77
+ function loadFooterlinks() {
78
+ return __awaiter(this, void 0, void 0, function () {
79
+ var response, data, _a;
80
+ return __generator(this, function (_b) {
81
+ switch (_b.label) {
82
+ case 0:
83
+ _b.trys.push([0, 3, , 4]);
84
+ return [4 /*yield*/, fetch(core_1.cdnUrls[env] + "/common/data/links/footer.json")];
85
+ case 1:
86
+ response = _b.sent();
87
+ if (!response.ok)
88
+ return [2 /*return*/];
89
+ return [4 /*yield*/, response.json()];
90
+ case 2:
91
+ data = _b.sent();
92
+ if ((0, utils_1.isObject)(data))
93
+ setTemplates(data);
94
+ return [3 /*break*/, 4];
95
+ case 3:
96
+ _a = _b.sent();
97
+ console.error('Failed to retrieve footer data.');
98
+ return [3 /*break*/, 4];
99
+ case 4: return [2 /*return*/];
100
+ }
101
+ });
50
102
  });
103
+ }
104
+ }, [env]);
105
+ var columns = (_a = templates.columns) === null || _a === void 0 ? void 0 : _a.map(function (column) {
106
+ return column.map(function (section) {
107
+ var _a;
108
+ return (__assign(__assign({}, section), { links: (_a = section.links) === null || _a === void 0 ? void 0 : _a.map(function (link) { var _a; return (__assign(__assign({}, link), { url: links === null || links === void 0 ? void 0 : links[(_a = link === null || link === void 0 ? void 0 : link.id) !== null && _a !== void 0 ? _a : ''] })); }) }));
51
109
  });
52
110
  });
53
- return columns;
111
+ return { columns: columns, linkedIn: templates.linkedIn };
54
112
  }
55
- exports.getFooterColumns = getFooterColumns;
113
+ exports.useFooterLinks = useFooterLinks;
package/footer/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
- export * from './consts';
2
1
  export * from './footer';
3
2
  export { default } from './footer';
4
3
  export * from './footer.types';
5
4
  export * from './footerColumn';
5
+ export * from './footerContent';
6
6
  export * from './footerHeading';
7
7
  export * from './footerLink';
8
8
  export * from './footerRow';
package/footer/index.js CHANGED
@@ -14,12 +14,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
14
14
  };
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
16
  exports.default = void 0;
17
- __exportStar(require("./consts"), exports);
18
17
  __exportStar(require("./footer"), exports);
19
18
  var footer_1 = require("./footer");
20
19
  Object.defineProperty(exports, "default", { enumerable: true, get: function () { return __importDefault(footer_1).default; } });
21
20
  __exportStar(require("./footer.types"), exports);
22
21
  __exportStar(require("./footerColumn"), exports);
22
+ __exportStar(require("./footerContent"), exports);
23
23
  __exportStar(require("./footerHeading"), exports);
24
24
  __exportStar(require("./footerLink"), exports);
25
25
  __exportStar(require("./footerRow"), exports);
package/footer/theme.js CHANGED
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  var baseStyle = {};
4
4
  var defaultProps = {};
5
- var parts = ['container', 'column', 'heading', 'link', 'row', 'section'];
5
+ var parts = ['container', 'column', 'content', 'heading', 'link', 'row', 'section', 'trademark'];
6
6
  var sizes = {};
7
7
  var variants = {};
8
8
  exports.default = {
package/grid/grid.d.ts ADDED
@@ -0,0 +1,5 @@
1
+ import { GridProps } from './grid.types';
2
+ export declare const GridBase: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, import("..").SystemProps, never>;
3
+ /** Displays a basic grid wrapper. */
4
+ export declare const Grid: import("../core").VuiComponent<"span", GridProps>;
5
+ export default Grid;
package/grid/grid.js ADDED
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __assign = (this && this.__assign) || function () {
7
+ __assign = Object.assign || function(t) {
8
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
9
+ s = arguments[i];
10
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11
+ t[p] = s[p];
12
+ }
13
+ return t;
14
+ };
15
+ return __assign.apply(this, arguments);
16
+ };
17
+ var __rest = (this && this.__rest) || function (s, e) {
18
+ var t = {};
19
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
20
+ t[p] = s[p];
21
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
22
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
23
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
24
+ t[p[i]] = s[p[i]];
25
+ }
26
+ return t;
27
+ };
28
+ var __importDefault = (this && this.__importDefault) || function (mod) {
29
+ return (mod && mod.__esModule) ? mod : { "default": mod };
30
+ };
31
+ Object.defineProperty(exports, "__esModule", { value: true });
32
+ exports.Grid = exports.GridBase = void 0;
33
+ var react_1 = __importDefault(require("react"));
34
+ var core_1 = require("../core");
35
+ var utils_1 = require("../utils");
36
+ exports.GridBase = core_1.styled.divBox(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n\tdisplay: grid;\n"], ["\n\tdisplay: grid;\n"
37
+ /** Displays a basic grid wrapper. */
38
+ ])));
39
+ /** Displays a basic grid wrapper. */
40
+ exports.Grid = (0, core_1.vui)(function (props, ref) {
41
+ var _a = (0, core_1.omitThemingProps)(props), className = _a.className, rest = __rest(_a, ["className"]);
42
+ var styles = (0, core_1.useStyleConfig)('Grid', props);
43
+ return react_1.default.createElement(exports.GridBase, __assign({ className: (0, utils_1.cs)('vui-grid', className), ref: ref }, styles, rest));
44
+ });
45
+ exports.Grid.displayName = 'Grid';
46
+ exports.default = exports.Grid;
47
+ var templateObject_1;
@@ -0,0 +1,3 @@
1
+ import { SystemProps } from '../system';
2
+ import { ThemingProps } from '../theme';
3
+ export declare type GridProps = SystemProps & ThemingProps<'Grid'>;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,3 @@
1
+ export * from './grid';
2
+ export { default } from './grid';
3
+ export * from './grid.types';
package/grid/index.js ADDED
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
+ };
12
+ var __importDefault = (this && this.__importDefault) || function (mod) {
13
+ return (mod && mod.__esModule) ? mod : { "default": mod };
14
+ };
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.default = void 0;
17
+ __exportStar(require("./grid"), exports);
18
+ var grid_1 = require("./grid");
19
+ Object.defineProperty(exports, "default", { enumerable: true, get: function () { return __importDefault(grid_1).default; } });
20
+ __exportStar(require("./grid.types"), exports);
@@ -0,0 +1,7 @@
1
+ declare const _default: {
2
+ baseStyle: {};
3
+ defaultProps: {};
4
+ sizes: {};
5
+ variants: {};
6
+ };
7
+ export default _default;
package/grid/theme.js ADDED
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var baseStyle = {};
4
+ var defaultProps = {};
5
+ var sizes = {};
6
+ var variants = {};
7
+ exports.default = {
8
+ baseStyle: baseStyle,
9
+ defaultProps: defaultProps,
10
+ sizes: sizes,
11
+ variants: variants
12
+ };
@@ -1,34 +1,35 @@
1
1
  import { VuiComponent } from '../core';
2
2
  import { HeaderProps } from './header.types';
3
3
  import HeaderAccount from './headerAccount';
4
+ import HeaderAccountUserInfo from './headerAccountUserInfo';
4
5
  import HeaderContent from './headerContent';
5
6
  import HeaderCreateAccount from './headerCreateAccount';
6
7
  import HeaderDivider from './headerDivider';
7
8
  import HeaderLinkItem from './headerLinkItem';
8
- import HeaderLinksList from './headerLinksList';
9
9
  import HeaderLogo from './headerLogo';
10
+ import HeaderMainLinks from './headerMainLinks';
10
11
  import HeaderMobileContent from './headerMobileContent';
11
12
  import HeaderMobileToggle from './headerMobileToggle';
12
13
  import HeaderNotifications from './headerNotifications';
13
14
  import HeaderServices from './headerServices';
15
+ import HeaderServicesMessage from './headerServicesMessage';
14
16
  import HeaderSignIn from './headerSignIn';
15
17
  export declare const HeaderBase: import("styled-components").StyledComponent<"header", import("styled-components").DefaultTheme, import("..").SystemProps, never>;
16
- /**
17
- * Branded Veracity Header with logo, links, services, account and other data. Controls max-width of the content.
18
- * Exposes some props to the children via context.
19
- */
18
+ /** Branded Veracity Header with logo, links, services, account and other data. Controls max-width of the content. */
20
19
  export declare const Header: VuiComponent<"header", HeaderProps> & {
21
20
  Account: typeof HeaderAccount;
21
+ AccountUserInfo: typeof HeaderAccountUserInfo;
22
22
  Content: typeof HeaderContent;
23
23
  CreateAccount: typeof HeaderCreateAccount;
24
24
  Divider: typeof HeaderDivider;
25
25
  LinkItem: typeof HeaderLinkItem;
26
- LinksList: typeof HeaderLinksList;
27
26
  Logo: typeof HeaderLogo;
27
+ MainLinks: typeof HeaderMainLinks;
28
28
  MobileContent: typeof HeaderMobileContent;
29
29
  MobileToggle: typeof HeaderMobileToggle;
30
30
  Notifications: typeof HeaderNotifications;
31
31
  Services: typeof HeaderServices;
32
+ ServicesMessage: typeof HeaderServicesMessage;
32
33
  SignIn: typeof HeaderSignIn;
33
34
  };
34
35
  export default Header;
package/header/header.js CHANGED
@@ -70,33 +70,30 @@ var core_1 = require("../core");
70
70
  var utils_1 = require("../utils");
71
71
  var context_1 = require("./context");
72
72
  var headerAccount_1 = __importDefault(require("./headerAccount"));
73
+ var headerAccountUserInfo_1 = __importDefault(require("./headerAccountUserInfo"));
73
74
  var headerContent_1 = __importDefault(require("./headerContent"));
74
75
  var headerCreateAccount_1 = __importDefault(require("./headerCreateAccount"));
75
76
  var headerDivider_1 = __importDefault(require("./headerDivider"));
76
77
  var headerLinkItem_1 = __importDefault(require("./headerLinkItem"));
77
- var headerLinksList_1 = __importDefault(require("./headerLinksList"));
78
78
  var headerLogo_1 = __importDefault(require("./headerLogo"));
79
+ var headerMainLinks_1 = __importDefault(require("./headerMainLinks"));
79
80
  var headerMobileContent_1 = __importDefault(require("./headerMobileContent"));
80
81
  var headerMobileToggle_1 = __importDefault(require("./headerMobileToggle"));
81
82
  var headerNotifications_1 = __importDefault(require("./headerNotifications"));
82
83
  var headerServices_1 = __importDefault(require("./headerServices"));
84
+ var headerServicesMessage_1 = __importDefault(require("./headerServicesMessage"));
83
85
  var headerSignIn_1 = __importDefault(require("./headerSignIn"));
84
86
  exports.HeaderBase = core_1.styled.headerBox(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n\talign-items: center;\n\tbackground-color: white;\n\tborder-bottom: 1px solid prussian.80;\n\tdisplay: flex;\n\tposition: relative;\n"], ["\n\talign-items: center;\n\tbackground-color: white;\n\tborder-bottom: 1px solid prussian.80;\n\tdisplay: flex;\n\tposition: relative;\n"
85
- /**
86
- * Branded Veracity Header with logo, links, services, account and other data. Controls max-width of the content.
87
- * Exposes some props to the children via context.
88
- */
87
+ /** Branded Veracity Header with logo, links, services, account and other data. Controls max-width of the content. */
89
88
  ])));
90
- /**
91
- * Branded Veracity Header with logo, links, services, account and other data. Controls max-width of the content.
92
- * Exposes some props to the children via context.
93
- */
89
+ /** Branded Veracity Header with logo, links, services, account and other data. Controls max-width of the content. */
94
90
  exports.Header = (0, core_1.vui)(function (props, ref) {
95
- var children = props.children, className = props.className, _a = props.headerHeight, headerHeight = _a === void 0 ? 72 : _a, size = props.size, variant = props.variant, rest = __rest(props, ["children", "className", "headerHeight", "size", "variant"]);
91
+ var className = props.className, _a = props.headerHeight, headerHeight = _a === void 0 ? 72 : _a, size = props.size, variant = props.variant, rest = __rest(props, ["className", "headerHeight", "size", "variant"]);
96
92
  var _b = __read((0, react_1.useState)(false), 2), isMobileOpen = _b[0], setIsMobileOpen = _b[1];
97
93
  var mobileContentRef = (0, react_1.useRef)(null);
98
94
  var mobileToggleRef = (0, react_1.useRef)(null);
99
95
  var styles = (0, core_1.useStyleConfig)('Header', props);
96
+ var _c = __read((0, core_1.useLinks)(), 1), links = _c[0];
100
97
  (0, utils_1.useClickOutside)([mobileContentRef, mobileToggleRef], function () {
101
98
  setIsMobileOpen(false);
102
99
  });
@@ -107,6 +104,7 @@ exports.Header = (0, core_1.vui)(function (props, ref) {
107
104
  isDesktop: isDesktop,
108
105
  isMobile: isMobile,
109
106
  isMobileOpen: isMobileOpen,
107
+ links: links,
110
108
  mobileContentRef: mobileContentRef,
111
109
  mobileToggleRef: mobileToggleRef,
112
110
  setIsMobileOpen: setIsMobileOpen,
@@ -114,20 +112,22 @@ exports.Header = (0, core_1.vui)(function (props, ref) {
114
112
  variant: variant
115
113
  };
116
114
  return (react_1.default.createElement(context_1.HeaderProvider, { value: context },
117
- react_1.default.createElement(exports.HeaderBase, __assign({ className: (0, utils_1.cs)('vui-header', className), h: headerHeight, px: { xs: 2, lg: 5 }, ref: ref }, styles.container, rest), (0, utils_1.runIfFn)(children, context))));
115
+ react_1.default.createElement(exports.HeaderBase, __assign({ className: (0, utils_1.cs)('vui-header', className), h: headerHeight, px: { xs: 2, lg: 5 }, ref: ref }, styles.container, rest))));
118
116
  });
119
117
  exports.Header.displayName = 'Header';
120
118
  exports.Header.Account = headerAccount_1.default;
119
+ exports.Header.AccountUserInfo = headerAccountUserInfo_1.default;
121
120
  exports.Header.Content = headerContent_1.default;
122
121
  exports.Header.CreateAccount = headerCreateAccount_1.default;
123
122
  exports.Header.Divider = headerDivider_1.default;
124
123
  exports.Header.LinkItem = headerLinkItem_1.default;
125
- exports.Header.LinksList = headerLinksList_1.default;
126
124
  exports.Header.Logo = headerLogo_1.default;
125
+ exports.Header.MainLinks = headerMainLinks_1.default;
127
126
  exports.Header.MobileContent = headerMobileContent_1.default;
128
127
  exports.Header.MobileToggle = headerMobileToggle_1.default;
129
128
  exports.Header.Notifications = headerNotifications_1.default;
130
129
  exports.Header.Services = headerServices_1.default;
130
+ exports.Header.ServicesMessage = headerServicesMessage_1.default;
131
131
  exports.Header.SignIn = headerSignIn_1.default;
132
132
  exports.default = exports.Header;
133
133
  var templateObject_1;
@@ -1,18 +1,19 @@
1
1
  import { Dispatch, RefObject, SetStateAction } from 'react';
2
2
  import { BoxProps } from '../box';
3
3
  import { ButtonProps } from '../button';
4
+ import { LinksDict } from '../core';
4
5
  import { IconProp } from '../icon';
5
6
  import { ListItemProps, ListProps } from '../list';
6
7
  import { MenuProps } from '../menu';
7
8
  import { SystemProps } from '../system';
8
9
  import { ThemingProps } from '../theme';
9
- import { RenderProps } from '../utils';
10
- import { headerLinksProd } from './consts';
11
10
  import { HeaderAccountData } from './headerAccount.types';
11
+ export declare type HeaderContentProps = BoxProps;
12
12
  export declare type HeaderContext = Pick<HeaderProps, 'headerHeight'> & {
13
13
  isDesktop: boolean;
14
14
  isMobile: boolean;
15
15
  isMobileOpen: boolean;
16
+ links: LinksDict;
16
17
  mobileContentRef: RefObject<HTMLElement | null>;
17
18
  mobileToggleRef: RefObject<HTMLElement | null>;
18
19
  setIsMobileOpen: Dispatch<SetStateAction<boolean>>;
@@ -25,6 +26,8 @@ export declare type HeaderCreateAccountProps = BoxProps & HeaderCreateAccountDat
25
26
  export declare type HeaderLinkData = {
26
27
  /** Displays and icon on the left side of the link. */
27
28
  icon?: IconProp;
29
+ /** Unique name that identifies a link in the links dictionary. */
30
+ id?: string;
28
31
  /** Adds styling for currently active link. */
29
32
  isActive?: boolean;
30
33
  /** Provides text content to the list item. */
@@ -32,13 +35,7 @@ export declare type HeaderLinkData = {
32
35
  /** Provides href attribute to the internal link element. */
33
36
  url?: string;
34
37
  };
35
- /** Union of link ids based on Header links dictionary for Prod environment. */
36
- export declare type HeaderLinkKey = keyof typeof headerLinksProd;
37
38
  export declare type HeaderLinkItemProps = ListItemProps & HeaderLinkData;
38
- export declare type HeaderLinksListProps = ListProps & {
39
- /** Array of objects with data for each link. */
40
- links?: HeaderLinkData[];
41
- };
42
39
  export declare type HeaderLogoData = {
43
40
  /** Loads logo svg from the given source. */
44
41
  src?: string;
@@ -46,33 +43,32 @@ export declare type HeaderLogoData = {
46
43
  url?: string;
47
44
  };
48
45
  export declare type HeaderLogoProps = BoxProps & HeaderLogoData;
46
+ export declare type HeaderMainLinksProps = ListProps & {
47
+ /** Array of objects with data for each link. */
48
+ links?: HeaderLinkData[];
49
+ };
49
50
  export declare type HeaderNotificationsData = {
50
51
  /** Displays a badge with given number of notifications. */
51
52
  count?: number;
52
53
  /** Provides href to the icon link. */
53
54
  url?: string;
54
55
  };
55
- export declare type HeaderNotificationsProps = ThemingProps<'Header'> & Omit<ButtonProps, 'size' | 'variant'> & HeaderNotificationsData;
56
+ export declare type HeaderNotificationsProps = ButtonProps & HeaderNotificationsData;
56
57
  export declare type HeaderProps = SystemProps & ThemingProps<'Header'> & {
57
- /** Exposes render props to the children. */
58
- children?: HeaderRenderProps;
59
58
  /** Sets the height of the Header and is used by internal parts for positioning and sizing. */
60
59
  headerHeight?: number;
61
60
  };
62
- export declare type HeaderRenderProps = RenderProps<HeaderContext>;
63
61
  export declare type HeaderServicesData = {
64
- /** Provides text content to the service item. */
65
- text?: string;
66
- /** Provides href attribute to the internal link element. */
67
- url?: string;
62
+ /** Array of objects with data for each service link. */
63
+ links?: HeaderLinkData[];
68
64
  };
69
- export declare type HeaderServicesProps = MenuProps & {
65
+ export declare type HeaderServicesProps = MenuProps & HeaderServicesData & {
70
66
  /** Props object passed to the MenuButton component. */
71
67
  buttonProps?: ButtonProps;
68
+ /** Children are disabled for this component. */
69
+ children?: never;
72
70
  /** Props object passed to the MenuList component. */
73
71
  listProps?: ListProps;
74
- /** Array of objects with data for each service link. */
75
- services?: HeaderServicesData[];
76
72
  };
77
73
  export declare type HeaderSignInData = {
78
74
  /** Provides href to the button link. */
@@ -80,24 +76,24 @@ export declare type HeaderSignInData = {
80
76
  };
81
77
  export declare type HeaderSignInProps = ButtonProps & HeaderSignInData;
82
78
  export declare type LoggedInHeaderProps = HeaderProps & {
83
- /** Socket placing account popover icon on the right side. */
79
+ /** Socket for account popover icon on the right side. */
84
80
  account?: HeaderAccountData | JSX.Element;
85
- /** Socket placing links in the middle. */
86
- links?: HeaderLinkData[] | JSX.Element;
87
- /** Socket placing logo on the left side. */
81
+ /** Socket for logo on the left side. */
88
82
  logo?: HeaderLogoData | JSX.Element;
89
- /** Socket placing notifications icon on the right side. */
83
+ /** Socket for main links in the middle-right. */
84
+ mainLinks?: HeaderLinkData[] | JSX.Element;
85
+ /** Socket for notifications icon on the right side. */
90
86
  notifications?: HeaderNotificationsData | JSX.Element;
91
- /** Socket placing services menu icon on the right side. */
92
- services?: HeaderServicesData[] | JSX.Element;
87
+ /** Socket for services menu icon on the right side. */
88
+ services?: HeaderServicesData | JSX.Element;
93
89
  };
94
90
  export declare type LoggedOutHeaderProps = HeaderProps & {
95
- /** Socket placing create account prompt on the right side. */
91
+ /** Socket for create account prompt on the right side. */
96
92
  createAccount?: HeaderCreateAccountData | JSX.Element;
97
- /** Socket placing links in the middle. */
98
- links?: HeaderLinkData[] | JSX.Element;
99
- /** Socket placing logo on the left side. */
93
+ /** Socket for logo on the left side. */
100
94
  logo?: HeaderLogoData | JSX.Element;
101
- /** Socket placing sign in button on the right side. */
95
+ /** Socket for links in the middle-right section. */
96
+ mainLinks?: HeaderLinkData[] | JSX.Element;
97
+ /** Socket for sign in button on the right side. */
102
98
  signIn?: HeaderSignInData | JSX.Element;
103
99
  };
@@ -1,4 +1,8 @@
1
1
  /// <reference types="react" />
2
2
  import { HeaderAccountProps } from './headerAccount.types';
3
3
  /** Displays user account information and helpful links, like settings or logout. */
4
- export default function HeaderAccount(props: HeaderAccountProps): JSX.Element;
4
+ export declare function HeaderAccount(props: HeaderAccountProps): JSX.Element;
5
+ export declare namespace HeaderAccount {
6
+ var displayName: string;
7
+ }
8
+ export default HeaderAccount;