@ably/ui 8.6.0 → 8.7.0-dev.05d9441

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 (173) hide show
  1. package/README.md +23 -12
  2. package/core/Code/component.css +5 -3
  3. package/core/Code/component.js +1 -1
  4. package/core/Code.jsx +373 -7273
  5. package/core/CompanyAutocomplete/component.js +1 -1
  6. package/core/ConnectStateWrapper/component.js +1 -1
  7. package/core/ConnectStateWrapper.jsx +16 -7
  8. package/core/ContactFooter/component.js +1 -1
  9. package/core/ContactFooter.jsx +20 -126
  10. package/core/CookieMessage/component.js +1 -1
  11. package/core/CookieMessage.jsx +24 -296
  12. package/core/CustomerLogos/component.js +1 -1
  13. package/core/CustomerLogos.jsx +18 -120
  14. package/core/DropdownMenu/component.js +1 -0
  15. package/core/DropdownMenu.jsx +313 -0
  16. package/core/FeatureFooter/component.js +1 -1
  17. package/core/FeaturedLink/component.css +1 -1
  18. package/core/FeaturedLink/component.js +1 -1
  19. package/core/FeaturedLink.jsx +15 -121
  20. package/core/Flash/component.js +1 -1
  21. package/core/Flash.jsx +157 -1538
  22. package/core/Footer/component.css +23 -3
  23. package/core/Footer/component.js +1 -1
  24. package/core/Footer.jsx +175 -195
  25. package/core/Icon/component.js +1 -1
  26. package/core/Icon.jsx +12 -117
  27. package/core/Loader/component.js +1 -1
  28. package/core/Loader.jsx +12 -117
  29. package/core/Logo/component.js +1 -1
  30. package/core/Logo.jsx +38 -228
  31. package/core/Meganav/component.css +7 -9
  32. package/core/Meganav/component.js +1 -2
  33. package/core/Meganav/component.json +2 -2
  34. package/core/Meganav.jsx +2233 -9543
  35. package/core/MeganavBlogPostsList/component.js +1 -1
  36. package/core/MeganavBlogPostsList.jsx +18 -125
  37. package/core/MeganavContentCompany/component.js +1 -1
  38. package/core/MeganavContentCompany.jsx +60 -141
  39. package/core/MeganavContentDevelopers/component.js +1 -1
  40. package/core/MeganavContentDevelopers.jsx +66 -135
  41. package/core/{MeganavContentPlatform → MeganavContentProducts}/component.js +1 -1
  42. package/core/{MeganavContentPlatform.jsx → MeganavContentProducts.jsx} +40 -171
  43. package/core/MeganavContentUseCases/component.js +1 -1
  44. package/core/MeganavContentUseCases.jsx +75 -161
  45. package/core/MeganavControl/component.js +1 -1
  46. package/core/MeganavControl.jsx +15 -121
  47. package/core/MeganavControlMobileDropdown/component.js +1 -1
  48. package/core/MeganavControlMobileDropdown.jsx +16 -122
  49. package/core/MeganavControlMobilePanelClose/component.js +1 -1
  50. package/core/MeganavControlMobilePanelClose.jsx +15 -121
  51. package/core/MeganavControlMobilePanelOpen/component.js +1 -1
  52. package/core/MeganavControlMobilePanelOpen.jsx +15 -121
  53. package/core/MeganavItemsDesktop/component.js +1 -1
  54. package/core/MeganavItemsDesktop.jsx +22 -130
  55. package/core/MeganavItemsMobile/component.js +1 -1
  56. package/core/MeganavItemsMobile.jsx +44 -158
  57. package/core/MeganavItemsSignedIn/component.js +1 -1
  58. package/core/MeganavItemsSignedIn.jsx +38 -151
  59. package/core/MeganavSearch/component.js +1 -1
  60. package/core/MeganavSearch.jsx +28 -138
  61. package/core/MeganavSearchAutocomplete/component.js +1 -2
  62. package/core/MeganavSearchAutocomplete.jsx +4 -4
  63. package/core/MeganavSearchPanel/component.js +1 -1
  64. package/core/MeganavSearchPanel.jsx +24 -133
  65. package/core/MeganavSearchSuggestions/component.js +1 -1
  66. package/core/MeganavSearchSuggestions.jsx +18 -125
  67. package/core/Notice/component.js +1 -2
  68. package/core/Notice.jsx +195 -2196
  69. package/core/Showcase/component.js +1 -1
  70. package/core/Showcase.jsx +1 -1
  71. package/core/SignOutLink/component.js +1 -1
  72. package/core/SignOutLink.jsx +12 -117
  73. package/core/Slider/component.js +1 -1
  74. package/core/Slider.jsx +31 -588
  75. package/core/Uptime/component.js +1 -1
  76. package/core/Uptime.jsx +24 -127
  77. package/core/fonts/jetBrains-mono.css +3 -0
  78. package/core/fonts/manrope.css +3 -0
  79. package/core/images/ably-logo.png +0 -0
  80. package/core/images/best-support-2023.svg +1 -0
  81. package/core/images/fastest-implementation-2023.svg +1 -0
  82. package/core/images/high-performer-2022.png +0 -0
  83. package/core/images/high-performer-2023.svg +1 -0
  84. package/core/images/highest-user-adoption-2022.png +0 -0
  85. package/core/images/highest-user-adoption-2023.svg +1 -0
  86. package/core/images/users-love-us-2022.png +0 -0
  87. package/core/scripts.js +1 -1
  88. package/core/sprites.svg +150 -1
  89. package/core/styles.css +228 -106
  90. package/package.json +6 -6
  91. package/reset/scripts.js +1 -1
  92. package/reset/styles.css +1 -11
  93. package/src/core/Code/component.css +1 -67
  94. package/src/core/Code/component.js +11 -46
  95. package/src/core/Code/component.jsx +7 -3
  96. package/src/core/CustomerLogos/component.html.erb +2 -2
  97. package/src/core/CustomerLogos/component.jsx +3 -2
  98. package/src/core/CustomerLogos/component.rb +2 -1
  99. package/src/core/DropdownMenu/component.jsx +112 -0
  100. package/src/core/FeatureFooter/component.html.erb +4 -4
  101. package/src/core/FeaturedLink/component.css +1 -1
  102. package/src/core/Flash/component.jsx +42 -18
  103. package/src/core/Footer/component.css +23 -3
  104. package/src/core/Footer/component.html.erb +122 -65
  105. package/src/core/Footer/component.jsx +130 -63
  106. package/src/core/Logo/component.html.erb +2 -27
  107. package/src/core/Logo/component.jsx +7 -40
  108. package/src/core/Logo/component.rb +15 -6
  109. package/src/core/Meganav/component.css +7 -7
  110. package/src/core/Meganav/component.html.erb +1 -1
  111. package/src/core/Meganav/component.json +2 -2
  112. package/src/core/Meganav/component.jsx +3 -3
  113. package/src/core/Meganav/component.rb +7 -6
  114. package/src/core/MeganavContentCompany/component.html.erb +9 -0
  115. package/src/core/MeganavContentCompany/component.jsx +9 -0
  116. package/src/core/MeganavContentDevelopers/component.html.erb +36 -11
  117. package/src/core/MeganavContentDevelopers/component.jsx +38 -10
  118. package/src/core/{MeganavContentPlatform → MeganavContentProducts}/component.html.erb +16 -34
  119. package/src/core/MeganavContentProducts/component.js +0 -0
  120. package/src/core/{MeganavContentPlatform → MeganavContentProducts}/component.jsx +19 -40
  121. package/src/core/{MeganavContentPlatform → MeganavContentProducts}/component.rb +1 -1
  122. package/src/core/MeganavContentUseCases/component.html.erb +48 -35
  123. package/src/core/MeganavContentUseCases/component.jsx +47 -35
  124. package/src/core/MeganavItemsDesktop/component.jsx +1 -1
  125. package/src/core/MeganavItemsDesktop/component.rb +1 -1
  126. package/src/core/MeganavSearchSuggestions/component.html.erb +1 -1
  127. package/src/core/Notice/component.html.erb +2 -2
  128. package/src/core/Notice/component.jsx +2 -2
  129. package/src/core/core.rb +16 -4
  130. package/src/core/fonts/jetBrains-mono.css +3 -0
  131. package/src/core/fonts/manrope.css +3 -0
  132. package/src/core/icons/github.svg +1 -1
  133. package/src/core/icons/google.svg +3 -0
  134. package/src/core/icons/icon-display-asset-tracking-col.svg +18 -0
  135. package/src/core/icons/icon-display-chat-col.svg +4 -0
  136. package/src/core/icons/icon-display-data-broadcast-col.svg +26 -0
  137. package/src/core/icons/icon-display-data-synchronization-col.svg +14 -0
  138. package/src/core/icons/icon-display-events-col.svg +13 -0
  139. package/src/core/icons/icon-display-examples-col.svg +11 -0
  140. package/src/core/icons/icon-display-integrations-col.svg +8 -0
  141. package/src/core/icons/icon-display-kafka-at-the-edge-col.svg +8 -0
  142. package/src/core/icons/icon-display-push-notifications-col.svg +6 -0
  143. package/src/core/icons/icon-gui-check-circled-fill-black.svg +4 -0
  144. package/src/core/icons/icon-gui-filter-flow-step-1.svg +5 -0
  145. package/src/core/icons/icon-gui-filter-flow-step-2.svg +5 -0
  146. package/src/core/icons/icon-gui-filter-flow-step-3.svg +5 -0
  147. package/src/core/icons/icon-gui-link.svg +4 -0
  148. package/src/core/icons/icon-gui-resources.svg +3 -0
  149. package/src/core/icons/icon-multi-user-spaces-col.svg +13 -0
  150. package/src/core/icons/icon-social-x.svg +3 -0
  151. package/src/core/icons/icon-tech-apachekafka.svg +3 -0
  152. package/src/core/icons/stackoverflow.svg +3 -0
  153. package/src/core/icons/youtube.svg +11 -0
  154. package/src/core/images/ably-logo.png +0 -0
  155. package/src/core/images/best-support-2023.svg +1 -0
  156. package/src/core/images/fastest-implementation-2023.svg +1 -0
  157. package/src/core/images/high-performer-2022.png +0 -0
  158. package/src/core/images/high-performer-2023.svg +1 -0
  159. package/src/core/images/highest-user-adoption-2022.png +0 -0
  160. package/src/core/images/highest-user-adoption-2023.svg +1 -0
  161. package/src/core/images/users-love-us-2022.png +0 -0
  162. package/src/core/styles/buttons.css +5 -5
  163. package/src/core/styles/forms.css +5 -5
  164. package/src/core/styles/properties.css +155 -45
  165. package/src/core/styles/text.css +63 -45
  166. package/src/core/utils/syntax-highlighter-registry.js +63 -0
  167. package/src/core/utils/syntax-highlighter.css +71 -0
  168. package/src/core/utils/syntax-highlighter.js +103 -0
  169. package/tailwind.config.js +144 -49
  170. package/core/Meganav/component.js.LICENSE.txt +0 -7
  171. package/core/MeganavSearchAutocomplete/component.js.LICENSE.txt +0 -7
  172. package/core/Notice/component.js.LICENSE.txt +0 -9
  173. /package/src/core/{MeganavContentPlatform → DropdownMenu}/component.js +0 -0
@@ -1,14 +1,34 @@
1
1
  @layer components {
2
2
  .ui-footer-col-title {
3
- @apply text-overline2 p-menu-row-title font-normal uppercase tracking-widen-0.1;
3
+ @apply font-mono text-overline2 p-menu-row-title font-medium uppercase tracking-widen-0.16;
4
4
  }
5
5
 
6
6
  .ui-footer-menu-row-link {
7
- @apply text-menu3 text-cool-black font-light hover:text-gui-hover block;
7
+ @apply text-menu3 text-cool-black font-sans font-medium hover:text-gui-hover block;
8
8
  }
9
9
 
10
10
  .ui-footer-link {
11
- @apply text-gui-default hover:text-gui-hover hover:underline text-menu3 font-light;
11
+ @apply text-gui-default hover:text-gui-hover text-menu3 font-sans font-medium;
12
+ }
13
+
14
+ .ui-footer-compliance-text {
15
+ font-size: 12px;
16
+ }
17
+
18
+ .ui-footer-tick-icon {
19
+ min-width: 1.5rem;
20
+ }
21
+
22
+ @media (max-width: 1040px) {
23
+ .ui-footer-bottom-links {
24
+ @apply pb-40;
25
+ }
26
+ }
27
+
28
+ @media screen {
29
+ .ui-footer-glassdoor {
30
+ display: none;
31
+ }
12
32
  }
13
33
  }
14
34
 
@@ -1 +1 @@
1
- !function(e,o){"object"==typeof exports&&"object"==typeof module?module.exports=o():"function"==typeof define&&define.amd?define([],o):"object"==typeof exports?exports.AblyUi=o():(e.AblyUi=e.AblyUi||{},e.AblyUi.Core=e.AblyUi.Core||{},e.AblyUi.Core.Footer=o())}(this,(function(){return(()=>{"use strict";var e={};return e.default})()}));
1
+ !function(e,o){"object"==typeof exports&&"object"==typeof module?module.exports=o():"function"==typeof define&&define.amd?define([],o):"object"==typeof exports?exports.AblyUi=o():(e.AblyUi=e.AblyUi||{},e.AblyUi.Core=e.AblyUi.Core||{},e.AblyUi.Core.Footer=o())}(this,(()=>(()=>{"use strict";var e={};return e.default})()));
package/core/Footer.jsx CHANGED
@@ -1,26 +1,26 @@
1
1
  (function webpackUniversalModuleDefinition(root, factory) {
2
2
  if(typeof exports === 'object' && typeof module === 'object')
3
- module.exports = factory(require("react"));
3
+ module.exports = factory(require("react"), require("prop-types"));
4
4
  else if(typeof define === 'function' && define.amd)
5
- define([], factory);
5
+ define([, ], factory);
6
6
  else {
7
- var a = typeof exports === 'object' ? factory(require("react")) : factory(root[undefined]);
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__) {
10
+ })(this, (__WEBPACK_EXTERNAL_MODULE__5225__, __WEBPACK_EXTERNAL_MODULE__6073__) => {
11
11
  return /******/ (() => { // webpackBootstrap
12
+ /******/ "use strict";
12
13
  /******/ var __webpack_modules__ = ({
13
14
 
14
15
  /***/ 9008:
15
16
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
16
17
 
17
- "use strict";
18
18
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
19
19
  /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
20
20
  /* harmony export */ });
21
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9281);
21
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5225);
22
22
  /* 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__(5697);
23
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6073);
24
24
  /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_1__);
25
25
  var _excluded = ["name", "size", "color", "additionalCSS"];
26
26
 
@@ -64,122 +64,17 @@ Icon.propTypes = {
64
64
 
65
65
  /***/ }),
66
66
 
67
- /***/ 2703:
68
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
69
-
70
- "use strict";
71
- /**
72
- * Copyright (c) 2013-present, Facebook, Inc.
73
- *
74
- * This source code is licensed under the MIT license found in the
75
- * LICENSE file in the root directory of this source tree.
76
- */
77
-
78
-
79
-
80
- var ReactPropTypesSecret = __webpack_require__(414);
81
-
82
- function emptyFunction() {}
83
- function emptyFunctionWithReset() {}
84
- emptyFunctionWithReset.resetWarningCache = emptyFunction;
85
-
86
- module.exports = function() {
87
- function shim(props, propName, componentName, location, propFullName, secret) {
88
- if (secret === ReactPropTypesSecret) {
89
- // It is still safe when called from React.
90
- return;
91
- }
92
- var err = new Error(
93
- 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
94
- 'Use PropTypes.checkPropTypes() to call them. ' +
95
- 'Read more at http://fb.me/use-check-prop-types'
96
- );
97
- err.name = 'Invariant Violation';
98
- throw err;
99
- };
100
- shim.isRequired = shim;
101
- function getShim() {
102
- return shim;
103
- };
104
- // Important!
105
- // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.
106
- var ReactPropTypes = {
107
- array: shim,
108
- bool: shim,
109
- func: shim,
110
- number: shim,
111
- object: shim,
112
- string: shim,
113
- symbol: shim,
114
-
115
- any: shim,
116
- arrayOf: getShim,
117
- element: shim,
118
- elementType: shim,
119
- instanceOf: getShim,
120
- node: shim,
121
- objectOf: getShim,
122
- oneOf: getShim,
123
- oneOfType: getShim,
124
- shape: getShim,
125
- exact: getShim,
126
-
127
- checkPropTypes: emptyFunctionWithReset,
128
- resetWarningCache: emptyFunction
129
- };
130
-
131
- ReactPropTypes.PropTypes = ReactPropTypes;
132
-
133
- return ReactPropTypes;
134
- };
135
-
136
-
137
- /***/ }),
138
-
139
- /***/ 5697:
140
- /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
141
-
142
- /**
143
- * Copyright (c) 2013-present, Facebook, Inc.
144
- *
145
- * This source code is licensed under the MIT license found in the
146
- * LICENSE file in the root directory of this source tree.
147
- */
148
-
149
- if (false) { var throwOnDirectAccess, ReactIs; } else {
150
- // By explicitly using `prop-types` you are opting into new production behavior.
151
- // http://fb.me/prop-types-in-prod
152
- module.exports = __webpack_require__(2703)();
153
- }
154
-
155
-
156
- /***/ }),
157
-
158
- /***/ 414:
67
+ /***/ 6073:
159
68
  /***/ ((module) => {
160
69
 
161
- "use strict";
162
- /**
163
- * Copyright (c) 2013-present, Facebook, Inc.
164
- *
165
- * This source code is licensed under the MIT license found in the
166
- * LICENSE file in the root directory of this source tree.
167
- */
168
-
169
-
170
-
171
- var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
172
-
173
- module.exports = ReactPropTypesSecret;
174
-
70
+ module.exports = __WEBPACK_EXTERNAL_MODULE__6073__;
175
71
 
176
72
  /***/ }),
177
73
 
178
- /***/ 9281:
74
+ /***/ 5225:
179
75
  /***/ ((module) => {
180
76
 
181
- "use strict";
182
- module.exports = __WEBPACK_EXTERNAL_MODULE__9281__;
77
+ module.exports = __WEBPACK_EXTERNAL_MODULE__5225__;
183
78
 
184
79
  /***/ })
185
80
 
@@ -252,9 +147,8 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__9281__;
252
147
  /******/
253
148
  /************************************************************************/
254
149
  var __webpack_exports__ = {};
255
- // This entry need to be wrapped in an IIFE because it need to be in strict mode.
150
+ // This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.
256
151
  (() => {
257
- "use strict";
258
152
  // ESM COMPAT FLAG
259
153
  __webpack_require__.r(__webpack_exports__);
260
154
 
@@ -264,11 +158,11 @@ __webpack_require__.d(__webpack_exports__, {
264
158
  });
265
159
 
266
160
  // EXTERNAL MODULE: external {"commonjs":"react","commonjs2":"react"}
267
- var external_commonjs_react_commonjs2_react_ = __webpack_require__(9281);
161
+ var external_commonjs_react_commonjs2_react_ = __webpack_require__(5225);
268
162
  var external_commonjs_react_commonjs2_react_default = /*#__PURE__*/__webpack_require__.n(external_commonjs_react_commonjs2_react_);
269
- // EXTERNAL MODULE: ./node_modules/prop-types/index.js
270
- var prop_types = __webpack_require__(5697);
271
- var prop_types_default = /*#__PURE__*/__webpack_require__.n(prop_types);
163
+ // EXTERNAL MODULE: external {"commonjs":"prop-types","commonjs2":"prop-types"}
164
+ var external_commonjs_prop_types_commonjs2_prop_types_ = __webpack_require__(6073);
165
+ var external_commonjs_prop_types_commonjs2_prop_types_default = /*#__PURE__*/__webpack_require__.n(external_commonjs_prop_types_commonjs2_prop_types_);
272
166
  // EXTERNAL MODULE: ./src/core/Icon/component.jsx
273
167
  var component = __webpack_require__(9008);
274
168
  ;// CONCATENATED MODULE: ./src/core/url-base.js
@@ -294,10 +188,10 @@ function Footer(_ref) {
294
188
  };
295
189
 
296
190
  return /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("footer", {
297
- className: "bg-light-grey font-sans antialiased",
191
+ className: "bg-light-grey font-sans antialiased leading-normal",
298
192
  "data-id": "footer"
299
193
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
300
- 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"
194
+ 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"
301
195
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
302
196
  className: "col-span-full md:col-span-2"
303
197
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
@@ -307,17 +201,17 @@ function Footer(_ref) {
307
201
  src: paths.ablyStack,
308
202
  alt: "Ably homepage"
309
203
  }), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("h2", {
310
- className: "text-overline2 col-span-full font-medium uppercase tracking-widen-0.1"
204
+ className: "text-overline2 font-mono font-bold col-span-full uppercase tracking-widen-0.16"
311
205
  }, "The Ably Platform")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
312
- className: "grid grid-cols-4"
206
+ className: "md:col-span-4 md:w-3/4 xs:w-3/5 w-full"
313
207
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("p", {
314
- className: "text-p3 py-16 font-medium p-menu-row-snug col-span-3"
208
+ className: "font-sans text-p3 py-16 font-bold p-menu-row-snug"
315
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", {
316
- 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"
210
+ className: "grid grid-cols-1"
317
211
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
318
212
  className: "p-menu-row-snug"
319
213
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
320
- href: absUrl("/pub-sub-messaging"),
214
+ href: absUrl("/solutions/channels"),
321
215
  className: "ui-footer-menu-row-link"
322
216
  }, "Pub/sub messaging")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
323
217
  className: "p-menu-row-snug"
@@ -334,13 +228,8 @@ function Footer(_ref) {
334
228
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
335
229
  href: absUrl("/protocols"),
336
230
  className: "ui-footer-menu-row-link"
337
- }, "Multiple protocol messaging")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
338
- className: "p-menu-row-snug"
339
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
340
- href: absUrl("/hub"),
341
- className: "ui-footer-menu-row-link"
342
- }, "Streaming data sources")))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
343
- className: "col-span-full sm:col-span-3 md:col-span-1"
231
+ }, "Multiple protocol messaging")))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
232
+ className: "col-span-full xs:col-span-3 md:col-span-1"
344
233
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("h2", {
345
234
  className: "ui-footer-col-title"
346
235
  }, "Ably is for"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("ul", null, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
@@ -375,11 +264,6 @@ function Footer(_ref) {
375
264
  className: "ui-footer-menu-row-link"
376
265
  }, "Healthcare")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
377
266
  className: "p-menu-row-snug"
378
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
379
- href: absUrl("/hub"),
380
- className: "ui-footer-menu-row-link"
381
- }, "Streaming data sources")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
382
- className: "p-menu-row-snug"
383
267
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
384
268
  href: absUrl("/solutions/ecommerce-and-retail"),
385
269
  className: "ui-footer-menu-row-link"
@@ -399,7 +283,7 @@ function Footer(_ref) {
399
283
  href: absUrl("/solutions/iot-and-connected-devices"),
400
284
  className: "ui-footer-menu-row-link"
401
285
  }, "IoT & Connected Devices")))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
402
- className: "col-span-full sm:col-span-3 md:col-span-1"
286
+ className: "col-span-full xs:col-span-3 md:col-span-1"
403
287
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("h2", {
404
288
  className: "ui-footer-col-title"
405
289
  }, "Developers"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("ul", null, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
@@ -433,18 +317,19 @@ function Footer(_ref) {
433
317
  href: absUrl("/download"),
434
318
  className: "ui-footer-menu-row-link"
435
319
  }, "SDKs")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
436
- className: "p-menu-row-snug flex items-center"
320
+ className: "p-menu-row-snug flex items-center -mt-4"
437
321
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
438
322
  className: "pr-8 ui-footer-menu-row-link",
439
323
  href: "https://status.ably.com/"
440
324
  }, "System status"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("iframe", {
441
- className: "w-24 h-24 mt-4",
325
+ className: "w-20 h-20 mb-2",
442
326
  src: "https://status.ably.com/embed/icon",
443
- allowtransparency: "true",
327
+ allowTransparency: true,
444
328
  frameBorder: "0",
445
- scrolling: "no"
329
+ scrolling: "no",
330
+ title: "System Status"
446
331
  })))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
447
- className: "col-span-full sm:col-span-3 md:col-span-1"
332
+ className: "col-span-full xs:col-span-3 md:col-span-1"
448
333
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("h2", {
449
334
  className: "ui-footer-col-title"
450
335
  }, "WHY ABLY"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("ul", null, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
@@ -478,7 +363,7 @@ function Footer(_ref) {
478
363
  href: absUrl("/integrations"),
479
364
  className: "ui-footer-menu-row-link"
480
365
  }, "Third-party integrations")))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
481
- className: "col-span-full sm:col-span-3 md:col-span-1"
366
+ className: "col-span-full xs:col-span-3 md:col-span-1"
482
367
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("h2", {
483
368
  className: "ui-footer-col-title"
484
369
  }, "ABOUT"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("ul", null, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", {
@@ -519,85 +404,180 @@ function Footer(_ref) {
519
404
  }, "Contact us"))))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
520
405
  className: "max-w-screen-xl ui-grid-px mx-auto"
521
406
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("hr", {
522
- className: "border-t border-mid-grey"
407
+ className: "border-t border-mid-grey my-0"
523
408
  })), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
524
- 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"
409
+ className: "max-w-screen-xl mx-auto py-16 grid ui-grid-gap ui-grid-px sm:grid-cols-2"
525
410
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
526
- className: "flex flex-col flex-auto pb-40 ml-8 col-span-full md:col-span-1"
411
+ className: "md:flex md:items-center"
527
412
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
528
- className: "inline-flex"
529
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
530
- href: absUrl("/privacy"),
531
- className: "pr-24 ui-footer-link"
532
- }, "Cookies"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
533
- href: absUrl("/legals"),
534
- className: "pr-24 ui-footer-link"
535
- }, "Legals"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
536
- href: absUrl("/data-protection"),
537
- className: "pr-24 ui-footer-link"
538
- }, "Data Protection"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
539
- href: absUrl("/privacy"),
540
- className: "ui-footer-link"
541
- }, "Privacy")), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
542
- className: "pt-32 flex items-center"
413
+ className: "flex flex-col md:flex-row flex-auto ml-8 sm:col-span-1 md:col-span-2"
414
+ }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
415
+ className: ""
416
+ }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
417
+ className: "flex pb-24"
543
418
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
544
419
  className: "h-24 pr-24 text-cool-black hover:text-icon-twitter",
545
- href: "https://twitter.com/ablyrealtime"
546
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement(component.default, {
547
- name: "twitter",
420
+ href: "https://twitter.com/ablyrealtime",
421
+ title: "Ably on X"
422
+ }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement(component["default"], {
423
+ name: "icon-social-x",
548
424
  size: "1.5rem"
549
425
  })), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
550
426
  className: "h-24 pr-24 text-cool-black hover:text-icon-linkedin",
551
- href: "https://www.linkedin.com/company/ably-realtime"
552
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement(component.default, {
427
+ href: "https://www.linkedin.com/company/ably-realtime",
428
+ title: "Ably on LinkedIn"
429
+ }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement(component["default"], {
553
430
  name: "linkedin",
554
431
  size: "1.5rem"
555
432
  })), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
556
433
  className: "h-24 pr-24 text-cool-black hover:text-icon-github",
557
- href: "https://github.com/ably/"
558
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement(component.default, {
434
+ href: "https://github.com/ably/",
435
+ title: "Ably on Github"
436
+ }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement(component["default"], {
559
437
  name: "github",
560
438
  size: "1.5rem"
561
439
  })), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
562
440
  className: "h-24 pr-24 text-cool-black hover:text-icon-discord",
563
- href: "https://discord.gg/jwBPhEZ9g5"
564
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement(component.default, {
441
+ href: "https://discord.gg/jwBPhEZ9g5",
442
+ title: "Ably on Discord"
443
+ }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement(component["default"], {
565
444
  name: "discord",
566
445
  size: "1.5rem"
446
+ })))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
447
+ className: "xs:hidden sm:block ui-footer-glassdoor"
448
+ }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
449
+ 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"
450
+ }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
451
+ href: "https://www.glassdoor.co.uk/Overview/Working-at-Ably-EI_IE2184188.11,15.htm",
452
+ className: "h-24 text-cool-black hover:text-icon-glassdoor",
453
+ title: "Ably reviews on glassdoor"
454
+ }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement(component["default"], {
455
+ name: "glassdoor",
456
+ size: "1.5rem"
567
457
  })), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
568
- className: "border-l border-mid-grey h-40"
569
- }), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
570
- className: "flex flex-row pl-24 text-cool-black hover:text-icon-glassdoor",
571
- href: "https://www.glassdoor.co.uk/Overview/Working-at-Ably-EI_IE2184188.11,15.htm"
572
- }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement(component.default, {
458
+ className: "pl-16 text-menu3 font-sans font-medium"
459
+ }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("strong", {
460
+ className: "block font-medium"
461
+ }, "We're hiring!"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
462
+ href: "https://www.glassdoor.co.uk/Overview/Working-at-Ably-EI_IE2184188.11,15.htm",
463
+ className: "ui-footer-link"
464
+ }, "Learn more at Glassdoor"))))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
465
+ className: "xs:block sm:hidden"
466
+ }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
467
+ className: "border-t border-mid-grey w-full"
468
+ }), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
469
+ className: "flex py-24"
470
+ }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
471
+ className: "h-24 pr-16 text-cool-black hover:text-icon-glassdoor",
472
+ href: "https://www.glassdoor.co.uk/Overview/Working-at-Ably-EI_IE2184188.11,15.htm",
473
+ title: "Ably reviews on glassdoor"
474
+ }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement(component["default"], {
573
475
  name: "glassdoor",
574
476
  size: "1.5rem"
575
477
  })), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
576
- className: "pl-16 text-menu3 font-light"
478
+ className: "text-menu3 font-sans font-medium"
577
479
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("strong", {
578
480
  className: "block font-medium"
579
481
  }, "We're hiring!"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
580
482
  href: "https://www.glassdoor.co.uk/Overview/Working-at-Ably-EI_IE2184188.11,15.htm",
581
483
  className: "ui-footer-link"
582
- }, "Learn more"), "\xA0at Glassdoor"))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
583
- className: "md:text-right col-span-full md:col-span-1 ml-8 inline-flex md:ml-auto"
484
+ }, "Learn more at Glassdoor"))))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
485
+ className: "col-span-full sm:col-span-1 inline-flex sm:ml-auto sm:items-center"
584
486
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("img", {
585
- className: "mr-24 w-96 h-96",
586
- src: paths.rocketList,
587
- alt: "Rocket List 2021"
487
+ className: "mr-24 h-80",
488
+ src: paths.highestUserAdoption,
489
+ alt: "Highest User Adoption 2023"
490
+ }), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("img", {
491
+ className: "mr-24 h-80",
492
+ src: paths.bestSupport,
493
+ alt: "Best Support 2023"
494
+ }), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("img", {
495
+ className: "mr-24 h-80",
496
+ src: paths.fastestImplementation,
497
+ alt: "Fastest Implementation 2023"
588
498
  }), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("img", {
589
- className: "w-96 h-96",
590
- src: paths.flexibleCompanies,
591
- alt: "Flexible Companies 2021"
592
- }))));
499
+ className: "mr-24 h-80",
500
+ src: paths.highestPerformer,
501
+ alt: "High Performer 2023"
502
+ }))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
503
+ className: "max-w-screen-xl ui-grid-px mx-auto"
504
+ }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("hr", {
505
+ className: "border-t border-mid-grey my-0"
506
+ })), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
507
+ 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"
508
+ }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
509
+ className: "flex ml-8 col-span-full sm:col-span-1 md:pb-16 items-center ui-footer-bottom-links"
510
+ }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
511
+ className: "flex"
512
+ }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
513
+ href: absUrl("/privacy"),
514
+ className: "pr-24 ui-footer-link"
515
+ }, "Cookies"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
516
+ href: absUrl("/legals"),
517
+ className: "pr-24 ui-footer-link"
518
+ }, "Legals"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
519
+ href: absUrl("/data-protection"),
520
+ className: "pr-24 ui-footer-link"
521
+ }, "Data Protection"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
522
+ href: absUrl("/privacy"),
523
+ className: "ui-footer-link"
524
+ }, "Privacy"))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
525
+ className: "xs:grid xs:grid-cols-2 sm:grid-cols-4 xs:pl-16 sm:pl-8 md:justify-items-end"
526
+ }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
527
+ className: "flex mr-24"
528
+ }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement(component["default"], {
529
+ name: "icon-gui-tick",
530
+ color: "text-active-orange",
531
+ size: "1.5rem",
532
+ additionalCSS: "bg-white rounded-full mr-12 ui-footer-tick-icon"
533
+ }), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", null, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("p", {
534
+ className: "ui-footer-compliance-text font-bold whitespace-nowrap"
535
+ }, "SOC 2 Type 2"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("p", {
536
+ className: "ui-footer-compliance-text font-medium mb-24"
537
+ }, "Certified"))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
538
+ className: "flex mr-24 md:col-start-2"
539
+ }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement(component["default"], {
540
+ name: "icon-gui-tick",
541
+ color: "text-active-orange",
542
+ size: "1.5rem",
543
+ additionalCSS: "bg-white rounded-full mr-12 ui-footer-tick-icon"
544
+ }), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", null, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("p", {
545
+ className: "ui-footer-compliance-text font-bold whitespace-nowrap"
546
+ }, "HIPAA"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("p", {
547
+ className: "ui-footer-compliance-text font-medium mb-24"
548
+ }, "Compliant"))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
549
+ className: "flex mr-24 md:col-start-3"
550
+ }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement(component["default"], {
551
+ name: "icon-gui-tick",
552
+ color: "text-active-orange",
553
+ size: "1.5rem",
554
+ additionalCSS: "bg-white rounded-full mr-12 ui-footer-tick-icon"
555
+ }), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", null, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("p", {
556
+ className: "ui-footer-compliance-text font-bold whitespace-nowrap"
557
+ }, "EU GDPR"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("p", {
558
+ className: "ui-footer-compliance-text font-medium mb-24"
559
+ }, "Certified"))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
560
+ className: "flex mr-24 md:col-start-4"
561
+ }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement(component["default"], {
562
+ name: "icon-gui-tick",
563
+ color: "text-active-orange",
564
+ size: "1.5rem",
565
+ additionalCSS: "bg-white rounded-full mr-12 ui-footer-tick-icon"
566
+ }), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", null, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("p", {
567
+ className: "ui-footer-compliance-text font-bold whitespace-nowrap"
568
+ }, "256-bit AES"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("p", {
569
+ className: "ui-footer-compliance-text font-medium mb-24"
570
+ }, "Encryption"))))));
593
571
  }
594
572
  Footer.propTypes = {
595
- paths: prop_types_default().shape({
596
- ablyStack: (prop_types_default()).string,
597
- rocketList: (prop_types_default()).string,
598
- flexibleCompanies: (prop_types_default()).string
573
+ paths: external_commonjs_prop_types_commonjs2_prop_types_default().shape({
574
+ ablyStack: (external_commonjs_prop_types_commonjs2_prop_types_default()).string,
575
+ highestPerformer: (external_commonjs_prop_types_commonjs2_prop_types_default()).string,
576
+ highestUserAdoption: (external_commonjs_prop_types_commonjs2_prop_types_default()).string,
577
+ bestSupport: (external_commonjs_prop_types_commonjs2_prop_types_default()).string,
578
+ fastestImplementation: (external_commonjs_prop_types_commonjs2_prop_types_default()).string
599
579
  }),
600
- urlBase: (prop_types_default()).string
580
+ urlBase: (external_commonjs_prop_types_commonjs2_prop_types_default()).string
601
581
  };
602
582
  })();
603
583
 
@@ -1 +1 @@
1
- !function(e,o){"object"==typeof exports&&"object"==typeof module?module.exports=o():"function"==typeof define&&define.amd?define([],o):"object"==typeof exports?exports.AblyUi=o():(e.AblyUi=e.AblyUi||{},e.AblyUi.Core=e.AblyUi.Core||{},e.AblyUi.Core.Icon=o())}(this,(function(){return{}.default}));
1
+ !function(e,o){"object"==typeof exports&&"object"==typeof module?module.exports=o():"function"==typeof define&&define.amd?define([],o):"object"==typeof exports?exports.AblyUi=o():(e.AblyUi=e.AblyUi||{},e.AblyUi.Core=e.AblyUi.Core||{},e.AblyUi.Core.Icon=o())}(this,(()=>({}.default)));