@ably/ui 8.1.1 → 8.2.1-dev.ade9a3d

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 (92) hide show
  1. package/core/.DS_Store +0 -0
  2. package/core/Meganav/component.css +7 -1
  3. package/core/Meganav/component.js +1 -1
  4. package/core/Meganav/component.json +4 -4
  5. package/core/Meganav.jsx +507 -360
  6. package/core/MeganavBlogPostsList/component.js +1 -1
  7. package/core/MeganavBlogPostsList.jsx +5 -3
  8. package/core/MeganavContentCompany/component.js +1 -0
  9. package/core/MeganavContentCompany.jsx +1513 -0
  10. package/core/MeganavContentDevelopers.jsx +80 -102
  11. package/core/MeganavContentPlatform.jsx +47 -30
  12. package/core/MeganavContentUseCases.jsx +128 -36
  13. package/core/MeganavContentWhyAbly/component.js +6 -1
  14. package/core/MeganavContentWhyAbly.jsx +3 -1468
  15. package/core/MeganavControlMobilePanelClose.jsx +7 -4
  16. package/core/MeganavItemsDesktop.jsx +6 -2
  17. package/core/MeganavItemsMobile.jsx +11 -6
  18. package/core/MeganavItemsSignedIn.jsx +1 -1
  19. package/core/MeganavSearch.jsx +1 -1
  20. package/core/MeganavSearchPanel.jsx +1 -1
  21. package/core/MeganavSearchSuggestions/component.js +1 -1
  22. package/core/Notice/component.js +1 -1
  23. package/core/fonts/.DS_Store +0 -0
  24. package/core/images/.DS_Store +0 -0
  25. package/core/images/icon-tech-aws.svg +4 -0
  26. package/core/scripts.js +1 -1
  27. package/core/sprites.svg +141 -0
  28. package/core/styles.css +4 -0
  29. package/package.json +1 -1
  30. package/{src/core/MeganavContentWhyAbly/component.js → preview/vendor/bundle/ruby/3.0.0/bundler/gems/ably-ui-abffd210ec0f/preview/log/.keep} +0 -0
  31. package/preview/vendor/bundle/ruby/3.0.0/bundler/gems/ably-ui-abffd210ec0f/preview/tmp/.keep +0 -0
  32. package/preview/vendor/bundle/ruby/3.0.0/bundler/gems/ably-ui-abffd210ec0f/preview/tmp/pids/.keep +0 -0
  33. package/src/.DS_Store +0 -0
  34. package/src/core/.DS_Store +0 -0
  35. package/src/core/Meganav/component.css +7 -1
  36. package/src/core/Meganav/component.json +4 -4
  37. package/src/core/Meganav/component.jsx +2 -2
  38. package/src/core/Meganav/component.rb +8 -4
  39. package/src/core/MeganavBlogPostsList/component.html.erb +3 -3
  40. package/src/core/MeganavBlogPostsList/component.js +2 -2
  41. package/src/core/MeganavBlogPostsList/component.jsx +3 -3
  42. package/src/core/MeganavContentCompany/component.html.erb +81 -0
  43. package/src/core/MeganavContentCompany/component.js +0 -0
  44. package/src/core/MeganavContentCompany/component.jsx +108 -0
  45. package/src/core/{MeganavContentWhyAbly → MeganavContentCompany}/component.rb +2 -1
  46. package/src/core/MeganavContentDevelopers/component.html.erb +101 -80
  47. package/src/core/MeganavContentDevelopers/component.jsx +102 -83
  48. package/src/core/MeganavContentPlatform/component.html.erb +95 -85
  49. package/src/core/MeganavContentPlatform/component.jsx +99 -92
  50. package/src/core/MeganavContentUseCases/component.html.erb +112 -83
  51. package/src/core/MeganavContentUseCases/component.jsx +114 -87
  52. package/src/core/MeganavControlMobilePanelClose/component.html.erb +4 -2
  53. package/src/core/MeganavControlMobilePanelClose/component.jsx +3 -2
  54. package/src/core/MeganavControlMobilePanelClose/component.rb +4 -1
  55. package/src/core/MeganavItemsDesktop/component.html.erb +2 -1
  56. package/src/core/MeganavItemsDesktop/component.jsx +2 -1
  57. package/src/core/MeganavItemsMobile/component.html.erb +1 -1
  58. package/src/core/MeganavItemsMobile/component.jsx +2 -1
  59. package/src/core/MeganavItemsMobile/component.rb +4 -0
  60. package/src/core/MeganavSearchPanel/component.html.erb +1 -1
  61. package/src/core/MeganavSearchPanel/component.jsx +1 -1
  62. package/src/core/MeganavSearchSuggestions/component.html.erb +2 -2
  63. package/src/core/MeganavSearchSuggestions/component.js +15 -5
  64. package/src/core/core.rb +4 -0
  65. package/src/core/fonts/.DS_Store +0 -0
  66. package/src/core/icons/icon-display-about-ably-col.svg +4 -0
  67. package/src/core/icons/icon-display-careers-col.svg +9 -0
  68. package/src/core/icons/icon-display-case-studies-col.svg +5 -0
  69. package/src/core/icons/icon-display-chat-stack-col.svg +4 -0
  70. package/src/core/icons/icon-display-chat-stack.svg +4 -0
  71. package/src/core/icons/icon-display-compare-tech-col.svg +9 -0
  72. package/src/core/icons/icon-display-customers-col.svg +15 -0
  73. package/src/core/icons/icon-display-docs-col.svg +7 -0
  74. package/src/core/icons/icon-display-lightbulb-col.svg +10 -0
  75. package/src/core/icons/icon-display-quickstart-guides-col.svg +8 -0
  76. package/src/core/icons/icon-display-resources-col.svg +21 -0
  77. package/src/core/icons/icon-display-sdks-col.svg +11 -0
  78. package/src/core/icons/icon-display-tutorials-demos-col.svg +25 -0
  79. package/src/core/icons/icon-display-virtual-events-col.svg +12 -0
  80. package/src/core/icons/icon-display-virtual-events.svg +12 -0
  81. package/src/core/images/.DS_Store +0 -0
  82. package/src/core/images/icon-tech-aws.svg +4 -0
  83. package/src/core/styles/layout.css +4 -0
  84. package/src/reset/.DS_Store +0 -0
  85. package/core/images/blog-thumb1.jpg +0 -0
  86. package/core/images/blog-thumb2.jpg +0 -0
  87. package/core/images/blog-thumb3.jpg +0 -0
  88. package/src/core/MeganavContentWhyAbly/component.html.erb +0 -70
  89. package/src/core/MeganavContentWhyAbly/component.jsx +0 -95
  90. package/src/core/images/blog-thumb1.jpg +0 -0
  91. package/src/core/images/blog-thumb2.jpg +0 -0
  92. package/src/core/images/blog-thumb3.jpg +0 -0
@@ -11,56 +11,6 @@
11
11
  return /******/ (() => { // webpackBootstrap
12
12
  /******/ var __webpack_modules__ = ({
13
13
 
14
- /***/ 5751:
15
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
16
-
17
- "use strict";
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__(9281);
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);
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
14
  /***/ 9008:
65
15
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
66
16
 
@@ -313,93 +263,114 @@ __webpack_require__.r(__webpack_exports__);
313
263
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
314
264
  /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(5697);
315
265
  /* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_1__);
316
- /* harmony import */ var _FeaturedLink_component_jsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(5751);
317
- /* harmony import */ var _Icon_component_jsx__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(9008);
318
-
266
+ /* harmony import */ var _Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(9008);
319
267
 
320
268
 
321
269
 
322
270
 
323
271
  var MeganavContentDevelopers = function MeganavContentDevelopers(_ref) {
324
272
  var absUrl = _ref.absUrl;
325
- return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("section", {
326
- className: "ui-meganav-content ui-grid-gap md:grid-cols-3"
327
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
328
- className: "ui-meganav-overline md:mb-8"
329
- }, "Documentation"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
330
- className: "mb-16"
331
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("form", {
332
- className: "relative",
333
- action: absUrl("/search"),
334
- method: "get"
335
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_3__.default, {
336
- name: "icon-gui-search",
337
- color: "text-cool-black",
338
- size: "1.5rem",
339
- additionalCSS: "absolute top-8 left-8 pt-1 mt-1"
340
- }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("input", {
341
- type: "search",
342
- name: "q",
343
- className: "ui-input pl-48",
344
- placeholder: "Search docs"
345
- }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
346
- className: "text-p1 font-medium text-cool-black mb-20"
347
- }, "Docs, quick start guides, tutorials, and API reference to help you start building with Ably\u2019s platform and APIs."), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_FeaturedLink_component_jsx__WEBPACK_IMPORTED_MODULE_2__.default, {
348
- url: absUrl("/docs")
349
- }, "Visit Documentation")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
273
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
274
+ className: "flex"
275
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
276
+ className: "ui-meganav-content-spacer"
277
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("section", {
278
+ className: "grid grid-cols-12 ui-grid-gap-x"
279
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
280
+ className: "col-span-full md:col-span-4 pt-24 md:py-24 lg:py-32 px-24 sm:px-32 md:pl-0 md:pr-24"
281
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
350
282
  className: "ui-meganav-overline uppercase",
351
283
  id: "meganav-developers-panel-explore"
352
- }, "EXPLORE"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("ul", {
284
+ }, "Explore"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("ul", {
353
285
  "aria-labelledby": "meganav-developers-panel-explore"
354
286
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
355
- href: absUrl("/integrations"),
356
- className: "ui-meganav-media group"
287
+ href: absUrl("/docs"),
288
+ className: "ui-meganav-media-with-image group"
289
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__.default, {
290
+ name: "icon-display-docs-col",
291
+ size: "2.5rem"
292
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
293
+ className: "flex flex-col justify-center"
357
294
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
358
295
  className: "ui-meganav-media-heading"
359
- }, "Third-party integrations & plugins"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
296
+ }, "Documentation"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
360
297
  className: "ui-meganav-media-copy"
361
- }, "Integrate and extend Ably with cloud services like AWS Kinesis."))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
362
- href: absUrl("/protocols"),
363
- className: "ui-meganav-media group"
298
+ }, "Technical guides to help you build with Ably.")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
299
+ href: absUrl("/docs/key-concepts"),
300
+ className: "ui-meganav-media-with-image group"
301
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__.default, {
302
+ name: "icon-display-lightbulb-col",
303
+ size: "2.5rem"
304
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
305
+ className: "flex flex-col justify-center"
364
306
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
365
307
  className: "ui-meganav-media-heading"
366
- }, "Multi-protocol messaging"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
308
+ }, "Concepts"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
367
309
  className: "ui-meganav-media-copy"
368
- }, "We support pub/sub over WebSockets, MQTT, SSE, and more."))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
369
- href: absUrl("/hub"),
370
- className: "ui-meganav-media group"
310
+ }, "Read about core Ably platform concepts.")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
311
+ href: absUrl("/docs/quick-start-guide"),
312
+ className: "ui-meganav-media-with-image group"
313
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__.default, {
314
+ name: "icon-display-quickstart-guides-col",
315
+ size: "2.5rem"
316
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
317
+ className: "flex flex-col justify-center"
318
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
319
+ className: "ui-meganav-media-heading"
320
+ }, "Quickstart guides"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
321
+ className: "ui-meganav-media-copy"
322
+ }, "Documentation to help you get up and running quickly.")))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
323
+ className: "col-span-full md:col-span-4 pb-8 md:py-24 lg:py-32 px-24 sm:px-32 md:px-0"
324
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("ul", {
325
+ className: "md:mt-40",
326
+ "aria-labelledby": "meganav-developers-panel-explore"
327
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
328
+ href: absUrl("/download"),
329
+ className: "ui-meganav-media-with-image group"
330
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__.default, {
331
+ name: "icon-display-sdks-col",
332
+ size: "2.5rem"
333
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
334
+ className: "flex flex-col justify-center"
371
335
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
372
336
  className: "ui-meganav-media-heading"
373
- }, "Streaming data sources"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
337
+ }, "SDKs"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
374
338
  className: "ui-meganav-media-copy"
375
- }, "Augment your apps with realtime updates like weather or transit."))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
376
- href: absUrl("/periodic-table-of-realtime"),
377
- className: "ui-meganav-media group"
339
+ }, "Download an SDK to help you build realtime apps faster.")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
340
+ href: absUrl("/tutorials"),
341
+ className: "ui-meganav-media-with-image group"
342
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__.default, {
343
+ name: "icon-display-tutorials-demos-col",
344
+ size: "2.5rem"
345
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
346
+ className: "flex flex-col justify-center"
378
347
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
379
348
  className: "ui-meganav-media-heading"
380
- }, "The Periodic Table of Realtime"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
349
+ }, "Tutorials & Demos"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
381
350
  className: "ui-meganav-media-copy"
382
- }, "A compendium for all things realtime and event-driven."))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
351
+ }, "Get stuck in with our hands-on resources. ")))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
352
+ 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"
353
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
383
354
  className: "ui-meganav-overline uppercase",
384
355
  id: "meganav-developers-panel-quick-links"
385
356
  }, "Quick links"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("ul", {
386
357
  "aria-labelledby": "meganav-developers-panel-quick-links"
387
358
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
388
- href: absUrl("/download"),
359
+ href: "https://discord.gg/jwBPhEZ9g5",
389
360
  className: "group ui-meganav-media py-12"
390
361
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
391
362
  className: "ui-meganav-media-heading"
392
- }, "Download an SDK"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
393
- href: "https://changelog.ably.com/",
363
+ }, "Discord"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
364
+ href: "https://github.com/ably",
394
365
  className: "group ui-meganav-media py-12"
395
366
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
396
367
  className: "ui-meganav-media-heading"
397
- }, "Platform changelog"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
398
- href: absUrl("/support"),
368
+ }, "Github"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
369
+ href: "https://changelog.ably.com/",
399
370
  className: "group ui-meganav-media py-12"
400
371
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
401
372
  className: "ui-meganav-media-heading"
402
- }, "Support & FAQs"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
373
+ }, "Changelog"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
403
374
  href: "https://status.ably.com/",
404
375
  className: "group ui-meganav-media py-12"
405
376
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
@@ -410,7 +381,14 @@ var MeganavContentDevelopers = function MeganavContentDevelopers(_ref) {
410
381
  frameBorder: "0",
411
382
  scrolling: "no",
412
383
  className: "w-24 h-24 ml-4 border-none pointer-events-none align-middle"
413
- })))))));
384
+ })))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
385
+ href: absUrl("/support"),
386
+ className: "group ui-meganav-media py-12"
387
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
388
+ className: "ui-meganav-media-heading"
389
+ }, "Support & FAQs")))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
390
+ className: "ui-meganav-content-spacer"
391
+ }));
414
392
  };
415
393
 
416
394
  MeganavContentDevelopers.propTypes = {
@@ -321,10 +321,14 @@ __webpack_require__.r(__webpack_exports__);
321
321
  var MeganavContentPlatform = function MeganavContentPlatform(_ref) {
322
322
  var paths = _ref.paths,
323
323
  absUrl = _ref.absUrl;
324
- return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("section", {
325
- className: "ui-meganav-content ui-grid-gap sm:grid-cols-2 md:grid-cols-3"
324
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
325
+ className: "flex"
326
326
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
327
- className: "sm:col-span-full md:col-span-1"
327
+ className: "ui-meganav-content-spacer bg-extra-light-grey"
328
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("section", {
329
+ className: "grid grid-cols-12 ui-grid-gap-x"
330
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
331
+ className: "col-span-full md:col-span-4 bg-extra-light-grey py-24 lg:py-32 px-24 sm:px-32 md:pl-0 md:pr-24"
328
332
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
329
333
  className: "flex mb-20"
330
334
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("img", {
@@ -336,49 +340,60 @@ var MeganavContentPlatform = function MeganavContentPlatform(_ref) {
336
340
  className: "text-p2 font-medium text-cool-black mb-8"
337
341
  }, "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, {
338
342
  url: absUrl("/platform")
339
- }, "Explore how it works")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
343
+ }, "Explore how it works")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
344
+ 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"
345
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
340
346
  className: "ui-meganav-overline",
341
- id: "meganav-platform-panel-list-our-features"
342
- }, "Our features"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("ul", {
343
- "aria-labelledby": "meganav-platform-panel-list-our-features"
347
+ id: "meganav-platform-panel-list-examples"
348
+ }, "Our Examples"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("ul", {
349
+ "aria-labelledby": "meganav-platform-panel-list-examples"
344
350
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
345
- href: absUrl("/pub-sub-messaging"),
351
+ href: absUrl("/examples/avatar-stack"),
346
352
  className: "group ui-meganav-media"
347
353
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
348
354
  className: "ui-meganav-media-heading"
349
- }, "Publish/subscribe messaging"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
355
+ }, "Avatar Stack"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
350
356
  className: "ui-meganav-media-copy"
351
- }, "Feature-rich pub/sub messaging to power any realtime requirement."))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
352
- href: absUrl("/push-notifications"),
357
+ }, "See who is connected in a digital space."))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
358
+ href: absUrl("/examples/emoji-reactions"),
353
359
  className: "ui-meganav-media group"
354
360
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
355
361
  className: "ui-meganav-media-heading"
356
- }, "Push notifications"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
362
+ }, "Emoji Reactions"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
357
363
  className: "ui-meganav-media-copy"
358
- }, "Deliver native notifications at scale with our unified API."))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
359
- href: absUrl("/integrations"),
364
+ }, "React with an emoji to a message."))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
365
+ href: absUrl("/examples/activity-feed"),
360
366
  className: "ui-meganav-media group"
361
367
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
362
368
  className: "ui-meganav-media-heading"
363
- }, "Third-party integrations"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
369
+ }, "Activity Feed"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
364
370
  className: "ui-meganav-media-copy"
365
- }, "Integrate and extend Ably with cloud services like AWS Kinesis."))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
366
- href: absUrl("/protocols"),
371
+ }, "Display a list of user actions in realtime."))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
372
+ href: absUrl("/examples/live-charts"),
367
373
  className: "ui-meganav-media group"
368
374
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
369
375
  className: "ui-meganav-media-heading"
370
- }, "Multi-protocol messaging"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
376
+ }, "Live Charts"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
371
377
  className: "ui-meganav-media-copy"
372
- }, "We support pub/sub over WebSockets, MQTT, SSE, and more."))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
373
- href: absUrl("/hub"),
378
+ }, "Visualise live metrics and data in a chart."))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
379
+ href: absUrl("/examples/live-cursors"),
374
380
  className: "ui-meganav-media group"
375
381
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
376
382
  className: "ui-meganav-media-heading"
377
- }, "Streaming data sources"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
383
+ }, "Live Cursors"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
378
384
  className: "ui-meganav-media-copy"
379
- }, "Augment your apps with realtime updates like weather or transit.")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_FeaturedLink_component_jsx__WEBPACK_IMPORTED_MODULE_2__.default, {
380
- url: absUrl("/platform")
381
- }, "Explore all platform features")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
385
+ }, "Track all cursors in realtime."))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
386
+ href: absUrl("/examples/typing-indicator"),
387
+ className: "ui-meganav-media group"
388
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
389
+ className: "ui-meganav-media-heading"
390
+ }, "Typing Indicator"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
391
+ className: "ui-meganav-media-copy"
392
+ }, "See when a user is typing a message.")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_FeaturedLink_component_jsx__WEBPACK_IMPORTED_MODULE_2__.default, {
393
+ url: absUrl("/examples")
394
+ }, "Explore all live examples")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
395
+ 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"
396
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
382
397
  className: "ui-meganav-overline",
383
398
  id: "meganav-platform-panel-list-our-technology"
384
399
  }, "Our technology"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("ul", {
@@ -391,37 +406,39 @@ var MeganavContentPlatform = function MeganavContentPlatform(_ref) {
391
406
  className: "ui-meganav-media-heading"
392
407
  }, "Predictable performance"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
393
408
  className: "ui-meganav-media-copy"
394
- }, "We provide predictability so you can be confident your realtime application will always perform as expected."))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
409
+ }, "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", {
395
410
  href: absUrl("/four-pillars-of-dependability#integrity"),
396
411
  className: "ui-meganav-media group"
397
412
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
398
413
  className: "ui-meganav-media-heading"
399
414
  }, "Guaranteed ordering & delivery"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
400
415
  className: "ui-meganav-media-copy"
401
- }, "We guarantee in-order data delivery, even after disconnections."))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
416
+ }, "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", {
402
417
  href: absUrl("/four-pillars-of-dependability#reliability"),
403
418
  className: "ui-meganav-media group"
404
419
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
405
420
  className: "ui-meganav-media-heading"
406
421
  }, "Fault tolerant infrastructure"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
407
422
  className: "ui-meganav-media-copy"
408
- }, "Redundant at regional and global levels with 99.999% uptime SLAs."))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
423
+ }, "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", {
409
424
  href: absUrl("/four-pillars-of-dependability#availability"),
410
425
  className: "ui-meganav-media group"
411
426
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
412
427
  className: "ui-meganav-media-heading"
413
428
  }, "High scalability & availability"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
414
429
  className: "ui-meganav-media-copy"
415
- }, "Elastic, battle-tested global infrastructure for massive scale."))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
430
+ }, "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", {
416
431
  href: absUrl("/network"),
417
432
  className: "ui-meganav-media group"
418
433
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
419
434
  className: "ui-meganav-media-heading"
420
435
  }, "Global edge network"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
421
436
  className: "ui-meganav-media-copy"
422
- }, "An edge network of 15 core routing datacenters and 200+ PoPs.")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_FeaturedLink_component_jsx__WEBPACK_IMPORTED_MODULE_2__.default, {
437
+ }, "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, {
423
438
  url: absUrl("/four-pillars-of-dependability")
424
- }, "Explore our technology")));
439
+ }, "Explore Four Pillars of Dependability"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
440
+ className: "ui-meganav-content-spacer"
441
+ }));
425
442
  };
426
443
 
427
444
  MeganavContentPlatform.propTypes = {