@nulogy/components 8.3.0 → 8.4.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.
package/dist/main.js CHANGED
@@ -277,7 +277,7 @@
277
277
 
278
278
  /**
279
279
  * Do not edit directly
280
- * Generated on Mon, 06 Jun 2022 21:26:05 GMT
280
+ * Generated on Thu, 01 Dec 2022 21:44:24 GMT
281
281
  */
282
282
 
283
283
  const color_base_black = "#011e38";
@@ -310,7 +310,7 @@
310
310
  const line_height_small_text_base = "1.71428571";
311
311
  const line_height_small_text_compressed = "1.14285714";
312
312
  const line_height_smaller_text = "1.33333333";
313
- const line_height_heading_1 = "1.05";
313
+ const line_height_heading_1 = "1.25";
314
314
  const line_height_heading_2 = "1.33";
315
315
  const line_height_heading_3 = "1.33";
316
316
  const line_height_heading_4 = "1.33";
@@ -341,8 +341,8 @@
341
341
  const size_font_medium = "16px";
342
342
  const size_font_large = "24px";
343
343
  const size_font_larger = "30px";
344
- const size_font_largest = "38px";
345
- const size_font_heading_1 = "38px";
344
+ const size_font_largest = "32px";
345
+ const size_font_heading_1 = "32px";
346
346
  const size_font_heading_2 = "30px";
347
347
  const size_font_heading_3 = "24px";
348
348
  const size_font_heading_4 = "18px";
@@ -11711,7 +11711,20 @@
11711
11711
  componentId: "sc-1whlq91-0"
11712
11712
  })({
11713
11713
  display: "flex"
11714
- }, flexbox);
11714
+ }, system({
11715
+ gap: {
11716
+ property: "gap",
11717
+ scale: "space"
11718
+ },
11719
+ rowGap: {
11720
+ property: "rowGap",
11721
+ scale: "space"
11722
+ },
11723
+ columnGap: {
11724
+ property: "columnGap",
11725
+ scale: "space"
11726
+ }
11727
+ }), flexbox);
11715
11728
 
11716
11729
  /*! *****************************************************************************
11717
11730
  Copyright (c) Microsoft Corporation.
@@ -42393,7 +42406,10 @@
42393
42406
  listStyle: "none",
42394
42407
  display: "inline-flex",
42395
42408
  alignSelf: "center",
42396
- color: theme.colors.darkGrey,
42409
+ color: theme.colors.midGrey,
42410
+ "a, p": {
42411
+ fontSize: theme.fontSizes.small
42412
+ },
42397
42413
  "a:visited": {
42398
42414
  color: theme.colors.darkBlue
42399
42415
  }
@@ -42402,14 +42418,10 @@
42402
42418
 
42403
42419
  var insertSeparators = function insertSeparators(items, className) {
42404
42420
  return items.reduce(function (acc, current, index) {
42405
- return acc.concat(current,
42406
- /*#__PURE__*/
42407
- // eslint-disable-next-line react/no-array-index-key
42408
- React__default['default'].createElement(BreadcrumbsListItem, {
42421
+ return acc.concat(current, /*#__PURE__*/React__default['default'].createElement(BreadcrumbsListItem, {
42409
42422
  "aria-hidden": true,
42410
42423
  key: "separator-" + index,
42411
- className: className,
42412
- px: "x1"
42424
+ className: className
42413
42425
  }, /*#__PURE__*/React__default['default'].createElement(Icon, {
42414
42426
  icon: "rightArrow"
42415
42427
  })));
@@ -42421,18 +42433,14 @@
42421
42433
  as = _a.as,
42422
42434
  props = __rest(_a, ["children", "as"]);
42423
42435
 
42424
- var childrenArr = Array.isArray(children) ? children : [children];
42425
- var allItems = [].concat(childrenArr).map(function (child, index) {
42426
- return (
42427
- /*#__PURE__*/
42428
- // eslint-disable-next-line react/no-array-index-key
42429
- React__default['default'].createElement(BreadcrumbsListItem, {
42430
- key: "child-" + index
42431
- }, /*#__PURE__*/React__default['default'].cloneElement(child, {
42432
- color: "darkBlue"
42433
- }))
42434
- );
42435
- });
42436
+ var allItems = React__default['default'].Children.map(children, function (child, index) {
42437
+ if (! /*#__PURE__*/React.isValidElement(child)) return null;
42438
+ return /*#__PURE__*/React__default['default'].createElement(BreadcrumbsListItem, {
42439
+ key: "child-" + index
42440
+ }, /*#__PURE__*/React__default['default'].cloneElement(child, {
42441
+ color: "darkBlue"
42442
+ }));
42443
+ }).filter(Boolean);
42436
42444
  return /*#__PURE__*/React__default['default'].createElement(Flex, Object.assign({
42437
42445
  as: as
42438
42446
  }, props), /*#__PURE__*/React__default['default'].createElement(BreadcrumbsList, null, insertSeparators(allItems, "seperator")));
@@ -50738,30 +50746,127 @@
50738
50746
  }, children));
50739
50747
  };
50740
50748
 
50749
+ var useMediaQuery = function useMediaQuery(query) {
50750
+ var _useState = React.useState(window.matchMedia(query).matches),
50751
+ matches = _useState[0],
50752
+ setMatches = _useState[1];
50753
+
50754
+ React.useEffect(function () {
50755
+ var handler = function handler(e) {
50756
+ setMatches(e.matches);
50757
+ };
50758
+
50759
+ window.matchMedia(query).addEventListener("change", handler);
50760
+ return function () {
50761
+ window.removeEventListener("change", handler);
50762
+ };
50763
+ }, []);
50764
+ return matches;
50765
+ };
50766
+
50767
+ var Header = function Header(_a) {
50768
+ var _b, _c;
50769
+
50770
+ var _a$background = _a.background,
50771
+ background = _a$background === void 0 ? "whiteGrey" : _a$background,
50772
+ renderBreadcrumbs = _a.renderBreadcrumbs,
50773
+ title = _a.title,
50774
+ _a$undecorated = _a.undecorated,
50775
+ undecorated = _a$undecorated === void 0 ? false : _a$undecorated,
50776
+ children = _a.children,
50777
+ subtitle = _a.subtitle,
50778
+ breakpoints = _a.breakpoints,
50779
+ renderActions = _a.renderActions,
50780
+ renderSummary = _a.renderSummary,
50781
+ rest = __rest(_a, ["background", "renderBreadcrumbs", "title", "undecorated", "children", "subtitle", "breakpoints", "renderActions", "renderSummary"]);
50782
+
50783
+ var theme = styled.useTheme();
50784
+ var smallBreakpoint = pixelDigitsFrom$1((_b = breakpoints === null || breakpoints === void 0 ? void 0 : breakpoints.small) !== null && _b !== void 0 ? _b : theme.breakpoints.small);
50785
+ var mediumBreakpoint = pixelDigitsFrom$1((_c = breakpoints === null || breakpoints === void 0 ? void 0 : breakpoints.medium) !== null && _c !== void 0 ? _c : theme.breakpoints.medium);
50786
+ var m = useMediaQuery("(max-width: " + mediumBreakpoint + "px)");
50787
+ var sm = useMediaQuery("(max-width: " + smallBreakpoint + "px)");
50788
+ return /*#__PURE__*/React__default['default'].createElement(Flex, Object.assign({
50789
+ py: "x1",
50790
+ px: "x3",
50791
+ gap: "x2",
50792
+ position: "relative",
50793
+ bg: background
50794
+ }, rest), /*#__PURE__*/React__default['default'].createElement(Flex, {
50795
+ flexGrow: 3,
50796
+ justifyContent: "space-between",
50797
+ flexDirection: m || sm ? "column" : "row",
50798
+ zIndex: "content"
50799
+ }, /*#__PURE__*/React__default['default'].createElement(Flex, {
50800
+ flexDirection: "column"
50801
+ }, renderBreadcrumbs && renderBreadcrumbs(), /*#__PURE__*/React__default['default'].createElement(Flex, {
50802
+ gap: !sm ? "x2" : undefined,
50803
+ flexDirection: !sm ? "row" : "column",
50804
+ alignItems: !sm ? "center" : undefined
50805
+ }, /*#__PURE__*/React__default['default'].createElement(Flex, {
50806
+ alignItems: !sm ? "flex-end" : undefined,
50807
+ gap: !sm ? "x2" : undefined,
50808
+ flexDirection: !sm ? "row" : "column"
50809
+ }, title && /*#__PURE__*/React__default['default'].createElement(Heading1, {
50810
+ mb: "0"
50811
+ }, title), subtitle && /*#__PURE__*/React__default['default'].createElement(Text, {
50812
+ pl: !sm ? "x2" : undefined,
50813
+ borderLeft: !sm ? "1px solid" : "none",
50814
+ my: "half",
50815
+ borderColor: "grey"
50816
+ }, subtitle)), children && children)), renderSummary && renderSummary()), renderActions && /*#__PURE__*/React__default['default'].createElement(Flex, {
50817
+ display: "flex",
50818
+ flexGrow: 0,
50819
+ alignItems: "flex-start",
50820
+ zIndex: "content"
50821
+ }, renderActions()), !undecorated && /*#__PURE__*/React__default['default'].createElement(BackgroundTriangles, {
50822
+ zIndex: 1
50823
+ }));
50824
+ };
50825
+
50826
+ var RightAngleTriangle = styled__default['default'](Box).withConfig({
50827
+ displayName: "Header__RightAngleTriangle",
50828
+ componentId: "sc-1kuwqm0-0"
50829
+ })(["position:absolute;bottom:0;right:0;width:100%;clip-path:polygon(100% 0,0 100%,100% 100%);"]);
50830
+
50831
+ var BackgroundTriangles = function BackgroundTriangles(props) {
50832
+ var theme = styled.useTheme();
50833
+ return /*#__PURE__*/React__default['default'].createElement(Box, Object.assign({
50834
+ position: "absolute",
50835
+ bottom: 0,
50836
+ right: 0,
50837
+ height: "100%",
50838
+ minWidth: "55%"
50839
+ }, props), /*#__PURE__*/React__default['default'].createElement(RightAngleTriangle, {
50840
+ height: "33.33%",
50841
+ opacity: "0.5",
50842
+ background: "linear-gradient(178.25deg, rgba(192, 200, 209, 0.5) 62.98%, rgba(225, 235, 250, 0.25) 98.52%)"
50843
+ }), /*#__PURE__*/React__default['default'].createElement(RightAngleTriangle, {
50844
+ height: "17%",
50845
+ opacity: "0.25",
50846
+ background: "linear-gradient(196.88deg, " + theme.colors.grey + " 11.92%, rgba(0, 67, 143, 0) 88.36%)"
50847
+ }));
50848
+ };
50849
+
50741
50850
  var Page = function Page(_a) {
50742
50851
  var breadcrumbs = _a.breadcrumbs,
50743
50852
  title = _a.title,
50744
50853
  children = _a.children,
50745
50854
  headerContent = _a.headerContent,
50746
50855
  fullHeight = _a.fullHeight,
50747
- props = __rest(_a, ["breadcrumbs", "title", "children", "headerContent", "fullHeight"]);
50856
+ renderHeader = _a.renderHeader,
50857
+ rest = __rest(_a, ["breadcrumbs", "title", "children", "headerContent", "fullHeight", "renderHeader"]);
50748
50858
 
50749
50859
  return /*#__PURE__*/React__default['default'].createElement(Flex, Object.assign({
50750
50860
  flexDirection: "column",
50751
- py: "x3",
50752
- px: "x3",
50753
50861
  flexGrow: fullHeight ? 1 : 0
50754
- }, props), breadcrumbs, /*#__PURE__*/React__default['default'].createElement(Flex, {
50755
- alignItems: "center"
50756
- }, title && /*#__PURE__*/React__default['default'].createElement(Heading1, {
50757
- mb: "x6",
50758
- mt: "x2"
50759
- }, title), headerContent && /*#__PURE__*/React__default['default'].createElement(Box, {
50760
- mb: "x6",
50761
- mt: "x2",
50762
- flexGrow: 1,
50763
- ml: "x1"
50764
- }, headerContent)), children);
50862
+ }, rest), renderHeader ? renderHeader() : (breadcrumbs || title || headerContent) && /*#__PURE__*/React__default['default'].createElement(Header, {
50863
+ renderBreadcrumbs: function renderBreadcrumbs() {
50864
+ return breadcrumbs;
50865
+ },
50866
+ title: title
50867
+ }, headerContent), /*#__PURE__*/React__default['default'].createElement(Box, {
50868
+ p: "x3"
50869
+ }, children));
50765
50870
  };
50766
50871
 
50767
50872
  var focusFirstElement = function focusFirstElement() {
@@ -51098,6 +51203,7 @@
51098
51203
  exports.Flex = Flex;
51099
51204
  exports.Form = Form;
51100
51205
  exports.FormSection = FormSection;
51206
+ exports.Header = Header;
51101
51207
  exports.Heading1 = Heading1;
51102
51208
  exports.Heading2 = Heading2;
51103
51209
  exports.Heading3 = Heading3;
@@ -251,7 +251,7 @@ function I18nextProvider(_ref) {
251
251
 
252
252
  /**
253
253
  * Do not edit directly
254
- * Generated on Mon, 06 Jun 2022 21:26:05 GMT
254
+ * Generated on Thu, 01 Dec 2022 21:44:24 GMT
255
255
  */
256
256
 
257
257
  const color_base_black = "#011e38";
@@ -284,7 +284,7 @@ const line_height_base = "1.5";
284
284
  const line_height_small_text_base = "1.71428571";
285
285
  const line_height_small_text_compressed = "1.14285714";
286
286
  const line_height_smaller_text = "1.33333333";
287
- const line_height_heading_1 = "1.05";
287
+ const line_height_heading_1 = "1.25";
288
288
  const line_height_heading_2 = "1.33";
289
289
  const line_height_heading_3 = "1.33";
290
290
  const line_height_heading_4 = "1.33";
@@ -315,8 +315,8 @@ const size_font_small = "14px";
315
315
  const size_font_medium = "16px";
316
316
  const size_font_large = "24px";
317
317
  const size_font_larger = "30px";
318
- const size_font_largest = "38px";
319
- const size_font_heading_1 = "38px";
318
+ const size_font_largest = "32px";
319
+ const size_font_heading_1 = "32px";
320
320
  const size_font_heading_2 = "30px";
321
321
  const size_font_heading_3 = "24px";
322
322
  const size_font_heading_4 = "18px";
@@ -11685,7 +11685,20 @@ var Flex = styled(Box).withConfig({
11685
11685
  componentId: "sc-1whlq91-0"
11686
11686
  })({
11687
11687
  display: "flex"
11688
- }, flexbox);
11688
+ }, system({
11689
+ gap: {
11690
+ property: "gap",
11691
+ scale: "space"
11692
+ },
11693
+ rowGap: {
11694
+ property: "rowGap",
11695
+ scale: "space"
11696
+ },
11697
+ columnGap: {
11698
+ property: "columnGap",
11699
+ scale: "space"
11700
+ }
11701
+ }), flexbox);
11689
11702
 
11690
11703
  /*! *****************************************************************************
11691
11704
  Copyright (c) Microsoft Corporation.
@@ -42367,7 +42380,10 @@ var BreadcrumbsListItem = styled.li.withConfig({
42367
42380
  listStyle: "none",
42368
42381
  display: "inline-flex",
42369
42382
  alignSelf: "center",
42370
- color: theme.colors.darkGrey,
42383
+ color: theme.colors.midGrey,
42384
+ "a, p": {
42385
+ fontSize: theme.fontSizes.small
42386
+ },
42371
42387
  "a:visited": {
42372
42388
  color: theme.colors.darkBlue
42373
42389
  }
@@ -42376,14 +42392,10 @@ var BreadcrumbsListItem = styled.li.withConfig({
42376
42392
 
42377
42393
  var insertSeparators = function insertSeparators(items, className) {
42378
42394
  return items.reduce(function (acc, current, index) {
42379
- return acc.concat(current,
42380
- /*#__PURE__*/
42381
- // eslint-disable-next-line react/no-array-index-key
42382
- React__default.createElement(BreadcrumbsListItem, {
42395
+ return acc.concat(current, /*#__PURE__*/React__default.createElement(BreadcrumbsListItem, {
42383
42396
  "aria-hidden": true,
42384
42397
  key: "separator-" + index,
42385
- className: className,
42386
- px: "x1"
42398
+ className: className
42387
42399
  }, /*#__PURE__*/React__default.createElement(Icon, {
42388
42400
  icon: "rightArrow"
42389
42401
  })));
@@ -42395,18 +42407,14 @@ var Breadcrumbs = function Breadcrumbs(_a) {
42395
42407
  as = _a.as,
42396
42408
  props = __rest(_a, ["children", "as"]);
42397
42409
 
42398
- var childrenArr = Array.isArray(children) ? children : [children];
42399
- var allItems = [].concat(childrenArr).map(function (child, index) {
42400
- return (
42401
- /*#__PURE__*/
42402
- // eslint-disable-next-line react/no-array-index-key
42403
- React__default.createElement(BreadcrumbsListItem, {
42404
- key: "child-" + index
42405
- }, /*#__PURE__*/React__default.cloneElement(child, {
42406
- color: "darkBlue"
42407
- }))
42408
- );
42409
- });
42410
+ var allItems = React__default.Children.map(children, function (child, index) {
42411
+ if (! /*#__PURE__*/isValidElement(child)) return null;
42412
+ return /*#__PURE__*/React__default.createElement(BreadcrumbsListItem, {
42413
+ key: "child-" + index
42414
+ }, /*#__PURE__*/React__default.cloneElement(child, {
42415
+ color: "darkBlue"
42416
+ }));
42417
+ }).filter(Boolean);
42410
42418
  return /*#__PURE__*/React__default.createElement(Flex, Object.assign({
42411
42419
  as: as
42412
42420
  }, props), /*#__PURE__*/React__default.createElement(BreadcrumbsList, null, insertSeparators(allItems, "seperator")));
@@ -50712,30 +50720,127 @@ var ApplicationFrame = function ApplicationFrame(_a) {
50712
50720
  }, children));
50713
50721
  };
50714
50722
 
50723
+ var useMediaQuery = function useMediaQuery(query) {
50724
+ var _useState = useState(window.matchMedia(query).matches),
50725
+ matches = _useState[0],
50726
+ setMatches = _useState[1];
50727
+
50728
+ useEffect(function () {
50729
+ var handler = function handler(e) {
50730
+ setMatches(e.matches);
50731
+ };
50732
+
50733
+ window.matchMedia(query).addEventListener("change", handler);
50734
+ return function () {
50735
+ window.removeEventListener("change", handler);
50736
+ };
50737
+ }, []);
50738
+ return matches;
50739
+ };
50740
+
50741
+ var Header = function Header(_a) {
50742
+ var _b, _c;
50743
+
50744
+ var _a$background = _a.background,
50745
+ background = _a$background === void 0 ? "whiteGrey" : _a$background,
50746
+ renderBreadcrumbs = _a.renderBreadcrumbs,
50747
+ title = _a.title,
50748
+ _a$undecorated = _a.undecorated,
50749
+ undecorated = _a$undecorated === void 0 ? false : _a$undecorated,
50750
+ children = _a.children,
50751
+ subtitle = _a.subtitle,
50752
+ breakpoints = _a.breakpoints,
50753
+ renderActions = _a.renderActions,
50754
+ renderSummary = _a.renderSummary,
50755
+ rest = __rest(_a, ["background", "renderBreadcrumbs", "title", "undecorated", "children", "subtitle", "breakpoints", "renderActions", "renderSummary"]);
50756
+
50757
+ var theme = useTheme();
50758
+ var smallBreakpoint = pixelDigitsFrom$1((_b = breakpoints === null || breakpoints === void 0 ? void 0 : breakpoints.small) !== null && _b !== void 0 ? _b : theme.breakpoints.small);
50759
+ var mediumBreakpoint = pixelDigitsFrom$1((_c = breakpoints === null || breakpoints === void 0 ? void 0 : breakpoints.medium) !== null && _c !== void 0 ? _c : theme.breakpoints.medium);
50760
+ var m = useMediaQuery("(max-width: " + mediumBreakpoint + "px)");
50761
+ var sm = useMediaQuery("(max-width: " + smallBreakpoint + "px)");
50762
+ return /*#__PURE__*/React__default.createElement(Flex, Object.assign({
50763
+ py: "x1",
50764
+ px: "x3",
50765
+ gap: "x2",
50766
+ position: "relative",
50767
+ bg: background
50768
+ }, rest), /*#__PURE__*/React__default.createElement(Flex, {
50769
+ flexGrow: 3,
50770
+ justifyContent: "space-between",
50771
+ flexDirection: m || sm ? "column" : "row",
50772
+ zIndex: "content"
50773
+ }, /*#__PURE__*/React__default.createElement(Flex, {
50774
+ flexDirection: "column"
50775
+ }, renderBreadcrumbs && renderBreadcrumbs(), /*#__PURE__*/React__default.createElement(Flex, {
50776
+ gap: !sm ? "x2" : undefined,
50777
+ flexDirection: !sm ? "row" : "column",
50778
+ alignItems: !sm ? "center" : undefined
50779
+ }, /*#__PURE__*/React__default.createElement(Flex, {
50780
+ alignItems: !sm ? "flex-end" : undefined,
50781
+ gap: !sm ? "x2" : undefined,
50782
+ flexDirection: !sm ? "row" : "column"
50783
+ }, title && /*#__PURE__*/React__default.createElement(Heading1, {
50784
+ mb: "0"
50785
+ }, title), subtitle && /*#__PURE__*/React__default.createElement(Text, {
50786
+ pl: !sm ? "x2" : undefined,
50787
+ borderLeft: !sm ? "1px solid" : "none",
50788
+ my: "half",
50789
+ borderColor: "grey"
50790
+ }, subtitle)), children && children)), renderSummary && renderSummary()), renderActions && /*#__PURE__*/React__default.createElement(Flex, {
50791
+ display: "flex",
50792
+ flexGrow: 0,
50793
+ alignItems: "flex-start",
50794
+ zIndex: "content"
50795
+ }, renderActions()), !undecorated && /*#__PURE__*/React__default.createElement(BackgroundTriangles, {
50796
+ zIndex: 1
50797
+ }));
50798
+ };
50799
+
50800
+ var RightAngleTriangle = styled(Box).withConfig({
50801
+ displayName: "Header__RightAngleTriangle",
50802
+ componentId: "sc-1kuwqm0-0"
50803
+ })(["position:absolute;bottom:0;right:0;width:100%;clip-path:polygon(100% 0,0 100%,100% 100%);"]);
50804
+
50805
+ var BackgroundTriangles = function BackgroundTriangles(props) {
50806
+ var theme = useTheme();
50807
+ return /*#__PURE__*/React__default.createElement(Box, Object.assign({
50808
+ position: "absolute",
50809
+ bottom: 0,
50810
+ right: 0,
50811
+ height: "100%",
50812
+ minWidth: "55%"
50813
+ }, props), /*#__PURE__*/React__default.createElement(RightAngleTriangle, {
50814
+ height: "33.33%",
50815
+ opacity: "0.5",
50816
+ background: "linear-gradient(178.25deg, rgba(192, 200, 209, 0.5) 62.98%, rgba(225, 235, 250, 0.25) 98.52%)"
50817
+ }), /*#__PURE__*/React__default.createElement(RightAngleTriangle, {
50818
+ height: "17%",
50819
+ opacity: "0.25",
50820
+ background: "linear-gradient(196.88deg, " + theme.colors.grey + " 11.92%, rgba(0, 67, 143, 0) 88.36%)"
50821
+ }));
50822
+ };
50823
+
50715
50824
  var Page = function Page(_a) {
50716
50825
  var breadcrumbs = _a.breadcrumbs,
50717
50826
  title = _a.title,
50718
50827
  children = _a.children,
50719
50828
  headerContent = _a.headerContent,
50720
50829
  fullHeight = _a.fullHeight,
50721
- props = __rest(_a, ["breadcrumbs", "title", "children", "headerContent", "fullHeight"]);
50830
+ renderHeader = _a.renderHeader,
50831
+ rest = __rest(_a, ["breadcrumbs", "title", "children", "headerContent", "fullHeight", "renderHeader"]);
50722
50832
 
50723
50833
  return /*#__PURE__*/React__default.createElement(Flex, Object.assign({
50724
50834
  flexDirection: "column",
50725
- py: "x3",
50726
- px: "x3",
50727
50835
  flexGrow: fullHeight ? 1 : 0
50728
- }, props), breadcrumbs, /*#__PURE__*/React__default.createElement(Flex, {
50729
- alignItems: "center"
50730
- }, title && /*#__PURE__*/React__default.createElement(Heading1, {
50731
- mb: "x6",
50732
- mt: "x2"
50733
- }, title), headerContent && /*#__PURE__*/React__default.createElement(Box, {
50734
- mb: "x6",
50735
- mt: "x2",
50736
- flexGrow: 1,
50737
- ml: "x1"
50738
- }, headerContent)), children);
50836
+ }, rest), renderHeader ? renderHeader() : (breadcrumbs || title || headerContent) && /*#__PURE__*/React__default.createElement(Header, {
50837
+ renderBreadcrumbs: function renderBreadcrumbs() {
50838
+ return breadcrumbs;
50839
+ },
50840
+ title: title
50841
+ }, headerContent), /*#__PURE__*/React__default.createElement(Box, {
50842
+ p: "x3"
50843
+ }, children));
50739
50844
  };
50740
50845
 
50741
50846
  var focusFirstElement = function focusFirstElement() {
@@ -51038,4 +51143,4 @@ var SortingTable = function SortingTable(_a) {
51038
51143
  }, props));
51039
51144
  };
51040
51145
 
51041
- export { ALL_NDS_LOCALES, Alert, AnimatedBox, ApplicationFrame, AsyncSelect, Box, BrandLogoContainer, NavBar as BrandedNavBar, Branding, Breadcrumbs, Button, ButtonGroup, Card, CardSet, Checkbox, CheckboxGroup, ControlIcon, DangerButton, DatePicker, DateRange, DesktopMenu, Divider, DropdownButton, DropdownItem, DropdownLink, DropdownMenu, DropdownText, EnvironmentBanner, Field, FieldLabel, Fieldset, Flex, Form, FormSection, Heading1, Heading2, Heading3, Heading4, HelpText, Icon, IconicButton, InlineIcon, InlineValidation, Input$1 as Input, Link, List, ListItem, LoadingAnimation, MenuTrigger, Modal, NDSProvider, NavBar$1 as NavBar, NavBarBackground, Overlay, Page, Pagination, PrimaryButton, QuietButton, Radio, RadioGroup, RangeContainer, RequirementText, ReactSelect as Select, SelectClearIndicator, SelectContainer$1 as SelectContainer, SelectControl, SelectDropdownIndicator, SelectInput, SelectMenu, SelectMultiValue, SelectOption, Sidebar, SmallNavBar, SortingTable, StatusIndicator, Switch, Switcher, Tab, Table, Tabs, Text, Textarea, TimePicker, TimeRange, Toast, ToggleComponent as Toggle, Tooltip, TruncatedText, addStyledProps, Theme as theme, useWindowDimensions };
51146
+ export { ALL_NDS_LOCALES, Alert, AnimatedBox, ApplicationFrame, AsyncSelect, Box, BrandLogoContainer, NavBar as BrandedNavBar, Branding, Breadcrumbs, Button, ButtonGroup, Card, CardSet, Checkbox, CheckboxGroup, ControlIcon, DangerButton, DatePicker, DateRange, DesktopMenu, Divider, DropdownButton, DropdownItem, DropdownLink, DropdownMenu, DropdownText, EnvironmentBanner, Field, FieldLabel, Fieldset, Flex, Form, FormSection, Header, Heading1, Heading2, Heading3, Heading4, HelpText, Icon, IconicButton, InlineIcon, InlineValidation, Input$1 as Input, Link, List, ListItem, LoadingAnimation, MenuTrigger, Modal, NDSProvider, NavBar$1 as NavBar, NavBarBackground, Overlay, Page, Pagination, PrimaryButton, QuietButton, Radio, RadioGroup, RangeContainer, RequirementText, ReactSelect as Select, SelectClearIndicator, SelectContainer$1 as SelectContainer, SelectControl, SelectDropdownIndicator, SelectInput, SelectMenu, SelectMultiValue, SelectOption, Sidebar, SmallNavBar, SortingTable, StatusIndicator, Switch, Switcher, Tab, Table, Tabs, Text, Textarea, TimePicker, TimeRange, Toast, ToggleComponent as Toggle, Tooltip, TruncatedText, addStyledProps, Theme as theme, useWindowDimensions };
@@ -4,5 +4,5 @@ import { StyledProps } from "../StyledProps";
4
4
  export declare type NavBarBackgroundProps = {
5
5
  theme?: DefaultNDSThemeType;
6
6
  } & StyledProps;
7
- declare const NavBarBackground: import("styled-components").StyledComponent<import("react").FunctionComponent<import("../Box/Box").BoxProps>, import("styled-components").DefaultTheme, {}, never>;
7
+ declare const NavBarBackground: import("styled-components").StyledComponent<import("react").FC<import("../Flex/Flex").FlexProps>, import("styled-components").DefaultTheme, {}, never>;
8
8
  export default NavBarBackground;
@@ -1,13 +1,4 @@
1
- /// <reference types="react" />
1
+ import React from "react";
2
2
  import { FlexProps } from "../Flex/Flex";
3
- declare type BreadcrumbsProps = FlexProps & {
4
- children: any;
5
- as?: string | undefined;
6
- };
7
- declare const Breadcrumbs: {
8
- ({ children, as, ...props }: BreadcrumbsProps): JSX.Element;
9
- defaultProps: {
10
- as: string;
11
- };
12
- };
3
+ declare const Breadcrumbs: React.FC<FlexProps>;
13
4
  export default Breadcrumbs;
@@ -1,5 +1,9 @@
1
- /// <reference types="react" />
1
+ import React, { CSSProperties } from "react";
2
2
  import { BoxProps } from "../Box/Box";
3
- export declare type FlexProps = BoxProps;
4
- declare const Flex: React.FunctionComponent<FlexProps>;
3
+ export declare type FlexProps = BoxProps & {
4
+ gap?: CSSProperties["gap"];
5
+ rowGap?: CSSProperties["rowGap"];
6
+ columnGap?: CSSProperties["columnGap"];
7
+ };
8
+ declare const Flex: React.FC<FlexProps>;
5
9
  export default Flex;
@@ -0,0 +1,17 @@
1
+ import React from "react";
2
+ import type { BoxProps } from "../Box/Box";
3
+ declare type Breakpoint = string | number;
4
+ declare type HeaderProps = BoxProps & {
5
+ renderBreadcrumbs?: () => React.ReactNode;
6
+ title?: string;
7
+ subtitle?: string;
8
+ undecorated?: boolean;
9
+ renderActions?: () => React.ReactNode;
10
+ renderSummary?: () => React.ReactNode;
11
+ breakpoints?: {
12
+ small?: Breakpoint;
13
+ medium?: Breakpoint;
14
+ };
15
+ };
16
+ declare const Header: React.FC<HeaderProps>;
17
+ export default Header;
@@ -0,0 +1,16 @@
1
+ /// <reference types="react" />
2
+ export declare const DefaultBackground: () => JSX.Element;
3
+ export declare const WithAnUndecoratedBackground: () => JSX.Element;
4
+ export declare const WithActions: () => JSX.Element;
5
+ export declare const WithCustomBackground: () => JSX.Element;
6
+ export declare const WithSubTitle: () => JSX.Element;
7
+ export declare const WithContent: () => JSX.Element;
8
+ export declare const WithSummary: () => JSX.Element;
9
+ export declare const WithEverything: () => JSX.Element;
10
+ declare const _default: {
11
+ title: string;
12
+ parameters: {
13
+ layout: string;
14
+ };
15
+ };
16
+ export default _default;
@@ -6,6 +6,7 @@ declare type PageProps = FlexProps & {
6
6
  children?: React.ReactNode;
7
7
  headerContent?: React.ReactNode;
8
8
  fullHeight?: boolean;
9
+ renderHeader?: () => JSX.Element;
9
10
  };
10
- export declare const Page: ({ breadcrumbs, title, children, headerContent, fullHeight, ...props }: PageProps) => JSX.Element;
11
+ export declare const Page: React.FC<PageProps>;
11
12
  export default Page;
@@ -9,4 +9,5 @@ export default _default;
9
9
  export declare const _Page: () => JSX.Element;
10
10
  export declare const NoPageTitle: () => JSX.Element;
11
11
  export declare const NoBreadcrumbs: () => JSX.Element;
12
+ export declare const NoBackground: () => JSX.Element;
12
13
  export declare const WithFullHeight: () => JSX.Element;
@@ -1,3 +1,4 @@
1
1
  export { default as ApplicationFrame } from "./ApplicationFrame";
2
2
  export { default as Page } from "./Page";
3
3
  export { default as Sidebar } from "./Sidebar";
4
+ export { default as Header } from "./Header";
@@ -2,7 +2,7 @@ import React from "react";
2
2
  import PropTypes from "prop-types";
3
3
  import { DefaultNDSThemeType } from "../theme.type";
4
4
  export declare const getThemeColor: (themeColor: any) => any;
5
- export declare const NavBarBackground: import("styled-components").StyledComponent<React.FunctionComponent<import("../Box/Box").BoxProps>, import("styled-components").DefaultTheme, {
5
+ export declare const NavBarBackground: import("styled-components").StyledComponent<React.FC<import("../Flex/Flex").FlexProps>, import("styled-components").DefaultTheme, {
6
6
  backgroundColor: string;
7
7
  theme?: DefaultNDSThemeType;
8
8
  }, never>;
@@ -1,3 +1,8 @@
1
- /// <reference types="react" />
2
- declare const StatusIndicator: React.FC<any>;
1
+ import React from "react";
2
+ import { SpaceProps, TypographyProps, FlexboxProps } from "styled-system";
3
+ declare type StatusIndicatorType = "neutral" | "dark" | "danger" | "informative" | "success" | "warning" | "quiet";
4
+ declare type StatusIndicatorProps = SpaceProps & TypographyProps & FlexboxProps & {
5
+ type?: StatusIndicatorType;
6
+ };
7
+ declare const StatusIndicator: React.FC<StatusIndicatorProps>;
3
8
  export default StatusIndicator;
@@ -0,0 +1,6 @@
1
+ import React from "react";
2
+ declare type SummaryProps = {
3
+ breakpoint?: number | string;
4
+ };
5
+ declare const Summary: React.FC<SummaryProps>;
6
+ export default Summary;
@@ -0,0 +1,16 @@
1
+ /// <reference types="react" />
2
+ export declare function Default(): JSX.Element;
3
+ export declare function WithMainInfoOnly(): JSX.Element;
4
+ declare const _default: {
5
+ title: string;
6
+ parameters: {
7
+ backgrounds: {
8
+ default: string;
9
+ values: {
10
+ name: string;
11
+ value: string;
12
+ }[];
13
+ };
14
+ };
15
+ };
16
+ export default _default;
@@ -0,0 +1,7 @@
1
+ import React from "react";
2
+ declare type SummaryContextValue = {
3
+ breakpoint: number;
4
+ };
5
+ export declare function useSummaryContext(): SummaryContextValue;
6
+ export declare const SummaryContextProvider: React.FC<SummaryContextValue>;
7
+ export {};
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare const SummaryDivider: (props: any) => JSX.Element;
3
+ export default SummaryDivider;
@@ -0,0 +1,7 @@
1
+ import React from "react";
2
+ declare type SummaryItemProps = {
3
+ value: number | string;
4
+ status: React.ReactNode;
5
+ };
6
+ declare const SummaryItem: React.FC<SummaryItemProps>;
7
+ export default SummaryItem;
@@ -0,0 +1 @@
1
+ export { default as Summary } from "./Summary";
@@ -0,0 +1,2 @@
1
+ declare const useMediaQuery: (query: string) => boolean;
2
+ export default useMediaQuery;
@@ -46,7 +46,7 @@ export { Toast } from "./Toast";
46
46
  export { BrandedNavBar, MenuTrigger, EnvironmentBanner, NavBarBackground, BrandLogoContainer, DesktopMenu, SmallNavBar, } from "./BrandedNavBar";
47
47
  export type { MenuTriggerProps, EnvironmentBannerProps, NavBarBackgroundProps, BrandLogoContainerProps, DesktopMenuProps, SmallNavBarProps, RenderMenuButtonProps, } from "./BrandedNavBar";
48
48
  export { AsyncSelect } from "./AsyncSelect";
49
- export { ApplicationFrame, Page, Sidebar } from "./Layout";
49
+ export { ApplicationFrame, Page, Sidebar, Header } from "./Layout";
50
50
  export { useWindowDimensions } from "./utils";
51
51
  export { Divider } from "./Divider";
52
52
  export { SortingTable } from "./SortingTable";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nulogy/components",
3
- "version": "8.3.0",
3
+ "version": "8.4.0",
4
4
  "description": "Component library for the Nulogy Design System - http://nulogy.design",
5
5
  "private": false,
6
6
  "publishConfig": {
@@ -138,7 +138,7 @@
138
138
  },
139
139
  "dependencies": {
140
140
  "@babel/runtime": "^7.9.6",
141
- "@nulogy/tokens": "^5.3.0",
141
+ "@nulogy/tokens": "^5.4.0",
142
142
  "@styled-system/prop-types": "^5.1.4",
143
143
  "@styled-system/theme-get": "^5.1.2",
144
144
  "body-scroll-lock": "^3.1.5",