@luscii-healthtech/web-ui 0.11.0 → 0.13.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/components/Icons/DynamicIcon.d.ts +11 -0
- package/dist/components/List/List.d.ts +1 -1
- package/dist/components/List/List.types.d.ts +1 -0
- package/dist/components/NotificationBanner/NotificationBanner.d.ts +6 -3
- package/dist/components/PageHeader/PageHeader.d.ts +1 -1
- package/dist/components/Title/Title.d.ts +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/web-ui-tailwind.css +34 -9
- package/dist/web-ui.cjs.development.js +108 -16
- package/dist/web-ui.cjs.development.js.map +1 -1
- package/dist/web-ui.cjs.production.min.js +1 -1
- package/dist/web-ui.cjs.production.min.js.map +1 -1
- package/dist/web-ui.esm.js +107 -17
- package/dist/web-ui.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/components/Icons/DynamicIcon.tsx +25 -0
- package/src/components/List/List.tsx +21 -4
- package/src/components/List/List.types.ts +1 -0
- package/src/components/NotificationBanner/NotificationBanner.tsx +33 -23
- package/src/components/PageHeader/PageHeader.tsx +2 -2
- package/src/components/Title/Title.tsx +7 -2
- package/src/index.tsx +10 -0
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { IconProps } from "./types/IconProps.type";
|
|
3
|
+
/**
|
|
4
|
+
* When used in components that can support both an icon or an image url, we can use this type.
|
|
5
|
+
* TODO: Use this in the ListComponentItem, to extract the custom logic there rendering images/components
|
|
6
|
+
*/
|
|
7
|
+
export declare type DynamicIconProps = {
|
|
8
|
+
icon: React.VoidFunctionComponent<IconProps> | string;
|
|
9
|
+
className?: string;
|
|
10
|
+
};
|
|
11
|
+
export declare const DynamicIcon: React.VoidFunctionComponent<DynamicIconProps>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { ListProps, ListItemProps, OnAssetLoadErrorPayload } from "./List.types";
|
|
3
3
|
export { ListProps, ListItemProps, OnAssetLoadErrorPayload };
|
|
4
|
-
export declare const List: ({ title, headerButton, headerTransparent, items, onAssetLoadError, onDragEnd, }: ListProps) => JSX.Element;
|
|
4
|
+
export declare const List: ({ title, headerButton, headerTransparent, items, onAssetLoadError, onDragEnd, emptyStateMessage, }: ListProps) => JSX.Element;
|
|
5
5
|
export default List;
|
|
@@ -29,6 +29,7 @@ export declare type ListProps = {
|
|
|
29
29
|
items: ListItemProps[];
|
|
30
30
|
onAssetLoadError?: (payload: OnAssetLoadErrorPayload) => void;
|
|
31
31
|
onDragEnd?: (itemId: string | number, newIndex: number) => void;
|
|
32
|
+
emptyStateMessage?: string;
|
|
32
33
|
};
|
|
33
34
|
export interface Dragula {
|
|
34
35
|
destroy?: () => void;
|
|
@@ -1,14 +1,18 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
+
import { DynamicIconProps } from "../Icons/DynamicIcon";
|
|
2
3
|
export declare type NotificationBannerColor = "base" | "blue" | "red" | "green" | "amber";
|
|
3
4
|
export interface NotificationBannerLinkProps {
|
|
4
5
|
text: string;
|
|
5
6
|
enabled: boolean;
|
|
6
7
|
handleClick?: () => void;
|
|
7
8
|
}
|
|
8
|
-
interface NotificationBannerProps {
|
|
9
|
+
export interface NotificationBannerProps {
|
|
9
10
|
text: string;
|
|
10
11
|
color?: NotificationBannerColor;
|
|
11
|
-
|
|
12
|
+
/**
|
|
13
|
+
* The icon can either be one of our icon components or an image url
|
|
14
|
+
*/
|
|
15
|
+
icon?: DynamicIconProps["icon"];
|
|
12
16
|
linkProps?: NotificationBannerLinkProps;
|
|
13
17
|
className?: string;
|
|
14
18
|
}
|
|
@@ -19,4 +23,3 @@ export declare const NotificationBanner: {
|
|
|
19
23
|
onButtonClick: undefined;
|
|
20
24
|
};
|
|
21
25
|
};
|
|
22
|
-
export {};
|
|
@@ -2,7 +2,7 @@ import React from "react";
|
|
|
2
2
|
import { BreadcrumbProps } from "../Breadcrumbs/Breadcrumbs";
|
|
3
3
|
import { TabbarProps } from "../Tabbar/Tabbar";
|
|
4
4
|
export interface PageHeaderProps {
|
|
5
|
-
navigation?: TabbarProps
|
|
5
|
+
navigation?: Omit<TabbarProps, "withoutPadding">;
|
|
6
6
|
breadcrumbs?: BreadcrumbProps["crumbs"];
|
|
7
7
|
dataTestId?: string;
|
|
8
8
|
title: string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import "./Title.scss";
|
|
3
|
-
export declare type TitleStyle = "sm" | "base" | "lg" | "xl" | "2xl";
|
|
3
|
+
export declare type TitleStyle = "xs" | "sm" | "base" | "lg" | "xl" | "2xl";
|
|
4
4
|
export interface TextProps {
|
|
5
5
|
text: string;
|
|
6
6
|
type?: TitleStyle;
|
package/dist/index.d.ts
CHANGED
|
@@ -41,6 +41,8 @@ export { Spinner } from "./components/Spinner/Spinner";
|
|
|
41
41
|
export { Steps } from "./components/Steps/Steps";
|
|
42
42
|
export { default as Switcher } from "./components/Switcher/Switcher";
|
|
43
43
|
export { default as Tabbar, TabbarProps, TabItemDetails, } from "./components/Tabbar/Tabbar";
|
|
44
|
+
export { Breadcrumbs, BreadcrumbProps, } from "./components/Breadcrumbs/Breadcrumbs";
|
|
45
|
+
export { PageHeader, PageHeaderProps, } from "./components/PageHeader/PageHeader";
|
|
44
46
|
export { default as TabLinks } from "./components/TabLinks/TabLinks";
|
|
45
47
|
export { default as Tag } from "./components/Tag/Tag";
|
|
46
48
|
export { default as TagGroup } from "./components/Tag/TagGroup";
|
package/dist/web-ui-tailwind.css
CHANGED
|
@@ -609,6 +609,12 @@ video {
|
|
|
609
609
|
}
|
|
610
610
|
}
|
|
611
611
|
|
|
612
|
+
.space-x-1 > :not(template) ~ :not(template) {
|
|
613
|
+
--space-x-reverse: 0;
|
|
614
|
+
margin-right: calc(0.25rem * var(--space-x-reverse));
|
|
615
|
+
margin-left: calc(0.25rem * calc(1 - var(--space-x-reverse)));
|
|
616
|
+
}
|
|
617
|
+
|
|
612
618
|
.space-x-2 > :not(template) ~ :not(template) {
|
|
613
619
|
--space-x-reverse: 0;
|
|
614
620
|
margin-right: calc(0.5rem * var(--space-x-reverse));
|
|
@@ -715,6 +721,12 @@ video {
|
|
|
715
721
|
background-color: rgba(51, 65, 85, var(--bg-opacity));
|
|
716
722
|
}
|
|
717
723
|
|
|
724
|
+
.bg-amber-50 {
|
|
725
|
+
--bg-opacity: 1;
|
|
726
|
+
background-color: #FEF8E3;
|
|
727
|
+
background-color: rgba(254, 248, 227, var(--bg-opacity));
|
|
728
|
+
}
|
|
729
|
+
|
|
718
730
|
.bg-primary {
|
|
719
731
|
--bg-opacity: 1;
|
|
720
732
|
background-color: #0074DD;
|
|
@@ -807,12 +819,6 @@ video {
|
|
|
807
819
|
border-color: rgba(197, 48, 48, var(--border-opacity));
|
|
808
820
|
}
|
|
809
821
|
|
|
810
|
-
.border-yellow-700 {
|
|
811
|
-
--border-opacity: 1;
|
|
812
|
-
border-color: #b7791f;
|
|
813
|
-
border-color: rgba(183, 121, 31, var(--border-opacity));
|
|
814
|
-
}
|
|
815
|
-
|
|
816
822
|
.border-green-700 {
|
|
817
823
|
--border-opacity: 1;
|
|
818
824
|
border-color: #2f855a;
|
|
@@ -861,10 +867,10 @@ video {
|
|
|
861
867
|
border-color: rgba(71, 85, 105, var(--border-opacity));
|
|
862
868
|
}
|
|
863
869
|
|
|
864
|
-
.border-
|
|
870
|
+
.border-amber-700 {
|
|
865
871
|
--border-opacity: 1;
|
|
866
|
-
border-color: #
|
|
867
|
-
border-color: rgba(
|
|
872
|
+
border-color: #b45309;
|
|
873
|
+
border-color: rgba(180, 83, 9, var(--border-opacity));
|
|
868
874
|
}
|
|
869
875
|
|
|
870
876
|
.border-primary-dark {
|
|
@@ -963,6 +969,11 @@ video {
|
|
|
963
969
|
border-bottom-right-radius: 0.25rem;
|
|
964
970
|
}
|
|
965
971
|
|
|
972
|
+
.rounded-b {
|
|
973
|
+
border-bottom-right-radius: 0.25rem;
|
|
974
|
+
border-bottom-left-radius: 0.25rem;
|
|
975
|
+
}
|
|
976
|
+
|
|
966
977
|
.rounded-l {
|
|
967
978
|
border-top-left-radius: 0.25rem;
|
|
968
979
|
border-bottom-left-radius: 0.25rem;
|
|
@@ -1173,6 +1184,10 @@ video {
|
|
|
1173
1184
|
height: 3rem;
|
|
1174
1185
|
}
|
|
1175
1186
|
|
|
1187
|
+
.h-13 {
|
|
1188
|
+
height: 3.25rem;
|
|
1189
|
+
}
|
|
1190
|
+
|
|
1176
1191
|
.h-56 {
|
|
1177
1192
|
height: 14rem;
|
|
1178
1193
|
}
|
|
@@ -1201,6 +1216,10 @@ video {
|
|
|
1201
1216
|
font-size: 0.875rem;
|
|
1202
1217
|
}
|
|
1203
1218
|
|
|
1219
|
+
.text-base {
|
|
1220
|
+
font-size: 1rem;
|
|
1221
|
+
}
|
|
1222
|
+
|
|
1204
1223
|
.text-lg {
|
|
1205
1224
|
font-size: 1.125rem;
|
|
1206
1225
|
}
|
|
@@ -1773,6 +1792,12 @@ video {
|
|
|
1773
1792
|
color: rgba(30, 41, 59, var(--text-opacity));
|
|
1774
1793
|
}
|
|
1775
1794
|
|
|
1795
|
+
.text-amber-700 {
|
|
1796
|
+
--text-opacity: 1;
|
|
1797
|
+
color: #b45309;
|
|
1798
|
+
color: rgba(180, 83, 9, var(--text-opacity));
|
|
1799
|
+
}
|
|
1800
|
+
|
|
1776
1801
|
.text-primary {
|
|
1777
1802
|
--text-opacity: 1;
|
|
1778
1803
|
color: #0074DD;
|
|
@@ -859,6 +859,7 @@ var Title = function Title(props) {
|
|
|
859
859
|
var containerClassName = classNames("title", //this is used to load the correct font from the css
|
|
860
860
|
"font-bold", {
|
|
861
861
|
"text-slate-700": !((_props$className = props.className) != null && _props$className.match(/\s(text-)/)),
|
|
862
|
+
"text-base": props.type === "xs",
|
|
862
863
|
"text-xl": props.type === "sm",
|
|
863
864
|
"text-2xl": props.type === "base",
|
|
864
865
|
"text-3xl": props.type === "lg",
|
|
@@ -2691,7 +2692,8 @@ var List = function List(_ref) {
|
|
|
2691
2692
|
headerTransparent = _ref.headerTransparent,
|
|
2692
2693
|
items = _ref.items,
|
|
2693
2694
|
onAssetLoadError = _ref.onAssetLoadError,
|
|
2694
|
-
onDragEnd = _ref.onDragEnd
|
|
2695
|
+
onDragEnd = _ref.onDragEnd,
|
|
2696
|
+
emptyStateMessage = _ref.emptyStateMessage;
|
|
2695
2697
|
var listRef = React.useRef(null);
|
|
2696
2698
|
var dragulaRef = React.useRef(null);
|
|
2697
2699
|
var hasHeader = !!(title || headerButton);
|
|
@@ -2740,11 +2742,14 @@ var List = function List(_ref) {
|
|
|
2740
2742
|
return dragulaInstance;
|
|
2741
2743
|
};
|
|
2742
2744
|
|
|
2745
|
+
var roundTop = !hasHeader || hasHeader && headerTransparent;
|
|
2743
2746
|
return /*#__PURE__*/React__default.createElement("div", {
|
|
2744
2747
|
"data-test-id": "list-component"
|
|
2745
2748
|
}, (title || headerButton) && /*#__PURE__*/React__default.createElement("div", {
|
|
2746
2749
|
"data-test-id": "list-header",
|
|
2747
|
-
className: classNames("flex rounded-t flex-row items-center
|
|
2750
|
+
className: classNames("flex rounded-t flex-row items-center space-x-4", {
|
|
2751
|
+
"py-4": !headerButton,
|
|
2752
|
+
"py-2": headerButton,
|
|
2748
2753
|
"bg-white border-b border-slate-100 px-4": !headerTransparent,
|
|
2749
2754
|
"mb-px": headerTransparent,
|
|
2750
2755
|
"justify-between": title && headerButton,
|
|
@@ -2752,20 +2757,25 @@ var List = function List(_ref) {
|
|
|
2752
2757
|
"justify-end": !title && headerButton
|
|
2753
2758
|
})
|
|
2754
2759
|
}, title && /*#__PURE__*/React__default.createElement(Title, {
|
|
2755
|
-
type: "
|
|
2760
|
+
type: "xs",
|
|
2756
2761
|
text: title
|
|
2757
2762
|
}), !!headerButton && /*#__PURE__*/React__default.createElement("div", {
|
|
2758
2763
|
className: "space-x-3"
|
|
2759
2764
|
}, /*#__PURE__*/React__default.createElement(headerButton.buttonType, headerButton.buttonProps))), /*#__PURE__*/React__default.createElement("ul", {
|
|
2760
|
-
className: classNames("list-none"),
|
|
2761
2765
|
ref: listRef
|
|
2762
2766
|
}, items.map(function (item) {
|
|
2763
2767
|
return /*#__PURE__*/React__default.createElement(ListItem, Object.assign({}, item, {
|
|
2764
|
-
roundTop:
|
|
2768
|
+
roundTop: roundTop,
|
|
2765
2769
|
key: item.itemId,
|
|
2766
2770
|
onAssetLoadError: onAssetLoadError,
|
|
2767
2771
|
isDraggable: !!onDragEnd
|
|
2768
2772
|
}));
|
|
2773
|
+
})), items.length === 0 && emptyStateMessage && /*#__PURE__*/React__default.createElement("div", {
|
|
2774
|
+
className: classNames("p-4 bg-white rounded-b", {
|
|
2775
|
+
"first:rounded-t": roundTop
|
|
2776
|
+
})
|
|
2777
|
+
}, /*#__PURE__*/React__default.createElement(Text, {
|
|
2778
|
+
text: emptyStateMessage
|
|
2769
2779
|
})));
|
|
2770
2780
|
};
|
|
2771
2781
|
|
|
@@ -3091,13 +3101,29 @@ var TextLink = function TextLink(props) {
|
|
|
3091
3101
|
}, props.text);
|
|
3092
3102
|
};
|
|
3093
3103
|
|
|
3104
|
+
var DynamicIcon = function DynamicIcon(props) {
|
|
3105
|
+
var icon = props.icon,
|
|
3106
|
+
className = props.className;
|
|
3107
|
+
|
|
3108
|
+
if (typeof icon === "string") {
|
|
3109
|
+
return /*#__PURE__*/React__default.createElement("img", {
|
|
3110
|
+
src: icon,
|
|
3111
|
+
className: className
|
|
3112
|
+
});
|
|
3113
|
+
}
|
|
3114
|
+
|
|
3115
|
+
return /*#__PURE__*/React__default.createElement(icon, {
|
|
3116
|
+
className: className
|
|
3117
|
+
});
|
|
3118
|
+
};
|
|
3119
|
+
|
|
3094
3120
|
var NotificationBanner = function NotificationBanner(props) {
|
|
3095
|
-
var classes = classNames("w-full px-6 py-
|
|
3096
|
-
"bg-slate-
|
|
3097
|
-
"bg-blue-50 border-blue-700": props.color === "blue",
|
|
3098
|
-
"bg-red-50 border-red-700": props.color === "red",
|
|
3099
|
-
"bg-green-50 border-green-700": props.color === "green",
|
|
3100
|
-
"bg-
|
|
3121
|
+
var classes = classNames("w-full px-6 py-4 h-13 flex flex-row items-center border border-solid rounded", props.className, {
|
|
3122
|
+
"bg-slate-100 border-slate-300 text-slate-700": props.color === "base",
|
|
3123
|
+
"bg-blue-50 border-blue-700 text-blue-800": props.color === "blue",
|
|
3124
|
+
"bg-red-50 border-red-700 text-red-700": props.color === "red",
|
|
3125
|
+
"bg-green-50 border-green-700 text-green-700": props.color === "green",
|
|
3126
|
+
"bg-amber-50 border-amber-700 text-amber-700": props.color === "amber"
|
|
3101
3127
|
});
|
|
3102
3128
|
var textColor = {
|
|
3103
3129
|
red: "red",
|
|
@@ -3107,20 +3133,27 @@ var NotificationBanner = function NotificationBanner(props) {
|
|
|
3107
3133
|
// Blue must be 800 here to pass the contrast test
|
|
3108
3134
|
blue: "blue-800"
|
|
3109
3135
|
};
|
|
3136
|
+
var color = props.color ? textColor[props.color] : "base";
|
|
3110
3137
|
return /*#__PURE__*/React__default.createElement("div", {
|
|
3111
3138
|
className: classes
|
|
3112
|
-
}, props.icon
|
|
3113
|
-
className: "
|
|
3139
|
+
}, props.icon && /*#__PURE__*/React__default.createElement(DynamicIcon, {
|
|
3140
|
+
className: "w-6 h-6",
|
|
3141
|
+
icon: props.icon
|
|
3142
|
+
}), /*#__PURE__*/React__default.createElement("div", {
|
|
3143
|
+
className: "flex flex-row items-center space-x-1"
|
|
3144
|
+
}, /*#__PURE__*/React__default.createElement(Text, {
|
|
3145
|
+
className: classNames({
|
|
3146
|
+
"ml-3": props.icon
|
|
3147
|
+
}),
|
|
3114
3148
|
text: props.text,
|
|
3115
|
-
color:
|
|
3149
|
+
color: color
|
|
3116
3150
|
}), props.linkProps && /*#__PURE__*/React__default.createElement(TextLink, {
|
|
3117
|
-
className: "ml-4",
|
|
3118
3151
|
text: props.linkProps.text,
|
|
3119
3152
|
enabled: props.linkProps.enabled,
|
|
3120
3153
|
rel: "noopener",
|
|
3121
3154
|
target: "_blank",
|
|
3122
3155
|
onClick: props.linkProps.handleClick
|
|
3123
|
-
}));
|
|
3156
|
+
})));
|
|
3124
3157
|
};
|
|
3125
3158
|
NotificationBanner.defaultProps = {
|
|
3126
3159
|
color: "base",
|
|
@@ -4060,6 +4093,63 @@ var Tabbar = function Tabbar(_ref) {
|
|
|
4060
4093
|
}));
|
|
4061
4094
|
};
|
|
4062
4095
|
|
|
4096
|
+
var Breadcrumbs = function Breadcrumbs(_ref) {
|
|
4097
|
+
var crumbs = _ref.crumbs;
|
|
4098
|
+
var breadcrumbItems = crumbs.map(function (_ref2) {
|
|
4099
|
+
var name = _ref2.name,
|
|
4100
|
+
link = _ref2.link;
|
|
4101
|
+
return /*#__PURE__*/React__default.createElement("li", {
|
|
4102
|
+
key: name,
|
|
4103
|
+
className: "flex flex-row items-center slash-split "
|
|
4104
|
+
}, link ? /*#__PURE__*/React__default.createElement(router.Link, {
|
|
4105
|
+
to: link
|
|
4106
|
+
}, /*#__PURE__*/React__default.createElement(Text, {
|
|
4107
|
+
text: name,
|
|
4108
|
+
color: "blue-800"
|
|
4109
|
+
})) : /*#__PURE__*/React__default.createElement(Text, {
|
|
4110
|
+
text: name
|
|
4111
|
+
}));
|
|
4112
|
+
});
|
|
4113
|
+
return /*#__PURE__*/React__default.createElement("ul", {
|
|
4114
|
+
"data-test-id": "breadcrumbs",
|
|
4115
|
+
className: "flex flex-row items-center space-x-2 "
|
|
4116
|
+
}, breadcrumbItems);
|
|
4117
|
+
};
|
|
4118
|
+
|
|
4119
|
+
var PageHeader = function PageHeader(_ref) {
|
|
4120
|
+
var navigation = _ref.navigation,
|
|
4121
|
+
breadcrumbs = _ref.breadcrumbs,
|
|
4122
|
+
dataTestId = _ref.dataTestId,
|
|
4123
|
+
accessories = _ref.accessories,
|
|
4124
|
+
isPolling = _ref.isPolling,
|
|
4125
|
+
title = _ref.title;
|
|
4126
|
+
return /*#__PURE__*/React__default.createElement("div", {
|
|
4127
|
+
"data-test-id": "page-header",
|
|
4128
|
+
className: "p-4 space-y-4 bg-white"
|
|
4129
|
+
}, !!(breadcrumbs != null && breadcrumbs.length) && /*#__PURE__*/React__default.createElement("div", {
|
|
4130
|
+
className: "mb-4 space-y-4"
|
|
4131
|
+
}, /*#__PURE__*/React__default.createElement(Breadcrumbs, {
|
|
4132
|
+
crumbs: breadcrumbs
|
|
4133
|
+
}), /*#__PURE__*/React__default.createElement("div", {
|
|
4134
|
+
className: "mb-4 border-b border-slate-100"
|
|
4135
|
+
})), /*#__PURE__*/React__default.createElement("div", {
|
|
4136
|
+
className: "flex flex-row items-center justify-between"
|
|
4137
|
+
}, /*#__PURE__*/React__default.createElement("div", {
|
|
4138
|
+
className: "flex flex-row items-center space-x-3"
|
|
4139
|
+
}, /*#__PURE__*/React__default.createElement(Title, {
|
|
4140
|
+
"data-test-id": dataTestId + "-title",
|
|
4141
|
+
text: title
|
|
4142
|
+
}), isPolling && /*#__PURE__*/React__default.createElement(LoadingIndicator, {
|
|
4143
|
+
asSpinner: true,
|
|
4144
|
+
className: "page-spinner",
|
|
4145
|
+
spinnerColor: "gray"
|
|
4146
|
+
})), accessories && /*#__PURE__*/React__default.createElement("div", {
|
|
4147
|
+
"data-test-id": "page-header-accessories"
|
|
4148
|
+
}, accessories)), navigation && /*#__PURE__*/React__default.createElement(Tabbar, Object.assign({}, navigation, {
|
|
4149
|
+
withoutPadding: true
|
|
4150
|
+
})));
|
|
4151
|
+
};
|
|
4152
|
+
|
|
4063
4153
|
var TabLinksSelect = function TabLinksSelect(_ref) {
|
|
4064
4154
|
var items = _ref.items,
|
|
4065
4155
|
navigate = _ref.navigate,
|
|
@@ -5219,6 +5309,7 @@ exports.AlertsIcon = AlertsIcon;
|
|
|
5219
5309
|
exports.Avatar = Avatar;
|
|
5220
5310
|
exports.Badge = Badge;
|
|
5221
5311
|
exports.BellIcon = BellIcon;
|
|
5312
|
+
exports.Breadcrumbs = Breadcrumbs;
|
|
5222
5313
|
exports.CRUDPage = CRUDPage;
|
|
5223
5314
|
exports.Carousel = Carousel;
|
|
5224
5315
|
exports.CenteredHero = CenteredHero;
|
|
@@ -5262,6 +5353,7 @@ exports.NavMenu = NavMenu;
|
|
|
5262
5353
|
exports.NotesIcon = NotesIcon;
|
|
5263
5354
|
exports.NotificationBanner = NotificationBanner;
|
|
5264
5355
|
exports.Page = Page;
|
|
5356
|
+
exports.PageHeader = PageHeader;
|
|
5265
5357
|
exports.PaginationMenu = PaginationMenu;
|
|
5266
5358
|
exports.PinIcon = PinIcon;
|
|
5267
5359
|
exports.PreviewPhone = PreviewPhone;
|