@ably/ui 8.7.0-dev.7021bee → 8.7.0-dev.7072b07

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (160) hide show
  1. package/README.md +15 -4
  2. package/core/.DS_Store +0 -0
  3. package/core/Code/component.css +2 -0
  4. package/core/Code/component.js +739 -1
  5. package/core/Code.jsx +557 -410
  6. package/core/CompanyAutocomplete/component.css +2 -0
  7. package/core/CompanyAutocomplete/component.js +1161 -1
  8. package/core/ConnectStateWrapper/component.js +22 -1
  9. package/core/ConnectStateWrapper.jsx +29 -15
  10. package/core/ContactFooter/component.css +2 -0
  11. package/core/ContactFooter/component.js +211 -1
  12. package/core/ContactFooter.jsx +221 -144
  13. package/core/CookieMessage/component.css +2 -0
  14. package/core/CookieMessage/component.js +82 -1
  15. package/core/CookieMessage.jsx +62 -45
  16. package/core/CustomerLogos/component.js +22 -1
  17. package/core/CustomerLogos.jsx +16 -7
  18. package/core/DropdownMenu/component.js +22 -1
  19. package/core/DropdownMenu.jsx +26 -13
  20. package/core/FeatureFooter/component.css +2 -0
  21. package/core/FeatureFooter/component.js +211 -1
  22. package/core/FeaturedLink/component.css +2 -0
  23. package/core/FeaturedLink/component.js +82 -1
  24. package/core/FeaturedLink.jsx +25 -12
  25. package/core/Flash/component.css +2 -0
  26. package/core/Flash/component.js +82 -1
  27. package/core/Flash.jsx +132 -104
  28. package/core/Footer/component.css +23 -1
  29. package/core/Footer/component.js +82 -1
  30. package/core/Footer.jsx +307 -203
  31. package/core/Icon/component.js +22 -1
  32. package/core/Icon.jsx +16 -7
  33. package/core/Loader/component.js +22 -1
  34. package/core/Loader.jsx +16 -7
  35. package/core/Logo/component.js +22 -1
  36. package/core/Logo.jsx +16 -7
  37. package/core/Meganav/component.css +3 -3
  38. package/core/Meganav/component.js +992 -1
  39. package/core/Meganav/component.json +2 -2
  40. package/core/Meganav.jsx +2702 -2361
  41. package/core/MeganavBlogPostsList/component.js +1159 -1
  42. package/core/MeganavBlogPostsList.jsx +34 -17
  43. package/core/MeganavContentCompany/component.js +22 -1
  44. package/core/MeganavContentCompany.jsx +293 -216
  45. package/core/MeganavContentDevelopers/component.js +22 -1
  46. package/core/MeganavContentDevelopers.jsx +68 -30
  47. package/core/MeganavContentPlatform/component.js +1 -1
  48. package/core/MeganavContentPlatform.jsx +26 -50
  49. package/core/MeganavContentProducts/component.js +22 -0
  50. package/core/MeganavContentProducts.jsx +350 -0
  51. package/core/MeganavContentUseCases/component.js +22 -1
  52. package/core/MeganavContentUseCases.jsx +77 -56
  53. package/core/MeganavControl/component.js +241 -1
  54. package/core/MeganavControl.jsx +25 -12
  55. package/core/MeganavControlMobileDropdown/component.js +180 -1
  56. package/core/MeganavControlMobileDropdown.jsx +26 -13
  57. package/core/MeganavControlMobilePanelClose/component.js +142 -1
  58. package/core/MeganavControlMobilePanelClose.jsx +25 -12
  59. package/core/MeganavControlMobilePanelOpen/component.js +170 -1
  60. package/core/MeganavControlMobilePanelOpen.jsx +25 -12
  61. package/core/MeganavItemsDesktop/component.js +22 -1
  62. package/core/MeganavItemsDesktop.jsx +42 -22
  63. package/core/MeganavItemsMobile/component.js +22 -1
  64. package/core/MeganavItemsMobile.jsx +104 -60
  65. package/core/MeganavItemsSignedIn/component.js +22 -1
  66. package/core/MeganavItemsSignedIn.jsx +93 -52
  67. package/core/MeganavSearch/component.js +22 -1
  68. package/core/MeganavSearch.jsx +64 -35
  69. package/core/MeganavSearchAutocomplete/component.js +295 -1
  70. package/core/MeganavSearchAutocomplete.jsx +10 -4
  71. package/core/MeganavSearchPanel/component.js +22 -1
  72. package/core/MeganavSearchPanel.jsx +53 -28
  73. package/core/MeganavSearchSuggestions/component.js +258 -1
  74. package/core/MeganavSearchSuggestions.jsx +34 -17
  75. package/core/Notice/component.css +2 -0
  76. package/core/Notice/component.js +872 -1
  77. package/core/Notice.jsx +380 -310
  78. package/core/Showcase/component.css +2 -0
  79. package/core/Showcase/component.js +343 -1
  80. package/core/Showcase.jsx +4 -1
  81. package/core/SignOutLink/component.js +22 -1
  82. package/core/SignOutLink.jsx +16 -7
  83. package/core/Slider/component.css +2 -0
  84. package/core/Slider/component.js +255 -1
  85. package/core/Slider.jsx +208 -156
  86. package/core/Uptime/component.css +2 -0
  87. package/core/Uptime/component.js +82 -1
  88. package/core/Uptime.jsx +46 -23
  89. package/core/images/best-support-2023.svg +1 -0
  90. package/core/images/fastest-implementation-2023.svg +1 -0
  91. package/core/images/high-performer-2022.png +0 -0
  92. package/core/images/high-performer-2023.svg +1 -0
  93. package/core/images/highest-user-adoption-2022.png +0 -0
  94. package/core/images/highest-user-adoption-2023.svg +1 -0
  95. package/core/images/users-love-us-2022.png +0 -0
  96. package/core/scripts.js +1465 -1
  97. package/core/sprites.svg +99 -0
  98. package/core/styles.css +3 -7
  99. package/package.json +5 -3
  100. package/reset/scripts.js +1 -1
  101. package/reset/styles.css +1 -11
  102. package/src/.DS_Store +0 -0
  103. package/src/core/.DS_Store +0 -0
  104. package/src/core/Flash/component.jsx +0 -2
  105. package/src/core/Footer/component.css +21 -1
  106. package/src/core/Footer/component.html.erb +120 -63
  107. package/src/core/Footer/component.jsx +128 -61
  108. package/src/core/Meganav/component.css +1 -1
  109. package/src/core/Meganav/component.json +2 -2
  110. package/src/core/Meganav/component.jsx +2 -2
  111. package/src/core/Meganav/component.rb +6 -6
  112. package/src/core/MeganavContentCompany/component.html.erb +9 -0
  113. package/src/core/MeganavContentCompany/component.jsx +9 -0
  114. package/src/core/MeganavContentDevelopers/component.html.erb +30 -14
  115. package/src/core/MeganavContentDevelopers/component.jsx +32 -13
  116. package/src/core/{MeganavContentPlatform → MeganavContentProducts}/component.html.erb +15 -33
  117. package/src/core/{MeganavContentPlatform → MeganavContentProducts}/component.jsx +18 -39
  118. package/src/core/{MeganavContentPlatform → MeganavContentProducts}/component.rb +1 -1
  119. package/src/core/MeganavContentUseCases/component.html.erb +42 -38
  120. package/src/core/MeganavContentUseCases/component.jsx +41 -38
  121. package/src/core/MeganavItemsDesktop/component.jsx +1 -1
  122. package/src/core/MeganavItemsDesktop/component.rb +1 -1
  123. package/src/core/core.rb +12 -4
  124. package/src/core/icons/icon-display-asset-tracking-col.svg +18 -0
  125. package/src/core/icons/icon-display-chat-col.svg +4 -0
  126. package/src/core/icons/icon-display-data-broadcast-col.svg +26 -0
  127. package/src/core/icons/icon-display-data-synchronization-col.svg +14 -0
  128. package/src/core/icons/icon-display-events-col.svg +13 -0
  129. package/src/core/icons/icon-display-examples-col.svg +11 -0
  130. package/src/core/icons/icon-display-kafka-at-the-edge-col.svg +8 -0
  131. package/src/core/icons/icon-display-push-notifications-col.svg +6 -0
  132. package/src/core/icons/icon-gui-check-circled-fill-black.svg +4 -0
  133. package/src/core/icons/icon-social-x.svg +3 -0
  134. package/src/core/icons/icon-tech-apachekafka.svg +3 -0
  135. package/src/core/images/best-support-2023.svg +1 -0
  136. package/src/core/images/fastest-implementation-2023.svg +1 -0
  137. package/src/core/images/high-performer-2022.png +0 -0
  138. package/src/core/images/high-performer-2023.svg +1 -0
  139. package/src/core/images/highest-user-adoption-2022.png +0 -0
  140. package/src/core/images/highest-user-adoption-2023.svg +1 -0
  141. package/src/core/images/users-love-us-2022.png +0 -0
  142. package/src/core/styles/text.css +1 -1
  143. package/src/core/utils/syntax-highlighter-registry.js +2 -0
  144. package/src/core/utils/syntax-highlighter.js +5 -0
  145. package/tailwind.config.js +1 -0
  146. package/core/Meganav/component.js.LICENSE.txt +0 -7
  147. package/core/MeganavContentWhyAbly/component.js +0 -6
  148. package/core/MeganavContentWhyAbly.jsx +0 -6
  149. package/core/MeganavSearchAutocomplete/component.js.LICENSE.txt +0 -7
  150. package/core/Notice/component.js.LICENSE.txt +0 -9
  151. package/core/fonts/.DS_Store +0 -0
  152. package/core/images/.DS_Store +0 -0
  153. package/core/scripts.js.LICENSE.txt +0 -32
  154. package/preview/vendor/bundle/ruby/3.0.0/bundler/gems/ably-ui-abffd210ec0f/preview/log/.keep +0 -0
  155. package/preview/vendor/bundle/ruby/3.0.0/bundler/gems/ably-ui-abffd210ec0f/preview/tmp/.keep +0 -0
  156. package/preview/vendor/bundle/ruby/3.0.0/bundler/gems/ably-ui-abffd210ec0f/preview/tmp/pids/.keep +0 -0
  157. package/src/core/fonts/.DS_Store +0 -0
  158. package/src/core/images/.DS_Store +0 -0
  159. package/src/reset/.DS_Store +0 -0
  160. /package/src/core/{MeganavContentPlatform → MeganavContentProducts}/component.js +0 -0
package/core/Footer.jsx CHANGED
@@ -7,20 +7,24 @@
7
7
  var a = typeof exports === 'object' ? factory(require("react"), require("prop-types")) : factory(root[undefined], root[undefined]);
8
8
  for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];
9
9
  }
10
- })(this, function(__WEBPACK_EXTERNAL_MODULE__9281__, __WEBPACK_EXTERNAL_MODULE__3474__) {
10
+ })(this, (__WEBPACK_EXTERNAL_MODULE_react__, __WEBPACK_EXTERNAL_MODULE_prop_types__) => {
11
11
  return /******/ (() => { // webpackBootstrap
12
12
  /******/ "use strict";
13
13
  /******/ var __webpack_modules__ = ({
14
14
 
15
- /***/ 9008:
15
+ /***/ "./src/core/Icon/component.jsx":
16
+ /*!*************************************!*\
17
+ !*** ./src/core/Icon/component.jsx ***!
18
+ \*************************************/
16
19
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
17
20
 
21
+ __webpack_require__.r(__webpack_exports__);
18
22
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
19
23
  /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
20
24
  /* harmony export */ });
21
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9281);
25
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
22
26
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
23
- /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(3474);
27
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! prop-types */ "prop-types");
24
28
  /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_1__);
25
29
  var _excluded = ["name", "size", "color", "additionalCSS"];
26
30
 
@@ -64,17 +68,44 @@ Icon.propTypes = {
64
68
 
65
69
  /***/ }),
66
70
 
67
- /***/ 3474:
71
+ /***/ "./src/core/url-base.js":
72
+ /*!******************************!*\
73
+ !*** ./src/core/url-base.js ***!
74
+ \******************************/
75
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
76
+
77
+ __webpack_require__.r(__webpack_exports__);
78
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
79
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
80
+ /* harmony export */ });
81
+ var DEFAULT_URL_BASE = "";
82
+
83
+ var absUrl = function absUrl(path) {
84
+ var urlBase = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : DEFAULT_URL_BASE;
85
+ return "".concat(urlBase).concat(path);
86
+ };
87
+
88
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (absUrl);
89
+
90
+ /***/ }),
91
+
92
+ /***/ "prop-types":
93
+ /*!*******************************************************************!*\
94
+ !*** external {"commonjs":"prop-types","commonjs2":"prop-types"} ***!
95
+ \*******************************************************************/
68
96
  /***/ ((module) => {
69
97
 
70
- module.exports = __WEBPACK_EXTERNAL_MODULE__3474__;
98
+ module.exports = __WEBPACK_EXTERNAL_MODULE_prop_types__;
71
99
 
72
100
  /***/ }),
73
101
 
74
- /***/ 9281:
102
+ /***/ "react":
103
+ /*!*********************************************************!*\
104
+ !*** external {"commonjs":"react","commonjs2":"react"} ***!
105
+ \*********************************************************/
75
106
  /***/ ((module) => {
76
107
 
77
- module.exports = __WEBPACK_EXTERNAL_MODULE__9281__;
108
+ module.exports = __WEBPACK_EXTERNAL_MODULE_react__;
78
109
 
79
110
  /***/ })
80
111
 
@@ -149,32 +180,19 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__9281__;
149
180
  var __webpack_exports__ = {};
150
181
  // This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.
151
182
  (() => {
152
- // ESM COMPAT FLAG
183
+ /*!***************************************!*\
184
+ !*** ./src/core/Footer/component.jsx ***!
185
+ \***************************************/
153
186
  __webpack_require__.r(__webpack_exports__);
154
-
155
- // EXPORTS
156
- __webpack_require__.d(__webpack_exports__, {
157
- "default": () => (/* binding */ Footer)
158
- });
159
-
160
- // EXTERNAL MODULE: external {"commonjs":"react","commonjs2":"react"}
161
- var external_commonjs_react_commonjs2_react_ = __webpack_require__(9281);
162
- var external_commonjs_react_commonjs2_react_default = /*#__PURE__*/__webpack_require__.n(external_commonjs_react_commonjs2_react_);
163
- // EXTERNAL MODULE: external {"commonjs":"prop-types","commonjs2":"prop-types"}
164
- var external_commonjs_prop_types_commonjs2_prop_types_ = __webpack_require__(3474);
165
- var external_commonjs_prop_types_commonjs2_prop_types_default = /*#__PURE__*/__webpack_require__.n(external_commonjs_prop_types_commonjs2_prop_types_);
166
- // EXTERNAL MODULE: ./src/core/Icon/component.jsx
167
- var component = __webpack_require__(9008);
168
- ;// CONCATENATED MODULE: ./src/core/url-base.js
169
- var DEFAULT_URL_BASE = "";
170
-
171
- var absUrl = function absUrl(path) {
172
- var urlBase = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : DEFAULT_URL_BASE;
173
- return "".concat(urlBase).concat(path);
174
- };
175
-
176
- /* harmony default export */ const url_base = (absUrl);
177
- ;// CONCATENATED MODULE: ./src/core/Footer/component.jsx
187
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
188
+ /* harmony export */ "default": () => (/* binding */ Footer)
189
+ /* harmony export */ });
190
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
191
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
192
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! prop-types */ "prop-types");
193
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_1__);
194
+ /* harmony import */ var _Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../Icon/component.jsx */ "./src/core/Icon/component.jsx");
195
+ /* harmony import */ var _url_base__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../url-base */ "./src/core/url-base.js");
178
196
 
179
197
 
180
198
 
@@ -184,314 +202,400 @@ function Footer(_ref) {
184
202
  urlBase = _ref.urlBase;
185
203
 
186
204
  var absUrl = function absUrl(path) {
187
- return url_base(path, urlBase);
205
+ return (0,_url_base__WEBPACK_IMPORTED_MODULE_3__["default"])(path, urlBase);
188
206
  };
189
207
 
190
- return /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("footer", {
208
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("footer", {
191
209
  className: "bg-light-grey font-sans antialiased",
192
210
  "data-id": "footer"
193
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
194
- className: "max-w-screen-xl mx-auto py-32 sm:py-40 lg:py-64 ui-grid-gap ui-grid-px grid grid-cols-6"
195
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
211
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
212
+ 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"
213
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
196
214
  className: "col-span-full md:col-span-2"
197
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
215
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
198
216
  className: "flex flex-row p-menu-row-snug"
199
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("img", {
217
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("img", {
200
218
  className: "mr-24 -mt-16",
201
219
  src: paths.ablyStack,
202
220
  alt: "Ably homepage"
203
- }), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("h2", {
221
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h2", {
204
222
  className: "text-overline2 col-span-full font-medium uppercase tracking-widen-0.1"
205
- }, "The Ably Platform")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
206
- className: "grid grid-cols-4"
207
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("p", {
208
- className: "text-p3 py-16 font-medium p-menu-row-snug col-span-3"
209
- }, "Easily power any realtime experience in your application via a simple API that handles everything realtime.")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("ul", {
210
- className: "grid gap-x-8 sm:gap-x-16 md:gap-x-24 xl:gap-x-32 sm:grid-cols-2 md:grid-cols-1"
211
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
223
+ }, "The Ably Platform")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
224
+ className: "md:col-span-4 md:w-3/4 xs:w-3/5 w-full"
225
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
226
+ className: "text-p3 py-16 font-medium p-menu-row-snug"
227
+ }, "Easily power any realtime experience in your application via a simple API that handles everything realtime.")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("ul", {
228
+ className: "grid grid-cols-1"
229
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
212
230
  className: "p-menu-row-snug"
213
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
214
- href: absUrl("/pub-sub-messaging"),
231
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
232
+ href: absUrl("/solutions/channels"),
215
233
  className: "ui-footer-menu-row-link"
216
- }, "Pub/sub messaging")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
234
+ }, "Pub/sub messaging")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
217
235
  className: "p-menu-row-snug"
218
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
236
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
219
237
  href: absUrl("/push-notifications"),
220
238
  className: "ui-footer-menu-row-link"
221
- }, "Push notifications")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
239
+ }, "Push notifications")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
222
240
  className: "p-menu-row-snug"
223
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
241
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
224
242
  href: absUrl("/integrations"),
225
243
  className: "ui-footer-menu-row-link"
226
- }, "Third-party integrations")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
244
+ }, "Third-party integrations")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
227
245
  className: "p-menu-row-snug"
228
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
246
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
229
247
  href: absUrl("/protocols"),
230
248
  className: "ui-footer-menu-row-link"
231
- }, "Multiple protocol messaging")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
232
- className: "p-menu-row-snug"
233
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
234
- href: absUrl("/hub"),
235
- className: "ui-footer-menu-row-link"
236
- }, "Streaming data sources")))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
237
- className: "col-span-full sm:col-span-3 md:col-span-1"
238
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("h2", {
249
+ }, "Multiple protocol messaging")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
250
+ className: "col-span-full xs:col-span-3 md:col-span-1"
251
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h2", {
239
252
  className: "ui-footer-col-title"
240
- }, "Ably is for"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("ul", null, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
253
+ }, "Ably is for"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("ul", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
241
254
  className: "p-menu-row-snug"
242
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
255
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
243
256
  href: absUrl("/solutions/asset-tracking"),
244
257
  className: "ui-footer-menu-row-link"
245
- }, "Ably Asset Tracking")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
258
+ }, "Ably Asset Tracking")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
246
259
  className: "p-menu-row-snug"
247
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
260
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
248
261
  href: absUrl("/solutions/extend-kafka-to-the-edge"),
249
262
  className: "ui-footer-menu-row-link"
250
- }, "Extend Kafka to the edge")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
263
+ }, "Extend Kafka to the edge")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
251
264
  className: "p-menu-row-snug"
252
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
265
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
253
266
  href: absUrl("/solutions/edtech"),
254
267
  className: "ui-footer-menu-row-link"
255
- }, "EdTech")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
268
+ }, "EdTech")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
256
269
  className: "p-menu-row-snug"
257
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
270
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
258
271
  href: absUrl("/solutions/automotive-logistics-and-mobility"),
259
272
  className: "ui-footer-menu-row-link"
260
- }, "Automotive, Logistics, & Mobility")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
273
+ }, "Automotive, Logistics, & Mobility")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
261
274
  className: "p-menu-row-snug"
262
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
275
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
263
276
  href: absUrl("/solutions/b2b-platforms"),
264
277
  className: "ui-footer-menu-row-link"
265
- }, "B2B Platforms")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
278
+ }, "B2B Platforms")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
266
279
  className: "p-menu-row-snug"
267
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
280
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
268
281
  href: absUrl("/solutions/healthcare"),
269
282
  className: "ui-footer-menu-row-link"
270
- }, "Healthcare")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
271
- className: "p-menu-row-snug"
272
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
273
- href: absUrl("/hub"),
274
- className: "ui-footer-menu-row-link"
275
- }, "Streaming data sources")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
283
+ }, "Healthcare")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
276
284
  className: "p-menu-row-snug"
277
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
285
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
278
286
  href: absUrl("/solutions/ecommerce-and-retail"),
279
287
  className: "ui-footer-menu-row-link"
280
- }, "eCommerce & Retail")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
288
+ }, "eCommerce & Retail")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
281
289
  className: "p-menu-row-snug"
282
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
290
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
283
291
  href: absUrl("/solutions/sports-and-media"),
284
292
  className: "ui-footer-menu-row-link"
285
- }, "Sports & Media")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
293
+ }, "Sports & Media")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
286
294
  className: "p-menu-row-snug"
287
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
295
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
288
296
  href: absUrl("/solutions/gaming"),
289
297
  className: "ui-footer-menu-row-link"
290
- }, "Gaming")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
298
+ }, "Gaming")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
291
299
  className: "p-menu-row-snug"
292
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
300
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
293
301
  href: absUrl("/solutions/iot-and-connected-devices"),
294
302
  className: "ui-footer-menu-row-link"
295
- }, "IoT & Connected Devices")))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
296
- className: "col-span-full sm:col-span-3 md:col-span-1"
297
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("h2", {
303
+ }, "IoT & Connected Devices")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
304
+ className: "col-span-full xs:col-span-3 md:col-span-1"
305
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h2", {
298
306
  className: "ui-footer-col-title"
299
- }, "Developers"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("ul", null, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
307
+ }, "Developers"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("ul", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
300
308
  className: "p-menu-row-snug"
301
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
309
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
302
310
  href: absUrl("/docs/quick-start-guide"),
303
311
  className: "ui-footer-menu-row-link"
304
- }, "Start in 5 minutes")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
312
+ }, "Start in 5 minutes")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
305
313
  className: "p-menu-row-snug"
306
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
314
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
307
315
  href: absUrl("/docs/"),
308
316
  className: "ui-footer-menu-row-link"
309
- }, "Documentation")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
317
+ }, "Documentation")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
310
318
  className: "p-menu-row-snug"
311
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
319
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
312
320
  href: absUrl("/tutorials"),
313
321
  className: "ui-footer-menu-row-link"
314
- }, "Tutorials")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
322
+ }, "Tutorials")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
315
323
  className: "p-menu-row-snug"
316
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
324
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
317
325
  href: "https://changelog.ably.com/",
318
326
  className: "ui-footer-menu-row-link"
319
- }, "Changelog")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
327
+ }, "Changelog")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
320
328
  className: "p-menu-row-snug"
321
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
329
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
322
330
  href: absUrl("/support"),
323
331
  className: "ui-footer-menu-row-link"
324
- }, "Support & FAQs")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
332
+ }, "Support & FAQs")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
325
333
  className: "p-menu-row-snug"
326
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
334
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
327
335
  href: absUrl("/download"),
328
336
  className: "ui-footer-menu-row-link"
329
- }, "SDKs")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
330
- className: "p-menu-row-snug flex items-center"
331
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
337
+ }, "SDKs")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
338
+ className: "p-menu-row-snug flex items-center -mt-4"
339
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
332
340
  className: "pr-8 ui-footer-menu-row-link",
333
341
  href: "https://status.ably.com/"
334
- }, "System status"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("iframe", {
335
- className: "w-24 h-24 mt-4",
342
+ }, "System status"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("iframe", {
343
+ className: "w-20 h-20 mb-2",
336
344
  src: "https://status.ably.com/embed/icon",
337
345
  allowtransparency: "true",
338
346
  frameBorder: "0",
339
- scrolling: "no"
340
- })))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
341
- className: "col-span-full sm:col-span-3 md:col-span-1"
342
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("h2", {
347
+ scrolling: "no",
348
+ title: "System Status"
349
+ })))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
350
+ className: "col-span-full xs:col-span-3 md:col-span-1"
351
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h2", {
343
352
  className: "ui-footer-col-title"
344
- }, "WHY ABLY"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("ul", null, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
353
+ }, "WHY ABLY"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("ul", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
345
354
  className: "p-menu-row-snug"
346
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
355
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
347
356
  href: absUrl("/customers"),
348
357
  className: "ui-footer-menu-row-link"
349
- }, "Customers")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
358
+ }, "Customers")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
350
359
  className: "p-menu-row-snug"
351
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
360
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
352
361
  href: absUrl("/case-studies"),
353
362
  className: "ui-footer-menu-row-link"
354
- }, "Case Studies")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
363
+ }, "Case Studies")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
355
364
  className: "p-menu-row-snug"
356
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
365
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
357
366
  href: absUrl("/four-pillars-of-dependability"),
358
367
  className: "ui-footer-menu-row-link"
359
- }, "Four Pillars of Dependability")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
368
+ }, "Four Pillars of Dependability")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
360
369
  className: "p-menu-row-snug"
361
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
370
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
362
371
  href: absUrl("/compare"),
363
372
  className: "ui-footer-menu-row-link"
364
- }, "Compare our tech")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
373
+ }, "Compare our tech")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
365
374
  className: "p-menu-row-snug"
366
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
375
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
367
376
  href: absUrl("/protocols"),
368
377
  className: "ui-footer-menu-row-link"
369
- }, "Multi protocol support")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
378
+ }, "Multi protocol support")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
370
379
  className: "p-menu-row-snug"
371
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
380
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
372
381
  href: absUrl("/integrations"),
373
382
  className: "ui-footer-menu-row-link"
374
- }, "Third-party integrations")))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
375
- className: "col-span-full sm:col-span-3 md:col-span-1"
376
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("h2", {
383
+ }, "Third-party integrations")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
384
+ className: "col-span-full xs:col-span-3 md:col-span-1"
385
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h2", {
377
386
  className: "ui-footer-col-title"
378
- }, "ABOUT"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("ul", null, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
387
+ }, "ABOUT"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("ul", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
379
388
  className: "p-menu-row-snug"
380
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
389
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
381
390
  href: absUrl("/about"),
382
391
  className: "ui-footer-menu-row-link"
383
- }, "About Ably")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
392
+ }, "About Ably")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
384
393
  className: "p-menu-row-snug"
385
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
394
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
386
395
  href: absUrl("/pricing"),
387
396
  className: "ui-footer-menu-row-link"
388
- }, "Pricing")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
397
+ }, "Pricing")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
389
398
  className: "p-menu-row-snug"
390
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
399
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
391
400
  href: absUrl("/blog"),
392
401
  className: "ui-footer-menu-row-link"
393
- }, "Blog")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
402
+ }, "Blog")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
394
403
  className: "p-menu-row-snug"
395
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
404
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
396
405
  href: absUrl("/careers"),
397
406
  className: "ui-footer-menu-row-link"
398
- }, "Careers")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
407
+ }, "Careers")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
399
408
  className: "p-menu-row-snug"
400
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
409
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
401
410
  href: absUrl("/open-policy"),
402
411
  className: "ui-footer-menu-row-link"
403
- }, "Open protocol policy")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
412
+ }, "Open protocol policy")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
404
413
  className: "p-menu-row-snug"
405
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
414
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
406
415
  href: absUrl("/press-center"),
407
416
  className: "ui-footer-menu-row-link"
408
- }, "Press & Media")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
417
+ }, "Press & Media")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
409
418
  className: "p-menu-row-snug"
410
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
419
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
411
420
  href: absUrl("/contact"),
412
421
  className: "ui-footer-menu-row-link"
413
- }, "Contact us"))))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
422
+ }, "Contact us"))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
414
423
  className: "max-w-screen-xl ui-grid-px mx-auto"
415
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("hr", {
416
- className: "border-t border-mid-grey"
417
- })), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
418
- className: "max-w-screen-xl mx-auto py-24 md:py-40 lg:py-32 grid ui-grid-gap ui-grid-px grid-cols-2"
419
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
420
- className: "flex flex-col flex-auto pb-40 ml-8 col-span-full md:col-span-1"
421
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
422
- className: "inline-flex"
423
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
424
- href: absUrl("/privacy"),
425
- className: "pr-24 ui-footer-link"
426
- }, "Cookies"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
427
- href: absUrl("/legals"),
428
- className: "pr-24 ui-footer-link"
429
- }, "Legals"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
430
- href: absUrl("/data-protection"),
431
- className: "pr-24 ui-footer-link"
432
- }, "Data Protection"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
433
- href: absUrl("/privacy"),
434
- className: "ui-footer-link"
435
- }, "Privacy")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
436
- className: "pt-32 flex items-center"
437
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
424
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("hr", {
425
+ className: "border-t border-mid-grey my-0"
426
+ })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
427
+ className: "max-w-screen-xl mx-auto py-16 grid ui-grid-gap ui-grid-px sm:grid-cols-2"
428
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
429
+ className: "md:flex md:items-center"
430
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
431
+ className: "flex flex-col md:flex-row flex-auto ml-8 sm:col-span-1 md:col-span-2"
432
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
433
+ className: ""
434
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
435
+ className: "flex pb-24"
436
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
438
437
  className: "h-24 pr-24 text-cool-black hover:text-icon-twitter",
439
- href: "https://twitter.com/ablyrealtime"
440
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement(component.default, {
441
- name: "twitter",
438
+ href: "https://twitter.com/ablyrealtime",
439
+ title: "Ably on X"
440
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__["default"], {
441
+ name: "icon-social-x",
442
442
  size: "1.5rem"
443
- })), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
443
+ })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
444
444
  className: "h-24 pr-24 text-cool-black hover:text-icon-linkedin",
445
- href: "https://www.linkedin.com/company/ably-realtime"
446
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement(component.default, {
445
+ href: "https://www.linkedin.com/company/ably-realtime",
446
+ title: "Ably on LinkedIn"
447
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__["default"], {
447
448
  name: "linkedin",
448
449
  size: "1.5rem"
449
- })), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
450
+ })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
450
451
  className: "h-24 pr-24 text-cool-black hover:text-icon-github",
451
- href: "https://github.com/ably/"
452
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement(component.default, {
452
+ href: "https://github.com/ably/",
453
+ title: "Ably on Github"
454
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__["default"], {
453
455
  name: "github",
454
456
  size: "1.5rem"
455
- })), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
457
+ })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
456
458
  className: "h-24 pr-24 text-cool-black hover:text-icon-discord",
457
- href: "https://discord.gg/jwBPhEZ9g5"
458
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement(component.default, {
459
+ href: "https://discord.gg/jwBPhEZ9g5",
460
+ title: "Ably on Discord"
461
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__["default"], {
459
462
  name: "discord",
460
463
  size: "1.5rem"
461
- })), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
462
- className: "border-l border-mid-grey h-40"
463
- }), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
464
- className: "flex flex-row pl-24 text-cool-black hover:text-icon-glassdoor",
465
- href: "https://www.glassdoor.co.uk/Overview/Working-at-Ably-EI_IE2184188.11,15.htm"
466
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement(component.default, {
464
+ })))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
465
+ className: "xs:hidden sm:block ui-footer-glassdoor"
466
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
467
+ 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"
468
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
469
+ href: "https://www.glassdoor.co.uk/Overview/Working-at-Ably-EI_IE2184188.11,15.htm",
470
+ className: "h-24 text-cool-black hover:text-icon-glassdoor",
471
+ title: "Ably reviews on glassdoor"
472
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__["default"], {
467
473
  name: "glassdoor",
468
474
  size: "1.5rem"
469
- })), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
475
+ })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
470
476
  className: "pl-16 text-menu3 font-light"
471
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("strong", {
477
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("strong", {
472
478
  className: "block font-medium"
473
- }, "We're hiring!"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
479
+ }, "We're hiring!"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
474
480
  href: "https://www.glassdoor.co.uk/Overview/Working-at-Ably-EI_IE2184188.11,15.htm",
475
481
  className: "ui-footer-link"
476
- }, "Learn more"), "\xA0at Glassdoor"))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
477
- className: "md:text-right col-span-full md:col-span-1 ml-8 inline-flex md:ml-auto"
478
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("img", {
479
- className: "mr-24 w-96 h-96",
480
- src: paths.rocketList,
481
- alt: "Rocket List 2021"
482
- }), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("img", {
483
- className: "w-96 h-96",
484
- src: paths.flexibleCompanies,
485
- alt: "Flexible Companies 2021"
486
- }))));
482
+ }, "Learn more at Glassdoor"))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
483
+ className: "xs:block sm:hidden"
484
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
485
+ className: "border-t border-mid-grey w-full"
486
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
487
+ className: "flex py-24"
488
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
489
+ className: "h-24 pr-16 text-cool-black hover:text-icon-glassdoor",
490
+ href: "https://www.glassdoor.co.uk/Overview/Working-at-Ably-EI_IE2184188.11,15.htm",
491
+ title: "Ably reviews on glassdoor"
492
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__["default"], {
493
+ name: "glassdoor",
494
+ size: "1.5rem"
495
+ })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
496
+ className: "text-menu3 font-light"
497
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("strong", {
498
+ className: "block font-medium"
499
+ }, "We're hiring!"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
500
+ href: "https://www.glassdoor.co.uk/Overview/Working-at-Ably-EI_IE2184188.11,15.htm",
501
+ className: "ui-footer-link"
502
+ }, "Learn more at Glassdoor"))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
503
+ className: "col-span-full sm:col-span-1 inline-flex sm:ml-auto sm:items-center"
504
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("img", {
505
+ className: "mr-24 h-80",
506
+ src: paths.highestUserAdoption,
507
+ alt: "Highest User Adoption 2023"
508
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("img", {
509
+ className: "mr-24 h-80",
510
+ src: paths.bestSupport,
511
+ alt: "Best Support 2023"
512
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("img", {
513
+ className: "mr-24 h-80",
514
+ src: paths.fastestImplementation,
515
+ alt: "Fastest Implementation 2023"
516
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("img", {
517
+ className: "mr-24 h-80",
518
+ src: paths.highestPerformer,
519
+ alt: "High Performer 2023"
520
+ }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
521
+ className: "max-w-screen-xl ui-grid-px mx-auto"
522
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("hr", {
523
+ className: "border-t border-mid-grey my-0"
524
+ })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
525
+ 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"
526
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
527
+ className: "flex ml-8 col-span-full sm:col-span-1 md:pb-16 items-center ui-footer-bottom-links"
528
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
529
+ className: "flex"
530
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
531
+ href: absUrl("/privacy"),
532
+ className: "pr-24 ui-footer-link"
533
+ }, "Cookies"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
534
+ href: absUrl("/legals"),
535
+ className: "pr-24 ui-footer-link"
536
+ }, "Legals"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
537
+ href: absUrl("/data-protection"),
538
+ className: "pr-24 ui-footer-link"
539
+ }, "Data Protection"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
540
+ href: absUrl("/privacy"),
541
+ className: "ui-footer-link"
542
+ }, "Privacy"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
543
+ className: "xs:grid xs:grid-cols-2 sm:grid-cols-4 xs:pl-16 sm:pl-8 md:justify-items-end"
544
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
545
+ className: "flex mr-24"
546
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__["default"], {
547
+ name: "icon-gui-tick",
548
+ color: "text-active-orange",
549
+ size: "1.5rem",
550
+ additionalCSS: "bg-white rounded-full mr-12 ui-footer-tick-icon"
551
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
552
+ className: "ui-footer-compliance-text font-medium whitespace-nowrap"
553
+ }, "SOC 2 Type 2"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
554
+ className: "ui-footer-compliance-text font-light mb-24"
555
+ }, "Certified"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
556
+ className: "flex mr-24 md:col-start-2"
557
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__["default"], {
558
+ name: "icon-gui-tick",
559
+ color: "text-active-orange",
560
+ size: "1.5rem",
561
+ additionalCSS: "bg-white rounded-full mr-12 ui-footer-tick-icon"
562
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
563
+ className: "ui-footer-compliance-text font-medium whitespace-nowrap"
564
+ }, "HIPAA"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
565
+ className: "ui-footer-compliance-text font-light mb-24"
566
+ }, "Compliant"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
567
+ className: "flex mr-24 md:col-start-3"
568
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__["default"], {
569
+ name: "icon-gui-tick",
570
+ color: "text-active-orange",
571
+ size: "1.5rem",
572
+ additionalCSS: "bg-white rounded-full mr-12 ui-footer-tick-icon"
573
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
574
+ className: "ui-footer-compliance-text font-medium whitespace-nowrap"
575
+ }, "EU GDPR"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
576
+ className: "ui-footer-compliance-text font-light mb-24"
577
+ }, "Certified"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
578
+ className: "flex mr-24 md:col-start-4"
579
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__["default"], {
580
+ name: "icon-gui-tick",
581
+ color: "text-active-orange",
582
+ size: "1.5rem",
583
+ additionalCSS: "bg-white rounded-full mr-12 ui-footer-tick-icon"
584
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
585
+ className: "ui-footer-compliance-text font-medium whitespace-nowrap"
586
+ }, "256-bit AES"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
587
+ className: "ui-footer-compliance-text font-light mb-24"
588
+ }, "Encryption"))))));
487
589
  }
488
590
  Footer.propTypes = {
489
- paths: external_commonjs_prop_types_commonjs2_prop_types_default().shape({
490
- ablyStack: (external_commonjs_prop_types_commonjs2_prop_types_default()).string,
491
- rocketList: (external_commonjs_prop_types_commonjs2_prop_types_default()).string,
492
- flexibleCompanies: (external_commonjs_prop_types_commonjs2_prop_types_default()).string
591
+ paths: prop_types__WEBPACK_IMPORTED_MODULE_1___default().shape({
592
+ ablyStack: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
593
+ highestPerformer: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
594
+ highestUserAdoption: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
595
+ bestSupport: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
596
+ fastestImplementation: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string)
493
597
  }),
494
- urlBase: (external_commonjs_prop_types_commonjs2_prop_types_default()).string
598
+ urlBase: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string)
495
599
  };
496
600
  })();
497
601