@ably/ui 8.2.1-dev.f35b482 → 8.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/core/Footer.jsx +1 -3
  2. package/core/Meganav/component.css +4 -0
  3. package/core/Meganav/component.js +1 -1
  4. package/core/Meganav.jsx +42 -25
  5. package/core/MeganavBlogPostsList.jsx +2 -1
  6. package/core/MeganavContentCompany.jsx +5 -4
  7. package/core/MeganavContentDevelopers.jsx +3 -3
  8. package/core/MeganavContentPlatform.jsx +13 -9
  9. package/core/MeganavContentUseCases.jsx +4 -4
  10. package/core/MeganavControl/component.js +1 -1
  11. package/core/MeganavControl.jsx +3 -1
  12. package/core/MeganavItemsDesktop.jsx +7 -3
  13. package/core/MeganavItemsSignedIn.jsx +4 -1
  14. package/core/sprites.svg +9 -0
  15. package/package.json +1 -1
  16. package/src/core/Footer/component.html.erb +1 -1
  17. package/src/core/Footer/component.jsx +1 -6
  18. package/src/core/Meganav/component.css +4 -0
  19. package/src/core/MeganavBlogPostsList/component.html.erb +1 -1
  20. package/src/core/MeganavBlogPostsList/component.jsx +3 -1
  21. package/src/core/MeganavContentCompany/component.html.erb +4 -4
  22. package/src/core/MeganavContentCompany/component.jsx +3 -3
  23. package/src/core/MeganavContentDevelopers/component.html.erb +3 -3
  24. package/src/core/MeganavContentDevelopers/component.jsx +3 -3
  25. package/src/core/MeganavContentPlatform/component.html.erb +10 -10
  26. package/src/core/MeganavContentPlatform/component.jsx +16 -10
  27. package/src/core/MeganavContentUseCases/component.html.erb +4 -4
  28. package/src/core/MeganavContentUseCases/component.jsx +4 -4
  29. package/src/core/MeganavControl/component.html.erb +1 -1
  30. package/src/core/MeganavControl/component.js +9 -1
  31. package/src/core/MeganavControl/component.jsx +3 -2
  32. package/src/core/MeganavControl/component.rb +8 -2
  33. package/src/core/MeganavItemsDesktop/component.html.erb +2 -2
  34. package/src/core/MeganavItemsDesktop/component.jsx +3 -2
  35. package/src/core/MeganavItemsDesktop/component.rb +8 -0
  36. package/src/core/MeganavItemsSignedIn/component.html.erb +1 -1
  37. package/src/core/MeganavItemsSignedIn/component.jsx +1 -1
  38. package/src/core/icons/icon-gui-copy.svg +10 -0
  39. package/core/.DS_Store +0 -0
  40. package/core/MeganavContentWhyAbly/component.js +0 -6
  41. package/core/MeganavContentWhyAbly.jsx +0 -6
  42. package/core/fonts/.DS_Store +0 -0
  43. package/core/images/.DS_Store +0 -0
  44. package/preview/vendor/bundle/ruby/3.0.0/bundler/gems/ably-ui-abffd210ec0f/preview/log/.keep +0 -0
  45. package/preview/vendor/bundle/ruby/3.0.0/bundler/gems/ably-ui-abffd210ec0f/preview/tmp/.keep +0 -0
  46. package/preview/vendor/bundle/ruby/3.0.0/bundler/gems/ably-ui-abffd210ec0f/preview/tmp/pids/.keep +0 -0
  47. package/src/.DS_Store +0 -0
  48. package/src/core/.DS_Store +0 -0
  49. package/src/core/fonts/.DS_Store +0 -0
  50. package/src/core/images/.DS_Store +0 -0
  51. package/src/reset/.DS_Store +0 -0
package/core/Meganav.jsx CHANGED
@@ -3951,7 +3951,8 @@ var MeganavBlogPostsList = function MeganavBlogPostsList(_ref) {
3951
3951
  className: "ui-meganav-media-copy"
3952
3952
  }, post.pubDate)));
3953
3953
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_FeaturedLink_component_jsx__WEBPACK_IMPORTED_MODULE_2__.default, {
3954
- url: absUrl("/blog")
3954
+ url: absUrl("/blog"),
3955
+ textSize: "text-p3"
3955
3956
  }, "More from our Blog")) : null;
3956
3957
  };
3957
3958
 
@@ -4114,11 +4115,11 @@ var MeganavContentCompany = function MeganavContentCompany(_ref) {
4114
4115
  recentBlogPosts: selectRecentBlogPosts
4115
4116
  });
4116
4117
  return /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
4117
- className: "flex"
4118
+ className: "flex max-w-screen-xl mx-auto"
4118
4119
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
4119
4120
  className: "ui-meganav-content-spacer"
4120
4121
  }), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("section", {
4121
- className: "grid grid-cols-12 ui-grid-gap-x"
4122
+ className: "grid grid-cols-12 ui-grid-gap-x w-full"
4122
4123
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
4123
4124
  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"
4124
4125
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("h3", {
@@ -4150,7 +4151,7 @@ var MeganavContentCompany = function MeganavContentCompany(_ref) {
4150
4151
  className: "ui-meganav-media-heading"
4151
4152
  }, "Case studies"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("p", {
4152
4153
  className: "ui-meganav-media-copy"
4153
- }, "Discover how customers are benefitting from Ably.")))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", null, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
4154
+ }, "Discover how customers are benefiting from Ably.")))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", null, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
4154
4155
  href: absUrl("/compare"),
4155
4156
  className: "ui-meganav-media-with-image group"
4156
4157
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement(Icon_component.default, {
@@ -4251,11 +4252,11 @@ MeganavContentCompany.propTypes = {
4251
4252
  var MeganavContentDevelopers = function MeganavContentDevelopers(_ref) {
4252
4253
  var absUrl = _ref.absUrl;
4253
4254
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
4254
- className: "flex"
4255
+ className: "flex max-w-screen-xl mx-auto"
4255
4256
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
4256
4257
  className: "ui-meganav-content-spacer"
4257
4258
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("section", {
4258
- className: "grid grid-cols-12 ui-grid-gap-x"
4259
+ className: "grid grid-cols-12 ui-grid-gap-x w-full"
4259
4260
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
4260
4261
  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"
4261
4262
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
@@ -4299,7 +4300,7 @@ var MeganavContentDevelopers = function MeganavContentDevelopers(_ref) {
4299
4300
  className: "ui-meganav-media-heading"
4300
4301
  }, "Quickstart guides"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
4301
4302
  className: "ui-meganav-media-copy"
4302
- }, "Documentation to help you get up and running quickly.")))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
4303
+ }, "Documentation to help you get started quickly.")))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
4303
4304
  className: "col-span-full md:col-span-4 pb-8 md:py-24 lg:py-32 px-24 sm:px-32 md:px-0"
4304
4305
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("ul", {
4305
4306
  className: "md:mt-40",
@@ -4398,13 +4399,13 @@ var MeganavContentPlatform = function MeganavContentPlatform(_ref) {
4398
4399
  var paths = _ref.paths,
4399
4400
  absUrl = _ref.absUrl;
4400
4401
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
4401
- className: "flex"
4402
+ className: "flex max-w-screen-xl mx-auto"
4402
4403
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
4403
4404
  className: "ui-meganav-content-spacer bg-extra-light-grey"
4404
4405
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("section", {
4405
4406
  className: "grid grid-cols-12 ui-grid-gap-x w-full"
4406
4407
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
4407
- 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"
4408
+ 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"
4408
4409
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
4409
4410
  className: "flex mb-20"
4410
4411
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("img", {
@@ -4413,18 +4414,20 @@ var MeganavContentPlatform = function MeganavContentPlatform(_ref) {
4413
4414
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
4414
4415
  className: "ui-meganav-overline ml-24"
4415
4416
  }, "The Ably Platform")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
4416
- className: "text-p2 font-medium text-cool-black mb-8",
4417
+ className: "text-p2 font-medium text-cool-black mb-24",
4417
4418
  style: {
4418
4419
  maxWidth: "330px"
4419
4420
  }
4420
4421
  }, "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, {
4421
- url: absUrl("/platform")
4422
+ url: absUrl("/platform"),
4423
+ textSize: "text-p2"
4422
4424
  }, "Explore how it works")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
4423
- 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"
4425
+ 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"
4424
4426
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
4425
4427
  className: "ui-meganav-overline",
4426
4428
  id: "meganav-platform-panel-list-examples"
4427
4429
  }, "Our Examples"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("ul", {
4430
+ className: "mb-16",
4428
4431
  "aria-labelledby": "meganav-platform-panel-list-examples"
4429
4432
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
4430
4433
  href: absUrl("/examples/avatar-stack"),
@@ -4469,14 +4472,15 @@ var MeganavContentPlatform = function MeganavContentPlatform(_ref) {
4469
4472
  }, "Typing Indicator"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
4470
4473
  className: "ui-meganav-media-copy"
4471
4474
  }, "See when a user is typing a message.")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_FeaturedLink_component_jsx__WEBPACK_IMPORTED_MODULE_2__.default, {
4472
- url: absUrl("/examples")
4475
+ url: absUrl("/examples"),
4476
+ textSize: "text-p3"
4473
4477
  }, "Explore all live examples")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
4474
- 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"
4478
+ 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"
4475
4479
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
4476
4480
  className: "ui-meganav-overline",
4477
4481
  id: "meganav-platform-panel-list-our-technology"
4478
4482
  }, "Our technology"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("ul", {
4479
- className: "mb-8",
4483
+ className: "mb-16",
4480
4484
  "aria-labelledby": "meganav-platform-panel-list-our-technology"
4481
4485
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
4482
4486
  href: absUrl("/four-pillars-of-dependability#performance"),
@@ -4514,7 +4518,8 @@ var MeganavContentPlatform = function MeganavContentPlatform(_ref) {
4514
4518
  }, "Global edge network"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
4515
4519
  className: "ui-meganav-media-copy"
4516
4520
  }, "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, {
4517
- url: absUrl("/four-pillars-of-dependability")
4521
+ url: absUrl("/four-pillars-of-dependability"),
4522
+ textSize: "text-p3"
4518
4523
  }, "Explore Four Pillars of Dependability"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
4519
4524
  className: "ui-meganav-content-spacer"
4520
4525
  }));
@@ -4550,13 +4555,13 @@ MeganavContentPlatform.propTypes = {
4550
4555
  var MeganavContentUseCases = function MeganavContentUseCases(_ref) {
4551
4556
  var absUrl = _ref.absUrl;
4552
4557
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
4553
- className: "flex"
4558
+ className: "flex max-w-screen-xl mx-auto"
4554
4559
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
4555
4560
  className: "ui-meganav-content-spacer bg-extra-light-grey"
4556
4561
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("section", {
4557
4562
  className: "grid grid-cols-12 ui-grid-gap-x w-full"
4558
4563
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
4559
- 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"
4564
+ 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"
4560
4565
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
4561
4566
  className: "ui-meganav-overline",
4562
4567
  id: "meganav-use-cases-panel-use-cases"
@@ -4587,7 +4592,7 @@ var MeganavContentUseCases = function MeganavContentUseCases(_ref) {
4587
4592
  }, "Virtual Events"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
4588
4593
  className: "ui-meganav-media-copy"
4589
4594
  }, "Power engaging virtual events with realtime features.")))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
4590
- 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"
4595
+ 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"
4591
4596
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
4592
4597
  className: "ui-meganav-overline",
4593
4598
  id: "meganav-use-cases-panel-industry"
@@ -4657,7 +4662,7 @@ var MeganavContentUseCases = function MeganavContentUseCases(_ref) {
4657
4662
  }, "IoT & Connected Devices"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
4658
4663
  className: "ui-meganav-media-copy"
4659
4664
  }, "Monitor and control global IoT deployments in realtime."))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
4660
- 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"
4665
+ 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"
4661
4666
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
4662
4667
  className: "ui-meganav-overline",
4663
4668
  id: "meganav-use-cases-panel-solutions"
@@ -4707,6 +4712,7 @@ MeganavContentUseCases.propTypes = {
4707
4712
 
4708
4713
  var MeganavControl = function MeganavControl(_ref) {
4709
4714
  var ariaControls = _ref.ariaControls,
4715
+ ariaLabel = _ref.ariaLabel,
4710
4716
  children = _ref.children,
4711
4717
  theme = _ref.theme,
4712
4718
  additionalCSS = _ref.additionalCSS;
@@ -4716,7 +4722,7 @@ var MeganavControl = function MeganavControl(_ref) {
4716
4722
  className: "ui-meganav-link h-64 flex items-center group ".concat(additionalCSS, " ").concat(theme.textColor),
4717
4723
  "aria-expanded": "false",
4718
4724
  "aria-controls": ariaControls,
4719
- "aria-label": "Show ".concat(children)
4725
+ "aria-label": "Show ".concat(ariaLabel, " panel")
4720
4726
  }, children, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__.default, {
4721
4727
  name: "icon-gui-disclosure-arrow",
4722
4728
  color: "text-cool-black",
@@ -4727,6 +4733,7 @@ var MeganavControl = function MeganavControl(_ref) {
4727
4733
 
4728
4734
  MeganavControl.propTypes = {
4729
4735
  ariaControls: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
4736
+ ariaLabel: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
4730
4737
  children: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().node),
4731
4738
  theme: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().object),
4732
4739
  additionalCSS: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string)
@@ -4898,18 +4905,20 @@ var MeganavDesktopItems = function MeganavDesktopItems(_ref) {
4898
4905
  "data-id": "meganav-items-desktop"
4899
4906
  }, _Meganav_component_json__WEBPACK_IMPORTED_MODULE_2__/* .panels.map */ .h.map(function (panel) {
4900
4907
  var PanelComponent = panels[panel.component];
4908
+ var bgCSS = ["platform-panel", "use-cases-panel"].includes(panel.id) ? "ui-meganav-panel-split-bg" : "";
4901
4909
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
4902
4910
  className: "ui-meganav-item",
4903
4911
  key: panel.id
4904
4912
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_MeganavControl_component_jsx__WEBPACK_IMPORTED_MODULE_3__.default, {
4905
4913
  theme: theme,
4906
- ariaControls: panel.id
4914
+ ariaControls: panel.id,
4915
+ ariaLabel: panel.label
4907
4916
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
4908
4917
  className: "hidden lg:inline"
4909
4918
  }, panel.label), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
4910
4919
  className: "lg:hidden"
4911
4920
  }, panel.shortLabel)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
4912
- className: "ui-meganav-panel invisible",
4921
+ className: "ui-meganav-panel invisible ".concat(bgCSS),
4913
4922
  id: panel.id,
4914
4923
  "data-id": "meganav-panel"
4915
4924
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(PanelComponent, {
@@ -5154,6 +5163,7 @@ var MeganavItemsSignedIn = function MeganavItemsSignedIn(_ref) {
5154
5163
  className: "ui-meganav-item relative"
5155
5164
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_MeganavControl_component_jsx__WEBPACK_IMPORTED_MODULE_2__.default, {
5156
5165
  ariaControls: "account-panel",
5166
+ ariaLabel: "Account",
5157
5167
  theme: theme,
5158
5168
  additionalCSS: "mr-0"
5159
5169
  }, accountName), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
@@ -10921,6 +10931,7 @@ var MeganavControl = function MeganavControl() {
10921
10931
  (_panel$classList = panel.classList).replace.apply(_panel$classList, _toConsumableArray(open ? classes : classes.reverse()));
10922
10932
 
10923
10933
  control.setAttribute("aria-expanded", open);
10934
+ control.dataset.hover = open;
10924
10935
  }
10925
10936
  };
10926
10937
 
@@ -10944,9 +10955,11 @@ var MeganavControl = function MeganavControl() {
10944
10955
  panels.forEach(function (node) {
10945
10956
  return node !== panel && node.classList.replace("visible", "invisible");
10946
10957
  });
10947
- var ariaExpanded = control.getAttribute("aria-expanded");
10958
+ var ariaExpanded = control.getAttribute("aria-expanded"); // Prevent closing of the panel if it was already opened by hovering
10948
10959
 
10949
- if (ariaExpanded === "true") {
10960
+ var openedByHover = control.dataset.hover === "true";
10961
+
10962
+ if (ariaExpanded === "true" && !openedByHover) {
10950
10963
  control.setAttribute("aria-expanded", false);
10951
10964
  panel.classList.replace("visible", "invisible");
10952
10965
  } else {
@@ -10954,6 +10967,10 @@ var MeganavControl = function MeganavControl() {
10954
10967
  panel.classList.replace("invisible", "visible");
10955
10968
  }
10956
10969
 
10970
+ if (openedByHover) {
10971
+ control.dataset.hover = false;
10972
+ }
10973
+
10957
10974
  if (isSearchControl(control)) {
10958
10975
  var searchInput = (0,dom_query/* queryId */.A)("meganav-search-input", panel);
10959
10976
  if (!searchInput) return;
@@ -341,7 +341,8 @@ var MeganavBlogPostsList = function MeganavBlogPostsList(_ref) {
341
341
  className: "ui-meganav-media-copy"
342
342
  }, post.pubDate)));
343
343
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_FeaturedLink_component_jsx__WEBPACK_IMPORTED_MODULE_2__.default, {
344
- url: absUrl("/blog")
344
+ url: absUrl("/blog"),
345
+ textSize: "text-p3"
345
346
  }, "More from our Blog")) : null;
346
347
  };
347
348
 
@@ -242,7 +242,8 @@ var MeganavBlogPostsList = function MeganavBlogPostsList(_ref) {
242
242
  className: "ui-meganav-media-copy"
243
243
  }, post.pubDate)));
244
244
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_FeaturedLink_component_jsx__WEBPACK_IMPORTED_MODULE_2__.default, {
245
- url: absUrl("/blog")
245
+ url: absUrl("/blog"),
246
+ textSize: "text-p3"
246
247
  }, "More from our Blog")) : null;
247
248
  };
248
249
 
@@ -1390,11 +1391,11 @@ var MeganavContentCompany = function MeganavContentCompany(_ref) {
1390
1391
  recentBlogPosts: selectRecentBlogPosts
1391
1392
  });
1392
1393
  return /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
1393
- className: "flex"
1394
+ className: "flex max-w-screen-xl mx-auto"
1394
1395
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
1395
1396
  className: "ui-meganav-content-spacer"
1396
1397
  }), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("section", {
1397
- className: "grid grid-cols-12 ui-grid-gap-x"
1398
+ className: "grid grid-cols-12 ui-grid-gap-x w-full"
1398
1399
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("div", {
1399
1400
  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"
1400
1401
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("h3", {
@@ -1426,7 +1427,7 @@ var MeganavContentCompany = function MeganavContentCompany(_ref) {
1426
1427
  className: "ui-meganav-media-heading"
1427
1428
  }, "Case studies"), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("p", {
1428
1429
  className: "ui-meganav-media-copy"
1429
- }, "Discover how customers are benefitting from Ably.")))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", null, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
1430
+ }, "Discover how customers are benefiting from Ably.")))), /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("li", null, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement("a", {
1430
1431
  href: absUrl("/compare"),
1431
1432
  className: "ui-meganav-media-with-image group"
1432
1433
  }, /*#__PURE__*/external_commonjs_react_commonjs2_react_default().createElement(Icon_component.default, {
@@ -271,11 +271,11 @@ __webpack_require__.r(__webpack_exports__);
271
271
  var MeganavContentDevelopers = function MeganavContentDevelopers(_ref) {
272
272
  var absUrl = _ref.absUrl;
273
273
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
274
- className: "flex"
274
+ className: "flex max-w-screen-xl mx-auto"
275
275
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
276
276
  className: "ui-meganav-content-spacer"
277
277
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("section", {
278
- className: "grid grid-cols-12 ui-grid-gap-x"
278
+ className: "grid grid-cols-12 ui-grid-gap-x w-full"
279
279
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
280
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
281
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
@@ -319,7 +319,7 @@ var MeganavContentDevelopers = function MeganavContentDevelopers(_ref) {
319
319
  className: "ui-meganav-media-heading"
320
320
  }, "Quickstart guides"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
321
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", {
322
+ }, "Documentation to help you get started quickly.")))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
323
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
324
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("ul", {
325
325
  className: "md:mt-40",
@@ -322,13 +322,13 @@ var MeganavContentPlatform = function MeganavContentPlatform(_ref) {
322
322
  var paths = _ref.paths,
323
323
  absUrl = _ref.absUrl;
324
324
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
325
- className: "flex"
325
+ className: "flex max-w-screen-xl mx-auto"
326
326
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
327
327
  className: "ui-meganav-content-spacer bg-extra-light-grey"
328
328
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("section", {
329
329
  className: "grid grid-cols-12 ui-grid-gap-x w-full"
330
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"
331
+ 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"
332
332
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
333
333
  className: "flex mb-20"
334
334
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("img", {
@@ -337,18 +337,20 @@ var MeganavContentPlatform = function MeganavContentPlatform(_ref) {
337
337
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
338
338
  className: "ui-meganav-overline ml-24"
339
339
  }, "The Ably Platform")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
340
- className: "text-p2 font-medium text-cool-black mb-8",
340
+ className: "text-p2 font-medium text-cool-black mb-24",
341
341
  style: {
342
342
  maxWidth: "330px"
343
343
  }
344
344
  }, "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, {
345
- url: absUrl("/platform")
345
+ url: absUrl("/platform"),
346
+ textSize: "text-p2"
346
347
  }, "Explore how it works")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
347
- 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"
348
+ 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"
348
349
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
349
350
  className: "ui-meganav-overline",
350
351
  id: "meganav-platform-panel-list-examples"
351
352
  }, "Our Examples"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("ul", {
353
+ className: "mb-16",
352
354
  "aria-labelledby": "meganav-platform-panel-list-examples"
353
355
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
354
356
  href: absUrl("/examples/avatar-stack"),
@@ -393,14 +395,15 @@ var MeganavContentPlatform = function MeganavContentPlatform(_ref) {
393
395
  }, "Typing Indicator"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
394
396
  className: "ui-meganav-media-copy"
395
397
  }, "See when a user is typing a message.")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_FeaturedLink_component_jsx__WEBPACK_IMPORTED_MODULE_2__.default, {
396
- url: absUrl("/examples")
398
+ url: absUrl("/examples"),
399
+ textSize: "text-p3"
397
400
  }, "Explore all live examples")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
398
- 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"
401
+ 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"
399
402
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
400
403
  className: "ui-meganav-overline",
401
404
  id: "meganav-platform-panel-list-our-technology"
402
405
  }, "Our technology"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("ul", {
403
- className: "mb-8",
406
+ className: "mb-16",
404
407
  "aria-labelledby": "meganav-platform-panel-list-our-technology"
405
408
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
406
409
  href: absUrl("/four-pillars-of-dependability#performance"),
@@ -438,7 +441,8 @@ var MeganavContentPlatform = function MeganavContentPlatform(_ref) {
438
441
  }, "Global edge network"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
439
442
  className: "ui-meganav-media-copy"
440
443
  }, "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, {
441
- url: absUrl("/four-pillars-of-dependability")
444
+ url: absUrl("/four-pillars-of-dependability"),
445
+ textSize: "text-p3"
442
446
  }, "Explore Four Pillars of Dependability"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
443
447
  className: "ui-meganav-content-spacer"
444
448
  }));
@@ -271,13 +271,13 @@ __webpack_require__.r(__webpack_exports__);
271
271
  var MeganavContentUseCases = function MeganavContentUseCases(_ref) {
272
272
  var absUrl = _ref.absUrl;
273
273
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
274
- className: "flex"
274
+ className: "flex max-w-screen-xl mx-auto"
275
275
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
276
276
  className: "ui-meganav-content-spacer bg-extra-light-grey"
277
277
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("section", {
278
278
  className: "grid grid-cols-12 ui-grid-gap-x w-full"
279
279
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
280
- 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"
280
+ 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"
281
281
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
282
282
  className: "ui-meganav-overline",
283
283
  id: "meganav-use-cases-panel-use-cases"
@@ -308,7 +308,7 @@ var MeganavContentUseCases = function MeganavContentUseCases(_ref) {
308
308
  }, "Virtual Events"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
309
309
  className: "ui-meganav-media-copy"
310
310
  }, "Power engaging virtual events with realtime features.")))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
311
- 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"
311
+ 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"
312
312
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
313
313
  className: "ui-meganav-overline",
314
314
  id: "meganav-use-cases-panel-industry"
@@ -378,7 +378,7 @@ var MeganavContentUseCases = function MeganavContentUseCases(_ref) {
378
378
  }, "IoT & Connected Devices"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
379
379
  className: "ui-meganav-media-copy"
380
380
  }, "Monitor and control global IoT deployments in realtime."))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
381
- 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"
381
+ 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"
382
382
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h3", {
383
383
  className: "ui-meganav-overline",
384
384
  id: "meganav-use-cases-panel-solutions"
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.AblyUi=t():(e.AblyUi=e.AblyUi||{},e.AblyUi.Core=e.AblyUi.Core||{},e.AblyUi.Core.MeganavControl=t())}(this,(function(){return(()=>{"use strict";var e={9581:(e,t,r)=>{r.d(t,{A:()=>n,n:()=>i});var n=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:document;return t.querySelector("[data-id=".concat(e,"]"))},i=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:document;return t.querySelectorAll("[data-id=".concat(e,"]"))}}},t={};function r(n){var i=t[n];if(void 0!==i)return i.exports;var o=t[n]={exports:{}};return e[n](o,o.exports,r),o.exports}r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var n={};return(()=>{r.d(n,{default:()=>i});var e=r(9581);function t(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const i=function(){var r=Array.from((0,e.n)("meganav-control")),n=Array.from((0,e.n)("meganav-panel")),i=getComputedStyle(document.documentElement).getPropertyValue("--bp-md"),o=function(e){return"search"===e.dataset.control},a=function(e,n,o){if(window.matchMedia("(hover: hover) and (pointer: fine) and (min-width: ".concat(i,")")).matches&&!r.some((function(e){return e===document.activeElement}))&&!function(){var e=document.querySelector('[data-id="meganav-panel"]#panel-search');if(e)return!e.classList.contains("invisible")}()){var a,c=["invisible","visible"];(a=n.classList).replace.apply(a,function(e){if(Array.isArray(e))return t(e)}(u=o?c:c.reverse())||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(u)||function(e,r){if(e){if("string"==typeof e)return t(e,r);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?t(e,r):void 0}}(u)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),e.setAttribute("aria-expanded",o)}var u};return r.map((function(t){var i,c,u=t.parentNode,l=document.querySelector("#".concat(t.getAttribute("aria-controls"))),s=function(t,i){return function(){if(r.forEach((function(e){return e!==t&&e.setAttribute("aria-expanded",!1)})),n.forEach((function(e){return e!==i&&e.classList.replace("visible","invisible")})),"true"===t.getAttribute("aria-expanded")?(t.setAttribute("aria-expanded",!1),i.classList.replace("visible","invisible")):(t.setAttribute("aria-expanded",!0),i.classList.replace("invisible","visible")),o(t)){var a=(0,e.A)("meganav-search-input",i);if(!a)return;a.focus()}else t.focus()}}(t,l);return t.addEventListener("click",s),o(t)||(i=function(e,t){return function(){return a(e,t,!0)}}(t,l),c=function(e,t){return function(){return a(e,t,!1)}}(t,l),u.addEventListener("mouseenter",i),u.addEventListener("mouseleave",c)),[{teardown:function(){i&&c&&(u.removeEventListener("mouseenter",i),u.removeEventListener("mouseleave",c)),t.removeEventListener("click",s)},clear:function(){t.setAttribute("aria-expanded",!1),l.classList.replace("visible","invisible")}}]})).flat()}})(),n.default})()}));
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.AblyUi=t():(e.AblyUi=e.AblyUi||{},e.AblyUi.Core=e.AblyUi.Core||{},e.AblyUi.Core.MeganavControl=t())}(this,(function(){return(()=>{"use strict";var e={9581:(e,t,r)=>{r.d(t,{A:()=>n,n:()=>o});var n=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:document;return t.querySelector("[data-id=".concat(e,"]"))},o=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:document;return t.querySelectorAll("[data-id=".concat(e,"]"))}}},t={};function r(n){var o=t[n];if(void 0!==o)return o.exports;var a=t[n]={exports:{}};return e[n](a,a.exports,r),a.exports}r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var n={};return(()=>{r.d(n,{default:()=>o});var e=r(9581);function t(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const o=function(){var r=Array.from((0,e.n)("meganav-control")),n=Array.from((0,e.n)("meganav-panel")),o=getComputedStyle(document.documentElement).getPropertyValue("--bp-md"),a=function(e){return"search"===e.dataset.control},i=function(e,n,a){if(window.matchMedia("(hover: hover) and (pointer: fine) and (min-width: ".concat(o,")")).matches&&!r.some((function(e){return e===document.activeElement}))&&!function(){var e=document.querySelector('[data-id="meganav-panel"]#panel-search');if(e)return!e.classList.contains("invisible")}()){var i,c=["invisible","visible"];(i=n.classList).replace.apply(i,function(e){if(Array.isArray(e))return t(e)}(u=a?c:c.reverse())||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(u)||function(e,r){if(e){if("string"==typeof e)return t(e,r);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?t(e,r):void 0}}(u)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),e.setAttribute("aria-expanded",a),e.dataset.hover=a}var u};return r.map((function(t){var o,c,u=t.parentNode,s=document.querySelector("#".concat(t.getAttribute("aria-controls"))),l=function(t,o){return function(){r.forEach((function(e){return e!==t&&e.setAttribute("aria-expanded",!1)})),n.forEach((function(e){return e!==o&&e.classList.replace("visible","invisible")}));var i=t.getAttribute("aria-expanded"),c="true"===t.dataset.hover;if("true"!==i||c?(t.setAttribute("aria-expanded",!0),o.classList.replace("invisible","visible")):(t.setAttribute("aria-expanded",!1),o.classList.replace("visible","invisible")),c&&(t.dataset.hover=!1),a(t)){var u=(0,e.A)("meganav-search-input",o);if(!u)return;u.focus()}else t.focus()}}(t,s);return t.addEventListener("click",l),a(t)||(o=function(e,t){return function(){return i(e,t,!0)}}(t,s),c=function(e,t){return function(){return i(e,t,!1)}}(t,s),u.addEventListener("mouseenter",o),u.addEventListener("mouseleave",c)),[{teardown:function(){o&&c&&(u.removeEventListener("mouseenter",o),u.removeEventListener("mouseleave",c)),t.removeEventListener("click",l)},clear:function(){t.setAttribute("aria-expanded",!1),s.classList.replace("visible","invisible")}}]})).flat()}})(),n.default})()}));
@@ -270,6 +270,7 @@ __webpack_require__.r(__webpack_exports__);
270
270
 
271
271
  var MeganavControl = function MeganavControl(_ref) {
272
272
  var ariaControls = _ref.ariaControls,
273
+ ariaLabel = _ref.ariaLabel,
273
274
  children = _ref.children,
274
275
  theme = _ref.theme,
275
276
  additionalCSS = _ref.additionalCSS;
@@ -279,7 +280,7 @@ var MeganavControl = function MeganavControl(_ref) {
279
280
  className: "ui-meganav-link h-64 flex items-center group ".concat(additionalCSS, " ").concat(theme.textColor),
280
281
  "aria-expanded": "false",
281
282
  "aria-controls": ariaControls,
282
- "aria-label": "Show ".concat(children)
283
+ "aria-label": "Show ".concat(ariaLabel, " panel")
283
284
  }, children, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__.default, {
284
285
  name: "icon-gui-disclosure-arrow",
285
286
  color: "text-cool-black",
@@ -290,6 +291,7 @@ var MeganavControl = function MeganavControl(_ref) {
290
291
 
291
292
  MeganavControl.propTypes = {
292
293
  ariaControls: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
294
+ ariaLabel: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
293
295
  children: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().node),
294
296
  theme: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().object),
295
297
  additionalCSS: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string)
@@ -82,6 +82,7 @@ Icon.propTypes = {
82
82
 
83
83
  var MeganavControl = function MeganavControl(_ref) {
84
84
  var ariaControls = _ref.ariaControls,
85
+ ariaLabel = _ref.ariaLabel,
85
86
  children = _ref.children,
86
87
  theme = _ref.theme,
87
88
  additionalCSS = _ref.additionalCSS;
@@ -91,7 +92,7 @@ var MeganavControl = function MeganavControl(_ref) {
91
92
  className: "ui-meganav-link h-64 flex items-center group ".concat(additionalCSS, " ").concat(theme.textColor),
92
93
  "aria-expanded": "false",
93
94
  "aria-controls": ariaControls,
94
- "aria-label": "Show ".concat(children)
95
+ "aria-label": "Show ".concat(ariaLabel, " panel")
95
96
  }, children, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__.default, {
96
97
  name: "icon-gui-disclosure-arrow",
97
98
  color: "text-cool-black",
@@ -102,6 +103,7 @@ var MeganavControl = function MeganavControl(_ref) {
102
103
 
103
104
  MeganavControl.propTypes = {
104
105
  ariaControls: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
106
+ ariaLabel: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
105
107
  children: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().node),
106
108
  theme: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().object),
107
109
  additionalCSS: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string)
@@ -334,18 +336,20 @@ var MeganavDesktopItems = function MeganavDesktopItems(_ref) {
334
336
  "data-id": "meganav-items-desktop"
335
337
  }, _Meganav_component_json__WEBPACK_IMPORTED_MODULE_2__/* .panels.map */ .h.map(function (panel) {
336
338
  var PanelComponent = panels[panel.component];
339
+ var bgCSS = ["platform-panel", "use-cases-panel"].includes(panel.id) ? "ui-meganav-panel-split-bg" : "";
337
340
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("li", {
338
341
  className: "ui-meganav-item",
339
342
  key: panel.id
340
343
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_MeganavControl_component_jsx__WEBPACK_IMPORTED_MODULE_3__.default, {
341
344
  theme: theme,
342
- ariaControls: panel.id
345
+ ariaControls: panel.id,
346
+ ariaLabel: panel.label
343
347
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
344
348
  className: "hidden lg:inline"
345
349
  }, panel.label), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
346
350
  className: "lg:hidden"
347
351
  }, panel.shortLabel)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
348
- className: "ui-meganav-panel invisible",
352
+ className: "ui-meganav-panel invisible ".concat(bgCSS),
349
353
  id: panel.id,
350
354
  "data-id": "meganav-panel"
351
355
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(PanelComponent, {
@@ -132,6 +132,7 @@ Icon.propTypes = {
132
132
 
133
133
  var MeganavControl = function MeganavControl(_ref) {
134
134
  var ariaControls = _ref.ariaControls,
135
+ ariaLabel = _ref.ariaLabel,
135
136
  children = _ref.children,
136
137
  theme = _ref.theme,
137
138
  additionalCSS = _ref.additionalCSS;
@@ -141,7 +142,7 @@ var MeganavControl = function MeganavControl(_ref) {
141
142
  className: "ui-meganav-link h-64 flex items-center group ".concat(additionalCSS, " ").concat(theme.textColor),
142
143
  "aria-expanded": "false",
143
144
  "aria-controls": ariaControls,
144
- "aria-label": "Show ".concat(children)
145
+ "aria-label": "Show ".concat(ariaLabel, " panel")
145
146
  }, children, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Icon_component_jsx__WEBPACK_IMPORTED_MODULE_2__.default, {
146
147
  name: "icon-gui-disclosure-arrow",
147
148
  color: "text-cool-black",
@@ -152,6 +153,7 @@ var MeganavControl = function MeganavControl(_ref) {
152
153
 
153
154
  MeganavControl.propTypes = {
154
155
  ariaControls: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
156
+ ariaLabel: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string),
155
157
  children: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().node),
156
158
  theme: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().object),
157
159
  additionalCSS: (prop_types__WEBPACK_IMPORTED_MODULE_1___default().string)
@@ -644,6 +646,7 @@ var MeganavItemsSignedIn = function MeganavItemsSignedIn(_ref) {
644
646
  className: "ui-meganav-item relative"
645
647
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_MeganavControl_component_jsx__WEBPACK_IMPORTED_MODULE_2__.default, {
646
648
  ariaControls: "account-panel",
649
+ ariaLabel: "Account",
647
650
  theme: theme,
648
651
  additionalCSS: "mr-0"
649
652
  }, accountName), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
package/core/sprites.svg CHANGED
@@ -287,6 +287,15 @@
287
287
  <path fill-rule="evenodd" clip-rule="evenodd" d="M1.33333 8C1.33333 4.3181 4.3181 1.33333 8 1.33333C11.6819 1.33333 14.6667 4.3181 14.6667 8C14.6667 11.6819 11.6819 14.6667 8 14.6667C4.3181 14.6667 1.33333 11.6819 1.33333 8ZM8 0C3.58172 0 0 3.58172 0 8C0 12.4183 3.58172 16 8 16C12.4183 16 16 12.4183 16 8C16 3.58172 12.4183 0 8 0ZM8.66667 3.33333C8.66667 2.96514 8.36819 2.66667 8 2.66667C7.63181 2.66667 7.33333 2.96514 7.33333 3.33333V7.38675C7.33333 7.9706 7.58846 8.5253 8.03175 8.90527L9.89947 10.5062C10.179 10.7458 10.5999 10.7134 10.8395 10.4339C11.0791 10.1543 11.0467 9.73344 10.7672 9.49383L8.89947 7.89292C8.75171 7.76627 8.66667 7.58137 8.66667 7.38675V3.33333Z" fill="currentColor"/>
288
288
  </symbol><symbol fill="none" id="sprite-icon-gui-close" viewBox="0 0 24 24"><title>sprite-icon-gui-close</title>
289
289
  <path fill-rule="evenodd" clip-rule="evenodd" d="M13.4142 12L22.7071 21.2929L21.2929 22.7071L12 13.4142L2.70711 22.7071L1.29289 21.2929L10.5858 12L1.29289 2.70712L2.70711 1.29291L12 10.5858L21.2929 1.29291L22.7071 2.70712L13.4142 12Z" fill="currentColor"/>
290
+ </symbol><symbol fill="none" id="sprite-icon-gui-copy" viewBox="0 0 16 16"><title>sprite-icon-gui-copy</title>
291
+ <g clip-path="url(#clip0_222_232)">
292
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M2.66634 0.835938C1.65382 0.835938 0.833008 1.65675 0.833008 2.66927V9.33594C0.833008 10.3485 1.65382 11.1693 2.66634 11.1693H3.33301C3.60915 11.1693 3.83301 10.9454 3.83301 10.6693C3.83301 10.3931 3.60915 10.1693 3.33301 10.1693H2.66634C2.2061 10.1693 1.83301 9.79618 1.83301 9.33594V2.66927C1.83301 2.20903 2.2061 1.83594 2.66634 1.83594H9.33301C9.79325 1.83594 10.1663 2.20903 10.1663 2.66927V3.33594C10.1663 3.61208 10.3902 3.83594 10.6663 3.83594C10.9425 3.83594 11.1663 3.61208 11.1663 3.33594V2.66927C11.1663 1.65675 10.3455 0.835938 9.33301 0.835938H2.66634ZM6.66634 4.83594C5.65382 4.83594 4.83301 5.65675 4.83301 6.66927V13.3359C4.83301 14.3485 5.65382 15.1693 6.66634 15.1693H13.333C14.3455 15.1693 15.1663 14.3485 15.1663 13.3359V6.66927C15.1663 5.65675 14.3455 4.83594 13.333 4.83594H6.66634ZM5.83301 6.66927C5.83301 6.20903 6.2061 5.83594 6.66634 5.83594H13.333C13.7932 5.83594 14.1663 6.20903 14.1663 6.66927V13.3359C14.1663 13.7962 13.7932 14.1693 13.333 14.1693H6.66634C6.2061 14.1693 5.83301 13.7962 5.83301 13.3359V6.66927Z" fill="currentColor"/>
293
+ </g>
294
+ <defs>
295
+ <clipPath id="clip0_222_232">
296
+ <rect width="16" height="16" fill="white"/>
297
+ </clipPath>
298
+ </defs>
290
299
  </symbol><symbol fill="none" id="sprite-icon-gui-cross-circled-fill" viewBox="0 0 24 24"><title>sprite-icon-gui-cross-circled-fill</title>
291
300
  <path fill-rule="evenodd" clip-rule="evenodd" d="M0 12C0 5.37258 5.37258 0 12 0C18.6274 0 24 5.37258 24 12C24 18.6274 18.6274 24 12 24C5.37258 24 0 18.6274 0 12Z" fill="currentColor"/>
292
301
  <path fill-rule="evenodd" clip-rule="evenodd" d="M13.4142 12L17.7071 16.2928L16.2929 17.7071L12 13.4142L7.70711 17.7071L6.29289 16.2928L10.5858 12L6.29289 7.70706L7.70711 6.29285L12 10.5857L16.2929 6.29285L17.7071 7.70706L13.4142 12Z" fill="white"/>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ably/ui",
3
- "version": "8.2.1-dev.f35b482",
3
+ "version": "8.4.0",
4
4
  "description": "Home of the Ably design system library ([design.ably.com](https://design.ably.com)). It provides a showcase, development/test environment and a publishing pipeline for different distributables.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -141,7 +141,7 @@
141
141
  <%= link_to 'Open protocol policy', abs_url("/open-policy"), class: "ui-footer-menu-row-link" %>
142
142
  </li>
143
143
  <li class="p-menu-row-snug">
144
- <a href="https://www.notion.so/ably/Ably-Press-Center-551152f5be724d4495a7c2e29d9f51c7" target="_blank" rel="noopener" class="ui-footer-menu-row-link">Press & Media</a>
144
+ <%= link_to 'Press & Media', abs_url("/press-center"), class: "ui-footer-menu-row-link" %>
145
145
  </li>
146
146
  <li class="p-menu-row-snug">
147
147
  <%= link_to 'Contact us', abs_url("/contact"), class: "ui-footer-menu-row-link" %>
@@ -219,12 +219,7 @@ export default function Footer({ paths, urlBase }) {
219
219
  </a>
220
220
  </li>
221
221
  <li className="p-menu-row-snug">
222
- <a
223
- href="https://www.notion.so/ably/Ably-Press-Center-551152f5be724d4495a7c2e29d9f51c7"
224
- rel="noopener noreferrer"
225
- target="_blank"
226
- className="ui-footer-menu-row-link"
227
- >
222
+ <a href={absUrl("/press-center")} className="ui-footer-menu-row-link">
228
223
  Press & Media
229
224
  </a>
230
225
  </li>
@@ -46,6 +46,10 @@
46
46
  @apply bg-white rounded-t-none;
47
47
  }
48
48
 
49
+ .ui-meganav-panel-split-bg {
50
+ background: linear-gradient(to right, #fafafb 33%, white 33%, white 100%);
51
+ }
52
+
49
53
  .ui-meganav-link {
50
54
  @apply text-menu2 font-medium block;
51
55
  @apply mr-12 lg:mr-24 px-0 py-20;