@ably/ui 8.7.0-dev.2b71529 → 8.7.0-dev.33117ed

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 (59) hide show
  1. package/core/Code/component.css +0 -2
  2. package/core/FeatureFooter.jsx +17 -0
  3. package/core/FeaturedLink/component.css +1 -1
  4. package/core/Footer/component.css +3 -3
  5. package/core/Footer.jsx +15 -25
  6. package/core/Icon/component.css +1 -0
  7. package/core/Meganav/component.css +7 -7
  8. package/core/Meganav/component.json +1 -1
  9. package/core/Meganav.jsx +46 -58
  10. package/core/MeganavContentDevelopers.jsx +13 -1
  11. package/core/MeganavContentPlatform/component.js +1 -1
  12. package/core/MeganavContentPlatform.jsx +166 -85
  13. package/core/MeganavContentProducts/component.js +1 -0
  14. package/core/MeganavContentProducts.jsx +333 -0
  15. package/core/MeganavContentUseCases.jsx +4 -4
  16. package/core/MeganavContentWhyAbly/component.js +1 -22
  17. package/core/MeganavContentWhyAbly.jsx +349 -2170
  18. package/core/MeganavItemsDesktop.jsx +2 -2
  19. package/core/MeganavItemsMobile.jsx +1 -1
  20. package/core/Notice/component.css +1 -1
  21. package/core/Notice.jsx +2 -2
  22. package/core/sprites.svg +27 -0
  23. package/core/styles.css +80 -117
  24. package/package.json +1 -1
  25. package/src/core/FeaturedLink/component.css +1 -1
  26. package/src/core/Footer/component.css +3 -3
  27. package/src/core/Footer/component.html.erb +14 -20
  28. package/src/core/Footer/component.jsx +14 -24
  29. package/src/core/Meganav/component.css +7 -7
  30. package/src/core/Meganav/component.json +1 -1
  31. package/src/core/Meganav/component.jsx +2 -2
  32. package/src/core/Meganav/component.rb +4 -4
  33. package/src/core/MeganavContentDevelopers/component.html.erb +9 -0
  34. package/src/core/MeganavContentDevelopers/component.jsx +9 -0
  35. package/src/core/{MeganavContentPlatform → MeganavContentProducts}/component.html.erb +16 -34
  36. package/src/core/{MeganavContentPlatform → MeganavContentProducts}/component.jsx +19 -40
  37. package/src/core/{MeganavContentPlatform → MeganavContentProducts}/component.rb +1 -1
  38. package/src/core/MeganavContentUseCases/component.html.erb +4 -4
  39. package/src/core/MeganavContentUseCases/component.jsx +4 -4
  40. package/src/core/MeganavItemsDesktop/component.jsx +1 -1
  41. package/src/core/MeganavItemsDesktop/component.rb +1 -1
  42. package/src/core/Notice/component.css +1 -1
  43. package/src/core/Notice/component.html.erb +2 -2
  44. package/src/core/Notice/component.jsx +2 -2
  45. package/src/core/icons/icon-display-asset-tracking-col.svg +18 -0
  46. package/src/core/icons/icon-display-examples-col.svg +11 -0
  47. package/src/core/styles/buttons.css +5 -5
  48. package/src/core/styles/forms.css +5 -5
  49. package/src/core/styles/properties.css +31 -49
  50. package/src/core/styles/text.css +39 -58
  51. package/src/core/utils/syntax-highlighter.css +0 -2
  52. package/tailwind.config.js +25 -41
  53. package/core/Meganav/component.js.LICENSE.txt +0 -7
  54. package/core/MeganavSearchAutocomplete/component.js.LICENSE.txt +0 -7
  55. package/core/fonts/jetBrains-mono.css +0 -3
  56. package/core/fonts/manrope.css +0 -3
  57. package/src/core/fonts/jetBrains-mono.css +0 -3
  58. package/src/core/fonts/manrope.css +0 -3
  59. /package/src/core/{MeganavContentPlatform → MeganavContentProducts}/component.js +0 -0
@@ -0,0 +1,333 @@
1
+ (function webpackUniversalModuleDefinition(root, factory) {
2
+ if(typeof exports === 'object' && typeof module === 'object')
3
+ module.exports = factory(require("react"), require("prop-types"));
4
+ else if(typeof define === 'function' && define.amd)
5
+ define([, ], factory);
6
+ else {
7
+ var a = typeof exports === 'object' ? factory(require("react"), require("prop-types")) : factory(root[undefined], root[undefined]);
8
+ for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];
9
+ }
10
+ })(this, (__WEBPACK_EXTERNAL_MODULE__5225__, __WEBPACK_EXTERNAL_MODULE__6073__) => {
11
+ return /******/ (() => { // webpackBootstrap
12
+ /******/ "use strict";
13
+ /******/ var __webpack_modules__ = ({
14
+
15
+ /***/ 5751:
16
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
17
+
18
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
19
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
20
+ /* harmony export */ });
21
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5225);
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__(6073);
24
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_1__);
25
+ /* harmony import */ var _Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(9008);
26
+
27
+
28
+
29
+
30
+ var FeaturedLink = function FeaturedLink(_ref) {
31
+ var url = _ref.url,
32
+ _ref$textSize = _ref.textSize,
33
+ textSize = _ref$textSize === void 0 ? "text-menu3" : _ref$textSize,
34
+ _ref$iconColor = _ref.iconColor,
35
+ iconColor = _ref$iconColor === void 0 ? "text-cool-black" : _ref$iconColor,
36
+ _ref$flush = _ref.flush,
37
+ flush = _ref$flush === void 0 ? false : _ref$flush,
38
+ children = _ref.children;
39
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
40
+ href: url,
41
+ className: "ui-featured-link ".concat(textSize, " ").concat(flush ? "" : "py-8", " "),
42
+ style: {
43
+ "--featured-link-icon-size": "var(".concat(textSize.replace("text", "--fs"), ")")
44
+ }
45
+ }, children, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__["default"], {
46
+ name: "icon-gui-link-arrow",
47
+ size: "calc(var(--featured-link-icon-size) * 1.25)",
48
+ color: iconColor,
49
+ additionalCSS: "ui-featured-link-icon"
50
+ }));
51
+ };
52
+
53
+ FeaturedLink.propTypes = {
54
+ url: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
55
+ children: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().node),
56
+ textSize: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
57
+ iconColor: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
58
+ flush: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().bool)
59
+ };
60
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (FeaturedLink);
61
+
62
+ /***/ }),
63
+
64
+ /***/ 9008:
65
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
66
+
67
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
68
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
69
+ /* harmony export */ });
70
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5225);
71
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
72
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6073);
73
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_1__);
74
+ var _excluded = ["name", "size", "color", "additionalCSS"];
75
+
76
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
77
+
78
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
79
+
80
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
81
+
82
+
83
+
84
+
85
+ var Icon = function Icon(_ref) {
86
+ var name = _ref.name,
87
+ _ref$size = _ref.size,
88
+ size = _ref$size === void 0 ? "0.75rem" : _ref$size,
89
+ _ref$color = _ref.color,
90
+ color = _ref$color === void 0 ? "" : _ref$color,
91
+ _ref$additionalCSS = _ref.additionalCSS,
92
+ additionalCSS = _ref$additionalCSS === void 0 ? "" : _ref$additionalCSS,
93
+ additionalAttributes = _objectWithoutProperties(_ref, _excluded);
94
+
95
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
96
+ className: "".concat(color, " ").concat(additionalCSS),
97
+ style: {
98
+ width: size,
99
+ height: size
100
+ }
101
+ }, additionalAttributes), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("use", {
102
+ xlinkHref: "#sprite-".concat(name)
103
+ }));
104
+ };
105
+
106
+ Icon.propTypes = {
107
+ name: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string.isRequired),
108
+ size: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
109
+ color: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
110
+ additionalCSS: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string)
111
+ };
112
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Icon);
113
+
114
+ /***/ }),
115
+
116
+ /***/ 6073:
117
+ /***/ ((module) => {
118
+
119
+ module.exports = __WEBPACK_EXTERNAL_MODULE__6073__;
120
+
121
+ /***/ }),
122
+
123
+ /***/ 5225:
124
+ /***/ ((module) => {
125
+
126
+ module.exports = __WEBPACK_EXTERNAL_MODULE__5225__;
127
+
128
+ /***/ })
129
+
130
+ /******/ });
131
+ /************************************************************************/
132
+ /******/ // The module cache
133
+ /******/ var __webpack_module_cache__ = {};
134
+ /******/
135
+ /******/ // The require function
136
+ /******/ function __webpack_require__(moduleId) {
137
+ /******/ // Check if module is in cache
138
+ /******/ var cachedModule = __webpack_module_cache__[moduleId];
139
+ /******/ if (cachedModule !== undefined) {
140
+ /******/ return cachedModule.exports;
141
+ /******/ }
142
+ /******/ // Create a new module (and put it into the cache)
143
+ /******/ var module = __webpack_module_cache__[moduleId] = {
144
+ /******/ // no module.id needed
145
+ /******/ // no module.loaded needed
146
+ /******/ exports: {}
147
+ /******/ };
148
+ /******/
149
+ /******/ // Execute the module function
150
+ /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
151
+ /******/
152
+ /******/ // Return the exports of the module
153
+ /******/ return module.exports;
154
+ /******/ }
155
+ /******/
156
+ /************************************************************************/
157
+ /******/ /* webpack/runtime/compat get default export */
158
+ /******/ (() => {
159
+ /******/ // getDefaultExport function for compatibility with non-harmony modules
160
+ /******/ __webpack_require__.n = (module) => {
161
+ /******/ var getter = module && module.__esModule ?
162
+ /******/ () => (module['default']) :
163
+ /******/ () => (module);
164
+ /******/ __webpack_require__.d(getter, { a: getter });
165
+ /******/ return getter;
166
+ /******/ };
167
+ /******/ })();
168
+ /******/
169
+ /******/ /* webpack/runtime/define property getters */
170
+ /******/ (() => {
171
+ /******/ // define getter functions for harmony exports
172
+ /******/ __webpack_require__.d = (exports, definition) => {
173
+ /******/ for(var key in definition) {
174
+ /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
175
+ /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
176
+ /******/ }
177
+ /******/ }
178
+ /******/ };
179
+ /******/ })();
180
+ /******/
181
+ /******/ /* webpack/runtime/hasOwnProperty shorthand */
182
+ /******/ (() => {
183
+ /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
184
+ /******/ })();
185
+ /******/
186
+ /******/ /* webpack/runtime/make namespace object */
187
+ /******/ (() => {
188
+ /******/ // define __esModule on exports
189
+ /******/ __webpack_require__.r = (exports) => {
190
+ /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
191
+ /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
192
+ /******/ }
193
+ /******/ Object.defineProperty(exports, '__esModule', { value: true });
194
+ /******/ };
195
+ /******/ })();
196
+ /******/
197
+ /************************************************************************/
198
+ var __webpack_exports__ = {};
199
+ // This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.
200
+ (() => {
201
+ __webpack_require__.r(__webpack_exports__);
202
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
203
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
204
+ /* harmony export */ });
205
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5225);
206
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
207
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6073);
208
+ /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_1__);
209
+ /* harmony import */ var _FeaturedLink_component_jsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(5751);
210
+
211
+
212
+
213
+
214
+ var MeganavContentProducts = function MeganavContentProducts(_ref) {
215
+ var paths = _ref.paths,
216
+ absUrl = _ref.absUrl;
217
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
218
+ className: "flex max-w-screen-xl mx-auto"
219
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
220
+ className: "ui-meganav-content-spacer bg-extra-light-grey"
221
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("section", {
222
+ className: "grid grid-cols-12 ui-grid-gap-x w-full"
223
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
224
+ className: "col-span-full md:col-span-4 py-24 lg:py-32 px-24 sm:px-32 md:pl-0 md:pr-24 bg-extra-light-grey"
225
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
226
+ className: "flex mb-20"
227
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("img", {
228
+ src: paths.ablyStack,
229
+ alt: "Ably homepage"
230
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
231
+ className: "ui-meganav-overline ml-24"
232
+ }, "The Ably Platform")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
233
+ className: "text-p2 font-medium text-cool-black mb-24",
234
+ style: {
235
+ maxWidth: "330px"
236
+ }
237
+ }, "Easily power any realtime experience in your application. No complex infrastructure to manage or provision. Just a simple API that handles everything realtime, and lets you focus on your code."), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_FeaturedLink_component_jsx__WEBPACK_IMPORTED_MODULE_2__["default"], {
238
+ url: absUrl("/platform"),
239
+ textSize: "text-p2"
240
+ }, "Explore how it works")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
241
+ className: "col-span-full md:col-span-4 pt-24 pb-8 md:py-24 lg:py-32 px-24 sm:px-32 md:px-0 bg-white"
242
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
243
+ className: "ui-meganav-overline",
244
+ id: "meganav-products-panel-list-examples"
245
+ }, "Products"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("ul", {
246
+ className: "mb-16",
247
+ "aria-labelledby": "meganav-products-panel-list-examples"
248
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
249
+ href: absUrl("/solutions/channels"),
250
+ className: "group ui-meganav-media"
251
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
252
+ className: "ui-meganav-media-heading"
253
+ }, "Pub/Sub Channels"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
254
+ className: "ui-meganav-media-copy"
255
+ }, "Build infinitely scalable realtime applications."))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
256
+ href: absUrl("/spaces"),
257
+ className: "group ui-meganav-media"
258
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
259
+ className: "ui-meganav-media-heading"
260
+ }, "Spaces (Beta)"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
261
+ className: "ui-meganav-media-copy"
262
+ }, "Create multi-user collaborative environments."))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
263
+ href: absUrl("/livesync"),
264
+ className: "group ui-meganav-media"
265
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
266
+ className: "ui-meganav-media-heading"
267
+ }, "LiveSync (Pre release)"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
268
+ className: "ui-meganav-media-copy"
269
+ }, "Keep clients in sync with any relational database."))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
270
+ className: "col-span-full md:col-span-4 pt-8 pb-24 md:py-24 lg:py-32 px-24 sm:px-32 md:px-0 bg-white"
271
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
272
+ className: "ui-meganav-overline",
273
+ id: "meganav-products-panel-list-our-technology"
274
+ }, "Technology"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("ul", {
275
+ className: "mb-16",
276
+ "aria-labelledby": "meganav-products-panel-list-our-technology"
277
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
278
+ href: absUrl("/four-pillars-of-dependability#performance"),
279
+ className: "ui-meganav-media group"
280
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
281
+ className: "ui-meganav-media-heading"
282
+ }, "Predictable performance"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
283
+ className: "ui-meganav-media-copy"
284
+ }, "A low-latency and high-throughput global network."))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
285
+ href: absUrl("/four-pillars-of-dependability#integrity"),
286
+ className: "ui-meganav-media group"
287
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
288
+ className: "ui-meganav-media-heading"
289
+ }, "Guaranteed ordering & delivery"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
290
+ className: "ui-meganav-media-copy"
291
+ }, "Data is delivered - in order - even after disconnections."))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
292
+ href: absUrl("/four-pillars-of-dependability#reliability"),
293
+ className: "ui-meganav-media group"
294
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
295
+ className: "ui-meganav-media-heading"
296
+ }, "Fault tolerant infrastructure"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
297
+ className: "ui-meganav-media-copy"
298
+ }, "Redundancy is built in at global and regional levels."))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
299
+ href: absUrl("/four-pillars-of-dependability#availability"),
300
+ className: "ui-meganav-media group"
301
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
302
+ className: "ui-meganav-media-heading"
303
+ }, "High scalability & availability"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
304
+ className: "ui-meganav-media-copy"
305
+ }, "Built for scale with legitimate 99.999% uptime SLAs."))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
306
+ href: absUrl("/network"),
307
+ className: "ui-meganav-media group"
308
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
309
+ className: "ui-meganav-media-heading"
310
+ }, "Global edge network"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
311
+ className: "ui-meganav-media-copy"
312
+ }, "An edge network of 15 core routing datacenters and 205+ PoPs.")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_FeaturedLink_component_jsx__WEBPACK_IMPORTED_MODULE_2__["default"], {
313
+ url: absUrl("/four-pillars-of-dependability"),
314
+ textSize: "text-p3"
315
+ }, "Explore Four Pillars of Dependability"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
316
+ className: "ui-meganav-content-spacer"
317
+ }));
318
+ };
319
+
320
+ MeganavContentProducts.propTypes = {
321
+ paths: prop_types__WEBPACK_IMPORTED_MODULE_1___default().shape({
322
+ ablyStack: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
323
+ iconSprites: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string)
324
+ }),
325
+ absUrl: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().func)
326
+ };
327
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (MeganavContentProducts);
328
+ })();
329
+
330
+ /******/ return __webpack_exports__;
331
+ /******/ })()
332
+ ;
333
+ });
@@ -238,18 +238,18 @@ var MeganavContentUseCases = function MeganavContentUseCases(_ref) {
238
238
  }, "Notifications"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
239
239
  className: "ui-meganav-media-copy"
240
240
  }, "Deliver cross-platform push notifications with a simple unified API.")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
241
- href: absUrl("/solutions/extend-kafka-to-the-edge"),
241
+ href: absUrl("/solutions/asset-tracking"),
242
242
  className: "ui-meganav-media-with-image group"
243
243
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__["default"], {
244
- name: "icon-display-kafka-at-the-edge-col",
244
+ name: "icon-display-asset-tracking-col",
245
245
  size: "2.5rem"
246
246
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
247
247
  className: "flex flex-col justify-center"
248
248
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
249
249
  className: "ui-meganav-media-heading"
250
- }, "Extend Kafka to the edge"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
250
+ }, "Asset Tracking (Beta)"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
251
251
  className: "ui-meganav-media-copy"
252
- }, "Reliably expand Kafka\u2019s event streaming beyond your private network.")))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
252
+ }, "Track assets in realtime with a solution optimised for last mile logistics.")))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
253
253
  className: "col-span-full md:col-span-4 pt-24 pb-0 md:py-24 lg:py-32 px-24 sm:px-32 md:px-0 bg-white"
254
254
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
255
255
  className: "ui-meganav-overline",
@@ -1,22 +1 @@
1
- (function webpackUniversalModuleDefinition(root, factory) {
2
- if(typeof exports === 'object' && typeof module === 'object')
3
- module.exports = factory();
4
- else if(typeof define === 'function' && define.amd)
5
- define([], factory);
6
- else if(typeof exports === 'object')
7
- exports["AblyUi"] = factory();
8
- else
9
- root["AblyUi"] = root["AblyUi"] || {}, root["AblyUi"]["Core"] = root["AblyUi"]["Core"] || {}, root["AblyUi"]["Core"]["MeganavContentWhyAbly"] = factory();
10
- })(this, function() {
11
- return /******/ (() => { // webpackBootstrap
12
- var __webpack_exports__ = {};
13
- /*!*****************************************************!*\
14
- !*** ./src/core/MeganavContentWhyAbly/component.js ***!
15
- \*****************************************************/
16
-
17
- __webpack_exports__ = __webpack_exports__.default;
18
- /******/ return __webpack_exports__;
19
- /******/ })()
20
- ;
21
- });
22
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9BYmx5VWkuQ29yZS5bbmFtZV0vd2VicGFjay91bml2ZXJzYWxNb2R1bGVEZWZpbml0aW9uIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSx1Q0FBdUMsdURBQXVEO0FBQzlGLENBQUM7QUFDRCxPIiwiZmlsZSI6ImNvcmUvTWVnYW5hdkNvbnRlbnRXaHlBYmx5L2NvbXBvbmVudC5qcyIsInNvdXJjZXNDb250ZW50IjpbIihmdW5jdGlvbiB3ZWJwYWNrVW5pdmVyc2FsTW9kdWxlRGVmaW5pdGlvbihyb290LCBmYWN0b3J5KSB7XG5cdGlmKHR5cGVvZiBleHBvcnRzID09PSAnb2JqZWN0JyAmJiB0eXBlb2YgbW9kdWxlID09PSAnb2JqZWN0Jylcblx0XHRtb2R1bGUuZXhwb3J0cyA9IGZhY3RvcnkoKTtcblx0ZWxzZSBpZih0eXBlb2YgZGVmaW5lID09PSAnZnVuY3Rpb24nICYmIGRlZmluZS5hbWQpXG5cdFx0ZGVmaW5lKFtdLCBmYWN0b3J5KTtcblx0ZWxzZSBpZih0eXBlb2YgZXhwb3J0cyA9PT0gJ29iamVjdCcpXG5cdFx0ZXhwb3J0c1tcIkFibHlVaVwiXSA9IGZhY3RvcnkoKTtcblx0ZWxzZVxuXHRcdHJvb3RbXCJBYmx5VWlcIl0gPSByb290W1wiQWJseVVpXCJdIHx8IHt9LCByb290W1wiQWJseVVpXCJdW1wiQ29yZVwiXSA9IHJvb3RbXCJBYmx5VWlcIl1bXCJDb3JlXCJdIHx8IHt9LCByb290W1wiQWJseVVpXCJdW1wiQ29yZVwiXVtcIk1lZ2FuYXZDb250ZW50V2h5QWJseVwiXSA9IGZhY3RvcnkoKTtcbn0pKHRoaXMsIGZ1bmN0aW9uKCkge1xucmV0dXJuICJdLCJzb3VyY2VSb290IjoiIn0=
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.MeganavContentWhyAbly=o())}(this,(function(){return{}.default}));