@veracity/vui 0.3.2 → 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 (209) hide show
  1. package/avatar/avatar.js +1 -1
  2. package/button/button.d.ts +15 -1
  3. package/button/button.js +3 -3
  4. package/button/button.types.d.ts +4 -4
  5. package/button/consts.js +2 -2
  6. package/button/theme.d.ts +2 -0
  7. package/button/theme.js +3 -2
  8. package/buttonGroup/buttonGroup.d.ts +1 -1
  9. package/buttonGroup/buttonGroup.js +1 -1
  10. package/buttonGroup/helpers.js +3 -1
  11. package/checkbox/checkbox.d.ts +1 -1
  12. package/core/consts.d.ts +7 -0
  13. package/core/consts.js +8 -1
  14. package/core/index.d.ts +1 -0
  15. package/core/index.js +1 -0
  16. package/core/links.d.ts +20 -0
  17. package/core/links.js +173 -0
  18. package/dialog/consts.d.ts +3 -0
  19. package/dialog/consts.js +30 -0
  20. package/dialog/context.d.ts +4 -0
  21. package/dialog/context.js +23 -0
  22. package/dialog/dialog.d.ts +26 -0
  23. package/dialog/dialog.js +122 -0
  24. package/dialog/dialog.types.d.ts +47 -0
  25. package/dialog/dialogBody.d.ts +9 -0
  26. package/dialog/dialogBody.js +85 -0
  27. package/dialog/dialogCancelButton.d.ts +4 -0
  28. package/dialog/dialogCancelButton.js +30 -0
  29. package/dialog/dialogCloseButton.d.ts +4 -0
  30. package/dialog/dialogCloseButton.js +30 -0
  31. package/dialog/dialogFooter.d.ts +4 -0
  32. package/dialog/dialogFooter.js +45 -0
  33. package/dialog/dialogHeader.d.ts +4 -0
  34. package/dialog/dialogHeader.js +53 -0
  35. package/dialog/dialogIcon.d.ts +4 -0
  36. package/dialog/dialogIcon.js +32 -0
  37. package/dialog/dialogSubmitButton.d.ts +4 -0
  38. package/dialog/dialogSubmitButton.js +28 -0
  39. package/dialog/dialogTitle.d.ts +4 -0
  40. package/dialog/dialogTitle.js +30 -0
  41. package/dialog/index.d.ts +13 -0
  42. package/dialog/index.js +30 -0
  43. package/dialog/theme.d.ts +22 -0
  44. package/dialog/theme.js +28 -0
  45. package/footer/context.d.ts +4 -0
  46. package/footer/context.js +23 -0
  47. package/footer/footer.d.ts +2 -0
  48. package/footer/footer.js +11 -29
  49. package/footer/footer.types.d.ts +19 -16
  50. package/footer/footerColumn.d.ts +2 -218
  51. package/footer/footerColumn.js +16 -2
  52. package/footer/footerContent.d.ts +3 -0
  53. package/footer/footerContent.js +28 -0
  54. package/footer/footerHeading.js +2 -1
  55. package/footer/footerLink.js +2 -1
  56. package/footer/footerRow.js +2 -1
  57. package/footer/footerSection.js +4 -3
  58. package/footer/footerTrademark.d.ts +3 -5
  59. package/footer/footerTrademark.js +23 -6
  60. package/footer/helpers.d.ts +7 -10
  61. package/footer/helpers.js +91 -33
  62. package/footer/index.d.ts +1 -1
  63. package/footer/index.js +1 -1
  64. package/footer/theme.js +1 -1
  65. package/grid/grid.d.ts +5 -0
  66. package/{header/headerLink.js → grid/grid.js} +17 -13
  67. package/grid/grid.types.d.ts +3 -0
  68. package/grid/grid.types.js +2 -0
  69. package/grid/index.d.ts +3 -0
  70. package/grid/index.js +20 -0
  71. package/grid/theme.d.ts +7 -0
  72. package/grid/theme.js +12 -0
  73. package/header/context.d.ts +2 -2
  74. package/header/context.js +3 -3
  75. package/header/header.d.ts +11 -10
  76. package/header/header.js +36 -21
  77. package/header/header.types.d.ts +54 -39
  78. package/header/headerAccount.d.ts +8 -0
  79. package/header/{headerProfile.js → headerAccount.js} +32 -45
  80. package/header/headerAccount.types.d.ts +35 -0
  81. package/header/headerAccount.types.js +2 -0
  82. package/header/headerAccountUserInfo.d.ts +4 -0
  83. package/header/headerAccountUserInfo.js +46 -0
  84. package/header/headerContent.d.ts +2 -3
  85. package/header/headerContent.js +3 -3
  86. package/header/headerCreateAccount.js +8 -5
  87. package/header/headerDivider.js +2 -2
  88. package/header/headerLinkItem.d.ts +4 -0
  89. package/header/headerLinkItem.js +53 -0
  90. package/header/headerLogo.js +8 -10
  91. package/header/headerMainLinks.d.ts +4 -0
  92. package/header/{headerLinks.js → headerMainLinks.js} +10 -7
  93. package/header/headerMobileContent.js +4 -3
  94. package/header/headerMobileToggle.d.ts +2 -2
  95. package/header/headerMobileToggle.js +6 -7
  96. package/header/headerNotifications.js +8 -8
  97. package/header/headerServices.d.ts +5 -1
  98. package/header/headerServices.js +23 -14
  99. package/header/headerServicesMessage.d.ts +4 -0
  100. package/header/headerServicesMessage.js +49 -0
  101. package/header/headerSignIn.js +5 -3
  102. package/header/helpers.d.ts +8 -0
  103. package/header/helpers.js +115 -0
  104. package/header/index.d.ts +8 -3
  105. package/header/index.js +8 -3
  106. package/header/loggedInHeader.d.ts +1 -1
  107. package/header/loggedInHeader.js +16 -12
  108. package/header/loggedOutHeader.js +15 -12
  109. package/header/theme.d.ts +62 -7
  110. package/header/theme.js +53 -12
  111. package/icons/baseIcons/fas/fasCalendarAlt.js +1 -1
  112. package/index.d.ts +4 -0
  113. package/index.js +4 -0
  114. package/input/consts.js +2 -2
  115. package/input/input.js +1 -1
  116. package/input/input.types.d.ts +3 -3
  117. package/link/link.types.d.ts +4 -4
  118. package/link/linkText.js +1 -1
  119. package/list/listHeading.js +1 -1
  120. package/list/listItem.js +2 -2
  121. package/list/theme.d.ts +2 -4
  122. package/list/theme.js +2 -4
  123. package/menu/menuItem.js +7 -22
  124. package/menu/menuList.js +1 -1
  125. package/modal/ModalBackdrop.d.ts +4 -0
  126. package/modal/ModalBackdrop.js +37 -0
  127. package/modal/ModalContent.d.ts +4 -0
  128. package/modal/ModalContent.js +38 -0
  129. package/modal/context.d.ts +4 -0
  130. package/modal/context.js +23 -0
  131. package/modal/focusLock.d.ts +9 -0
  132. package/modal/focusLock.js +47 -0
  133. package/modal/focusLock.types.d.ts +28 -0
  134. package/modal/focusLock.types.js +2 -0
  135. package/modal/index.d.ts +9 -0
  136. package/modal/index.js +26 -0
  137. package/modal/modal.d.ts +15 -0
  138. package/modal/modal.js +113 -0
  139. package/modal/modal.types.d.ts +46 -0
  140. package/modal/modal.types.js +2 -0
  141. package/modal/modalManager.d.ts +12 -0
  142. package/modal/modalManager.js +33 -0
  143. package/modal/theme.d.ts +8 -0
  144. package/modal/theme.js +14 -0
  145. package/notification/consts.js +2 -2
  146. package/notification/notification.types.d.ts +1 -2
  147. package/notification/theme.js +1 -1
  148. package/package.json +3 -1
  149. package/popover/popover.d.ts +1 -1
  150. package/popover/popover.js +5 -4
  151. package/popover/popoverContent.js +1 -1
  152. package/popover/popoverTrigger.js +7 -2
  153. package/popover/usePopover.js +7 -9
  154. package/popover/usePopover.types.d.ts +1 -1
  155. package/portal/index.d.ts +3 -0
  156. package/portal/index.js +20 -0
  157. package/portal/portal.d.ts +5 -0
  158. package/portal/portal.js +56 -0
  159. package/portal/portal.types.d.ts +7 -0
  160. package/portal/portal.types.js +2 -0
  161. package/radio/radio.d.ts +1 -1
  162. package/radio/radioGroup.js +1 -1
  163. package/svg/svg.js +9 -7
  164. package/svg/svg.types.d.ts +2 -2
  165. package/system/custom.d.ts +0 -4
  166. package/system/custom.js +1 -15
  167. package/system/effects.d.ts +4 -4
  168. package/system/grids.d.ts +5 -3
  169. package/system/system.d.ts +2 -2
  170. package/system/system.js +1 -1
  171. package/system/transitions.d.ts +1 -1
  172. package/tag/tag.js +1 -2
  173. package/tag/tag.types.d.ts +3 -4
  174. package/tag/theme.d.ts +1 -0
  175. package/tag/theme.js +2 -1
  176. package/textarea/textarea.js +2 -2
  177. package/theme/components.d.ts +101 -11
  178. package/theme/components.js +48 -42
  179. package/theme/defaultTheme.d.ts +130 -12
  180. package/theme/foundations/gridTemplateColumns.d.ts +15 -0
  181. package/theme/foundations/gridTemplateColumns.js +16 -0
  182. package/theme/foundations/gridTemplateRows.d.ts +9 -0
  183. package/theme/foundations/gridTemplateRows.js +10 -0
  184. package/theme/foundations/index.d.ts +29 -1
  185. package/theme/foundations/index.js +6 -0
  186. package/theme/foundations/timingFunctions.d.ts +2 -0
  187. package/theme/foundations/timingFunctions.js +3 -0
  188. package/theme/foundations/zIndices.d.ts +6 -1
  189. package/theme/foundations/zIndices.js +6 -1
  190. package/theme/types.d.ts +9 -1
  191. package/utils/assertion.d.ts +2 -0
  192. package/utils/assertion.js +6 -1
  193. package/utils/function.d.ts +4 -0
  194. package/utils/function.js +19 -1
  195. package/utils/index.d.ts +1 -0
  196. package/utils/index.js +1 -0
  197. package/utils/number.d.ts +2 -0
  198. package/utils/number.js +10 -0
  199. package/utils/object.js +9 -17
  200. package/utils/react.d.ts +12 -5
  201. package/utils/react.js +69 -9
  202. package/utils/types.d.ts +4 -2
  203. package/footer/consts.d.ts +0 -72
  204. package/footer/consts.js +0 -132
  205. package/header/headerLink.d.ts +0 -4
  206. package/header/headerLinks.d.ts +0 -4
  207. package/header/headerProfile.d.ts +0 -4
  208. package/header/headerProfile.types.d.ts +0 -35
  209. /package/{header/headerProfile.types.js → dialog/dialog.types.js} +0 -0
@@ -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,10 +1,7 @@
1
- import { FooterColumnsData } from './footer.types';
2
- declare type Environment = 'Prod' | 'Stag' | 'Test';
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;
10
- export {};
1
+ import { Environment } from '../utils';
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
@@ -1,4 +1,51 @@
1
1
  "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __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
+ };
2
49
  var __read = (this && this.__read) || function (o, n) {
3
50
  var m = typeof Symbol === "function" && o[Symbol.iterator];
4
51
  if (!m) return o;
@@ -16,40 +63,51 @@ var __read = (this && this.__read) || function (o, n) {
16
63
  return ar;
17
64
  };
18
65
  Object.defineProperty(exports, "__esModule", { value: true });
19
- exports.getFooterColumns = void 0;
20
- var consts_1 = require("./consts");
21
- var envLinks = {
22
- Prod: consts_1.footerLinksProd,
23
- Stag: consts_1.footerLinksStag,
24
- Test: consts_1.footerLinksTest
25
- };
26
- /**
27
- * Computes footer columns with appropriate sections and links.
28
- * Links are selected per environment and modified based on log in state.
29
- * @param environment current application environment
30
- * @param isLoggedIn is current user logged in
31
- */
32
- function getFooterColumns(environment, isLoggedIn) {
33
- if (isLoggedIn === void 0) { isLoggedIn = false; }
34
- // Ok to clone object with JSON here
35
- var columns = JSON.parse(JSON.stringify(consts_1.footerColumnsTemplate));
36
- Object.entries(columns).forEach(function (_a) {
37
- var _b = __read(_a, 2), columnName = _b[0], column = _b[1];
38
- Object.entries(column).forEach(function (_a) {
39
- var _b = __read(_a, 2), sectionName = _b[0], section = _b[1];
40
- var links = section.links.map(function (_a) {
41
- var _b;
42
- var text = _a.text, urlId = _a.url;
43
- var url = (_b = envLinks[environment][urlId]) !== null && _b !== void 0 ? _b : '';
44
- if (urlId === 'contactUs' && !isLoggedIn)
45
- url += 'Anonymous';
46
- if (isLoggedIn)
47
- url += '?loggedin=1';
48
- return { text: text, url: url };
66
+ exports.useFooterLinks = void 0;
67
+ var react_1 = require("react");
68
+ var core_1 = require("../core");
69
+ var utils_1 = require("../utils");
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
+ });
49
102
  });
50
- columns[columnName][sectionName].links = links;
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;
@@ -1,4 +1,8 @@
1
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
+ };
2
6
  var __assign = (this && this.__assign) || function () {
3
7
  __assign = Object.assign || function(t) {
4
8
  for (var s, i = 1, n = arguments.length; i < n; i++) {
@@ -25,19 +29,19 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
25
29
  return (mod && mod.__esModule) ? mod : { "default": mod };
26
30
  };
27
31
  Object.defineProperty(exports, "__esModule", { value: true });
28
- exports.HeaderLink = void 0;
32
+ exports.Grid = exports.GridBase = void 0;
29
33
  var react_1 = __importDefault(require("react"));
30
34
  var core_1 = require("../core");
31
- var list_1 = __importDefault(require("../list"));
32
- var context_1 = require("./context");
33
- /** Individual link item of the Header. */
34
- exports.HeaderLink = (0, core_1.vui)(function (props, ref) {
35
- var _a;
36
- var url = props.url, rest = __rest(props, ["url"]);
37
- var isMobile = ((_a = (0, context_1.useHeader)()) !== null && _a !== void 0 ? _a : {}).isMobile;
38
- var styles = (0, core_1.useStyleConfig)('Header', (0, context_1.useHeader)());
39
- var screenStyles = isMobile ? {} : { display: 'inline-flex' };
40
- return (react_1.default.createElement(list_1.default.Item, __assign({ className: "vui-headerLink", linkProps: { href: url }, ref: ref }, screenStyles, styles.link, rest)));
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));
41
44
  });
42
- exports.HeaderLink.displayName = 'HeaderLink';
43
- exports.default = exports.HeaderLink;
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,4 +1,4 @@
1
1
  /// <reference types="react" />
2
2
  import { HeaderContext } from './header.types';
3
- declare const HeaderProvider: import("react").Provider<HeaderContext>, useHeader: () => HeaderContext;
4
- export { HeaderProvider, useHeader };
3
+ declare const HeaderProvider: import("react").Provider<HeaderContext>, useHeaderContext: () => HeaderContext;
4
+ export { HeaderProvider, useHeaderContext };
package/header/context.js CHANGED
@@ -16,8 +16,8 @@ var __read = (this && this.__read) || function (o, n) {
16
16
  return ar;
17
17
  };
18
18
  Object.defineProperty(exports, "__esModule", { value: true });
19
- exports.useHeader = exports.HeaderProvider = void 0;
19
+ exports.useHeaderContext = exports.HeaderProvider = void 0;
20
20
  var utils_1 = require("../utils");
21
- var _a = __read((0, utils_1.createContext)({ isOptional: true }), 2), HeaderProvider = _a[0], useHeader = _a[1];
21
+ var _a = __read((0, utils_1.createContext)({ isOptional: true }), 2), HeaderProvider = _a[0], useHeaderContext = _a[1];
22
22
  exports.HeaderProvider = HeaderProvider;
23
- exports.useHeader = useHeader;
23
+ exports.useHeaderContext = useHeaderContext;
@@ -1,34 +1,35 @@
1
1
  import { VuiComponent } from '../core';
2
2
  import { HeaderProps } from './header.types';
3
+ import HeaderAccount from './headerAccount';
4
+ import HeaderAccountUserInfo from './headerAccountUserInfo';
3
5
  import HeaderContent from './headerContent';
4
6
  import HeaderCreateAccount from './headerCreateAccount';
5
7
  import HeaderDivider from './headerDivider';
6
- import HeaderLink from './headerLink';
7
- import HeaderLinks from './headerLinks';
8
+ import HeaderLinkItem from './headerLinkItem';
8
9
  import HeaderLogo from './headerLogo';
10
+ import HeaderMainLinks from './headerMainLinks';
9
11
  import HeaderMobileContent from './headerMobileContent';
10
12
  import HeaderMobileToggle from './headerMobileToggle';
11
13
  import HeaderNotifications from './headerNotifications';
12
- import HeaderProfile from './headerProfile';
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, profile 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> & {
20
+ Account: typeof HeaderAccount;
21
+ AccountUserInfo: typeof HeaderAccountUserInfo;
21
22
  Content: typeof HeaderContent;
22
23
  CreateAccount: typeof HeaderCreateAccount;
23
24
  Divider: typeof HeaderDivider;
24
- Link: typeof HeaderLink;
25
- Links: typeof HeaderLinks;
25
+ LinkItem: typeof HeaderLinkItem;
26
26
  Logo: typeof HeaderLogo;
27
+ MainLinks: typeof HeaderMainLinks;
27
28
  MobileContent: typeof HeaderMobileContent;
28
29
  MobileToggle: typeof HeaderMobileToggle;
29
30
  Notifications: typeof HeaderNotifications;
30
- Profile: typeof HeaderProfile;
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
@@ -69,50 +69,65 @@ var react_1 = __importStar(require("react"));
69
69
  var core_1 = require("../core");
70
70
  var utils_1 = require("../utils");
71
71
  var context_1 = require("./context");
72
+ var headerAccount_1 = __importDefault(require("./headerAccount"));
73
+ var headerAccountUserInfo_1 = __importDefault(require("./headerAccountUserInfo"));
72
74
  var headerContent_1 = __importDefault(require("./headerContent"));
73
75
  var headerCreateAccount_1 = __importDefault(require("./headerCreateAccount"));
74
76
  var headerDivider_1 = __importDefault(require("./headerDivider"));
75
- var headerLink_1 = __importDefault(require("./headerLink"));
76
- var headerLinks_1 = __importDefault(require("./headerLinks"));
77
+ var headerLinkItem_1 = __importDefault(require("./headerLinkItem"));
77
78
  var headerLogo_1 = __importDefault(require("./headerLogo"));
79
+ var headerMainLinks_1 = __importDefault(require("./headerMainLinks"));
78
80
  var headerMobileContent_1 = __importDefault(require("./headerMobileContent"));
79
81
  var headerMobileToggle_1 = __importDefault(require("./headerMobileToggle"));
80
82
  var headerNotifications_1 = __importDefault(require("./headerNotifications"));
81
- var headerProfile_1 = __importDefault(require("./headerProfile"));
82
83
  var headerServices_1 = __importDefault(require("./headerServices"));
84
+ var headerServicesMessage_1 = __importDefault(require("./headerServicesMessage"));
83
85
  var headerSignIn_1 = __importDefault(require("./headerSignIn"));
84
- 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\theight: 72px;\n\tposition: relative;\n"], ["\n\talign-items: center;\n\tbackground-color: white;\n\tborder-bottom: 1px solid prussian.80;\n\tdisplay: flex;\n\theight: 72px;\n\tposition: relative;\n"
85
- /**
86
- * Branded Veracity Header with logo, links, services, profile and other data. Controls max-width of the content.
87
- * Exposes some props to the children via context.
88
- */
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"
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, profile 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 _a = __read((0, react_1.useState)(false), 2), isMobileOpen = _a[0], setIsMobileOpen = _a[1];
96
- var children = props.children, className = props.className, size = props.size, variant = props.variant, rest = __rest(props, ["children", "className", "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"]);
92
+ var _b = __read((0, react_1.useState)(false), 2), isMobileOpen = _b[0], setIsMobileOpen = _b[1];
93
+ var mobileContentRef = (0, react_1.useRef)(null);
94
+ var mobileToggleRef = (0, react_1.useRef)(null);
97
95
  var styles = (0, core_1.useStyleConfig)('Header', props);
98
- var isDesktop = (0, core_1.useUp)('lg');
99
- var isMobile = (0, core_1.useDown)('lg');
100
- var context = (0, react_1.useMemo)(function () { return ({ isDesktop: isDesktop, isMobile: isMobile, isMobileOpen: isMobileOpen, setIsMobileOpen: setIsMobileOpen, size: size, variant: variant }); }, [isDesktop, isMobile, isMobileOpen, setIsMobileOpen, size, variant]);
96
+ var _c = __read((0, core_1.useLinks)(), 1), links = _c[0];
97
+ (0, utils_1.useClickOutside)([mobileContentRef, mobileToggleRef], function () {
98
+ setIsMobileOpen(false);
99
+ });
100
+ var isDesktop = (0, core_1.useUp)('md');
101
+ var isMobile = (0, core_1.useDown)('md');
102
+ var context = {
103
+ headerHeight: headerHeight,
104
+ isDesktop: isDesktop,
105
+ isMobile: isMobile,
106
+ isMobileOpen: isMobileOpen,
107
+ links: links,
108
+ mobileContentRef: mobileContentRef,
109
+ mobileToggleRef: mobileToggleRef,
110
+ setIsMobileOpen: setIsMobileOpen,
111
+ size: size,
112
+ variant: variant
113
+ };
101
114
  return (react_1.default.createElement(context_1.HeaderProvider, { value: context },
102
- react_1.default.createElement(exports.HeaderBase, __assign({ className: (0, utils_1.cs)('vui-header', className), 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))));
103
116
  });
104
117
  exports.Header.displayName = 'Header';
118
+ exports.Header.Account = headerAccount_1.default;
119
+ exports.Header.AccountUserInfo = headerAccountUserInfo_1.default;
105
120
  exports.Header.Content = headerContent_1.default;
106
121
  exports.Header.CreateAccount = headerCreateAccount_1.default;
107
122
  exports.Header.Divider = headerDivider_1.default;
108
- exports.Header.Link = headerLink_1.default;
109
- exports.Header.Links = headerLinks_1.default;
123
+ exports.Header.LinkItem = headerLinkItem_1.default;
110
124
  exports.Header.Logo = headerLogo_1.default;
125
+ exports.Header.MainLinks = headerMainLinks_1.default;
111
126
  exports.Header.MobileContent = headerMobileContent_1.default;
112
127
  exports.Header.MobileToggle = headerMobileToggle_1.default;
113
128
  exports.Header.Notifications = headerNotifications_1.default;
114
- exports.Header.Profile = headerProfile_1.default;
115
129
  exports.Header.Services = headerServices_1.default;
130
+ exports.Header.ServicesMessage = headerServicesMessage_1.default;
116
131
  exports.Header.SignIn = headerSignIn_1.default;
117
132
  exports.default = exports.Header;
118
133
  var templateObject_1;