ably-ui 8.2.1.dev.611f3bd → 8.2.1
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.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/ably_ui/core/core.rb +0 -4
- data/lib/ably_ui/core/images/blog-thumb1.jpg +0 -0
- data/lib/ably_ui/core/images/blog-thumb2.jpg +0 -0
- data/lib/ably_ui/core/images/blog-thumb3.jpg +0 -0
- data/lib/ably_ui/core/meganav/component.css +1 -11
- data/lib/ably_ui/core/meganav/component.js +1 -1
- data/lib/ably_ui/core/meganav/component.json +4 -4
- data/lib/ably_ui/core/meganav/meganav.rb +4 -8
- data/lib/ably_ui/core/meganav_blog_posts_list/component.js +1 -1
- data/lib/ably_ui/core/meganav_blog_posts_list/meganav_blog_posts_list.html.erb +4 -4
- data/lib/ably_ui/core/meganav_content_developers/meganav_content_developers.html.erb +80 -101
- data/lib/ably_ui/core/meganav_content_platform/meganav_content_platform.html.erb +91 -95
- data/lib/ably_ui/core/meganav_content_use_cases/meganav_content_use_cases.html.erb +83 -112
- data/lib/ably_ui/core/{meganav_content_company → meganav_content_why_ably}/component.js +1 -1
- data/lib/ably_ui/core/meganav_content_why_ably/meganav_content_why_ably.html.erb +70 -0
- data/lib/ably_ui/core/{meganav_content_company/meganav_content_company.rb → meganav_content_why_ably/meganav_content_why_ably.rb} +1 -2
- data/lib/ably_ui/core/meganav_control/component.js +1 -1
- data/lib/ably_ui/core/meganav_control/meganav_control.html.erb +1 -1
- data/lib/ably_ui/core/meganav_control/meganav_control.rb +2 -8
- data/lib/ably_ui/core/meganav_control_mobile_panel_close/meganav_control_mobile_panel_close.html.erb +2 -4
- data/lib/ably_ui/core/meganav_control_mobile_panel_close/meganav_control_mobile_panel_close.rb +1 -4
- data/lib/ably_ui/core/meganav_items_desktop/meganav_items_desktop.html.erb +3 -4
- data/lib/ably_ui/core/meganav_items_desktop/meganav_items_desktop.rb +0 -8
- data/lib/ably_ui/core/meganav_items_mobile/meganav_items_mobile.html.erb +1 -1
- data/lib/ably_ui/core/meganav_items_mobile/meganav_items_mobile.rb +0 -4
- data/lib/ably_ui/core/meganav_items_signed_in/meganav_items_signed_in.html.erb +1 -1
- data/lib/ably_ui/core/sprites.svg +0 -141
- data/lib/ably_ui/core/styles.css +0 -4
- data/lib/ably_ui/version.rb +1 -1
- metadata +15 -15
- data/lib/ably_ui/core/images/icon-tech-aws.svg +0 -4
- data/lib/ably_ui/core/meganav_content_company/meganav_content_company.html.erb +0 -81
- data/lib/ably_ui/react/connect_state_wrapper/component.js +0 -1
- data/lib/ably_ui/react/scripts.js +0 -1
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
<section class="ui-meganav-content ui-grid-gap md:grid-cols-3">
|
|
2
|
+
<div>
|
|
3
|
+
<h3 class="ui-meganav-overline" id="meganav-why-ably-panel-list-why-companies">Why companies choose Ably</h3>
|
|
4
|
+
<ul aria-labelledby="meganav-why-ably-panel-list-why-companies">
|
|
5
|
+
<li>
|
|
6
|
+
<%= link_to abs_url("/customers"), class: "group ui-meganav-media py-12" do %>
|
|
7
|
+
<p class="ui-meganav-media-heading">Customers</p>
|
|
8
|
+
<% end %>
|
|
9
|
+
</li>
|
|
10
|
+
|
|
11
|
+
<li>
|
|
12
|
+
<%= link_to abs_url("/case-studies"), class: "group ui-meganav-media py-12" do %>
|
|
13
|
+
<p class="ui-meganav-media-heading">Case studies</p>
|
|
14
|
+
<% end %>
|
|
15
|
+
</li>
|
|
16
|
+
|
|
17
|
+
<li>
|
|
18
|
+
<%= link_to abs_url("/compare"), class: "group ui-meganav-media py-12" do %>
|
|
19
|
+
<p class="ui-meganav-media-heading">Compare our tech</p>
|
|
20
|
+
<% end %>
|
|
21
|
+
</li>
|
|
22
|
+
|
|
23
|
+
<li>
|
|
24
|
+
<%= link_to abs_url("/aws"), class: "group ui-meganav-media py-12" do %>
|
|
25
|
+
<p class="ui-meganav-media-heading">Ably & AWS</p>
|
|
26
|
+
<% end %>
|
|
27
|
+
</li>
|
|
28
|
+
|
|
29
|
+
<li>
|
|
30
|
+
<%= link_to abs_url("/resources"), class: "group ui-meganav-media py-12" do %>
|
|
31
|
+
<p class="ui-meganav-media-heading">Resources</p>
|
|
32
|
+
<% end %>
|
|
33
|
+
</li>
|
|
34
|
+
</ul>
|
|
35
|
+
</div>
|
|
36
|
+
|
|
37
|
+
<div>
|
|
38
|
+
<h3 class="ui-meganav-overline" id="meganav-why-ably-panel-list-four-pillars">Four pillars of dependability</h3>
|
|
39
|
+
<ul class="mb-8" aria-labelledby="meganav-why-ably-panel-list-four-pillars">
|
|
40
|
+
<li>
|
|
41
|
+
<%= link_to abs_url("/four-pillars-of-dependability#performance"), class: "ui-meganav-media group" do %>
|
|
42
|
+
<p class="ui-meganav-media-heading">Predictable performance</p>
|
|
43
|
+
<p class="ui-meganav-media-copy">A low-latency global edge network across 200+ PoPs.</p>
|
|
44
|
+
<% end %>
|
|
45
|
+
</li>
|
|
46
|
+
<li>
|
|
47
|
+
<%= link_to abs_url("/four-pillars-of-dependability#integrity"), class: "ui-meganav-media group" do %>
|
|
48
|
+
<p class="ui-meganav-media-heading">Guaranteed ordering & delivery</p>
|
|
49
|
+
<p class="ui-meganav-media-copy">We guarantee in-order data delivery, even after disconnections.</p>
|
|
50
|
+
<% end %>
|
|
51
|
+
</li>
|
|
52
|
+
<li>
|
|
53
|
+
<%= link_to abs_url("/four-pillars-of-dependability#reliability"), class: "ui-meganav-media group" do %>
|
|
54
|
+
<p class="ui-meganav-media-heading">Fault tolerant infrastructure</p>
|
|
55
|
+
<p class="ui-meganav-media-copy">Redundant at regional and global levels with 99.999% uptime SLAs.</p>
|
|
56
|
+
<% end %>
|
|
57
|
+
</li>
|
|
58
|
+
<li>
|
|
59
|
+
<%= link_to abs_url("/four-pillars-of-dependability#availability"), class: "ui-meganav-media group" do %>
|
|
60
|
+
<p class="ui-meganav-media-heading">High scalability & availability</p>
|
|
61
|
+
<p class="ui-meganav-media-copy">Elastic, battle-tested global infrastructure for massive scale.</p>
|
|
62
|
+
<% end %>
|
|
63
|
+
</li>
|
|
64
|
+
</ul>
|
|
65
|
+
|
|
66
|
+
<%= render(AblyUi::Core::FeaturedLink.new(url: abs_url("/four-pillars-of-dependability"))) do %>Explore our Four Pillars of Dependability<% end %>
|
|
67
|
+
</div>
|
|
68
|
+
|
|
69
|
+
<%= render(AblyUi::Core::MeganavBlogPostsList.new(url_base: url_base)) %>
|
|
70
|
+
</section>
|
|
@@ -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:()=>
|
|
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,6 +1,6 @@
|
|
|
1
1
|
<%= button_tag(type: "button",
|
|
2
2
|
class: ["ui-meganav-link", "h-64", "flex", "items-center", "group", theme(:text_color), additional_css],
|
|
3
3
|
data: { id: "meganav-control" },
|
|
4
|
-
aria: { expanded: false, controls: aria_controls, label: "Show #{
|
|
4
|
+
aria: { expanded: false, controls: aria_controls, label: "Show #{content}" }) do -%>
|
|
5
5
|
<%= content -%><%= render(AblyUi::Core::Icon.new(name: "icon-gui-disclosure-arrow", size: "1.5rem", color: "text-cool-black", additional_css: "transform rotate-90 group-hover:text-gui-hover group-focus:text-gui-focus")) %>
|
|
6
6
|
<% end %>
|
|
@@ -2,16 +2,10 @@ module AblyUi
|
|
|
2
2
|
module Core
|
|
3
3
|
class MeganavControl < ViewComponent::Base
|
|
4
4
|
include AblyUi::Core::MeganavConfig
|
|
5
|
-
attr_reader :aria_controls, :
|
|
5
|
+
attr_reader :aria_controls, :additional_css
|
|
6
6
|
|
|
7
|
-
def initialize(
|
|
8
|
-
aria_controls:,
|
|
9
|
-
aria_label:,
|
|
10
|
-
theme_name:,
|
|
11
|
-
additional_css: ''
|
|
12
|
-
)
|
|
7
|
+
def initialize(aria_controls:, theme_name:, additional_css: '')
|
|
13
8
|
@aria_controls = aria_controls
|
|
14
|
-
@aria_label = aria_label
|
|
15
9
|
@additional_css = additional_css
|
|
16
10
|
theme_setup(theme_name)
|
|
17
11
|
end
|
data/lib/ably_ui/core/meganav_control_mobile_panel_close/meganav_control_mobile_panel_close.html.erb
CHANGED
|
@@ -2,11 +2,9 @@
|
|
|
2
2
|
<%= button_tag(type: "button",
|
|
3
3
|
class: "ui-meganav-mobile-link text-gui-default mb-16",
|
|
4
4
|
data: { id: "meganav-control-mobile-panel-close" },
|
|
5
|
-
aria: { expanded: false, controls: aria_controls, label: "Hide panel" }) do -%>
|
|
5
|
+
aria: { expanded: false, controls: @aria_controls, label: "Hide panel" }) do -%>
|
|
6
6
|
<%= render(AblyUi::Core::Icon.new(name: "icon-gui-disclosure-arrow", size: "1.5rem", color: "text-cool-black", additional_css: "relative -top-1 transform rotate-180")) %>
|
|
7
7
|
Back
|
|
8
8
|
<% end %>
|
|
9
|
-
|
|
10
|
-
<hr class="ui-meganav-hr" />
|
|
11
|
-
<% end %>
|
|
9
|
+
<hr class="ui-meganav-hr" />
|
|
12
10
|
</div>
|
data/lib/ably_ui/core/meganav_control_mobile_panel_close/meganav_control_mobile_panel_close.rb
CHANGED
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
module AblyUi
|
|
2
2
|
module Core
|
|
3
3
|
class MeganavControlMobilePanelClose < ViewComponent::Base
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
def initialize(aria_controls:, display_hr: true)
|
|
4
|
+
def initialize(aria_controls:)
|
|
7
5
|
@aria_controls = aria_controls
|
|
8
|
-
@display_hr = display_hr
|
|
9
6
|
end
|
|
10
7
|
end
|
|
11
8
|
end
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
<ul class="hidden md:flex" data-id="meganav-items-desktop">
|
|
2
2
|
<% panels.each do |panel| %>
|
|
3
3
|
<li class="ui-meganav-item">
|
|
4
|
-
<%= render(AblyUi::Core::MeganavControl.new(aria_controls: panel[:id],
|
|
5
|
-
|
|
6
|
-
<span class="lg:hidden"><%= panel[:short_label] %></span>
|
|
4
|
+
<%= render(AblyUi::Core::MeganavControl.new(aria_controls: panel[:id], theme_name: @theme_name)) do %>
|
|
5
|
+
<%= panel[:label] %>
|
|
7
6
|
<% end %>
|
|
8
7
|
|
|
9
|
-
<%= content_tag :div, class:
|
|
8
|
+
<%= content_tag :div, class: 'ui-meganav-panel invisible', data: { id: "meganav-panel" }, id: panel[:id] do %>
|
|
10
9
|
<%= render("AblyUi::Core::#{panel[:component]}".constantize.new(url_base: url_base)) %>
|
|
11
10
|
<% end %>
|
|
12
11
|
</li>
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
<% end %>
|
|
49
49
|
|
|
50
50
|
<%= content_tag(:div, class: "ui-meganav-panel-mobile hidden", id: "#{panel[:id]}-mobile", data: { scroll_lock_scrollable: true }) do %>
|
|
51
|
-
<%= render(AblyUi::Core::MeganavControlMobilePanelClose.new(aria_controls: "#{panel[:id]}-mobile"
|
|
51
|
+
<%= render(AblyUi::Core::MeganavControlMobilePanelClose.new(aria_controls: "#{panel[:id]}-mobile")) %>
|
|
52
52
|
<%= render("AblyUi::Core::#{panel[:component]}".constantize.new(url_base: url_base)) %>
|
|
53
53
|
<% end %>
|
|
54
54
|
</li>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<ul class="hidden md:flex items-center">
|
|
2
2
|
<li class="ui-meganav-item relative">
|
|
3
|
-
<%= render(AblyUi::Core::MeganavControl.new(aria_controls: "account-panel",
|
|
3
|
+
<%= render(AblyUi::Core::MeganavControl.new(aria_controls: "account-panel", theme_name: @theme_name, additional_css: "mr-0")) do %>
|
|
4
4
|
<%= account_name %>
|
|
5
5
|
<% end %>
|
|
6
6
|
|