@ably/ui 16.0.0-dev.f34cb058 → 16.0.0-dev.fc84d6ff
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/core/FeaturedLink.js +1 -1
- package/core/FeaturedLink.js.map +1 -1
- package/core/Flyout.js +1 -1
- package/core/Flyout.js.map +1 -1
- package/core/Header.js +1 -1
- package/core/Header.js.map +1 -1
- package/core/LegacyMeganav/LegacyMeganav.js +2 -0
- package/core/LegacyMeganav/LegacyMeganav.js.map +1 -0
- package/core/LegacyMeganav/MeganavBlogPostsList.js +2 -0
- package/core/LegacyMeganav/MeganavBlogPostsList.js.map +1 -0
- package/core/LegacyMeganav/MeganavContentCompany.js +2 -0
- package/core/LegacyMeganav/MeganavContentCompany.js.map +1 -0
- package/core/LegacyMeganav/MeganavContentDevelopers.js +2 -0
- package/core/LegacyMeganav/MeganavContentDevelopers.js.map +1 -0
- package/core/LegacyMeganav/MeganavContentProducts.js +2 -0
- package/core/LegacyMeganav/MeganavContentProducts.js.map +1 -0
- package/core/LegacyMeganav/MeganavContentUseCases.js +2 -0
- package/core/LegacyMeganav/MeganavContentUseCases.js.map +1 -0
- package/core/LegacyMeganav/MeganavControl.js +2 -0
- package/core/LegacyMeganav/MeganavControl.js.map +1 -0
- package/core/LegacyMeganav/MeganavControlMobileDropdown.js +2 -0
- package/core/LegacyMeganav/MeganavControlMobileDropdown.js.map +1 -0
- package/core/LegacyMeganav/MeganavControlMobilePanelClose.js +2 -0
- package/core/LegacyMeganav/MeganavControlMobilePanelClose.js.map +1 -0
- package/core/LegacyMeganav/MeganavControlMobilePanelOpen.js +2 -0
- package/core/LegacyMeganav/MeganavControlMobilePanelOpen.js.map +1 -0
- package/core/LegacyMeganav/MeganavItemsDesktop.js +2 -0
- package/core/LegacyMeganav/MeganavItemsDesktop.js.map +1 -0
- package/core/LegacyMeganav/MeganavItemsMobile.js +2 -0
- package/core/LegacyMeganav/MeganavItemsMobile.js.map +1 -0
- package/core/LegacyMeganav/MeganavItemsSignedIn.js.map +1 -0
- package/core/LegacyMeganav/MeganavSearch.js +2 -0
- package/core/LegacyMeganav/MeganavSearch.js.map +1 -0
- package/core/LegacyMeganav/MeganavSearchAutocomplete.js.map +1 -0
- package/core/LegacyMeganav/MeganavSearchPanel.js +2 -0
- package/core/LegacyMeganav/MeganavSearchPanel.js.map +1 -0
- package/core/LegacyMeganav/MeganavSearchSuggestions.js +2 -0
- package/core/LegacyMeganav/MeganavSearchSuggestions.js.map +1 -0
- package/core/LegacyMeganav/SignOutLink.js.map +1 -0
- package/core/Meganav/.DS_Store +0 -0
- package/core/Meganav/MeganavMobile.js +1 -1
- package/core/Meganav/MeganavMobile.js.map +1 -1
- package/core/Meganav/MeganavPanel.js +1 -1
- package/core/Meganav/MeganavPanel.js.map +1 -1
- package/core/Meganav/data.js +1 -1
- package/core/Meganav/data.js.map +1 -1
- package/core/Meganav/images/fan-engagement-nav-image.png +0 -0
- package/core/Meganav/images/founders-nav-image.png +0 -0
- package/core/Meganav.js +2 -0
- package/core/Meganav.js.map +1 -0
- package/core/Notice.js +1 -1
- package/core/Notice.js.map +1 -1
- package/core/ProductTile/ProductDescription.js +1 -1
- package/core/ProductTile/ProductDescription.js.map +1 -1
- package/core/ProductTile/ProductLabel.js +1 -1
- package/core/ProductTile/ProductLabel.js.map +1 -1
- package/core/insights/command-queue.js +2 -0
- package/core/insights/command-queue.js.map +1 -0
- package/core/insights/datalayer.js +2 -0
- package/core/insights/datalayer.js.map +1 -0
- package/core/insights/index.js +1 -1
- package/core/insights/index.js.map +1 -1
- package/core/insights/index.test.js +2 -0
- package/core/insights/index.test.js.map +1 -0
- package/core/insights/logger.js +2 -0
- package/core/insights/logger.js.map +1 -0
- package/core/insights/mixpanel.js +1 -1
- package/core/insights/mixpanel.js.map +1 -1
- package/core/insights/posthog.js +1 -1
- package/core/insights/posthog.js.map +1 -1
- package/core/insights/service.js +2 -0
- package/core/insights/service.js.map +1 -0
- package/core/insights/types.js.map +1 -1
- package/index.d.ts +233 -229
- package/package.json +9 -5
- package/core/LegacyMeganav.js +0 -2
- package/core/LegacyMeganav.js.map +0 -1
- package/core/Meganav/Meganav.js +0 -2
- package/core/Meganav/Meganav.js.map +0 -1
- package/core/MeganavBlogPostsList.js +0 -2
- package/core/MeganavBlogPostsList.js.map +0 -1
- package/core/MeganavContentCompany.js +0 -2
- package/core/MeganavContentCompany.js.map +0 -1
- package/core/MeganavContentDevelopers.js +0 -2
- package/core/MeganavContentDevelopers.js.map +0 -1
- package/core/MeganavContentProducts.js +0 -2
- package/core/MeganavContentProducts.js.map +0 -1
- package/core/MeganavContentUseCases.js +0 -2
- package/core/MeganavContentUseCases.js.map +0 -1
- package/core/MeganavControl.js +0 -2
- package/core/MeganavControl.js.map +0 -1
- package/core/MeganavControlMobileDropdown.js +0 -2
- package/core/MeganavControlMobileDropdown.js.map +0 -1
- package/core/MeganavControlMobilePanelClose.js +0 -2
- package/core/MeganavControlMobilePanelClose.js.map +0 -1
- package/core/MeganavControlMobilePanelOpen.js +0 -2
- package/core/MeganavControlMobilePanelOpen.js.map +0 -1
- package/core/MeganavItemsDesktop.js +0 -2
- package/core/MeganavItemsDesktop.js.map +0 -1
- package/core/MeganavItemsMobile.js +0 -2
- package/core/MeganavItemsMobile.js.map +0 -1
- package/core/MeganavItemsSignedIn.js.map +0 -1
- package/core/MeganavSearch.js +0 -2
- package/core/MeganavSearch.js.map +0 -1
- package/core/MeganavSearchAutocomplete.js.map +0 -1
- package/core/MeganavSearchPanel.js +0 -2
- package/core/MeganavSearchPanel.js.map +0 -1
- package/core/MeganavSearchSuggestions.js +0 -2
- package/core/MeganavSearchSuggestions.js.map +0 -1
- package/core/SignOutLink.js.map +0 -1
- /package/core/{MeganavItemsSignedIn.js → LegacyMeganav/MeganavItemsSignedIn.js} +0 -0
- /package/core/{MeganavSearchAutocomplete.js → LegacyMeganav/MeganavSearchAutocomplete.js} +0 -0
- /package/core/{SignOutLink.js → LegacyMeganav/SignOutLink.js} +0 -0
package/index.d.ts
CHANGED
|
@@ -423,8 +423,12 @@ type FeaturedLinkProps = {
|
|
|
423
423
|
newWindow?: boolean;
|
|
424
424
|
onClick?: () => void;
|
|
425
425
|
disabled?: boolean;
|
|
426
|
+
/**
|
|
427
|
+
* Optional class name for group hover state.
|
|
428
|
+
*/
|
|
429
|
+
groupHoverClassName?: string;
|
|
426
430
|
};
|
|
427
|
-
const FeaturedLink: ({ url, textSize, iconColor, flush, reverse, additionalCSS, newWindow, onClick, children, disabled, }: FeaturedLinkProps) => import("react/jsx-runtime").JSX.Element;
|
|
431
|
+
const FeaturedLink: ({ url, textSize, iconColor, flush, reverse, additionalCSS, newWindow, onClick, children, disabled, groupHoverClassName, }: FeaturedLinkProps) => import("react/jsx-runtime").JSX.Element;
|
|
428
432
|
export default FeaturedLink;
|
|
429
433
|
//# sourceMappingURL=FeaturedLink.d.ts.map
|
|
430
434
|
}
|
|
@@ -685,73 +689,9 @@ export default Icon;
|
|
|
685
689
|
//# sourceMappingURL=Icon.d.ts.map
|
|
686
690
|
}
|
|
687
691
|
|
|
688
|
-
declare module '@ably/ui/core/LegacyMeganav/
|
|
689
|
-
export default MeganavControl;
|
|
690
|
-
function MeganavControl(): {
|
|
691
|
-
teardown: () => void;
|
|
692
|
-
clear: () => void;
|
|
693
|
-
}[];
|
|
694
|
-
//# sourceMappingURL=component.d.ts.map
|
|
695
|
-
}
|
|
696
|
-
|
|
697
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavControlMobileDropdown/component' {
|
|
698
|
-
export default MeganavControlMobileDropdown;
|
|
699
|
-
function MeganavControlMobileDropdown({ clearPanels }: {
|
|
700
|
-
clearPanels: any;
|
|
701
|
-
}): {
|
|
702
|
-
teardown: () => void;
|
|
703
|
-
clear: () => void;
|
|
704
|
-
};
|
|
705
|
-
//# sourceMappingURL=component.d.ts.map
|
|
706
|
-
}
|
|
707
|
-
|
|
708
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavControlMobilePanelClose/component' {
|
|
709
|
-
function _default(): {
|
|
710
|
-
teardown: () => void;
|
|
711
|
-
clear: () => void;
|
|
712
|
-
}[];
|
|
713
|
-
export default _default;
|
|
714
|
-
//# sourceMappingURL=component.d.ts.map
|
|
715
|
-
}
|
|
716
|
-
|
|
717
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavControlMobilePanelOpen/component' {
|
|
718
|
-
function _default(): {
|
|
719
|
-
teardown: () => void;
|
|
720
|
-
clear: () => void;
|
|
721
|
-
}[];
|
|
722
|
-
export default _default;
|
|
723
|
-
//# sourceMappingURL=component.d.ts.map
|
|
724
|
-
}
|
|
725
|
-
|
|
726
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavSearchAutocomplete/component' {
|
|
727
|
-
function _default(apiKey: any): {
|
|
728
|
-
teardown: () => void;
|
|
729
|
-
clear: () => void;
|
|
730
|
-
}[];
|
|
731
|
-
export default _default;
|
|
732
|
-
//# sourceMappingURL=component.d.ts.map
|
|
733
|
-
}
|
|
734
|
-
|
|
735
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavSearchSuggestions/component' {
|
|
736
|
-
export default MeganavSearchSuggestions;
|
|
737
|
-
function MeganavSearchSuggestions(): {
|
|
738
|
-
teardown: () => void;
|
|
739
|
-
clear: () => void;
|
|
740
|
-
};
|
|
741
|
-
//# sourceMappingURL=component.d.ts.map
|
|
742
|
-
}
|
|
743
|
-
|
|
744
|
-
declare module '@ably/ui/core/LegacyMeganav/component' {
|
|
745
|
-
export default function Meganav({ themeName, addSearchApiKey }: {
|
|
746
|
-
themeName: any;
|
|
747
|
-
addSearchApiKey: any;
|
|
748
|
-
}): () => void;
|
|
749
|
-
//# sourceMappingURL=component.d.ts.map
|
|
750
|
-
}
|
|
751
|
-
|
|
752
|
-
declare module '@ably/ui/core/LegacyMeganav' {
|
|
692
|
+
declare module '@ably/ui/core/LegacyMeganav/LegacyMeganav' {
|
|
753
693
|
import { ReactNode } from "react";
|
|
754
|
-
import { ColorClass } from "
|
|
694
|
+
import { ColorClass } from ".@ably/ui/core/styles/colors/types";
|
|
755
695
|
export type MeganavTheme = {
|
|
756
696
|
backgroundColor?: ColorClass;
|
|
757
697
|
textColor?: ColorClass;
|
|
@@ -829,137 +769,12 @@ type MeganavProps = {
|
|
|
829
769
|
statusUrl: string;
|
|
830
770
|
searchDataId?: string;
|
|
831
771
|
};
|
|
832
|
-
const
|
|
833
|
-
export default
|
|
772
|
+
const LegacyMeganav: ({ paths, themeName, notice, loginLink, urlBase, addSearchApiKey, statusUrl, searchDataId, }: MeganavProps) => import("react/jsx-runtime").JSX.Element;
|
|
773
|
+
export default LegacyMeganav;
|
|
834
774
|
//# sourceMappingURL=LegacyMeganav.d.ts.map
|
|
835
775
|
}
|
|
836
776
|
|
|
837
|
-
declare module '@ably/ui/core/
|
|
838
|
-
import React from "react";
|
|
839
|
-
import { ButtonPropsBase } from "@ably/ui/core/Button";
|
|
840
|
-
import { ColorClass, ColorThemeSet } from "@ably/ui/core/styles/colors/types";
|
|
841
|
-
export type LinkButtonProps = ButtonPropsBase & {
|
|
842
|
-
disabled?: boolean;
|
|
843
|
-
onClick?: (event: React.MouseEvent<HTMLAnchorElement>) => void;
|
|
844
|
-
iconColor?: ColorClass | ColorThemeSet;
|
|
845
|
-
} & React.AnchorHTMLAttributes<HTMLAnchorElement>;
|
|
846
|
-
const LinkButton: React.FC<LinkButtonProps>;
|
|
847
|
-
export default LinkButton;
|
|
848
|
-
//# sourceMappingURL=LinkButton.d.ts.map
|
|
849
|
-
}
|
|
850
|
-
|
|
851
|
-
declare module '@ably/ui/core/Loader' {
|
|
852
|
-
type LoaderProps = {
|
|
853
|
-
size?: string;
|
|
854
|
-
ringColor?: string;
|
|
855
|
-
additionalCSS?: string;
|
|
856
|
-
};
|
|
857
|
-
const Loader: ({ ringColor, size, additionalCSS, }: LoaderProps) => import("react/jsx-runtime").JSX.Element;
|
|
858
|
-
export default Loader;
|
|
859
|
-
//# sourceMappingURL=Loader.d.ts.map
|
|
860
|
-
}
|
|
861
|
-
|
|
862
|
-
declare module '@ably/ui/core/Logo' {
|
|
863
|
-
import React from "react";
|
|
864
|
-
type LogoProps = {
|
|
865
|
-
dataId?: string;
|
|
866
|
-
logoUrl?: string;
|
|
867
|
-
logoAlt?: string;
|
|
868
|
-
href?: string;
|
|
869
|
-
additionalImgAttrs?: object;
|
|
870
|
-
additionalLinkAttrs?: object;
|
|
871
|
-
theme?: "light" | "dark";
|
|
872
|
-
variant?: "default" | "mono";
|
|
873
|
-
orientation?: "default" | "stacked";
|
|
874
|
-
};
|
|
875
|
-
const _default: React.MemoExoticComponent<({ dataId, href, additionalImgAttrs, additionalLinkAttrs, theme, variant, orientation, logoUrl, logoAlt, }: LogoProps) => import("react/jsx-runtime").JSX.Element>;
|
|
876
|
-
export default _default;
|
|
877
|
-
//# sourceMappingURL=Logo.d.ts.map
|
|
878
|
-
}
|
|
879
|
-
|
|
880
|
-
declare module '@ably/ui/core/Meganav/Meganav' {
|
|
881
|
-
import { HeaderSessionState } from ".@ably/ui/core/Header";
|
|
882
|
-
export type MeganavNoticeBannerProps = {
|
|
883
|
-
props: {
|
|
884
|
-
title: string;
|
|
885
|
-
bodyText: string;
|
|
886
|
-
buttonLink: string;
|
|
887
|
-
buttonLabel: string;
|
|
888
|
-
closeBtn: boolean;
|
|
889
|
-
};
|
|
890
|
-
config: {
|
|
891
|
-
cookieId: string;
|
|
892
|
-
noticeId: string | number;
|
|
893
|
-
options: {
|
|
894
|
-
collapse: boolean;
|
|
895
|
-
};
|
|
896
|
-
};
|
|
897
|
-
};
|
|
898
|
-
export type MeganavProps = {
|
|
899
|
-
sessionState: HeaderSessionState;
|
|
900
|
-
searchDataId: string;
|
|
901
|
-
notice?: MeganavNoticeBannerProps;
|
|
902
|
-
};
|
|
903
|
-
const Meganav: ({ sessionState, searchDataId, notice }: MeganavProps) => import("react/jsx-runtime").JSX.Element;
|
|
904
|
-
export default Meganav;
|
|
905
|
-
//# sourceMappingURL=Meganav.d.ts.map
|
|
906
|
-
}
|
|
907
|
-
|
|
908
|
-
declare module '@ably/ui/core/Meganav/MeganavMobile' {
|
|
909
|
-
import { AccordionData } from ".@ably/ui/core/Accordion/types";
|
|
910
|
-
export const MeganavMobile: ({ mobileNavItems, }: {
|
|
911
|
-
mobileNavItems: AccordionData[];
|
|
912
|
-
}) => import("react/jsx-runtime").JSX.Element;
|
|
913
|
-
//# sourceMappingURL=MeganavMobile.d.ts.map
|
|
914
|
-
}
|
|
915
|
-
|
|
916
|
-
declare module '@ably/ui/core/Meganav/MeganavPanel' {
|
|
917
|
-
import React from "react";
|
|
918
|
-
import { FlyoutPanelHighlight, FlyoutPanelList } from "@ably/ui/core/data";
|
|
919
|
-
export const MeganavPanel: ({ displayProductTile, panelLeft, panelLeftClassName, panelRightHeading, panelRightItems, panelRightBottom, }: {
|
|
920
|
-
displayProductTile?: boolean;
|
|
921
|
-
panelLeft?: FlyoutPanelHighlight;
|
|
922
|
-
panelLeftClassName?: string;
|
|
923
|
-
panelRightHeading?: string;
|
|
924
|
-
panelRightItems: FlyoutPanelList[];
|
|
925
|
-
panelRightBottom?: React.ReactNode;
|
|
926
|
-
}) => import("react/jsx-runtime").JSX.Element;
|
|
927
|
-
//# sourceMappingURL=MeganavPanel.d.ts.map
|
|
928
|
-
}
|
|
929
|
-
|
|
930
|
-
declare module '@ably/ui/core/Meganav/data' {
|
|
931
|
-
import React from "react";
|
|
932
|
-
import { IconName } from ".@ably/ui/core/Icon/types";
|
|
933
|
-
export type FlyoutPanelList = {
|
|
934
|
-
label: string;
|
|
935
|
-
icon: IconName;
|
|
936
|
-
link: string;
|
|
937
|
-
isMobile?: boolean;
|
|
938
|
-
};
|
|
939
|
-
export type FlyoutPanelHighlight = {
|
|
940
|
-
heading: string;
|
|
941
|
-
content: string;
|
|
942
|
-
labelLink: string;
|
|
943
|
-
url: string;
|
|
944
|
-
image: string;
|
|
945
|
-
};
|
|
946
|
-
export type MenuItem = {
|
|
947
|
-
name: string;
|
|
948
|
-
link?: string;
|
|
949
|
-
isHiddenMobile?: boolean;
|
|
950
|
-
content?: React.ReactNode;
|
|
951
|
-
panelClassName?: string;
|
|
952
|
-
};
|
|
953
|
-
export const menuItemLinks: {
|
|
954
|
-
name: string;
|
|
955
|
-
link: string;
|
|
956
|
-
isHiddenMobile: boolean;
|
|
957
|
-
}[];
|
|
958
|
-
export const menuItemsForHeader: MenuItem[];
|
|
959
|
-
//# sourceMappingURL=data.d.ts.map
|
|
960
|
-
}
|
|
961
|
-
|
|
962
|
-
declare module '@ably/ui/core/MeganavBlogPostsList' {
|
|
777
|
+
declare module '@ably/ui/core/LegacyMeganav/MeganavBlogPostsList' {
|
|
963
778
|
import { AbsUrl } from "@ably/ui/core/LegacyMeganav";
|
|
964
779
|
type MeganavBlogPostsListProps = {
|
|
965
780
|
recentBlogPosts: {
|
|
@@ -974,7 +789,7 @@ export default MeganavBlogPostsList;
|
|
|
974
789
|
//# sourceMappingURL=MeganavBlogPostsList.d.ts.map
|
|
975
790
|
}
|
|
976
791
|
|
|
977
|
-
declare module '@ably/ui/core/MeganavContentCompany' {
|
|
792
|
+
declare module '@ably/ui/core/LegacyMeganav/MeganavContentCompany' {
|
|
978
793
|
import { AbsUrl, MeganavPaths } from "@ably/ui/core/LegacyMeganav";
|
|
979
794
|
type MeganavContentCompanyProps = {
|
|
980
795
|
absUrl: AbsUrl;
|
|
@@ -985,7 +800,7 @@ export default MeganavContentCompany;
|
|
|
985
800
|
//# sourceMappingURL=MeganavContentCompany.d.ts.map
|
|
986
801
|
}
|
|
987
802
|
|
|
988
|
-
declare module '@ably/ui/core/MeganavContentDevelopers' {
|
|
803
|
+
declare module '@ably/ui/core/LegacyMeganav/MeganavContentDevelopers' {
|
|
989
804
|
import { AbsUrl } from "@ably/ui/core/LegacyMeganav";
|
|
990
805
|
const MeganavContentDevelopers: ({ absUrl, statusUrl, }: {
|
|
991
806
|
absUrl: AbsUrl;
|
|
@@ -995,7 +810,7 @@ export default MeganavContentDevelopers;
|
|
|
995
810
|
//# sourceMappingURL=MeganavContentDevelopers.d.ts.map
|
|
996
811
|
}
|
|
997
812
|
|
|
998
|
-
declare module '@ably/ui/core/MeganavContentProducts' {
|
|
813
|
+
declare module '@ably/ui/core/LegacyMeganav/MeganavContentProducts' {
|
|
999
814
|
import { AbsUrl, MeganavPaths } from "@ably/ui/core/LegacyMeganav";
|
|
1000
815
|
type MeganavContentProductsProps = {
|
|
1001
816
|
paths?: MeganavPaths;
|
|
@@ -1006,7 +821,7 @@ export default MeganavContentProducts;
|
|
|
1006
821
|
//# sourceMappingURL=MeganavContentProducts.d.ts.map
|
|
1007
822
|
}
|
|
1008
823
|
|
|
1009
|
-
declare module '@ably/ui/core/MeganavContentUseCases' {
|
|
824
|
+
declare module '@ably/ui/core/LegacyMeganav/MeganavContentUseCases' {
|
|
1010
825
|
import { AbsUrl } from "@ably/ui/core/LegacyMeganav";
|
|
1011
826
|
const MeganavContentUseCases: ({ absUrl }: {
|
|
1012
827
|
absUrl: AbsUrl;
|
|
@@ -1015,7 +830,16 @@ export default MeganavContentUseCases;
|
|
|
1015
830
|
//# sourceMappingURL=MeganavContentUseCases.d.ts.map
|
|
1016
831
|
}
|
|
1017
832
|
|
|
1018
|
-
declare module '@ably/ui/core/MeganavControl' {
|
|
833
|
+
declare module '@ably/ui/core/LegacyMeganav/MeganavControl/component' {
|
|
834
|
+
export default MeganavControl;
|
|
835
|
+
function MeganavControl(): {
|
|
836
|
+
teardown: () => void;
|
|
837
|
+
clear: () => void;
|
|
838
|
+
}[];
|
|
839
|
+
//# sourceMappingURL=component.d.ts.map
|
|
840
|
+
}
|
|
841
|
+
|
|
842
|
+
declare module '@ably/ui/core/LegacyMeganav/MeganavControl' {
|
|
1019
843
|
import { ReactNode } from "react";
|
|
1020
844
|
import { MeganavTheme } from "@ably/ui/core/LegacyMeganav";
|
|
1021
845
|
type MeganavControlProps = {
|
|
@@ -1030,7 +854,18 @@ export default MeganavControl;
|
|
|
1030
854
|
//# sourceMappingURL=MeganavControl.d.ts.map
|
|
1031
855
|
}
|
|
1032
856
|
|
|
1033
|
-
declare module '@ably/ui/core/MeganavControlMobileDropdown' {
|
|
857
|
+
declare module '@ably/ui/core/LegacyMeganav/MeganavControlMobileDropdown/component' {
|
|
858
|
+
export default MeganavControlMobileDropdown;
|
|
859
|
+
function MeganavControlMobileDropdown({ clearPanels }: {
|
|
860
|
+
clearPanels: any;
|
|
861
|
+
}): {
|
|
862
|
+
teardown: () => void;
|
|
863
|
+
clear: () => void;
|
|
864
|
+
};
|
|
865
|
+
//# sourceMappingURL=component.d.ts.map
|
|
866
|
+
}
|
|
867
|
+
|
|
868
|
+
declare module '@ably/ui/core/LegacyMeganav/MeganavControlMobileDropdown' {
|
|
1034
869
|
import { MeganavTheme } from "@ably/ui/core/LegacyMeganav";
|
|
1035
870
|
const MeganavControlMobileDropdown: ({ theme }: {
|
|
1036
871
|
theme: MeganavTheme;
|
|
@@ -1039,7 +874,16 @@ export default MeganavControlMobileDropdown;
|
|
|
1039
874
|
//# sourceMappingURL=MeganavControlMobileDropdown.d.ts.map
|
|
1040
875
|
}
|
|
1041
876
|
|
|
1042
|
-
declare module '@ably/ui/core/MeganavControlMobilePanelClose' {
|
|
877
|
+
declare module '@ably/ui/core/LegacyMeganav/MeganavControlMobilePanelClose/component' {
|
|
878
|
+
function _default(): {
|
|
879
|
+
teardown: () => void;
|
|
880
|
+
clear: () => void;
|
|
881
|
+
}[];
|
|
882
|
+
export default _default;
|
|
883
|
+
//# sourceMappingURL=component.d.ts.map
|
|
884
|
+
}
|
|
885
|
+
|
|
886
|
+
declare module '@ably/ui/core/LegacyMeganav/MeganavControlMobilePanelClose' {
|
|
1043
887
|
type MeganavControlMobilePanelCloseProps = {
|
|
1044
888
|
ariaControls: string;
|
|
1045
889
|
displayHr?: boolean;
|
|
@@ -1049,7 +893,16 @@ export default MeganavControlMobilePanelClose;
|
|
|
1049
893
|
//# sourceMappingURL=MeganavControlMobilePanelClose.d.ts.map
|
|
1050
894
|
}
|
|
1051
895
|
|
|
1052
|
-
declare module '@ably/ui/core/MeganavControlMobilePanelOpen' {
|
|
896
|
+
declare module '@ably/ui/core/LegacyMeganav/MeganavControlMobilePanelOpen/component' {
|
|
897
|
+
function _default(): {
|
|
898
|
+
teardown: () => void;
|
|
899
|
+
clear: () => void;
|
|
900
|
+
}[];
|
|
901
|
+
export default _default;
|
|
902
|
+
//# sourceMappingURL=component.d.ts.map
|
|
903
|
+
}
|
|
904
|
+
|
|
905
|
+
declare module '@ably/ui/core/LegacyMeganav/MeganavControlMobilePanelOpen' {
|
|
1053
906
|
import { ReactNode } from "react";
|
|
1054
907
|
type MeganavControlMobilePanelOpenProps = {
|
|
1055
908
|
ariaControls: string;
|
|
@@ -1060,7 +913,7 @@ export default MeganavControlMobilePanelOpen;
|
|
|
1060
913
|
//# sourceMappingURL=MeganavControlMobilePanelOpen.d.ts.map
|
|
1061
914
|
}
|
|
1062
915
|
|
|
1063
|
-
declare module '@ably/ui/core/MeganavItemsDesktop' {
|
|
916
|
+
declare module '@ably/ui/core/LegacyMeganav/MeganavItemsDesktop' {
|
|
1064
917
|
import React from "react";
|
|
1065
918
|
import { AbsUrl, MeganavPanels, MeganavPaths, MeganavTheme } from "@ably/ui/core/LegacyMeganav";
|
|
1066
919
|
type MeganavDesktopItems = {
|
|
@@ -1076,7 +929,7 @@ export default _default;
|
|
|
1076
929
|
//# sourceMappingURL=MeganavItemsDesktop.d.ts.map
|
|
1077
930
|
}
|
|
1078
931
|
|
|
1079
|
-
declare module '@ably/ui/core/MeganavItemsMobile' {
|
|
932
|
+
declare module '@ably/ui/core/LegacyMeganav/MeganavItemsMobile' {
|
|
1080
933
|
import React from "react";
|
|
1081
934
|
import { AbsUrl, MeganavPanels, MeganavPaths, MeganavSessionState, MeganavTheme } from "@ably/ui/core/LegacyMeganav";
|
|
1082
935
|
type MeganavItemsMobileProps = {
|
|
@@ -1094,7 +947,7 @@ export default _default;
|
|
|
1094
947
|
//# sourceMappingURL=MeganavItemsMobile.d.ts.map
|
|
1095
948
|
}
|
|
1096
949
|
|
|
1097
|
-
declare module '@ably/ui/core/MeganavItemsSignedIn' {
|
|
950
|
+
declare module '@ably/ui/core/LegacyMeganav/MeganavItemsSignedIn' {
|
|
1098
951
|
import { AbsUrl, MeganavSessionState, MeganavTheme } from "@ably/ui/core/LegacyMeganav";
|
|
1099
952
|
type MeganavItemsSignedIn = {
|
|
1100
953
|
sessionState: MeganavSessionState;
|
|
@@ -1107,7 +960,7 @@ export default MeganavItemsSignedIn;
|
|
|
1107
960
|
//# sourceMappingURL=MeganavItemsSignedIn.d.ts.map
|
|
1108
961
|
}
|
|
1109
962
|
|
|
1110
|
-
declare module '@ably/ui/core/MeganavSearch' {
|
|
963
|
+
declare module '@ably/ui/core/LegacyMeganav/MeganavSearch' {
|
|
1111
964
|
import { AbsUrl } from "@ably/ui/core/LegacyMeganav";
|
|
1112
965
|
const MeganavSearch: ({ absUrl, dataId, }: {
|
|
1113
966
|
absUrl: AbsUrl;
|
|
@@ -1117,13 +970,22 @@ export default MeganavSearch;
|
|
|
1117
970
|
//# sourceMappingURL=MeganavSearch.d.ts.map
|
|
1118
971
|
}
|
|
1119
972
|
|
|
1120
|
-
declare module '@ably/ui/core/MeganavSearchAutocomplete' {
|
|
973
|
+
declare module '@ably/ui/core/LegacyMeganav/MeganavSearchAutocomplete/component' {
|
|
974
|
+
function _default(apiKey: any): {
|
|
975
|
+
teardown: () => void;
|
|
976
|
+
clear: () => void;
|
|
977
|
+
}[];
|
|
978
|
+
export default _default;
|
|
979
|
+
//# sourceMappingURL=component.d.ts.map
|
|
980
|
+
}
|
|
981
|
+
|
|
982
|
+
declare module '@ably/ui/core/LegacyMeganav/MeganavSearchAutocomplete' {
|
|
1121
983
|
const MeganavSearchAutocomplete: () => import("react/jsx-runtime").JSX.Element;
|
|
1122
984
|
export default MeganavSearchAutocomplete;
|
|
1123
985
|
//# sourceMappingURL=MeganavSearchAutocomplete.d.ts.map
|
|
1124
986
|
}
|
|
1125
987
|
|
|
1126
|
-
declare module '@ably/ui/core/MeganavSearchPanel' {
|
|
988
|
+
declare module '@ably/ui/core/LegacyMeganav/MeganavSearchPanel' {
|
|
1127
989
|
import { AbsUrl } from "@ably/ui/core/LegacyMeganav";
|
|
1128
990
|
const MeganavSearchPanel: ({ absUrl }: {
|
|
1129
991
|
absUrl: AbsUrl;
|
|
@@ -1132,7 +994,16 @@ export default MeganavSearchPanel;
|
|
|
1132
994
|
//# sourceMappingURL=MeganavSearchPanel.d.ts.map
|
|
1133
995
|
}
|
|
1134
996
|
|
|
1135
|
-
declare module '@ably/ui/core/MeganavSearchSuggestions' {
|
|
997
|
+
declare module '@ably/ui/core/LegacyMeganav/MeganavSearchSuggestions/component' {
|
|
998
|
+
export default MeganavSearchSuggestions;
|
|
999
|
+
function MeganavSearchSuggestions(): {
|
|
1000
|
+
teardown: () => void;
|
|
1001
|
+
clear: () => void;
|
|
1002
|
+
};
|
|
1003
|
+
//# sourceMappingURL=component.d.ts.map
|
|
1004
|
+
}
|
|
1005
|
+
|
|
1006
|
+
declare module '@ably/ui/core/LegacyMeganav/MeganavSearchSuggestions' {
|
|
1136
1007
|
import { AbsUrl } from "@ably/ui/core/LegacyMeganav";
|
|
1137
1008
|
type MeganavSearchSuggestionsProps = {
|
|
1138
1009
|
absUrl: AbsUrl;
|
|
@@ -1143,6 +1014,158 @@ export default MeganavSearchSuggestions;
|
|
|
1143
1014
|
//# sourceMappingURL=MeganavSearchSuggestions.d.ts.map
|
|
1144
1015
|
}
|
|
1145
1016
|
|
|
1017
|
+
declare module '@ably/ui/core/LegacyMeganav/SignOutLink' {
|
|
1018
|
+
import { MouseEventHandler, ReactNode } from "react";
|
|
1019
|
+
import { AbsUrl } from "@ably/ui/core/LegacyMeganav";
|
|
1020
|
+
type SignOutLinkProps = {
|
|
1021
|
+
token: string;
|
|
1022
|
+
href: string;
|
|
1023
|
+
text: string;
|
|
1024
|
+
children: ({ href, text, onClick, }: {
|
|
1025
|
+
href: string;
|
|
1026
|
+
text: string;
|
|
1027
|
+
onClick: MouseEventHandler<HTMLAnchorElement>;
|
|
1028
|
+
}) => ReactNode;
|
|
1029
|
+
absUrl: AbsUrl;
|
|
1030
|
+
};
|
|
1031
|
+
const SignOutLink: ({ token, href, text, children, absUrl, }: SignOutLinkProps) => import("react/jsx-runtime").JSX.Element;
|
|
1032
|
+
export default SignOutLink;
|
|
1033
|
+
//# sourceMappingURL=SignOutLink.d.ts.map
|
|
1034
|
+
}
|
|
1035
|
+
|
|
1036
|
+
declare module '@ably/ui/core/LegacyMeganav/component' {
|
|
1037
|
+
export default function Meganav({ themeName, addSearchApiKey }: {
|
|
1038
|
+
themeName: any;
|
|
1039
|
+
addSearchApiKey: any;
|
|
1040
|
+
}): () => void;
|
|
1041
|
+
//# sourceMappingURL=component.d.ts.map
|
|
1042
|
+
}
|
|
1043
|
+
|
|
1044
|
+
declare module '@ably/ui/core/LinkButton' {
|
|
1045
|
+
import React from "react";
|
|
1046
|
+
import { ButtonPropsBase } from "@ably/ui/core/Button";
|
|
1047
|
+
import { ColorClass, ColorThemeSet } from "@ably/ui/core/styles/colors/types";
|
|
1048
|
+
export type LinkButtonProps = ButtonPropsBase & {
|
|
1049
|
+
disabled?: boolean;
|
|
1050
|
+
onClick?: (event: React.MouseEvent<HTMLAnchorElement>) => void;
|
|
1051
|
+
iconColor?: ColorClass | ColorThemeSet;
|
|
1052
|
+
} & React.AnchorHTMLAttributes<HTMLAnchorElement>;
|
|
1053
|
+
const LinkButton: React.FC<LinkButtonProps>;
|
|
1054
|
+
export default LinkButton;
|
|
1055
|
+
//# sourceMappingURL=LinkButton.d.ts.map
|
|
1056
|
+
}
|
|
1057
|
+
|
|
1058
|
+
declare module '@ably/ui/core/Loader' {
|
|
1059
|
+
type LoaderProps = {
|
|
1060
|
+
size?: string;
|
|
1061
|
+
ringColor?: string;
|
|
1062
|
+
additionalCSS?: string;
|
|
1063
|
+
};
|
|
1064
|
+
const Loader: ({ ringColor, size, additionalCSS, }: LoaderProps) => import("react/jsx-runtime").JSX.Element;
|
|
1065
|
+
export default Loader;
|
|
1066
|
+
//# sourceMappingURL=Loader.d.ts.map
|
|
1067
|
+
}
|
|
1068
|
+
|
|
1069
|
+
declare module '@ably/ui/core/Logo' {
|
|
1070
|
+
import React from "react";
|
|
1071
|
+
type LogoProps = {
|
|
1072
|
+
dataId?: string;
|
|
1073
|
+
logoUrl?: string;
|
|
1074
|
+
logoAlt?: string;
|
|
1075
|
+
href?: string;
|
|
1076
|
+
additionalImgAttrs?: object;
|
|
1077
|
+
additionalLinkAttrs?: object;
|
|
1078
|
+
theme?: "light" | "dark";
|
|
1079
|
+
variant?: "default" | "mono";
|
|
1080
|
+
orientation?: "default" | "stacked";
|
|
1081
|
+
};
|
|
1082
|
+
const _default: React.MemoExoticComponent<({ dataId, href, additionalImgAttrs, additionalLinkAttrs, theme, variant, orientation, logoUrl, logoAlt, }: LogoProps) => import("react/jsx-runtime").JSX.Element>;
|
|
1083
|
+
export default _default;
|
|
1084
|
+
//# sourceMappingURL=Logo.d.ts.map
|
|
1085
|
+
}
|
|
1086
|
+
|
|
1087
|
+
declare module '@ably/ui/core/Meganav/MeganavMobile' {
|
|
1088
|
+
import { AccordionData } from ".@ably/ui/core/Accordion/types";
|
|
1089
|
+
export const MeganavMobile: ({ mobileNavItems, }: {
|
|
1090
|
+
mobileNavItems: AccordionData[];
|
|
1091
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
1092
|
+
//# sourceMappingURL=MeganavMobile.d.ts.map
|
|
1093
|
+
}
|
|
1094
|
+
|
|
1095
|
+
declare module '@ably/ui/core/Meganav/MeganavPanel' {
|
|
1096
|
+
import React from "react";
|
|
1097
|
+
import { FlyoutPanelHighlight, FlyoutPanelList } from "@ably/ui/core/data";
|
|
1098
|
+
export const MeganavPanel: ({ displayProductTile, panelLeft, panelLeftClassName, panelRightHeading, panelRightItems, panelRightBottom, }: {
|
|
1099
|
+
displayProductTile?: boolean;
|
|
1100
|
+
panelLeft?: FlyoutPanelHighlight;
|
|
1101
|
+
panelLeftClassName?: string;
|
|
1102
|
+
panelRightHeading?: string;
|
|
1103
|
+
panelRightItems: FlyoutPanelList[];
|
|
1104
|
+
panelRightBottom?: React.ReactNode;
|
|
1105
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
1106
|
+
//# sourceMappingURL=MeganavPanel.d.ts.map
|
|
1107
|
+
}
|
|
1108
|
+
|
|
1109
|
+
declare module '@ably/ui/core/Meganav/data' {
|
|
1110
|
+
import React from "react";
|
|
1111
|
+
import { IconName } from ".@ably/ui/core/Icon/types";
|
|
1112
|
+
export type FlyoutPanelList = {
|
|
1113
|
+
label: string;
|
|
1114
|
+
icon: IconName;
|
|
1115
|
+
link: string;
|
|
1116
|
+
isMobile?: boolean;
|
|
1117
|
+
};
|
|
1118
|
+
export type FlyoutPanelHighlight = {
|
|
1119
|
+
heading: string;
|
|
1120
|
+
content: string;
|
|
1121
|
+
labelLink: string;
|
|
1122
|
+
url: string;
|
|
1123
|
+
image: string;
|
|
1124
|
+
};
|
|
1125
|
+
export type MenuItem = {
|
|
1126
|
+
name: string;
|
|
1127
|
+
link?: string;
|
|
1128
|
+
isHiddenMobile?: boolean;
|
|
1129
|
+
content?: React.ReactNode;
|
|
1130
|
+
panelClassName?: string;
|
|
1131
|
+
};
|
|
1132
|
+
export const menuItemLinks: {
|
|
1133
|
+
name: string;
|
|
1134
|
+
link: string;
|
|
1135
|
+
isHiddenMobile: boolean;
|
|
1136
|
+
}[];
|
|
1137
|
+
export const menuItemsForHeader: MenuItem[];
|
|
1138
|
+
//# sourceMappingURL=data.d.ts.map
|
|
1139
|
+
}
|
|
1140
|
+
|
|
1141
|
+
declare module '@ably/ui/core/Meganav' {
|
|
1142
|
+
import { HeaderSessionState } from "@ably/ui/core/Header";
|
|
1143
|
+
export type MeganavNoticeBannerProps = {
|
|
1144
|
+
props: {
|
|
1145
|
+
title: string;
|
|
1146
|
+
bodyText: string;
|
|
1147
|
+
buttonLink: string;
|
|
1148
|
+
buttonLabel: string;
|
|
1149
|
+
closeBtn: boolean;
|
|
1150
|
+
};
|
|
1151
|
+
config: {
|
|
1152
|
+
cookieId: string;
|
|
1153
|
+
noticeId: string | number;
|
|
1154
|
+
options: {
|
|
1155
|
+
collapse: boolean;
|
|
1156
|
+
};
|
|
1157
|
+
};
|
|
1158
|
+
};
|
|
1159
|
+
export type MeganavProps = {
|
|
1160
|
+
sessionState: HeaderSessionState;
|
|
1161
|
+
searchDataId: string;
|
|
1162
|
+
notice?: MeganavNoticeBannerProps;
|
|
1163
|
+
};
|
|
1164
|
+
const Meganav: ({ sessionState, searchDataId, notice }: MeganavProps) => import("react/jsx-runtime").JSX.Element;
|
|
1165
|
+
export default Meganav;
|
|
1166
|
+
//# sourceMappingURL=Meganav.d.ts.map
|
|
1167
|
+
}
|
|
1168
|
+
|
|
1146
1169
|
declare module '@ably/ui/core/Notice/component' {
|
|
1147
1170
|
export const COLLAPSE_TRIGGER_DISTANCE: 5;
|
|
1148
1171
|
export default Notice;
|
|
@@ -1359,25 +1382,6 @@ export default ProductTile;
|
|
|
1359
1382
|
//# sourceMappingURL=ProductTile.d.ts.map
|
|
1360
1383
|
}
|
|
1361
1384
|
|
|
1362
|
-
declare module '@ably/ui/core/SignOutLink' {
|
|
1363
|
-
import { MouseEventHandler, ReactNode } from "react";
|
|
1364
|
-
import { AbsUrl } from "@ably/ui/core/LegacyMeganav";
|
|
1365
|
-
type SignOutLinkProps = {
|
|
1366
|
-
token: string;
|
|
1367
|
-
href: string;
|
|
1368
|
-
text: string;
|
|
1369
|
-
children: ({ href, text, onClick, }: {
|
|
1370
|
-
href: string;
|
|
1371
|
-
text: string;
|
|
1372
|
-
onClick: MouseEventHandler<HTMLAnchorElement>;
|
|
1373
|
-
}) => ReactNode;
|
|
1374
|
-
absUrl: AbsUrl;
|
|
1375
|
-
};
|
|
1376
|
-
const SignOutLink: ({ token, href, text, children, absUrl, }: SignOutLinkProps) => import("react/jsx-runtime").JSX.Element;
|
|
1377
|
-
export default SignOutLink;
|
|
1378
|
-
//# sourceMappingURL=SignOutLink.d.ts.map
|
|
1379
|
-
}
|
|
1380
|
-
|
|
1381
1385
|
declare module '@ably/ui/core/Slider' {
|
|
1382
1386
|
import { ReactNode } from "react";
|
|
1383
1387
|
interface SliderProps {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ably/ui",
|
|
3
|
-
"version": "16.0.0-dev.
|
|
3
|
+
"version": "16.0.0-dev.fc84d6ff",
|
|
4
4
|
"description": "Home of the Ably design system library ([design.ably.com](https://design.ably.com)). It provides a showcase, development/test environment and a publishing pipeline for different distributables.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"@types/svg-sprite": "^0.0.39",
|
|
35
35
|
"@typescript-eslint/eslint-plugin": "^8.25.0",
|
|
36
36
|
"@typescript-eslint/parser": "^8.25.0",
|
|
37
|
-
"@vitejs/plugin-react": "^
|
|
37
|
+
"@vitejs/plugin-react-swc": "^3.8.0",
|
|
38
38
|
"@whitespace/storybook-addon-html": "^6.1.1",
|
|
39
39
|
"autoprefixer": "^10.0.2",
|
|
40
40
|
"eslint": "^8.57.0",
|
|
@@ -43,6 +43,7 @@
|
|
|
43
43
|
"eslint-plugin-storybook": "^0.11.4",
|
|
44
44
|
"heroicons": "^2.2.0",
|
|
45
45
|
"http-server": "14.1.1",
|
|
46
|
+
"jsdom": "^26.0.0",
|
|
46
47
|
"mixpanel-browser": "^2.60.0",
|
|
47
48
|
"msw": "2.7.1",
|
|
48
49
|
"msw-storybook-addon": "^2.0.2",
|
|
@@ -56,7 +57,8 @@
|
|
|
56
57
|
"tailwindcss": "^3.3.6",
|
|
57
58
|
"ts-node": "^10.9.2",
|
|
58
59
|
"typescript": "5.7.3",
|
|
59
|
-
"vite": "^6.2.0"
|
|
60
|
+
"vite": "^6.2.0",
|
|
61
|
+
"vitest": "^3.0.8"
|
|
60
62
|
},
|
|
61
63
|
"scripts": {
|
|
62
64
|
"build:prebuild": "rm -rf core reset && mkdir -p dist/core",
|
|
@@ -75,8 +77,10 @@
|
|
|
75
77
|
"start": "vite --port 5000",
|
|
76
78
|
"storybook": "yarn build && storybook dev -p 6006",
|
|
77
79
|
"build-storybook": "yarn build && storybook build --quiet -o preview",
|
|
78
|
-
"test": "
|
|
79
|
-
"test:
|
|
80
|
+
"test": "yarn test:storybook && yarn test:vitest",
|
|
81
|
+
"test:storybook": "npx concurrently -k -s first -n \"SB,TEST\" -c \"magenta,blue\" \"yarn build-storybook && yarn http-server preview --port 6007 --silent\" \"wait-on tcp:6007 && yarn test-storybook --url http://127.0.0.1:6007\"",
|
|
82
|
+
"test:update-snapshots": "npx concurrently -k -s first -n \"SB,TEST\" -c \"magenta,blue\" \"yarn build-storybook && yarn http-server preview --port 6007 --silent\" \"wait-on tcp:6007 && yarn test-storybook -u --url http://127.0.0.1:6007\"",
|
|
83
|
+
"test:vitest": "vitest --environment=jsdom --dir=src"
|
|
80
84
|
},
|
|
81
85
|
"dependencies": {
|
|
82
86
|
"@radix-ui/react-accordion": "^1.2.1",
|
package/core/LegacyMeganav.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import React,{useEffect,useState}from"react";import{connectState}from"./remote-data-store.js";import{selectSessionData}from"./remote-session-data.js";import Logo from"./Logo";import MeganavData from"./LegacyMeganav/component.json";import MeganavScripts from"./LegacyMeganav/component.js";import MeganavItemsDesktop from"./MeganavItemsDesktop";import MeganavItemsSignedIn from"./MeganavItemsSignedIn";import MeganavItemsMobile from"./MeganavItemsMobile";import Notice from"./Notice";import _absUrl from"./url-base.js";import MeganavContentProducts from"./MeganavContentProducts";import MeganavContentUseCases from"./MeganavContentUseCases";import MeganavContentCompany from"./MeganavContentCompany";import MeganavContentDevelopers from"./MeganavContentDevelopers";import MeganavSearch from"./MeganavSearch";const SignIn=({sessionState,theme,loginLink,absUrl,searchDataId})=>{return sessionState.signedIn?React.createElement(MeganavItemsSignedIn,{absUrl:absUrl,sessionState:sessionState,theme:theme,searchDataId:searchDataId}):React.createElement("ul",{className:"hidden md:flex items-center"},React.createElement("li",{className:"ui-meganav-item"},React.createElement("a",{href:absUrl("/contact"),className:`ui-meganav-link ${theme.textColor}`,"data-id":"meganav-link"},"Contact us")),React.createElement("li",{className:"ui-meganav-item"},React.createElement("a",{href:absUrl(loginLink),className:`ui-meganav-link mr-0 ${theme.textColor}`,"data-id":"meganav-link"},"Login")),React.createElement("li",{className:"ui-meganav-item"},React.createElement(MeganavSearch,{absUrl:absUrl,dataId:searchDataId})),React.createElement("li",{className:"ui-meganav-item"},React.createElement("a",{href:absUrl("/sign-up"),"data-id":"meganav-sign-up-btn",className:`ui-btn p-btn-small ${theme.buttonBackgroundColor} ${theme.buttonTextColor}`},"Sign up free")))};const SignInPlaceholder=()=>React.createElement("div",null);const panels={MeganavContentProducts,MeganavContentUseCases,MeganavContentCompany,MeganavContentDevelopers};const Meganav=({paths,themeName="white",notice,loginLink="/login",urlBase,addSearchApiKey,statusUrl,searchDataId})=>{const[sessionState,setSessionState]=useState();useEffect(()=>{connectState(selectSessionData,setSessionState)},[]);useEffect(()=>{const teardown=MeganavScripts({themeName,addSearchApiKey});return()=>teardown()},[sessionState]);const theme=MeganavData.themes[themeName];const absUrl=path=>_absUrl(path,urlBase);return React.createElement("nav",{className:`ui-meganav-wrapper ${theme.backgroundColor} ${theme.barShadow}`,"data-id":"meganav","aria-label":"Main"},notice&&React.createElement(Notice,{...notice.props,config:notice.config}),React.createElement("div",{className:"ui-meganav ui-grid-px"},React.createElement("div",{className:"mr-24"},React.createElement(Logo,{dataId:"meganav-logo",href:urlBase,logoUrl:paths?.logo})),React.createElement(MeganavItemsDesktop,{panels:panels,paths:paths,theme:theme,absUrl:absUrl,statusUrl:statusUrl}),sessionState?React.createElement(SignIn,{sessionState:sessionState,theme:theme,loginLink:loginLink,absUrl:absUrl,searchDataId:searchDataId}):React.createElement(SignInPlaceholder,null),React.createElement(MeganavItemsMobile,{panels:panels,sessionState:sessionState,paths:paths,theme:theme,loginLink:loginLink,absUrl:absUrl,statusUrl:statusUrl,searchDataId:searchDataId})))};export default Meganav;
|
|
2
|
-
//# sourceMappingURL=LegacyMeganav.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/core/LegacyMeganav.tsx"],"sourcesContent":["import React, { ReactNode, useEffect, useState } from \"react\";\n\nimport { connectState } from \"./remote-data-store.js\";\nimport { selectSessionData } from \"./remote-session-data.js\";\n\nimport Logo from \"./Logo\";\nimport MeganavData from \"./LegacyMeganav/component.json\";\nimport MeganavScripts from \"./LegacyMeganav/component.js\";\nimport MeganavItemsDesktop from \"./MeganavItemsDesktop\";\nimport MeganavItemsSignedIn from \"./MeganavItemsSignedIn\";\nimport MeganavItemsMobile from \"./MeganavItemsMobile\";\nimport Notice from \"./Notice\";\nimport _absUrl from \"./url-base.js\";\nimport MeganavContentProducts from \"./MeganavContentProducts\";\nimport MeganavContentUseCases from \"./MeganavContentUseCases\";\nimport MeganavContentCompany from \"./MeganavContentCompany\";\nimport MeganavContentDevelopers from \"./MeganavContentDevelopers\";\nimport MeganavSearch from \"./MeganavSearch\";\nimport { ColorClass } from \"./styles/colors/types\";\n\nexport type MeganavTheme = {\n backgroundColor?: ColorClass;\n textColor?: ColorClass;\n buttonBackgroundColor?: ColorClass;\n buttonTextColor?: ColorClass;\n mobileMenuColor: ColorClass;\n logoTextColor?: ColorClass;\n barShadow?: string;\n};\n\nexport type AbsUrl = (path: string) => string;\n\nexport type MeganavPaths = {\n logo?: string;\n iconSprites: string;\n ablyStack: string;\n blogThumb1: string;\n blogThumb2: string;\n blogThumb3: string;\n awsLogo?: string;\n};\n\nexport type MeganavPanels = {\n [index: string]: ({\n paths,\n absUrl,\n statusUrl,\n }: {\n paths?: MeganavPaths;\n absUrl: (path: string) => string;\n statusUrl: string;\n }) => ReactNode;\n};\n\nexport type MeganavSessionState = {\n signedIn: boolean;\n logOut: {\n token: string;\n href: string;\n text: string;\n };\n accountName: string;\n preferredEmail: string;\n account: {\n links: {\n dashboard: {\n href: string;\n };\n };\n };\n mySettings: {\n text: string;\n href: string;\n };\n myAccessTokens: {\n text: string;\n href: string;\n };\n};\n\ntype SignInProps = {\n sessionState: MeganavSessionState;\n theme: MeganavTheme;\n loginLink: string;\n absUrl: AbsUrl;\n searchDataId?: string;\n};\n\n// This type is based on the API response from the notice API and the data\n// passed into the Meganav component, which then turns it into something\n// the Notice component can use. The type is exported for the benefit of\n// Voltaire\nexport type MeganavNoticeProps = {\n props: {\n title: string;\n bodyText: string;\n buttonLink: string;\n buttonLabel: string;\n closeBtn: boolean;\n };\n config: {\n cookieId: string;\n noticeId: string | number;\n options: {\n collapse: boolean;\n };\n };\n};\n\ntype MeganavProps = {\n paths?: MeganavPaths;\n themeName: \"white\" | \"black\" | \"transparentToWhite\";\n notice?: MeganavNoticeProps;\n loginLink?: string;\n urlBase?: string;\n addSearchApiKey: string;\n statusUrl: string;\n searchDataId?: string;\n};\n\nconst SignIn = ({\n sessionState,\n theme,\n loginLink,\n absUrl,\n searchDataId,\n}: SignInProps) => {\n return sessionState.signedIn ? (\n <MeganavItemsSignedIn\n absUrl={absUrl}\n sessionState={sessionState}\n theme={theme}\n searchDataId={searchDataId}\n />\n ) : (\n <ul className=\"hidden md:flex items-center\">\n <li className=\"ui-meganav-item\">\n <a\n href={absUrl(\"/contact\")}\n className={`ui-meganav-link ${theme.textColor}`}\n data-id=\"meganav-link\"\n >\n Contact us\n </a>\n </li>\n <li className=\"ui-meganav-item\">\n <a\n href={absUrl(loginLink)}\n className={`ui-meganav-link mr-0 ${theme.textColor}`}\n data-id=\"meganav-link\"\n >\n Login\n </a>\n </li>\n <li className=\"ui-meganav-item\">\n <MeganavSearch absUrl={absUrl} dataId={searchDataId} />\n </li>\n <li className=\"ui-meganav-item\">\n <a\n href={absUrl(\"/sign-up\")}\n data-id=\"meganav-sign-up-btn\"\n className={`ui-btn p-btn-small ${theme.buttonBackgroundColor} ${theme.buttonTextColor}`}\n >\n Sign up free\n </a>\n </li>\n </ul>\n );\n};\n\nconst SignInPlaceholder = () => <div />;\n\nconst panels = {\n MeganavContentProducts,\n MeganavContentUseCases,\n MeganavContentCompany,\n MeganavContentDevelopers,\n};\n\nconst Meganav = ({\n paths,\n themeName = \"white\",\n notice,\n loginLink = \"/login\",\n urlBase,\n addSearchApiKey,\n statusUrl,\n searchDataId,\n}: MeganavProps) => {\n const [sessionState, setSessionState] = useState<MeganavSessionState>();\n\n useEffect(() => {\n // Note if state is never updated, sessionState stays null and never removes the placeholder.\n // This makes SSR consistent (ie. we always show the placeholder)\n connectState(selectSessionData, setSessionState);\n }, []);\n\n useEffect(() => {\n const teardown = MeganavScripts({ themeName, addSearchApiKey });\n return () => teardown();\n }, [sessionState]);\n\n const theme = MeganavData.themes[themeName] as MeganavTheme;\n const absUrl = (path: string) => _absUrl(path, urlBase);\n\n return (\n <nav\n className={`ui-meganav-wrapper ${theme.backgroundColor} ${theme.barShadow}`}\n data-id=\"meganav\"\n aria-label=\"Main\"\n >\n {notice && <Notice {...notice.props} config={notice.config} />}\n <div className=\"ui-meganav ui-grid-px\">\n <div className=\"mr-24\">\n <Logo dataId=\"meganav-logo\" href={urlBase} logoUrl={paths?.logo} />\n </div>\n\n <MeganavItemsDesktop\n panels={panels}\n paths={paths}\n theme={theme}\n absUrl={absUrl}\n statusUrl={statusUrl}\n />\n\n {/* Because we load the session state through fetch, we display a placeholder until fetch returns */}\n {sessionState ? (\n <SignIn\n sessionState={sessionState}\n theme={theme}\n loginLink={loginLink}\n absUrl={absUrl}\n searchDataId={searchDataId}\n />\n ) : (\n <SignInPlaceholder />\n )}\n\n <MeganavItemsMobile\n panels={panels}\n sessionState={sessionState}\n paths={paths}\n theme={theme}\n loginLink={loginLink}\n absUrl={absUrl}\n statusUrl={statusUrl}\n searchDataId={searchDataId}\n />\n </div>\n </nav>\n );\n};\n\nexport default Meganav;\n"],"names":["React","useEffect","useState","connectState","selectSessionData","Logo","MeganavData","MeganavScripts","MeganavItemsDesktop","MeganavItemsSignedIn","MeganavItemsMobile","Notice","_absUrl","MeganavContentProducts","MeganavContentUseCases","MeganavContentCompany","MeganavContentDevelopers","MeganavSearch","SignIn","sessionState","theme","loginLink","absUrl","searchDataId","signedIn","ul","className","li","a","href","textColor","data-id","dataId","buttonBackgroundColor","buttonTextColor","SignInPlaceholder","div","panels","Meganav","paths","themeName","notice","urlBase","addSearchApiKey","statusUrl","setSessionState","teardown","themes","path","nav","backgroundColor","barShadow","aria-label","props","config","logoUrl","logo"],"mappings":"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"}
|