@ably/ui 16.0.4 → 16.1.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/README.md +5 -7
- package/core/DropdownMenu.js +1 -1
- package/core/DropdownMenu.js.map +1 -1
- package/core/Flyout.js +1 -1
- package/core/Flyout.js.map +1 -1
- package/core/Footer.js +1 -1
- package/core/Footer.js.map +1 -1
- package/core/Header/HeaderLinks.js +1 -1
- package/core/Header/HeaderLinks.js.map +1 -1
- package/core/Meganav/MeganavPanel.js +1 -1
- package/core/Meganav/MeganavPanel.js.map +1 -1
- package/core/SegmentedControl.js +1 -1
- package/core/SegmentedControl.js.map +1 -1
- package/core/Status.js +1 -1
- package/core/Status.js.map +1 -1
- package/core/TabMenu.js +1 -1
- package/core/TabMenu.js.map +1 -1
- package/core/remote-blogs-posts.js.map +1 -1
- package/core/remote-session-data.js.map +1 -1
- package/core/styles/buttons.css +4 -4
- package/core/styles/legacy-buttons.css +5 -5
- package/core/styles/properties.css +4 -8
- package/core/styles/text.css +12 -28
- package/index.d.ts +0 -405
- package/package.json +2 -2
- package/tailwind.config.js +4 -8
- package/core/LegacyFooter/LegacyFooter.js +0 -2
- package/core/LegacyFooter/LegacyFooter.js.map +0 -1
- package/core/LegacyFooter/component.css +0 -33
- package/core/LegacyMeganav/LegacyMeganav.js +0 -2
- package/core/LegacyMeganav/LegacyMeganav.js.map +0 -1
- package/core/LegacyMeganav/MeganavBlogPostsList/component.js +0 -2
- package/core/LegacyMeganav/MeganavBlogPostsList/component.js.map +0 -1
- package/core/LegacyMeganav/MeganavBlogPostsList.js +0 -2
- package/core/LegacyMeganav/MeganavBlogPostsList.js.map +0 -1
- package/core/LegacyMeganav/MeganavContentCompany.js +0 -2
- package/core/LegacyMeganav/MeganavContentCompany.js.map +0 -1
- package/core/LegacyMeganav/MeganavContentDevelopers.js +0 -2
- package/core/LegacyMeganav/MeganavContentDevelopers.js.map +0 -1
- package/core/LegacyMeganav/MeganavContentProducts.js +0 -2
- package/core/LegacyMeganav/MeganavContentProducts.js.map +0 -1
- package/core/LegacyMeganav/MeganavContentUseCases.js +0 -2
- package/core/LegacyMeganav/MeganavContentUseCases.js.map +0 -1
- package/core/LegacyMeganav/MeganavControl/component.js +0 -2
- package/core/LegacyMeganav/MeganavControl/component.js.map +0 -1
- package/core/LegacyMeganav/MeganavControl.js +0 -2
- package/core/LegacyMeganav/MeganavControl.js.map +0 -1
- package/core/LegacyMeganav/MeganavControlMobileDropdown/component.js +0 -2
- package/core/LegacyMeganav/MeganavControlMobileDropdown/component.js.map +0 -1
- package/core/LegacyMeganav/MeganavControlMobileDropdown.js +0 -2
- package/core/LegacyMeganav/MeganavControlMobileDropdown.js.map +0 -1
- package/core/LegacyMeganav/MeganavControlMobilePanelClose/component.js +0 -2
- package/core/LegacyMeganav/MeganavControlMobilePanelClose/component.js.map +0 -1
- package/core/LegacyMeganav/MeganavControlMobilePanelClose.js +0 -2
- package/core/LegacyMeganav/MeganavControlMobilePanelClose.js.map +0 -1
- package/core/LegacyMeganav/MeganavControlMobilePanelOpen/component.js +0 -2
- package/core/LegacyMeganav/MeganavControlMobilePanelOpen/component.js.map +0 -1
- package/core/LegacyMeganav/MeganavControlMobilePanelOpen.js +0 -2
- package/core/LegacyMeganav/MeganavControlMobilePanelOpen.js.map +0 -1
- package/core/LegacyMeganav/MeganavItemsDesktop.js +0 -2
- package/core/LegacyMeganav/MeganavItemsDesktop.js.map +0 -1
- package/core/LegacyMeganav/MeganavItemsMobile.js +0 -2
- package/core/LegacyMeganav/MeganavItemsMobile.js.map +0 -1
- package/core/LegacyMeganav/MeganavItemsSignedIn.js +0 -2
- package/core/LegacyMeganav/MeganavItemsSignedIn.js.map +0 -1
- package/core/LegacyMeganav/MeganavSearch.js +0 -2
- package/core/LegacyMeganav/MeganavSearch.js.map +0 -1
- package/core/LegacyMeganav/MeganavSearchAutocomplete/component.js +0 -2
- package/core/LegacyMeganav/MeganavSearchAutocomplete/component.js.map +0 -1
- package/core/LegacyMeganav/MeganavSearchAutocomplete.js +0 -2
- package/core/LegacyMeganav/MeganavSearchAutocomplete.js.map +0 -1
- package/core/LegacyMeganav/MeganavSearchPanel.js +0 -2
- package/core/LegacyMeganav/MeganavSearchPanel.js.map +0 -1
- package/core/LegacyMeganav/MeganavSearchSuggestions/component.js +0 -2
- package/core/LegacyMeganav/MeganavSearchSuggestions/component.js.map +0 -1
- package/core/LegacyMeganav/MeganavSearchSuggestions.js +0 -2
- package/core/LegacyMeganav/MeganavSearchSuggestions.js.map +0 -1
- package/core/LegacyMeganav/SignOutLink.js +0 -2
- package/core/LegacyMeganav/SignOutLink.js.map +0 -1
- package/core/LegacyMeganav/component.css +0 -114
- package/core/LegacyMeganav/component.js +0 -2
- package/core/LegacyMeganav/component.js.map +0 -1
- package/core/LegacyMeganav/component.json +0 -37
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
@layer components {
|
|
2
2
|
.ui-btn {
|
|
3
|
-
@apply text-white bg-cool-black text-
|
|
3
|
+
@apply text-white bg-cool-black text-label2 font-sans font-bold inline-block rounded p-btn;
|
|
4
4
|
@apply hover:text-white hover:bg-neutral-1100;
|
|
5
5
|
@apply active:text-white active:bg-neutral-1200;
|
|
6
6
|
@apply focus:text-white focus:bg-cool-black focus-base;
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
background-size: 200% 100%;
|
|
25
25
|
background-position: 0% 0%;
|
|
26
26
|
|
|
27
|
-
@apply text-white text-
|
|
27
|
+
@apply text-white text-label2 font-sans font-bold inline-block rounded p-btn;
|
|
28
28
|
@apply focus-base;
|
|
29
29
|
@apply inline-flex items-center justify-center;
|
|
30
30
|
}
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
}
|
|
41
41
|
|
|
42
42
|
.ui-btn-invert {
|
|
43
|
-
@apply text-cool-black bg-white text-
|
|
43
|
+
@apply text-cool-black bg-white text-label2 font-sans font-bold inline-block rounded p-btn;
|
|
44
44
|
@apply hover:text-white hover:bg-active-orange;
|
|
45
45
|
@apply active:text-white active:bg-red-orange;
|
|
46
46
|
@apply focus:text-white focus:bg-cool-black focus-base;
|
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
}
|
|
51
51
|
|
|
52
52
|
.ui-btn-secondary {
|
|
53
|
-
@apply text-cool-black bg-white text-
|
|
53
|
+
@apply text-cool-black bg-white text-label2 font-sans font-bold inline-block border-btn border-cool-black rounded p-btn;
|
|
54
54
|
@apply hover:text-cool-black hover:border-active-orange hover:bg-white;
|
|
55
55
|
@apply active:border-red-orange active:bg-white;
|
|
56
56
|
@apply focus:border-cool-black focus:bg-white focus-base;
|
|
@@ -60,7 +60,7 @@
|
|
|
60
60
|
}
|
|
61
61
|
|
|
62
62
|
.ui-btn-secondary-invert {
|
|
63
|
-
@apply text-white bg-cool-black text-
|
|
63
|
+
@apply text-white bg-cool-black text-label2 font-sans font-bold inline-block border-btn border-mid-grey rounded p-btn;
|
|
64
64
|
@apply hover:text-white hover:border-active-orange;
|
|
65
65
|
@apply active:border-red-orange;
|
|
66
66
|
@apply focus-base;
|
|
@@ -204,14 +204,10 @@
|
|
|
204
204
|
--fs-sub-header-xs: 1.063rem;
|
|
205
205
|
--fs-overline1: 0.875rem;
|
|
206
206
|
--fs-overline2: 0.75rem;
|
|
207
|
-
--fs-
|
|
208
|
-
--fs-
|
|
209
|
-
--fs-
|
|
210
|
-
--fs-
|
|
211
|
-
--fs-menu1: 1rem;
|
|
212
|
-
--fs-menu2: 0.938rem;
|
|
213
|
-
--fs-menu3: 0.875rem;
|
|
214
|
-
--fs-menu4: 0.813rem;
|
|
207
|
+
--fs-label1: 1rem;
|
|
208
|
+
--fs-label2: 0.938rem;
|
|
209
|
+
--fs-label3: 0.875rem;
|
|
210
|
+
--fs-label4: 0.813rem;
|
|
215
211
|
--fs-quote: 1.25rem;
|
|
216
212
|
--fs-code: 0.813rem;
|
|
217
213
|
--fs-code2: 0.688rem;
|
package/core/styles/text.css
CHANGED
|
@@ -80,45 +80,29 @@
|
|
|
80
80
|
@apply tracking-widen-0.16;
|
|
81
81
|
}
|
|
82
82
|
|
|
83
|
-
.ui-text-
|
|
84
|
-
@apply font-sans text-neutral-900 text-
|
|
83
|
+
.ui-text-label1 {
|
|
84
|
+
@apply font-sans text-neutral-900 text-label1 font-semibold leading-snug;
|
|
85
85
|
}
|
|
86
86
|
|
|
87
|
-
.ui-text-
|
|
88
|
-
@apply font-sans text-neutral-900 text-
|
|
87
|
+
.ui-text-label2 {
|
|
88
|
+
@apply font-sans text-neutral-900 text-label2 font-semibold leading-snug;
|
|
89
89
|
}
|
|
90
90
|
|
|
91
|
-
.ui-text-
|
|
92
|
-
@apply font-sans text-neutral-900 text-
|
|
91
|
+
.ui-text-label3 {
|
|
92
|
+
@apply font-sans text-neutral-900 text-label3 font-semibold leading-snug;
|
|
93
93
|
}
|
|
94
94
|
|
|
95
|
-
.ui-text-
|
|
96
|
-
@apply font-sans text-neutral-900 text-
|
|
95
|
+
.ui-text-label4 {
|
|
96
|
+
@apply font-sans text-neutral-900 text-label4 font-semibold leading-snug;
|
|
97
97
|
}
|
|
98
98
|
|
|
99
|
-
.ui-theme-dark .ui-text-
|
|
100
|
-
.ui-theme-dark .ui-text-
|
|
101
|
-
.ui-theme-dark .ui-text-
|
|
102
|
-
.ui-theme-dark .ui-text-
|
|
99
|
+
.ui-theme-dark .ui-text-label1,
|
|
100
|
+
.ui-theme-dark .ui-text-label2,
|
|
101
|
+
.ui-theme-dark .ui-text-label3,
|
|
102
|
+
.ui-theme-dark .ui-text-label4 {
|
|
103
103
|
@apply text-neutral-300;
|
|
104
104
|
}
|
|
105
105
|
|
|
106
|
-
.ui-text-button1 {
|
|
107
|
-
@apply font-sans text-btn1 font-bold leading-snug;
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
.ui-text-button2 {
|
|
111
|
-
@apply font-sans text-btn2 font-bold leading-snug;
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
.ui-text-button3 {
|
|
115
|
-
@apply font-sans text-btn3 font-bold leading-snug;
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
.ui-text-button4 {
|
|
119
|
-
@apply font-sans text-btn4 font-bold leading-snug;
|
|
120
|
-
}
|
|
121
|
-
|
|
122
106
|
.ui-text-code {
|
|
123
107
|
@apply font-mono font-normal text-code;
|
|
124
108
|
}
|
package/index.d.ts
CHANGED
|
@@ -708,375 +708,6 @@ export default Icon;
|
|
|
708
708
|
//# sourceMappingURL=Icon.d.ts.map
|
|
709
709
|
}
|
|
710
710
|
|
|
711
|
-
declare module '@ably/ui/core/LegacyFooter/LegacyFooter' {
|
|
712
|
-
type LegacyFooterProps = {
|
|
713
|
-
paths: {
|
|
714
|
-
ablyStack: string;
|
|
715
|
-
bestSupport: string;
|
|
716
|
-
highPerformer: string;
|
|
717
|
-
usersMostLikely: string;
|
|
718
|
-
bestMeetsRequirements: string;
|
|
719
|
-
};
|
|
720
|
-
urlBase: string;
|
|
721
|
-
statusUrl: string;
|
|
722
|
-
};
|
|
723
|
-
const LegacyFooter: ({ paths, urlBase, statusUrl }: LegacyFooterProps) => import("react/jsx-runtime").JSX.Element;
|
|
724
|
-
export default LegacyFooter;
|
|
725
|
-
//# sourceMappingURL=LegacyFooter.d.ts.map
|
|
726
|
-
}
|
|
727
|
-
|
|
728
|
-
declare module '@ably/ui/core/LegacyMeganav/LegacyMeganav' {
|
|
729
|
-
import { ReactNode } from "react";
|
|
730
|
-
import { ColorClass } from ".@ably/ui/core/styles/colors/types";
|
|
731
|
-
export type MeganavTheme = {
|
|
732
|
-
backgroundColor?: ColorClass;
|
|
733
|
-
textColor?: ColorClass;
|
|
734
|
-
buttonBackgroundColor?: ColorClass;
|
|
735
|
-
buttonTextColor?: ColorClass;
|
|
736
|
-
mobileMenuColor: ColorClass;
|
|
737
|
-
logoTextColor?: ColorClass;
|
|
738
|
-
barShadow?: string;
|
|
739
|
-
};
|
|
740
|
-
export type AbsUrl = (path: string) => string;
|
|
741
|
-
export type MeganavPaths = {
|
|
742
|
-
logo?: string;
|
|
743
|
-
iconSprites: string;
|
|
744
|
-
ablyStack: string;
|
|
745
|
-
blogThumb1: string;
|
|
746
|
-
blogThumb2: string;
|
|
747
|
-
blogThumb3: string;
|
|
748
|
-
awsLogo?: string;
|
|
749
|
-
};
|
|
750
|
-
export type MeganavPanels = {
|
|
751
|
-
[index: string]: ({ paths, absUrl, statusUrl, }: {
|
|
752
|
-
paths?: MeganavPaths;
|
|
753
|
-
absUrl: (path: string) => string;
|
|
754
|
-
statusUrl: string;
|
|
755
|
-
}) => ReactNode;
|
|
756
|
-
};
|
|
757
|
-
export type MeganavSessionState = {
|
|
758
|
-
signedIn: boolean;
|
|
759
|
-
logOut: {
|
|
760
|
-
token: string;
|
|
761
|
-
href: string;
|
|
762
|
-
text: string;
|
|
763
|
-
};
|
|
764
|
-
accountName: string;
|
|
765
|
-
preferredEmail: string;
|
|
766
|
-
account: {
|
|
767
|
-
links: {
|
|
768
|
-
dashboard: {
|
|
769
|
-
href: string;
|
|
770
|
-
};
|
|
771
|
-
};
|
|
772
|
-
};
|
|
773
|
-
mySettings: {
|
|
774
|
-
text: string;
|
|
775
|
-
href: string;
|
|
776
|
-
};
|
|
777
|
-
myAccessTokens: {
|
|
778
|
-
text: string;
|
|
779
|
-
href: string;
|
|
780
|
-
};
|
|
781
|
-
};
|
|
782
|
-
export type MeganavNoticeProps = {
|
|
783
|
-
props: {
|
|
784
|
-
title: string;
|
|
785
|
-
bodyText: string;
|
|
786
|
-
buttonLink: string;
|
|
787
|
-
buttonLabel: string;
|
|
788
|
-
closeBtn: boolean;
|
|
789
|
-
};
|
|
790
|
-
config: {
|
|
791
|
-
cookieId: string;
|
|
792
|
-
noticeId: string | number;
|
|
793
|
-
options: {
|
|
794
|
-
collapse: boolean;
|
|
795
|
-
};
|
|
796
|
-
};
|
|
797
|
-
};
|
|
798
|
-
type MeganavProps = {
|
|
799
|
-
paths?: MeganavPaths;
|
|
800
|
-
themeName: "white" | "black" | "transparentToWhite";
|
|
801
|
-
notice?: MeganavNoticeProps;
|
|
802
|
-
loginLink?: string;
|
|
803
|
-
urlBase?: string;
|
|
804
|
-
addSearchApiKey: string;
|
|
805
|
-
statusUrl: string;
|
|
806
|
-
searchDataId?: string;
|
|
807
|
-
};
|
|
808
|
-
const LegacyMeganav: ({ paths, themeName, notice, loginLink, urlBase, addSearchApiKey, statusUrl, searchDataId, }: MeganavProps) => import("react/jsx-runtime").JSX.Element;
|
|
809
|
-
export default LegacyMeganav;
|
|
810
|
-
//# sourceMappingURL=LegacyMeganav.d.ts.map
|
|
811
|
-
}
|
|
812
|
-
|
|
813
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavBlogPostsList' {
|
|
814
|
-
import { AbsUrl } from "@ably/ui/core/LegacyMeganav";
|
|
815
|
-
type MeganavBlogPostsListProps = {
|
|
816
|
-
recentBlogPosts: {
|
|
817
|
-
link: string;
|
|
818
|
-
title: string;
|
|
819
|
-
pubDate: string;
|
|
820
|
-
}[];
|
|
821
|
-
absUrl: AbsUrl;
|
|
822
|
-
};
|
|
823
|
-
const MeganavBlogPostsList: ({ recentBlogPosts, absUrl, }: MeganavBlogPostsListProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
824
|
-
export default MeganavBlogPostsList;
|
|
825
|
-
//# sourceMappingURL=MeganavBlogPostsList.d.ts.map
|
|
826
|
-
}
|
|
827
|
-
|
|
828
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavContentCompany' {
|
|
829
|
-
import { AbsUrl, MeganavPaths } from "@ably/ui/core/LegacyMeganav";
|
|
830
|
-
type MeganavContentCompanyProps = {
|
|
831
|
-
absUrl: AbsUrl;
|
|
832
|
-
paths?: MeganavPaths;
|
|
833
|
-
};
|
|
834
|
-
const MeganavContentCompany: ({ paths, absUrl, }: MeganavContentCompanyProps) => import("react/jsx-runtime").JSX.Element;
|
|
835
|
-
export default MeganavContentCompany;
|
|
836
|
-
//# sourceMappingURL=MeganavContentCompany.d.ts.map
|
|
837
|
-
}
|
|
838
|
-
|
|
839
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavContentDevelopers' {
|
|
840
|
-
import { AbsUrl } from "@ably/ui/core/LegacyMeganav";
|
|
841
|
-
const MeganavContentDevelopers: ({ absUrl, statusUrl, }: {
|
|
842
|
-
absUrl: AbsUrl;
|
|
843
|
-
statusUrl: string;
|
|
844
|
-
}) => import("react/jsx-runtime").JSX.Element;
|
|
845
|
-
export default MeganavContentDevelopers;
|
|
846
|
-
//# sourceMappingURL=MeganavContentDevelopers.d.ts.map
|
|
847
|
-
}
|
|
848
|
-
|
|
849
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavContentProducts' {
|
|
850
|
-
import { AbsUrl, MeganavPaths } from "@ably/ui/core/LegacyMeganav";
|
|
851
|
-
type MeganavContentProductsProps = {
|
|
852
|
-
paths?: MeganavPaths;
|
|
853
|
-
absUrl: AbsUrl;
|
|
854
|
-
};
|
|
855
|
-
const MeganavContentProducts: ({ paths, absUrl, }: MeganavContentProductsProps) => import("react/jsx-runtime").JSX.Element;
|
|
856
|
-
export default MeganavContentProducts;
|
|
857
|
-
//# sourceMappingURL=MeganavContentProducts.d.ts.map
|
|
858
|
-
}
|
|
859
|
-
|
|
860
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavContentUseCases' {
|
|
861
|
-
import { AbsUrl } from "@ably/ui/core/LegacyMeganav";
|
|
862
|
-
const MeganavContentUseCases: ({ absUrl }: {
|
|
863
|
-
absUrl: AbsUrl;
|
|
864
|
-
}) => import("react/jsx-runtime").JSX.Element;
|
|
865
|
-
export default MeganavContentUseCases;
|
|
866
|
-
//# sourceMappingURL=MeganavContentUseCases.d.ts.map
|
|
867
|
-
}
|
|
868
|
-
|
|
869
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavControl/component' {
|
|
870
|
-
export default MeganavControl;
|
|
871
|
-
function MeganavControl(): {
|
|
872
|
-
teardown: () => void;
|
|
873
|
-
clear: () => void;
|
|
874
|
-
}[];
|
|
875
|
-
//# sourceMappingURL=component.d.ts.map
|
|
876
|
-
}
|
|
877
|
-
|
|
878
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavControl' {
|
|
879
|
-
import { ReactNode } from "react";
|
|
880
|
-
import { MeganavTheme } from "@ably/ui/core/LegacyMeganav";
|
|
881
|
-
type MeganavControlProps = {
|
|
882
|
-
ariaControls: string;
|
|
883
|
-
ariaLabel: string;
|
|
884
|
-
children: ReactNode;
|
|
885
|
-
theme: MeganavTheme;
|
|
886
|
-
additionalCSS?: string;
|
|
887
|
-
};
|
|
888
|
-
const MeganavControl: ({ ariaControls, ariaLabel, children, theme, additionalCSS, }: MeganavControlProps) => import("react/jsx-runtime").JSX.Element;
|
|
889
|
-
export default MeganavControl;
|
|
890
|
-
//# sourceMappingURL=MeganavControl.d.ts.map
|
|
891
|
-
}
|
|
892
|
-
|
|
893
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavControlMobileDropdown/component' {
|
|
894
|
-
export default MeganavControlMobileDropdown;
|
|
895
|
-
function MeganavControlMobileDropdown({ clearPanels }: {
|
|
896
|
-
clearPanels: any;
|
|
897
|
-
}): {
|
|
898
|
-
teardown: () => void;
|
|
899
|
-
clear: () => void;
|
|
900
|
-
};
|
|
901
|
-
//# sourceMappingURL=component.d.ts.map
|
|
902
|
-
}
|
|
903
|
-
|
|
904
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavControlMobileDropdown' {
|
|
905
|
-
import { MeganavTheme } from "@ably/ui/core/LegacyMeganav";
|
|
906
|
-
const MeganavControlMobileDropdown: ({ theme }: {
|
|
907
|
-
theme: MeganavTheme;
|
|
908
|
-
}) => import("react/jsx-runtime").JSX.Element;
|
|
909
|
-
export default MeganavControlMobileDropdown;
|
|
910
|
-
//# sourceMappingURL=MeganavControlMobileDropdown.d.ts.map
|
|
911
|
-
}
|
|
912
|
-
|
|
913
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavControlMobilePanelClose/component' {
|
|
914
|
-
function _default(): {
|
|
915
|
-
teardown: () => void;
|
|
916
|
-
clear: () => void;
|
|
917
|
-
}[];
|
|
918
|
-
export default _default;
|
|
919
|
-
//# sourceMappingURL=component.d.ts.map
|
|
920
|
-
}
|
|
921
|
-
|
|
922
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavControlMobilePanelClose' {
|
|
923
|
-
type MeganavControlMobilePanelCloseProps = {
|
|
924
|
-
ariaControls: string;
|
|
925
|
-
displayHr?: boolean;
|
|
926
|
-
};
|
|
927
|
-
const MeganavControlMobilePanelClose: ({ ariaControls, displayHr, }: MeganavControlMobilePanelCloseProps) => import("react/jsx-runtime").JSX.Element;
|
|
928
|
-
export default MeganavControlMobilePanelClose;
|
|
929
|
-
//# sourceMappingURL=MeganavControlMobilePanelClose.d.ts.map
|
|
930
|
-
}
|
|
931
|
-
|
|
932
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavControlMobilePanelOpen/component' {
|
|
933
|
-
function _default(): {
|
|
934
|
-
teardown: () => void;
|
|
935
|
-
clear: () => void;
|
|
936
|
-
}[];
|
|
937
|
-
export default _default;
|
|
938
|
-
//# sourceMappingURL=component.d.ts.map
|
|
939
|
-
}
|
|
940
|
-
|
|
941
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavControlMobilePanelOpen' {
|
|
942
|
-
import { ReactNode } from "react";
|
|
943
|
-
type MeganavControlMobilePanelOpenProps = {
|
|
944
|
-
ariaControls: string;
|
|
945
|
-
children: ReactNode;
|
|
946
|
-
};
|
|
947
|
-
const MeganavControlMobilePanelOpen: ({ ariaControls, children, }: MeganavControlMobilePanelOpenProps) => import("react/jsx-runtime").JSX.Element;
|
|
948
|
-
export default MeganavControlMobilePanelOpen;
|
|
949
|
-
//# sourceMappingURL=MeganavControlMobilePanelOpen.d.ts.map
|
|
950
|
-
}
|
|
951
|
-
|
|
952
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavItemsDesktop' {
|
|
953
|
-
import React from "react";
|
|
954
|
-
import { AbsUrl, MeganavPanels, MeganavPaths, MeganavTheme } from "@ably/ui/core/LegacyMeganav";
|
|
955
|
-
type MeganavDesktopItems = {
|
|
956
|
-
panels: MeganavPanels;
|
|
957
|
-
paths?: MeganavPaths;
|
|
958
|
-
theme: MeganavTheme;
|
|
959
|
-
absUrl: AbsUrl;
|
|
960
|
-
statusUrl: string;
|
|
961
|
-
};
|
|
962
|
-
const MeganavDesktopItems: ({ panels, paths, theme, absUrl, statusUrl, }: MeganavDesktopItems) => import("react/jsx-runtime").JSX.Element;
|
|
963
|
-
const _default: React.MemoExoticComponent<({ panels, paths, theme, absUrl, statusUrl, }: MeganavDesktopItems) => import("react/jsx-runtime").JSX.Element>;
|
|
964
|
-
export default _default;
|
|
965
|
-
//# sourceMappingURL=MeganavItemsDesktop.d.ts.map
|
|
966
|
-
}
|
|
967
|
-
|
|
968
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavItemsMobile' {
|
|
969
|
-
import React from "react";
|
|
970
|
-
import { AbsUrl, MeganavPanels, MeganavPaths, MeganavSessionState, MeganavTheme } from "@ably/ui/core/LegacyMeganav";
|
|
971
|
-
type MeganavItemsMobileProps = {
|
|
972
|
-
panels: MeganavPanels;
|
|
973
|
-
paths?: MeganavPaths;
|
|
974
|
-
sessionState?: MeganavSessionState;
|
|
975
|
-
theme: MeganavTheme;
|
|
976
|
-
loginLink: string;
|
|
977
|
-
absUrl: AbsUrl;
|
|
978
|
-
statusUrl: string;
|
|
979
|
-
searchDataId?: string;
|
|
980
|
-
};
|
|
981
|
-
const _default: React.MemoExoticComponent<({ panels, paths, sessionState, theme, loginLink, absUrl, statusUrl, searchDataId, }: MeganavItemsMobileProps) => import("react/jsx-runtime").JSX.Element>;
|
|
982
|
-
export default _default;
|
|
983
|
-
//# sourceMappingURL=MeganavItemsMobile.d.ts.map
|
|
984
|
-
}
|
|
985
|
-
|
|
986
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavItemsSignedIn' {
|
|
987
|
-
import { AbsUrl, MeganavSessionState, MeganavTheme } from "@ably/ui/core/LegacyMeganav";
|
|
988
|
-
type MeganavItemsSignedIn = {
|
|
989
|
-
sessionState: MeganavSessionState;
|
|
990
|
-
theme: MeganavTheme;
|
|
991
|
-
absUrl: AbsUrl;
|
|
992
|
-
searchDataId?: string;
|
|
993
|
-
};
|
|
994
|
-
const MeganavItemsSignedIn: ({ sessionState, absUrl, searchDataId, }: MeganavItemsSignedIn) => import("react/jsx-runtime").JSX.Element;
|
|
995
|
-
export default MeganavItemsSignedIn;
|
|
996
|
-
//# sourceMappingURL=MeganavItemsSignedIn.d.ts.map
|
|
997
|
-
}
|
|
998
|
-
|
|
999
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavSearch' {
|
|
1000
|
-
import { AbsUrl } from "@ably/ui/core/LegacyMeganav";
|
|
1001
|
-
const MeganavSearch: ({ absUrl, dataId, }: {
|
|
1002
|
-
absUrl: AbsUrl;
|
|
1003
|
-
dataId?: string;
|
|
1004
|
-
}) => import("react/jsx-runtime").JSX.Element;
|
|
1005
|
-
export default MeganavSearch;
|
|
1006
|
-
//# sourceMappingURL=MeganavSearch.d.ts.map
|
|
1007
|
-
}
|
|
1008
|
-
|
|
1009
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavSearchAutocomplete/component' {
|
|
1010
|
-
function _default(apiKey: any): {
|
|
1011
|
-
teardown: () => void;
|
|
1012
|
-
clear: () => void;
|
|
1013
|
-
}[];
|
|
1014
|
-
export default _default;
|
|
1015
|
-
//# sourceMappingURL=component.d.ts.map
|
|
1016
|
-
}
|
|
1017
|
-
|
|
1018
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavSearchAutocomplete' {
|
|
1019
|
-
const MeganavSearchAutocomplete: () => import("react/jsx-runtime").JSX.Element;
|
|
1020
|
-
export default MeganavSearchAutocomplete;
|
|
1021
|
-
//# sourceMappingURL=MeganavSearchAutocomplete.d.ts.map
|
|
1022
|
-
}
|
|
1023
|
-
|
|
1024
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavSearchPanel' {
|
|
1025
|
-
import { AbsUrl } from "@ably/ui/core/LegacyMeganav";
|
|
1026
|
-
const MeganavSearchPanel: ({ absUrl }: {
|
|
1027
|
-
absUrl: AbsUrl;
|
|
1028
|
-
}) => import("react/jsx-runtime").JSX.Element;
|
|
1029
|
-
export default MeganavSearchPanel;
|
|
1030
|
-
//# sourceMappingURL=MeganavSearchPanel.d.ts.map
|
|
1031
|
-
}
|
|
1032
|
-
|
|
1033
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavSearchSuggestions/component' {
|
|
1034
|
-
export default MeganavSearchSuggestions;
|
|
1035
|
-
function MeganavSearchSuggestions(): {
|
|
1036
|
-
teardown: () => void;
|
|
1037
|
-
clear: () => void;
|
|
1038
|
-
};
|
|
1039
|
-
//# sourceMappingURL=component.d.ts.map
|
|
1040
|
-
}
|
|
1041
|
-
|
|
1042
|
-
declare module '@ably/ui/core/LegacyMeganav/MeganavSearchSuggestions' {
|
|
1043
|
-
import { AbsUrl } from "@ably/ui/core/LegacyMeganav";
|
|
1044
|
-
type MeganavSearchSuggestionsProps = {
|
|
1045
|
-
absUrl: AbsUrl;
|
|
1046
|
-
displaySupportLink: boolean;
|
|
1047
|
-
};
|
|
1048
|
-
const MeganavSearchSuggestions: ({ absUrl, displaySupportLink, }: MeganavSearchSuggestionsProps) => import("react/jsx-runtime").JSX.Element;
|
|
1049
|
-
export default MeganavSearchSuggestions;
|
|
1050
|
-
//# sourceMappingURL=MeganavSearchSuggestions.d.ts.map
|
|
1051
|
-
}
|
|
1052
|
-
|
|
1053
|
-
declare module '@ably/ui/core/LegacyMeganav/SignOutLink' {
|
|
1054
|
-
import { MouseEventHandler, ReactNode } from "react";
|
|
1055
|
-
import { AbsUrl } from "@ably/ui/core/LegacyMeganav";
|
|
1056
|
-
type SignOutLinkProps = {
|
|
1057
|
-
token: string;
|
|
1058
|
-
href: string;
|
|
1059
|
-
text: string;
|
|
1060
|
-
children: ({ href, text, onClick, }: {
|
|
1061
|
-
href: string;
|
|
1062
|
-
text: string;
|
|
1063
|
-
onClick: MouseEventHandler<HTMLAnchorElement>;
|
|
1064
|
-
}) => ReactNode;
|
|
1065
|
-
absUrl: AbsUrl;
|
|
1066
|
-
};
|
|
1067
|
-
const SignOutLink: ({ token, href, text, children, absUrl, }: SignOutLinkProps) => import("react/jsx-runtime").JSX.Element;
|
|
1068
|
-
export default SignOutLink;
|
|
1069
|
-
//# sourceMappingURL=SignOutLink.d.ts.map
|
|
1070
|
-
}
|
|
1071
|
-
|
|
1072
|
-
declare module '@ably/ui/core/LegacyMeganav/component' {
|
|
1073
|
-
export default function Meganav({ themeName, addSearchApiKey }: {
|
|
1074
|
-
themeName: any;
|
|
1075
|
-
addSearchApiKey: any;
|
|
1076
|
-
}): () => void;
|
|
1077
|
-
//# sourceMappingURL=component.d.ts.map
|
|
1078
|
-
}
|
|
1079
|
-
|
|
1080
711
|
declare module '@ably/ui/core/LinkButton' {
|
|
1081
712
|
import React from "react";
|
|
1082
713
|
import { ButtonPropsBase } from "@ably/ui/core/Button";
|
|
@@ -1689,30 +1320,12 @@ export default Tooltip;
|
|
|
1689
1320
|
//# sourceMappingURL=Tooltip.d.ts.map
|
|
1690
1321
|
}
|
|
1691
1322
|
|
|
1692
|
-
declare module '@ably/ui/core/css' {
|
|
1693
|
-
export function remsToPixelValue(remString: any): number;
|
|
1694
|
-
//# sourceMappingURL=css.d.ts.map
|
|
1695
|
-
}
|
|
1696
|
-
|
|
1697
1323
|
declare module '@ably/ui/core/dom-query' {
|
|
1698
1324
|
export function queryId(val: any, root?: Document): Element | null;
|
|
1699
1325
|
export function queryIdAll(val: any, root?: Document): NodeListOf<Element>;
|
|
1700
1326
|
//# sourceMappingURL=dom-query.d.ts.map
|
|
1701
1327
|
}
|
|
1702
1328
|
|
|
1703
|
-
declare module '@ably/ui/core/remote-blogs-posts' {
|
|
1704
|
-
export function fetchBlogPosts(store: any, blogUrl: any): Promise<void>;
|
|
1705
|
-
export namespace reducerBlogPosts {
|
|
1706
|
-
function blogPosts(state: {
|
|
1707
|
-
recent: null;
|
|
1708
|
-
} | undefined, action: any): {
|
|
1709
|
-
recent: any;
|
|
1710
|
-
};
|
|
1711
|
-
}
|
|
1712
|
-
export function selectRecentBlogPosts(store: any): any;
|
|
1713
|
-
//# sourceMappingURL=remote-blogs-posts.d.ts.map
|
|
1714
|
-
}
|
|
1715
|
-
|
|
1716
1329
|
declare module '@ably/ui/core/remote-data-store' {
|
|
1717
1330
|
export function attachStoreToWindow(store: any): void;
|
|
1718
1331
|
export function getRemoteDataStore(): any;
|
|
@@ -1721,24 +1334,6 @@ export function createRemoteDataStore(reducers: any): any;
|
|
|
1721
1334
|
//# sourceMappingURL=remote-data-store.d.ts.map
|
|
1722
1335
|
}
|
|
1723
1336
|
|
|
1724
|
-
declare module '@ably/ui/core/remote-data-util' {
|
|
1725
|
-
export function isJsonResponse(contentType: any): any;
|
|
1726
|
-
//# sourceMappingURL=remote-data-util.d.ts.map
|
|
1727
|
-
}
|
|
1728
|
-
|
|
1729
|
-
declare module '@ably/ui/core/remote-session-data' {
|
|
1730
|
-
export function fetchSessionData(store: any, sessionUrl: any): Promise<void>;
|
|
1731
|
-
export namespace reducerSessionData {
|
|
1732
|
-
function session(state: {
|
|
1733
|
-
data: null;
|
|
1734
|
-
} | undefined, action: any): {
|
|
1735
|
-
data: any;
|
|
1736
|
-
};
|
|
1737
|
-
}
|
|
1738
|
-
export function selectSessionData(store: any): any;
|
|
1739
|
-
//# sourceMappingURL=remote-session-data.d.ts.map
|
|
1740
|
-
}
|
|
1741
|
-
|
|
1742
1337
|
declare module '@ably/ui/core/styles/colors/types' {
|
|
1743
1338
|
export type ColorName = (typeof neutralColors)[number] | (typeof orangeColors)[number] | (typeof secondaryColors)[number] | (typeof guiColors)[number] | (typeof aliasedColors)[number];
|
|
1744
1339
|
export const variants: readonly ["", "dark:"];
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ably/ui",
|
|
3
|
-
"version": "16.0
|
|
3
|
+
"version": "16.1.0",
|
|
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",
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
"svg-sprite": "^2.0.4",
|
|
57
57
|
"tailwindcss": "^3.3.6",
|
|
58
58
|
"ts-node": "^10.9.2",
|
|
59
|
-
"typescript": "5.
|
|
59
|
+
"typescript": "5.8.3",
|
|
60
60
|
"vite": "^6.2.0",
|
|
61
61
|
"vitest": "^3.0.8"
|
|
62
62
|
},
|
package/tailwind.config.js
CHANGED
|
@@ -34,14 +34,10 @@ module.exports = {
|
|
|
34
34
|
"sub-header-xs": ["var(--fs-sub-header-xs)"],
|
|
35
35
|
overline1: ["var(--fs-overline1)"],
|
|
36
36
|
overline2: ["var(--fs-overline2)"],
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
menu1: ["var(--fs-menu1)"],
|
|
42
|
-
menu2: ["var(--fs-menu2)"],
|
|
43
|
-
menu3: ["var(--fs-menu3)"],
|
|
44
|
-
menu4: ["var(--fs-menu4)"],
|
|
37
|
+
label1: ["var(--fs-label1)"],
|
|
38
|
+
label2: ["var(--fs-label2)"],
|
|
39
|
+
label3: ["var(--fs-label3)"],
|
|
40
|
+
label4: ["var(--fs-label4)"],
|
|
45
41
|
quote: ["var(--fs-quote)"],
|
|
46
42
|
code: ["var(--fs-code)", "var(--lh-dense)"],
|
|
47
43
|
code2: ["var(--fs-code2)", "var(--lh-dense)"],
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import React from"react";import Icon from"../Icon";import _absUrl from"../url-base.js";import{StatusIcon}from"../Status";const LegacyFooter=({paths,urlBase,statusUrl})=>{const absUrl=path=>_absUrl(path,urlBase);return React.createElement("footer",{className:"bg-light-grey font-sans antialiased leading-normal","data-id":"footer"},React.createElement("div",{className:"max-w-screen-xl mx-auto py-32 sm:py-40 md:py-64 ui-grid-gap ui-grid-px grid grid-cols-6"},React.createElement("div",{className:"col-span-full md:col-span-2"},React.createElement("div",{className:"flex flex-row p-menu-row-snug"},React.createElement("img",{className:"mr-24 -mt-16",src:paths.ablyStack,alt:"Ably homepage"}),React.createElement("h2",{className:"ui-text-overline2 col-span-full"},"The Ably Platform")),React.createElement("div",{className:"md:col-span-4 md:w-3/4 xs:w-3/5 w-full"},React.createElement("p",{className:"ui-text-p3 font-bold py-16 p-menu-row-snug"},"Easily power any realtime experience in your application via a simple API that handles everything realtime.")),React.createElement("ul",{className:"grid grid-cols-1"},React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/pubsub"),className:"ui-footer-menu-row-link"},"Pub/sub messaging")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/push-notifications"),className:"ui-footer-menu-row-link"},"Push notifications")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/integrations"),className:"ui-footer-menu-row-link"},"Third-party integrations")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/protocols"),className:"ui-footer-menu-row-link"},"Multiple protocol messaging")))),React.createElement("div",{className:"col-span-full xs:col-span-3 md:col-span-1"},React.createElement("h2",{className:"ui-footer-col-title"},"Ably is for"),React.createElement("ul",null,React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/solutions/asset-tracking"),className:"ui-footer-menu-row-link"},"Ably Asset Tracking")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/solutions/extend-kafka-to-the-edge"),className:"ui-footer-menu-row-link"},"Extend Kafka to the edge")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/solutions/edtech"),className:"ui-footer-menu-row-link"},"EdTech")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/solutions/automotive-logistics-and-mobility"),className:"ui-footer-menu-row-link"},"Automotive, Logistics, & Mobility")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/solutions/b2b-platforms"),className:"ui-footer-menu-row-link"},"B2B Platforms")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/solutions/healthcare"),className:"ui-footer-menu-row-link"},"Healthcare")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/solutions/ecommerce-and-retail"),className:"ui-footer-menu-row-link"},"eCommerce & Retail")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/solutions/sports-and-media"),className:"ui-footer-menu-row-link"},"Sports & Media")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/solutions/gaming"),className:"ui-footer-menu-row-link"},"Gaming")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/solutions/iot-and-connected-devices"),className:"ui-footer-menu-row-link"},"IoT & Connected Devices")))),React.createElement("div",{className:"col-span-full xs:col-span-3 md:col-span-1"},React.createElement("h2",{className:"ui-footer-col-title"},"Developers"),React.createElement("ul",null,React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/docs/quick-start-guide"),className:"ui-footer-menu-row-link"},"Start in 5 minutes")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/docs/"),className:"ui-footer-menu-row-link"},"Documentation")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/tutorials"),className:"ui-footer-menu-row-link"},"Tutorials")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:"https://changelog.ably.com/",className:"ui-footer-menu-row-link"},"Changelog")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/support"),className:"ui-footer-menu-row-link"},"Support & FAQs")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/docs/sdks"),className:"ui-footer-menu-row-link"},"SDKs")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{className:"ui-footer-menu-row-link flex items-center gap-4",href:"https://status.ably.com/",target:"_blank",rel:"noreferrer"},"System status",React.createElement(StatusIcon,{statusUrl:statusUrl}))))),React.createElement("div",{className:"col-span-full xs:col-span-3 md:col-span-1"},React.createElement("h2",{className:"ui-footer-col-title"},"WHY ABLY"),React.createElement("ul",null,React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/customers"),className:"ui-footer-menu-row-link"},"Customers")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/case-studies"),className:"ui-footer-menu-row-link"},"Case Studies")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/four-pillars-of-dependability"),className:"ui-footer-menu-row-link"},"Four Pillars of Dependability")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/compare"),className:"ui-footer-menu-row-link"},"Compare our tech")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/protocols"),className:"ui-footer-menu-row-link"},"Multi protocol support")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/integrations"),className:"ui-footer-menu-row-link"},"Third-party integrations")))),React.createElement("div",{className:"col-span-full xs:col-span-3 md:col-span-1"},React.createElement("h2",{className:"ui-footer-col-title"},"ABOUT"),React.createElement("ul",null,React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/about"),className:"ui-footer-menu-row-link"},"About Ably")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/pricing"),className:"ui-footer-menu-row-link"},"Pricing")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/blog"),className:"ui-footer-menu-row-link"},"Blog")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/careers"),className:"ui-footer-menu-row-link"},"Careers")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/open-policy"),className:"ui-footer-menu-row-link"},"Open protocol policy")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/press-center"),className:"ui-footer-menu-row-link"},"Press & Media")),React.createElement("li",{className:"p-menu-row-snug"},React.createElement("a",{href:absUrl("/contact"),className:"ui-footer-menu-row-link"},"Contact us"))))),React.createElement("div",{className:"max-w-screen-xl ui-grid-px mx-auto"},React.createElement("hr",{className:"border-t border-mid-grey my-0"})),React.createElement("div",{className:"max-w-screen-xl mx-auto py-16 grid ui-grid-gap ui-grid-px sm:grid-cols-2"},React.createElement("div",{className:"md:flex md:items-center"},React.createElement("div",{className:"flex flex-col md:flex-row flex-auto ml-8 sm:col-span-1 md:col-span-2"},React.createElement("div",{className:""},React.createElement("div",{className:"flex pb-24"},React.createElement("a",{className:"h-24 pr-24 text-cool-black hover:text-icon-twitter",href:"https://twitter.com/ablyrealtime",title:"Ably on X"},React.createElement(Icon,{name:"icon-social-x",size:"1.5rem"})),React.createElement("a",{className:"h-24 pr-24 text-cool-black hover:text-icon-linkedin",href:"https://www.linkedin.com/company/ably-realtime",title:"Ably on LinkedIn"},React.createElement(Icon,{name:"icon-social-linkedin",size:"1.5rem"})),React.createElement("a",{className:"h-24 pr-24 text-cool-black hover:text-icon-github",href:"https://github.com/ably/",title:"Ably on Github"},React.createElement(Icon,{name:"icon-social-github",size:"1.5rem"})),React.createElement("a",{className:"h-24 pr-24 text-cool-black hover:text-icon-discord",href:"https://discord.gg/jwBPhEZ9g5",title:"Ably on Discord"},React.createElement(Icon,{name:"icon-social-discord",size:"1.5rem"})))),React.createElement("div",{className:"xs:hidden sm:block ui-footer-glassdoor"},React.createElement("div",{className:"flex sm:pt-24 md:pt-0 sm:border-t sm:border-l-0 md:border-t-0 md:border-l sm:border-mid-grey sm:w-3/4 md:w-full md:pl-24"},React.createElement("a",{href:"https://www.glassdoor.co.uk/Overview/Working-at-Ably-EI_IE2184188.11,15.htm",className:"h-24 text-cool-black hover:text-icon-glassdoor",title:"Ably reviews on glassdoor"},React.createElement(Icon,{name:"icon-social-glassdoor",size:"1.5rem"})),React.createElement("div",{className:"pl-16 text-menu3 font-sans font-medium"},React.createElement("strong",{className:"block font-medium"},"We're hiring!"),React.createElement("a",{href:"https://www.glassdoor.co.uk/Overview/Working-at-Ably-EI_IE2184188.11,15.htm",className:"ui-footer-link"},"Learn more at Glassdoor"))))),React.createElement("div",{className:"xs:block sm:hidden"},React.createElement("div",{className:"border-t border-mid-grey w-full"}),React.createElement("div",{className:"flex py-24"},React.createElement("a",{className:"h-24 pr-16 text-cool-black hover:text-icon-glassdoor",href:"https://www.glassdoor.co.uk/Overview/Working-at-Ably-EI_IE2184188.11,15.htm",title:"Ably reviews on glassdoor"},React.createElement(Icon,{name:"icon-social-glassdoor",size:"1.5rem"})),React.createElement("div",{className:"text-menu3 font-sans font-medium"},React.createElement("strong",{className:"block font-medium"},"We're hiring!"),React.createElement("a",{href:"https://www.glassdoor.co.uk/Overview/Working-at-Ably-EI_IE2184188.11,15.htm",className:"ui-footer-link"},"Learn more at Glassdoor"))))),React.createElement("div",{className:"col-span-full sm:col-span-1 inline-flex sm:ml-auto sm:items-center"},React.createElement("img",{className:"mr-24 h-80",src:paths.bestSupport,alt:"Best Support 2025"}),React.createElement("img",{className:"mr-24 h-80",src:paths.highPerformer,alt:"High Performer 2025"}),React.createElement("img",{className:"mr-24 h-80",src:paths.usersMostLikely,alt:"Users Most Likely To Recommend 2025"}),React.createElement("img",{className:"mr-24 h-80",src:paths.bestMeetsRequirements,alt:"Best Meets Requirements 2025"}))),React.createElement("div",{className:"max-w-screen-xl ui-grid-px mx-auto"},React.createElement("hr",{className:"border-t border-mid-grey my-0"})),React.createElement("div",{className:"max-w-screen-xl mx-auto py-24 sm:py-40 md:py-32 md:grid md:grid-cols-2 ui-grid-gap ui-grid-px"},React.createElement("div",{className:"flex ml-8 col-span-full sm:col-span-1 md:pb-16 items-center ui-footer-bottom-links"},React.createElement("div",{className:"flex"},React.createElement("a",{href:absUrl("/privacy"),className:"pr-24 ui-footer-link"},"Cookies"),React.createElement("a",{href:absUrl("/legals"),className:"pr-24 ui-footer-link"},"Legals"),React.createElement("a",{href:absUrl("/data-protection"),className:"pr-24 ui-footer-link"},"Data Protection"),React.createElement("a",{href:absUrl("/privacy"),className:"ui-footer-link"},"Privacy"))),React.createElement("div",{className:"xs:grid xs:grid-cols-2 sm:grid-cols-4 xs:pl-16 sm:pl-8 md:justify-items-end"},React.createElement("div",{className:"flex mr-24"},React.createElement(Icon,{name:"icon-gui-check-outline",color:"text-active-orange",size:"1.5rem",additionalCSS:"bg-white rounded-full mr-12 ui-footer-tick-icon"}),React.createElement("div",null,React.createElement("p",{className:"ui-footer-compliance-text font-bold whitespace-nowrap"},"SOC 2 Type 2"),React.createElement("p",{className:"ui-footer-compliance-text font-medium mb-24"},"Certified"))),React.createElement("div",{className:"flex mr-24 md:col-start-2"},React.createElement(Icon,{name:"icon-gui-check-outline",color:"text-active-orange",size:"1.5rem",additionalCSS:"bg-white rounded-full mr-12 ui-footer-tick-icon"}),React.createElement("div",null,React.createElement("p",{className:"ui-footer-compliance-text font-bold whitespace-nowrap"},"HIPAA"),React.createElement("p",{className:"ui-footer-compliance-text font-medium mb-24"},"Compliant"))),React.createElement("div",{className:"flex mr-24 md:col-start-3"},React.createElement(Icon,{name:"icon-gui-check-outline",color:"text-active-orange",size:"1.5rem",additionalCSS:"bg-white rounded-full mr-12 ui-footer-tick-icon"}),React.createElement("div",null,React.createElement("p",{className:"ui-footer-compliance-text font-bold whitespace-nowrap"},"EU GDPR"),React.createElement("p",{className:"ui-footer-compliance-text font-medium mb-24"},"Certified"))),React.createElement("div",{className:"flex mr-24 md:col-start-4"},React.createElement(Icon,{name:"icon-gui-check-outline",color:"text-active-orange",size:"1.5rem",additionalCSS:"bg-white rounded-full mr-12 ui-footer-tick-icon"}),React.createElement("div",null,React.createElement("p",{className:"ui-footer-compliance-text font-bold whitespace-nowrap"},"256-bit AES"),React.createElement("p",{className:"ui-footer-compliance-text font-medium mb-24"},"Encryption"))))))};export default LegacyFooter;
|
|
2
|
-
//# sourceMappingURL=LegacyFooter.js.map
|