@ably/ui 13.3.0 → 14.0.0-dev.0ed6be7

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 (503) hide show
  1. package/README.md +25 -152
  2. package/core/.DS_Store +0 -0
  3. package/core/Accordion/.DS_Store +0 -0
  4. package/core/Accordion.js +1 -0
  5. package/core/Code/.DS_Store +0 -0
  6. package/core/Code/component.css +1 -72
  7. package/core/Code/component.js +1 -1
  8. package/core/Code.js +1 -0
  9. package/core/ConnectStateWrapper/component.js +0 -1
  10. package/core/ConnectStateWrapper.js +1 -0
  11. package/core/ContactFooter/.DS_Store +0 -0
  12. package/core/ContactFooter/component.css +7 -10
  13. package/core/ContactFooter/component.js +1 -1
  14. package/core/ContactFooter.js +1 -0
  15. package/core/CookieMessage/.DS_Store +0 -0
  16. package/core/CookieMessage/component.css +10 -13
  17. package/core/CookieMessage/component.js +1 -1
  18. package/core/CookieMessage.js +1 -0
  19. package/core/CustomerLogos/.DS_Store +0 -0
  20. package/core/CustomerLogos/component.js +0 -1
  21. package/core/CustomerLogos.js +1 -0
  22. package/core/DropdownMenu/.DS_Store +0 -0
  23. package/core/DropdownMenu/component.js +0 -1
  24. package/core/DropdownMenu.js +1 -0
  25. package/core/FeaturedLink/.DS_Store +0 -0
  26. package/core/FeaturedLink/component.js +0 -1
  27. package/core/FeaturedLink.js +1 -0
  28. package/core/Flash/.DS_Store +0 -0
  29. package/core/Flash/component.css +19 -22
  30. package/core/Flash/component.js +1 -1
  31. package/core/Flash.js +1 -0
  32. package/core/Footer/.DS_Store +0 -0
  33. package/core/Footer/component.css +22 -25
  34. package/core/Footer/component.js +1 -1
  35. package/core/Footer.js +1 -0
  36. package/core/Icon/.DS_Store +0 -0
  37. package/core/Icon/component.js +0 -1
  38. package/core/Icon.js +1 -0
  39. package/core/Loader/.DS_Store +0 -0
  40. package/core/Loader/component.js +0 -1
  41. package/core/Loader.js +13 -0
  42. package/core/Logo/.DS_Store +0 -0
  43. package/core/Logo/component.js +0 -1
  44. package/core/Logo.js +1 -0
  45. package/core/Meganav/.DS_Store +0 -0
  46. package/core/Meganav/component.css +103 -106
  47. package/core/Meganav/component.js +1 -1
  48. package/core/Meganav.js +1 -0
  49. package/core/MeganavBlogPostsList/.DS_Store +0 -0
  50. package/core/MeganavBlogPostsList/component.js +1 -2
  51. package/core/MeganavBlogPostsList.js +1 -0
  52. package/core/MeganavContentCompany/.DS_Store +0 -0
  53. package/core/MeganavContentCompany/component.js +0 -1
  54. package/core/MeganavContentCompany.js +1 -0
  55. package/core/MeganavContentDevelopers/.DS_Store +0 -0
  56. package/core/MeganavContentDevelopers/component.js +0 -1
  57. package/core/MeganavContentDevelopers.js +1 -0
  58. package/core/MeganavContentProducts/.DS_Store +0 -0
  59. package/core/MeganavContentProducts/component.js +0 -1
  60. package/core/MeganavContentProducts.js +1 -0
  61. package/core/MeganavContentUseCases/.DS_Store +0 -0
  62. package/core/MeganavContentUseCases/component.js +0 -1
  63. package/core/MeganavContentUseCases.js +1 -0
  64. package/core/MeganavControl/.DS_Store +0 -0
  65. package/core/MeganavControl/component.js +1 -1
  66. package/core/MeganavControl.js +1 -0
  67. package/core/MeganavControlMobileDropdown/.DS_Store +0 -0
  68. package/core/MeganavControlMobileDropdown/component.js +1 -1
  69. package/core/MeganavControlMobileDropdown.js +1 -0
  70. package/core/MeganavControlMobilePanelClose/.DS_Store +0 -0
  71. package/core/MeganavControlMobilePanelClose/component.js +1 -1
  72. package/core/MeganavControlMobilePanelClose.js +1 -0
  73. package/core/MeganavControlMobilePanelOpen/.DS_Store +0 -0
  74. package/core/MeganavControlMobilePanelOpen/component.js +1 -1
  75. package/core/MeganavControlMobilePanelOpen.js +1 -0
  76. package/core/MeganavItemsDesktop/.DS_Store +0 -0
  77. package/core/MeganavItemsDesktop/component.js +0 -1
  78. package/core/MeganavItemsDesktop.js +1 -0
  79. package/core/MeganavItemsMobile/.DS_Store +0 -0
  80. package/core/MeganavItemsMobile/component.js +0 -1
  81. package/core/MeganavItemsMobile.js +1 -0
  82. package/core/MeganavItemsSignedIn/.DS_Store +0 -0
  83. package/core/MeganavItemsSignedIn/component.js +0 -1
  84. package/core/MeganavItemsSignedIn.js +1 -0
  85. package/core/MeganavSearch/.DS_Store +0 -0
  86. package/core/MeganavSearch/component.js +0 -1
  87. package/core/MeganavSearch.js +1 -0
  88. package/core/MeganavSearchAutocomplete/.DS_Store +0 -0
  89. package/core/MeganavSearchAutocomplete/component.js +1 -1
  90. package/core/MeganavSearchAutocomplete.js +1 -0
  91. package/core/MeganavSearchPanel/.DS_Store +0 -0
  92. package/core/MeganavSearchPanel/component.js +0 -1
  93. package/core/MeganavSearchPanel.js +1 -0
  94. package/core/MeganavSearchSuggestions/.DS_Store +0 -0
  95. package/core/MeganavSearchSuggestions/component.js +1 -1
  96. package/core/MeganavSearchSuggestions.js +1 -0
  97. package/core/Notice/.DS_Store +0 -0
  98. package/core/Notice/component.css +4 -7
  99. package/core/Notice/component.js +1 -1
  100. package/core/Notice.js +1 -0
  101. package/core/SignOutLink/.DS_Store +0 -0
  102. package/core/SignOutLink/component.js +0 -1
  103. package/core/SignOutLink.js +1 -0
  104. package/core/Slider/.DS_Store +0 -0
  105. package/core/Slider/component.css +4 -7
  106. package/core/Slider/component.js +1 -1
  107. package/core/Slider.js +1 -0
  108. package/core/Table/.DS_Store +0 -0
  109. package/core/Table/Table.js +1 -0
  110. package/core/Table/TableCell.js +7 -0
  111. package/core/Table/TableRow.js +1 -0
  112. package/core/Table/data.js +1 -0
  113. package/core/Table.js +1 -0
  114. package/core/Tooltip.js +1 -0
  115. package/core/css.js +1 -0
  116. package/core/dom-query.js +1 -0
  117. package/core/hubspot-chat-toggle.js +1 -0
  118. package/core/icons/discord.svg +10 -0
  119. package/core/icons/facebook.svg +4 -0
  120. package/core/icons/github.svg +3 -0
  121. package/core/icons/glassdoor.svg +3 -0
  122. package/core/icons/google.svg +3 -0
  123. package/core/icons/icon-display-48hrs.svg +3 -0
  124. package/core/icons/icon-display-about-ably-col.svg +4 -0
  125. package/core/icons/icon-display-api-keys.svg +3 -0
  126. package/core/icons/icon-display-api.svg +3 -0
  127. package/core/icons/icon-display-asset-tracking-col.svg +18 -0
  128. package/core/icons/icon-display-browser.svg +10 -0
  129. package/core/icons/icon-display-calendar.svg +3 -0
  130. package/core/icons/icon-display-call-mobile.svg +3 -0
  131. package/core/icons/icon-display-careers-col.svg +9 -0
  132. package/core/icons/icon-display-case-studies-col.svg +5 -0
  133. package/core/icons/icon-display-chat-col.svg +4 -0
  134. package/core/icons/icon-display-chat-stack-col.svg +4 -0
  135. package/core/icons/icon-display-chat-stack.svg +4 -0
  136. package/core/icons/icon-display-cloud-servers.svg +3 -0
  137. package/core/icons/icon-display-compare-tech-col.svg +9 -0
  138. package/core/icons/icon-display-customers-col.svg +15 -0
  139. package/core/icons/icon-display-data-broadcast-col.svg +26 -0
  140. package/core/icons/icon-display-data-synchronization-col.svg +14 -0
  141. package/core/icons/icon-display-docs-col.svg +7 -0
  142. package/core/icons/icon-display-documentation.svg +3 -0
  143. package/core/icons/icon-display-events-col.svg +13 -0
  144. package/core/icons/icon-display-examples-col.svg +11 -0
  145. package/core/icons/icon-display-gdpr.svg +3 -0
  146. package/core/icons/icon-display-general-comms.svg +3 -0
  147. package/core/icons/icon-display-hipaa.svg +10 -0
  148. package/core/icons/icon-display-integrations-col.svg +8 -0
  149. package/core/icons/icon-display-it-support-access.svg +3 -0
  150. package/core/icons/icon-display-it-support-helpdesk.svg +3 -0
  151. package/core/icons/icon-display-kafka-at-the-edge-col.svg +8 -0
  152. package/core/icons/icon-display-laptop.svg +10 -0
  153. package/core/icons/icon-display-lightbulb-col.svg +10 -0
  154. package/core/icons/icon-display-live-chat.svg +3 -0
  155. package/core/icons/icon-display-map-pin.svg +3 -0
  156. package/core/icons/icon-display-message.svg +3 -0
  157. package/core/icons/icon-display-padlock-closed.svg +3 -0
  158. package/core/icons/icon-display-platform.svg +22 -0
  159. package/core/icons/icon-display-play.svg +3 -0
  160. package/core/icons/icon-display-privacy-shield-framework.svg +7 -0
  161. package/core/icons/icon-display-push-notifications-col.svg +6 -0
  162. package/core/icons/icon-display-quickstart-guides-col.svg +8 -0
  163. package/core/icons/icon-display-resources-col.svg +21 -0
  164. package/core/icons/icon-display-sdks-col.svg +11 -0
  165. package/core/icons/icon-display-servers.svg +3 -0
  166. package/core/icons/icon-display-shopping-cart.svg +10 -0
  167. package/core/icons/icon-display-sla.svg +3 -0
  168. package/core/icons/icon-display-soc2-type2.svg +3 -0
  169. package/core/icons/icon-display-tech-account-comms.svg +3 -0
  170. package/core/icons/icon-display-tutorials-demos-col.svg +25 -0
  171. package/core/icons/icon-display-virtual-events-col.svg +12 -0
  172. package/core/icons/icon-display-virtual-events.svg +12 -0
  173. package/core/icons/icon-gui-ably-badge.svg +3 -0
  174. package/core/icons/icon-gui-arrow-bidirectional-horizontal.svg +3 -0
  175. package/core/icons/icon-gui-arrow-bidirectional-vertical.svg +3 -0
  176. package/core/icons/icon-gui-arrow-down.svg +3 -0
  177. package/core/icons/icon-gui-arrow-left.svg +3 -0
  178. package/core/icons/icon-gui-arrow-right.svg +3 -0
  179. package/core/icons/icon-gui-arrow-up.svg +3 -0
  180. package/core/icons/icon-gui-burger-menu.svg +5 -0
  181. package/core/icons/icon-gui-check-circled-fill-black.svg +4 -0
  182. package/core/icons/icon-gui-check-circled-fill.svg +4 -0
  183. package/core/icons/icon-gui-check-circled.svg +3 -0
  184. package/core/icons/icon-gui-checklist-checked.svg +3 -0
  185. package/core/icons/icon-gui-clock.svg +3 -0
  186. package/core/icons/icon-gui-close.svg +3 -0
  187. package/core/icons/icon-gui-copy.svg +10 -0
  188. package/core/icons/icon-gui-cross-circled-fill.svg +4 -0
  189. package/core/icons/icon-gui-cross-circled.svg +3 -0
  190. package/core/icons/icon-gui-dash-circled.svg +3 -0
  191. package/core/icons/icon-gui-disclosure-arrow.svg +3 -0
  192. package/core/icons/icon-gui-document-generic.svg +3 -0
  193. package/core/icons/icon-gui-enlarge.svg +3 -0
  194. package/core/icons/icon-gui-external-link.svg +3 -0
  195. package/core/icons/icon-gui-filter-flow-step-1.svg +5 -0
  196. package/core/icons/icon-gui-filter-flow-step-2.svg +5 -0
  197. package/core/icons/icon-gui-filter-flow-step-3.svg +5 -0
  198. package/core/icons/icon-gui-history.svg +3 -0
  199. package/core/icons/icon-gui-info.svg +3 -0
  200. package/core/icons/icon-gui-link-arrow.svg +3 -0
  201. package/core/icons/icon-gui-link.svg +4 -0
  202. package/core/icons/icon-gui-live-chat.svg +3 -0
  203. package/core/icons/icon-gui-minus.svg +3 -0
  204. package/core/icons/icon-gui-plus.svg +3 -0
  205. package/core/icons/icon-gui-quote-marks-solid.svg +3 -0
  206. package/core/icons/icon-gui-refresh.svg +10 -0
  207. package/core/icons/icon-gui-resources.svg +3 -0
  208. package/core/icons/icon-gui-search.svg +3 -0
  209. package/core/icons/icon-gui-tick.svg +3 -0
  210. package/core/icons/icon-gui-warning.svg +5 -0
  211. package/core/icons/icon-live-updates-results-metrics-col.svg +26 -0
  212. package/core/icons/icon-multi-user-spaces-col.svg +13 -0
  213. package/core/icons/icon-social-x.svg +3 -0
  214. package/core/icons/icon-tech-apachekafka.svg +3 -0
  215. package/core/icons/linkedin.svg +3 -0
  216. package/core/icons/quote.svg +3 -0
  217. package/core/icons/stackoverflow.svg +3 -0
  218. package/core/icons/twitter.svg +3 -0
  219. package/core/icons/youtube.svg +11 -0
  220. package/core/icons.js +1 -0
  221. package/core/load-sprites.js +1 -0
  222. package/core/react-renderer.js +1 -0
  223. package/core/remote-blogs-posts.js +1 -0
  224. package/core/remote-data-store.js +1 -0
  225. package/core/remote-data-util.js +1 -0
  226. package/core/remote-session-data.js +1 -0
  227. package/core/scripts.js +1 -2
  228. package/core/sprites.svg +1 -525
  229. package/core/styles/buttons.css +122 -0
  230. package/core/styles/forms.css +62 -0
  231. package/core/styles/layout.css +19 -0
  232. package/core/styles/properties.css +276 -0
  233. package/core/styles/text.css +166 -0
  234. package/core/styles.base.css +1 -0
  235. package/core/styles.components.css +33 -0
  236. package/core/styles.css +2 -699
  237. package/core/url-base.js +1 -0
  238. package/core/utils/syntax-highlighter-registry.js +1 -0
  239. package/core/utils/syntax-highlighter.css +67 -0
  240. package/core/utils/syntax-highlighter.js +1 -0
  241. package/package.json +38 -34
  242. package/reset/scripts.js +1 -1
  243. package/reset/styles/normalize.css +353 -0
  244. package/reset/styles/reset.css +129 -0
  245. package/reset/styles.css +2 -477
  246. package/src/.DS_Store +0 -0
  247. package/src/core/.DS_Store +0 -0
  248. package/src/core/Accordion/.DS_Store +0 -0
  249. package/src/core/Accordion/Accordion.stories.tsx +39 -0
  250. package/src/core/Accordion.tsx +147 -0
  251. package/src/core/Code/.DS_Store +0 -0
  252. package/src/core/Code/Code.stories.tsx +71 -0
  253. package/src/core/Code.tsx +45 -0
  254. package/src/core/{ConnectStateWrapper/component.jsx → ConnectStateWrapper.tsx} +7 -3
  255. package/src/core/ContactFooter/.DS_Store +0 -0
  256. package/src/core/ContactFooter/ContactFooter.stories.tsx +11 -0
  257. package/src/core/ContactFooter/component.css +7 -9
  258. package/src/core/ContactFooter.tsx +92 -0
  259. package/src/core/CookieMessage/.DS_Store +0 -0
  260. package/src/core/CookieMessage/CookieMessage.stories.tsx +12 -0
  261. package/src/core/CookieMessage/component.css +10 -12
  262. package/src/core/{CookieMessage/component.jsx → CookieMessage.tsx} +15 -10
  263. package/src/core/CustomerLogos/.DS_Store +0 -0
  264. package/src/core/CustomerLogos/CustomerLogos.stories.tsx +43 -0
  265. package/src/core/CustomerLogos.tsx +35 -0
  266. package/src/core/DropdownMenu/.DS_Store +0 -0
  267. package/src/core/DropdownMenu/DropdownMenu.stories.tsx +48 -0
  268. package/src/core/{DropdownMenu/component.jsx → DropdownMenu.tsx} +64 -36
  269. package/src/core/FeaturedLink/.DS_Store +0 -0
  270. package/src/core/FeaturedLink/FeaturedLink.stories.tsx +43 -0
  271. package/src/core/{FeaturedLink/component.jsx → FeaturedLink.tsx} +26 -18
  272. package/src/core/Flash/.DS_Store +0 -0
  273. package/src/core/Flash/Flash.stories.tsx +37 -0
  274. package/src/core/Flash/component.css +19 -21
  275. package/src/core/{Flash/component.jsx → Flash.tsx} +78 -39
  276. package/src/core/Footer/.DS_Store +0 -0
  277. package/src/core/Footer/Footer.stories.tsx +26 -0
  278. package/src/core/Footer/component.css +22 -24
  279. package/src/core/{Footer/component.jsx → Footer.tsx} +237 -70
  280. package/src/core/Icon/.DS_Store +0 -0
  281. package/src/core/Icon/Icon.stories.tsx +150 -0
  282. package/src/core/Icon.tsx +26 -0
  283. package/src/core/Loader/.DS_Store +0 -0
  284. package/src/core/Loader/Loader.stories.tsx +21 -0
  285. package/src/core/{Loader/component.jsx → Loader.tsx} +11 -8
  286. package/src/core/Logo/.DS_Store +0 -0
  287. package/src/core/Logo/Logo.stories.tsx +12 -0
  288. package/src/core/Logo.tsx +29 -0
  289. package/src/core/Meganav/.DS_Store +0 -0
  290. package/src/core/Meganav/Meganav.stories.tsx +86 -0
  291. package/src/core/Meganav/component.css +103 -105
  292. package/src/core/Meganav/component.js +6 -7
  293. package/src/core/Meganav.tsx +228 -0
  294. package/src/core/MeganavBlogPostsList/.DS_Store +0 -0
  295. package/src/core/{MeganavBlogPostsList/component.jsx → MeganavBlogPostsList.tsx} +15 -14
  296. package/src/core/MeganavContentCompany/.DS_Store +0 -0
  297. package/src/core/{MeganavContentCompany/component.jsx → MeganavContentCompany.tsx} +82 -33
  298. package/src/core/MeganavContentDevelopers/.DS_Store +0 -0
  299. package/src/core/{MeganavContentDevelopers/component.jsx → MeganavContentDevelopers.tsx} +98 -34
  300. package/src/core/MeganavContentProducts/.DS_Store +0 -0
  301. package/src/core/MeganavContentProducts.tsx +165 -0
  302. package/src/core/MeganavContentUseCases/.DS_Store +0 -0
  303. package/src/core/MeganavContentUseCases.tsx +244 -0
  304. package/src/core/MeganavControl/.DS_Store +0 -0
  305. package/src/core/{MeganavControl/component.jsx → MeganavControl.tsx} +18 -12
  306. package/src/core/MeganavControlMobileDropdown/.DS_Store +0 -0
  307. package/src/core/{MeganavControlMobileDropdown/component.jsx → MeganavControlMobileDropdown.tsx} +3 -7
  308. package/src/core/MeganavControlMobilePanelClose/.DS_Store +0 -0
  309. package/src/core/{MeganavControlMobilePanelClose/component.jsx → MeganavControlMobilePanelClose.tsx} +16 -9
  310. package/src/core/MeganavControlMobilePanelOpen/.DS_Store +0 -0
  311. package/src/core/MeganavControlMobilePanelOpen.tsx +32 -0
  312. package/src/core/MeganavItemsDesktop/.DS_Store +0 -0
  313. package/src/core/MeganavItemsDesktop.tsx +68 -0
  314. package/src/core/MeganavItemsMobile/.DS_Store +0 -0
  315. package/src/core/MeganavItemsMobile.tsx +197 -0
  316. package/src/core/MeganavItemsSignedIn/.DS_Store +0 -0
  317. package/src/core/{MeganavItemsSignedIn/component.jsx → MeganavItemsSignedIn.tsx} +59 -23
  318. package/src/core/MeganavSearch/.DS_Store +0 -0
  319. package/src/core/MeganavSearch.tsx +36 -0
  320. package/src/core/MeganavSearchAutocomplete/.DS_Store +0 -0
  321. package/src/core/MeganavSearchAutocomplete.tsx +12 -0
  322. package/src/core/MeganavSearchPanel/.DS_Store +0 -0
  323. package/src/core/MeganavSearchPanel.tsx +52 -0
  324. package/src/core/MeganavSearchSuggestions/.DS_Store +0 -0
  325. package/src/core/MeganavSearchSuggestions.tsx +62 -0
  326. package/src/core/Notice/.DS_Store +0 -0
  327. package/src/core/Notice/component.css +4 -6
  328. package/src/core/Notice/component.js +1 -1
  329. package/src/core/Notice.tsx +104 -0
  330. package/src/core/SignOutLink/.DS_Store +0 -0
  331. package/src/core/SignOutLink.tsx +51 -0
  332. package/src/core/Slider/.DS_Store +0 -0
  333. package/src/core/Slider/Slider.stories.tsx +45 -0
  334. package/src/core/Slider/component.css +4 -6
  335. package/src/core/Slider.tsx +112 -0
  336. package/src/core/Table/.DS_Store +0 -0
  337. package/src/core/Table/Table.stories.tsx +12 -0
  338. package/src/core/Table/Table.tsx +30 -0
  339. package/src/core/Table/TableCell.tsx +84 -0
  340. package/src/core/Table/TableRow.tsx +25 -0
  341. package/src/core/Table/data.tsx +113 -0
  342. package/src/core/Table.tsx +24 -0
  343. package/src/core/Tooltip/Tooltip.stories.tsx +27 -0
  344. package/src/core/Tooltip.tsx +60 -0
  345. package/src/core/icons.js +6 -0
  346. package/src/core/{react-renderer.js → react-renderer.tsx} +9 -7
  347. package/src/core/styles/buttons.css +121 -123
  348. package/src/core/styles/forms.css +49 -51
  349. package/src/core/styles/layout.css +14 -16
  350. package/src/core/styles/properties.css +250 -259
  351. package/src/core/styles/text.css +165 -167
  352. package/src/core/styles.components.css +22 -24
  353. package/src/core/utils/syntax-highlighter.css +55 -59
  354. package/src/pages/Buttons.mdx +121 -0
  355. package/src/pages/Chips.mdx +136 -0
  356. package/src/pages/Colour.mdx +23 -0
  357. package/src/pages/Forms.mdx +173 -0
  358. package/src/pages/Layout.mdx +58 -0
  359. package/src/pages/Typography.mdx +206 -0
  360. package/src/pages/utils.ts +70 -0
  361. package/tailwind.config.js +1 -7
  362. package/tailwind.extend.js +1 -1
  363. package/core/.gitignore +0 -1
  364. package/core/Code.jsx +0 -684
  365. package/core/CompanyAutocomplete/component.css +0 -46
  366. package/core/CompanyAutocomplete/component.js +0 -2
  367. package/core/CompanyAutocomplete/component.js.LICENSE.txt +0 -1
  368. package/core/ConnectStateWrapper.jsx +0 -222
  369. package/core/ContactFooter.jsx +0 -342
  370. package/core/CookieMessage.jsx +0 -204
  371. package/core/CustomerLogos.jsx +0 -144
  372. package/core/DropdownMenu.jsx +0 -313
  373. package/core/FeatureFooter/component.css +0 -13
  374. package/core/FeatureFooter/component.js +0 -1
  375. package/core/FeaturedLink.jsx +0 -241
  376. package/core/Flash.jsx +0 -622
  377. package/core/Footer.jsx +0 -587
  378. package/core/Icon.jsx +0 -152
  379. package/core/Loader.jsx +0 -154
  380. package/core/Logo.jsx +0 -147
  381. package/core/Meganav.jsx +0 -4151
  382. package/core/MeganavBlogPostsList/component.js.LICENSE.txt +0 -1
  383. package/core/MeganavBlogPostsList.jsx +0 -296
  384. package/core/MeganavContentCompany.jsx +0 -1058
  385. package/core/MeganavContentDevelopers.jsx +0 -334
  386. package/core/MeganavContentProducts.jsx +0 -373
  387. package/core/MeganavContentUseCases.jsx +0 -341
  388. package/core/MeganavControl.jsx +0 -199
  389. package/core/MeganavControlMobileDropdown.jsx +0 -197
  390. package/core/MeganavControlMobilePanelClose.jsx +0 -198
  391. package/core/MeganavControlMobilePanelOpen.jsx +0 -193
  392. package/core/MeganavItemsDesktop.jsx +0 -279
  393. package/core/MeganavItemsMobile.jsx +0 -689
  394. package/core/MeganavItemsSignedIn.jsx +0 -643
  395. package/core/MeganavSearch.jsx +0 -434
  396. package/core/MeganavSearchAutocomplete.jsx +0 -117
  397. package/core/MeganavSearchPanel.jsx +0 -386
  398. package/core/MeganavSearchSuggestions.jsx +0 -299
  399. package/core/Notice.jsx +0 -914
  400. package/core/Showcase/component.css +0 -31
  401. package/core/Showcase/component.js +0 -1
  402. package/core/Showcase.jsx +0 -17
  403. package/core/SignOutLink.jsx +0 -157
  404. package/core/Slider.jsx +0 -400
  405. package/core/Uptime/component.css +0 -128
  406. package/core/Uptime/component.js +0 -1
  407. package/core/Uptime.jsx +0 -895
  408. package/core/scripts.js.LICENSE.txt +0 -1
  409. package/preview/tmp/pids/.keep +0 -0
  410. package/reset/.gitignore +0 -1
  411. package/src/core/Code/component.html.erb +0 -3
  412. package/src/core/Code/component.jsx +0 -31
  413. package/src/core/Code/component.rb +0 -12
  414. package/src/core/CompanyAutocomplete/component.css +0 -45
  415. package/src/core/CompanyAutocomplete/component.js +0 -204
  416. package/src/core/ContactFooter/component.html.erb +0 -32
  417. package/src/core/ContactFooter/component.jsx +0 -66
  418. package/src/core/ContactFooter/component.rb +0 -13
  419. package/src/core/CustomerLogos/component.html.erb +0 -9
  420. package/src/core/CustomerLogos/component.jsx +0 -28
  421. package/src/core/CustomerLogos/component.rb +0 -14
  422. package/src/core/FeatureFooter/component.css +0 -12
  423. package/src/core/FeatureFooter/component.html.erb +0 -54
  424. package/src/core/FeatureFooter/component.js +0 -7
  425. package/src/core/FeatureFooter/component.rb +0 -30
  426. package/src/core/FeaturedLink/component.html.erb +0 -15
  427. package/src/core/FeaturedLink/component.rb +0 -21
  428. package/src/core/Footer/component.html.erb +0 -256
  429. package/src/core/Footer/component.rb +0 -14
  430. package/src/core/Icon/component.html.erb +0 -3
  431. package/src/core/Icon/component.jsx +0 -19
  432. package/src/core/Icon/component.rb +0 -25
  433. package/src/core/Loader/component.html.erb +0 -18
  434. package/src/core/Loader/component.rb +0 -19
  435. package/src/core/Logo/component.html.erb +0 -3
  436. package/src/core/Logo/component.jsx +0 -20
  437. package/src/core/Logo/component.rb +0 -31
  438. package/src/core/Meganav/component.html.erb +0 -31
  439. package/src/core/Meganav/component.jsx +0 -123
  440. package/src/core/Meganav/component.rb +0 -60
  441. package/src/core/MeganavBlogPostsList/component.html.erb +0 -5
  442. package/src/core/MeganavBlogPostsList/component.rb +0 -13
  443. package/src/core/MeganavContentCompany/component.html.erb +0 -90
  444. package/src/core/MeganavContentCompany/component.rb +0 -14
  445. package/src/core/MeganavContentDevelopers/component.html.erb +0 -129
  446. package/src/core/MeganavContentDevelopers/component.rb +0 -13
  447. package/src/core/MeganavContentProducts/component.html.erb +0 -83
  448. package/src/core/MeganavContentProducts/component.jsx +0 -105
  449. package/src/core/MeganavContentProducts/component.rb +0 -14
  450. package/src/core/MeganavContentUseCases/component.html.erb +0 -135
  451. package/src/core/MeganavContentUseCases/component.jsx +0 -147
  452. package/src/core/MeganavContentUseCases/component.rb +0 -13
  453. package/src/core/MeganavControl/component.html.erb +0 -6
  454. package/src/core/MeganavControl/component.rb +0 -20
  455. package/src/core/MeganavControlMobileDropdown/component.html.erb +0 -7
  456. package/src/core/MeganavControlMobileDropdown/component.rb +0 -11
  457. package/src/core/MeganavControlMobilePanelClose/component.html.erb +0 -12
  458. package/src/core/MeganavControlMobilePanelClose/component.rb +0 -12
  459. package/src/core/MeganavControlMobilePanelOpen/component.html.erb +0 -7
  460. package/src/core/MeganavControlMobilePanelOpen/component.jsx +0 -25
  461. package/src/core/MeganavControlMobilePanelOpen/component.rb +0 -9
  462. package/src/core/MeganavItemsDesktop/component.html.erb +0 -17
  463. package/src/core/MeganavItemsDesktop/component.jsx +0 -49
  464. package/src/core/MeganavItemsDesktop/component.rb +0 -23
  465. package/src/core/MeganavItemsMobile/component.html.erb +0 -75
  466. package/src/core/MeganavItemsMobile/component.jsx +0 -137
  467. package/src/core/MeganavItemsMobile/component.rb +0 -21
  468. package/src/core/MeganavItemsSignedIn/component.html.erb +0 -53
  469. package/src/core/MeganavItemsSignedIn/component.rb +0 -33
  470. package/src/core/MeganavSearch/component.html.erb +0 -15
  471. package/src/core/MeganavSearch/component.jsx +0 -33
  472. package/src/core/MeganavSearch/component.rb +0 -13
  473. package/src/core/MeganavSearchAutocomplete/component.html.erb +0 -6
  474. package/src/core/MeganavSearchAutocomplete/component.jsx +0 -14
  475. package/src/core/MeganavSearchAutocomplete/component.rb +0 -6
  476. package/src/core/MeganavSearchPanel/component.html.erb +0 -22
  477. package/src/core/MeganavSearchPanel/component.jsx +0 -39
  478. package/src/core/MeganavSearchPanel/component.rb +0 -13
  479. package/src/core/MeganavSearchSuggestions/component.html.erb +0 -22
  480. package/src/core/MeganavSearchSuggestions/component.jsx +0 -49
  481. package/src/core/MeganavSearchSuggestions/component.rb +0 -18
  482. package/src/core/Notice/component.html.erb +0 -16
  483. package/src/core/Notice/component.jsx +0 -71
  484. package/src/core/Notice/component.rb +0 -29
  485. package/src/core/Showcase/component.css +0 -30
  486. package/src/core/Showcase/component.html.erb +0 -76
  487. package/src/core/Showcase/component.js +0 -180
  488. package/src/core/Showcase/component.jsx +0 -0
  489. package/src/core/Showcase/component.rb +0 -190
  490. package/src/core/SignOutLink/component.html.erb +0 -1
  491. package/src/core/SignOutLink/component.jsx +0 -32
  492. package/src/core/SignOutLink/component.rb +0 -17
  493. package/src/core/Slider/component.html.erb +0 -28
  494. package/src/core/Slider/component.jsx +0 -86
  495. package/src/core/Slider/component.rb +0 -38
  496. package/src/core/Uptime/component.css +0 -127
  497. package/src/core/Uptime/component.html.erb +0 -0
  498. package/src/core/Uptime/component.js +0 -1
  499. package/src/core/Uptime/component.jsx +0 -183
  500. package/src/core/Uptime/component.rb +0 -7
  501. package/src/core/core.rb +0 -81
  502. /package/{preview/log/.keep → core/Accordion/component.js} +0 -0
  503. /package/{preview/tmp/.keep → src/core/Accordion/component.js} +0 -0
@@ -1,9 +1,21 @@
1
1
  import React from "react";
2
- import T from "prop-types";
3
2
 
4
- import FeaturedLink from "../FeaturedLink/component.jsx";
3
+ import FeaturedLink from "../FeaturedLink/component.tsx";
4
+ import { AbsUrl } from "../Meganav/component.tsx";
5
5
 
6
- const MeganavBlogPostsList = ({ recentBlogPosts, absUrl }) =>
6
+ type MeganavBlogPostsListProps = {
7
+ recentBlogPosts: {
8
+ link: string;
9
+ title: string;
10
+ pubDate: string;
11
+ }[];
12
+ absUrl: AbsUrl;
13
+ };
14
+
15
+ const MeganavBlogPostsList = ({
16
+ recentBlogPosts,
17
+ absUrl,
18
+ }: MeganavBlogPostsListProps) =>
7
19
  recentBlogPosts ? (
8
20
  <div 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">
9
21
  <h3 className="ui-meganav-overline" id="meganav-company-panel-list-blog">
@@ -26,15 +38,4 @@ const MeganavBlogPostsList = ({ recentBlogPosts, absUrl }) =>
26
38
  </div>
27
39
  ) : null;
28
40
 
29
- MeganavBlogPostsList.propTypes = {
30
- recentBlogPosts: T.arrayOf(
31
- T.shape({
32
- link: T.string,
33
- title: T.string,
34
- pubDate: T.string,
35
- })
36
- ),
37
- absUrl: T.func,
38
- };
39
-
40
41
  export default MeganavBlogPostsList;
@@ -1,58 +1,91 @@
1
1
  import React from "react";
2
- import T from "prop-types";
3
2
 
4
- import MeganavBlogPostsList from "../MeganavBlogPostsList/component.jsx";
5
- import ConnectStateWrapper from "../ConnectStateWrapper/component.jsx";
3
+ import MeganavBlogPostsList from "../MeganavBlogPostsList/component.tsx";
4
+ import ConnectStateWrapper from "../ConnectStateWrapper/component.tsx";
5
+ import { selectRecentBlogPosts } from "../remote-blogs-posts.js";
6
+ import Icon from "../Icon/component.tsx";
7
+ import { AbsUrl } from "../Meganav/component.tsx";
6
8
 
7
- import { selectRecentBlogPosts } from "../remote-blogs-posts";
8
-
9
- import Icon from "../Icon/component.jsx";
9
+ type MeganavContentCompanyProps = {
10
+ absUrl: AbsUrl;
11
+ paths: {
12
+ awsLogo: string;
13
+ };
14
+ };
10
15
 
11
- const MeganavContentCompany = ({ paths, absUrl }) => {
12
- const BlogPostsList = ConnectStateWrapper(MeganavBlogPostsList, { recentBlogPosts: selectRecentBlogPosts });
16
+ const MeganavContentCompany = ({
17
+ paths,
18
+ absUrl,
19
+ }: MeganavContentCompanyProps) => {
20
+ const BlogPostsList = ConnectStateWrapper(MeganavBlogPostsList, {
21
+ recentBlogPosts: selectRecentBlogPosts,
22
+ });
13
23
 
14
24
  return (
15
25
  <div className="flex max-w-screen-xl mx-auto">
16
26
  <div className="ui-meganav-content-spacer"></div>
17
27
  <section className="grid grid-cols-12 ui-grid-gap-x w-full">
18
28
  <div 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">
19
- <h3 className="ui-meganav-overline" id="meganav-company-panel-list-why-companies">
29
+ <h3
30
+ className="ui-meganav-overline"
31
+ id="meganav-company-panel-list-why-companies"
32
+ >
20
33
  Why companies choose Ably
21
34
  </h3>
22
35
  <ul aria-labelledby="meganav-company-panel-list-why-companies">
23
36
  <li>
24
- <a href={absUrl("/customers")} className="ui-meganav-media-with-image group">
37
+ <a
38
+ href={absUrl("/customers")}
39
+ className="ui-meganav-media-with-image group"
40
+ >
25
41
  <Icon name="icon-display-customers-col" size="2.5rem" />
26
42
  <div className="flex flex-col justify-center">
27
43
  <p className="ui-meganav-media-heading">Customers</p>
28
- <p className="ui-meganav-media-copy">Ably supports customers across multiple industries.</p>
44
+ <p className="ui-meganav-media-copy">
45
+ Ably supports customers across multiple industries.
46
+ </p>
29
47
  </div>
30
48
  </a>
31
49
  </li>
32
50
  <li>
33
- <a href={absUrl("/case-studies")} className="ui-meganav-media-with-image group">
51
+ <a
52
+ href={absUrl("/case-studies")}
53
+ className="ui-meganav-media-with-image group"
54
+ >
34
55
  <Icon name="icon-display-case-studies-col" size="2.5rem" />
35
56
  <div className="flex flex-col justify-center">
36
57
  <p className="ui-meganav-media-heading">Case studies</p>
37
- <p className="ui-meganav-media-copy">Discover how customers are benefiting from Ably.</p>
58
+ <p className="ui-meganav-media-copy">
59
+ Discover how customers are benefiting from Ably.
60
+ </p>
38
61
  </div>
39
62
  </a>
40
63
  </li>
41
64
  <li>
42
- <a href={absUrl("/compare")} className="ui-meganav-media-with-image group">
65
+ <a
66
+ href={absUrl("/compare")}
67
+ className="ui-meganav-media-with-image group"
68
+ >
43
69
  <Icon name="icon-display-compare-tech-col" size="2.5rem" />
44
70
  <div className="flex flex-col justify-center">
45
71
  <p className="ui-meganav-media-heading">Compare our tech</p>
46
- <p className="ui-meganav-media-copy">Choose the right realtime service.</p>
72
+ <p className="ui-meganav-media-copy">
73
+ Choose the right realtime service.
74
+ </p>
47
75
  </div>
48
76
  </a>
49
77
  </li>
50
78
  <li>
51
- <a href={absUrl("/aws")} className="ui-meganav-media-with-image group">
79
+ <a
80
+ href={absUrl("/aws")}
81
+ className="ui-meganav-media-with-image group"
82
+ >
52
83
  <img src={paths.awsLogo} alt="AWS logo" />
53
84
  <div className="flex flex-col justify-center">
54
85
  <p className="ui-meganav-media-heading">Partners</p>
55
- <p className="ui-meganav-media-copy">Ably collaborates and integrates with AWS.</p>
86
+ <p className="ui-meganav-media-copy">
87
+ Ably collaborates and integrates with AWS.
88
+ </p>
56
89
  </div>
57
90
  </a>
58
91
  </li>
@@ -60,40 +93,63 @@ const MeganavContentCompany = ({ paths, absUrl }) => {
60
93
  </div>
61
94
 
62
95
  <div className="col-span-full md:col-span-4 pb-8 md:py-24 lg:py-32 px-24 sm:px-32 md:px-0">
63
- <ul className="md:mt-40" aria-labelledby="meganav-company-panel-list-why-companies">
96
+ <ul
97
+ className="md:mt-40"
98
+ aria-labelledby="meganav-company-panel-list-why-companies"
99
+ >
64
100
  <li>
65
- <a href={absUrl("/resources")} className="ui-meganav-media-with-image group">
101
+ <a
102
+ href={absUrl("/resources")}
103
+ className="ui-meganav-media-with-image group"
104
+ >
66
105
  <Icon name="icon-display-resources-col" size="2.5rem" />
67
106
  <div className="flex flex-col justify-center">
68
107
  <p className="ui-meganav-media-heading">Resources</p>
69
- <p className="ui-meganav-media-copy">Learn more about realtime with our handy resources.</p>
108
+ <p className="ui-meganav-media-copy">
109
+ Learn more about realtime with our handy resources.
110
+ </p>
70
111
  </div>
71
112
  </a>
72
113
  </li>
73
114
  <li>
74
- <a href={absUrl("/about")} className="ui-meganav-media-with-image group">
115
+ <a
116
+ href={absUrl("/about")}
117
+ className="ui-meganav-media-with-image group"
118
+ >
75
119
  <Icon name="icon-display-about-ably-col" size="2.5rem" />
76
120
  <div className="flex flex-col justify-center">
77
121
  <p className="ui-meganav-media-heading">About Ably</p>
78
- <p className="ui-meganav-media-copy">Find out more about Ably’s mission.</p>
122
+ <p className="ui-meganav-media-copy">
123
+ Find out more about Ably’s mission.
124
+ </p>
79
125
  </div>
80
126
  </a>
81
127
  </li>
82
128
  <li>
83
- <a href={absUrl("/careers")} className="ui-meganav-media-with-image group">
129
+ <a
130
+ href={absUrl("/careers")}
131
+ className="ui-meganav-media-with-image group"
132
+ >
84
133
  <Icon name="icon-display-careers-col" size="2.5rem" />
85
134
  <div className="flex flex-col justify-center">
86
135
  <p className="ui-meganav-media-heading">Careers</p>
87
- <p className="ui-meganav-media-copy">Discover our open roles and core Ably values.</p>
136
+ <p className="ui-meganav-media-copy">
137
+ Discover our open roles and core Ably values.
138
+ </p>
88
139
  </div>
89
140
  </a>
90
141
  </li>
91
142
  <li>
92
- <a href={absUrl("/events")} className="ui-meganav-media-with-image group">
143
+ <a
144
+ href={absUrl("/events")}
145
+ className="ui-meganav-media-with-image group"
146
+ >
93
147
  <Icon name="icon-display-events-col" size="2.5rem" />
94
148
  <div className="flex flex-col justify-center">
95
149
  <p className="ui-meganav-media-heading">Events</p>
96
- <p className="ui-meganav-media-copy">Join Ably at upcoming events.</p>
150
+ <p className="ui-meganav-media-copy">
151
+ Join Ably at upcoming events.
152
+ </p>
97
153
  </div>
98
154
  </a>
99
155
  </li>
@@ -107,11 +163,4 @@ const MeganavContentCompany = ({ paths, absUrl }) => {
107
163
  );
108
164
  };
109
165
 
110
- MeganavContentCompany.propTypes = {
111
- absUrl: T.func,
112
- paths: T.shape({
113
- awsLogo: T.string,
114
- }),
115
- };
116
-
117
166
  export default MeganavContentCompany;
@@ -1,50 +1,73 @@
1
1
  import React from "react";
2
- import T from "prop-types";
3
2
 
4
- import Icon from "../Icon/component.jsx";
3
+ import Icon from "../Icon/component.tsx";
4
+ import { AbsUrl } from "../Meganav/component.tsx";
5
5
 
6
- const MeganavContentDevelopers = ({ absUrl }) => (
6
+ const MeganavContentDevelopers = ({ absUrl }: { absUrl: AbsUrl }) => (
7
7
  <div className="flex max-w-screen-xl mx-auto">
8
8
  <div className="ui-meganav-content-spacer"></div>
9
9
  <section className="grid grid-cols-12 ui-grid-gap-x w-full">
10
10
  <div 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">
11
- <h3 className="ui-meganav-overline uppercase" id="meganav-developers-panel-explore">
11
+ <h3
12
+ className="ui-meganav-overline uppercase"
13
+ id="meganav-developers-panel-explore"
14
+ >
12
15
  Explore
13
16
  </h3>
14
17
  <ul aria-labelledby="meganav-developers-panel-explore">
15
18
  <li>
16
- <a href={absUrl("/docs")} className="ui-meganav-media-with-image group">
19
+ <a
20
+ href={absUrl("/docs")}
21
+ className="ui-meganav-media-with-image group"
22
+ >
17
23
  <Icon name="icon-display-docs-col" size="2.5rem" />
18
24
  <div className="flex flex-col justify-center">
19
25
  <p className="ui-meganav-media-heading">Documentation</p>
20
- <p className="ui-meganav-media-copy">Technical guides to help you build with Ably.</p>
26
+ <p className="ui-meganav-media-copy">
27
+ Technical guides to help you build with Ably.
28
+ </p>
21
29
  </div>
22
30
  </a>
23
31
  </li>
24
32
  <li>
25
- <a href={absUrl("/docs/quick-start-guide")} className="ui-meganav-media-with-image group">
33
+ <a
34
+ href={absUrl("/docs/quick-start-guide")}
35
+ className="ui-meganav-media-with-image group"
36
+ >
26
37
  <Icon name="icon-display-quickstart-guides-col" size="2.5rem" />
27
38
  <div className="flex flex-col justify-center">
28
39
  <p className="ui-meganav-media-heading">Quickstart guides</p>
29
- <p className="ui-meganav-media-copy">Documentation to help you get started quickly.</p>
40
+ <p className="ui-meganav-media-copy">
41
+ Documentation to help you get started quickly.
42
+ </p>
30
43
  </div>
31
44
  </a>
32
45
  </li>
33
46
  <li>
34
- <a href={absUrl("/integrations")} className="ui-meganav-media-with-image group">
47
+ <a
48
+ href={absUrl("/integrations")}
49
+ className="ui-meganav-media-with-image group"
50
+ >
35
51
  <Icon name="icon-display-integrations-col" size="2.5rem" />
36
52
  <div className="flex flex-col justify-center">
37
53
  <p className="ui-meganav-media-heading">Integrations</p>
38
- <p className="ui-meganav-media-copy">Find out more about Ably integrations. </p>
54
+ <p className="ui-meganav-media-copy">
55
+ Find out more about Ably integrations.{" "}
56
+ </p>
39
57
  </div>
40
58
  </a>
41
59
  </li>
42
60
  <li>
43
- <a href={absUrl("/examples")} className="ui-meganav-media-with-image group">
61
+ <a
62
+ href={absUrl("/examples")}
63
+ className="ui-meganav-media-with-image group"
64
+ >
44
65
  <Icon name="icon-display-examples-col" size="2.5rem" />
45
66
  <div className="flex flex-col justify-center">
46
67
  <p className="ui-meganav-media-heading">Live examples</p>
47
- <p className="ui-meganav-media-copy">Discover our features and their use cases.</p>
68
+ <p className="ui-meganav-media-copy">
69
+ Discover our features and their use cases.
70
+ </p>
48
71
  </div>
49
72
  </a>
50
73
  </li>
@@ -52,40 +75,67 @@ const MeganavContentDevelopers = ({ absUrl }) => (
52
75
  </div>
53
76
 
54
77
  <div className="col-span-full md:col-span-4 pb-8 md:py-24 lg:py-32 px-24 sm:px-32 md:px-0">
55
- <ul className="md:mt-40" aria-labelledby="meganav-developers-panel-explore">
78
+ <ul
79
+ className="md:mt-40"
80
+ aria-labelledby="meganav-developers-panel-explore"
81
+ >
56
82
  <li>
57
- <a href={absUrl("/docs/sdks")} className="ui-meganav-media-with-image group">
83
+ <a
84
+ href={absUrl("/docs/sdks")}
85
+ className="ui-meganav-media-with-image group"
86
+ >
58
87
  <Icon name="icon-display-sdks-col" size="2.5rem" />
59
88
  <div className="flex flex-col justify-center">
60
89
  <p className="ui-meganav-media-heading">SDKs</p>
61
- <p className="ui-meganav-media-copy">Download an SDK to help you build realtime apps faster.</p>
90
+ <p className="ui-meganav-media-copy">
91
+ Download an SDK to help you build realtime apps faster.
92
+ </p>
62
93
  </div>
63
94
  </a>
64
95
  </li>
65
96
  <li>
66
- <a href={absUrl("/tutorials")} className="ui-meganav-media-with-image group">
97
+ <a
98
+ href={absUrl("/tutorials")}
99
+ className="ui-meganav-media-with-image group"
100
+ >
67
101
  <Icon name="icon-display-tutorials-demos-col" size="2.5rem" />
68
102
  <div className="flex flex-col justify-center">
69
103
  <p className="ui-meganav-media-heading">Tutorials & Demos</p>
70
- <p className="ui-meganav-media-copy">Get stuck in with our hands-on resources.</p>
104
+ <p className="ui-meganav-media-copy">
105
+ Get stuck in with our hands-on resources.
106
+ </p>
71
107
  </div>
72
108
  </a>
73
109
  </li>
74
110
  <li>
75
- <a href={absUrl("/reference-guide-chat")} className="ui-meganav-media-with-image group">
111
+ <a
112
+ href={absUrl("/reference-guide-chat")}
113
+ className="ui-meganav-media-with-image group"
114
+ >
76
115
  <Icon name="icon-display-chat-col" size="2.5rem" />
77
116
  <div className="flex flex-col justify-center">
78
- <p className="ui-meganav-media-heading">Chat apps reference guide</p>
79
- <p className="ui-meganav-media-copy">Learn how to build chat apps with Ably.</p>
117
+ <p className="ui-meganav-media-heading">
118
+ Chat apps reference guide
119
+ </p>
120
+ <p className="ui-meganav-media-copy">
121
+ Learn how to build chat apps with Ably.
122
+ </p>
80
123
  </div>
81
124
  </a>
82
125
  </li>
83
126
  <li>
84
- <a href={absUrl("/reference-guide-multiplayer")} className="ui-meganav-media-with-image group">
127
+ <a
128
+ href={absUrl("/reference-guide-multiplayer")}
129
+ className="ui-meganav-media-with-image group"
130
+ >
85
131
  <Icon name="icon-multi-user-spaces-col" size="2.5rem" />
86
132
  <div className="flex flex-col justify-center">
87
- <p className="ui-meganav-media-heading">Multiplayer reference guide</p>
88
- <p className="ui-meganav-media-copy">Learn how to build collaborative features with Ably.</p>
133
+ <p className="ui-meganav-media-heading">
134
+ Multiplayer reference guide
135
+ </p>
136
+ <p className="ui-meganav-media-copy">
137
+ Learn how to build collaborative features with Ably.
138
+ </p>
89
139
  </div>
90
140
  </a>
91
141
  </li>
@@ -93,33 +143,48 @@ const MeganavContentDevelopers = ({ absUrl }) => (
93
143
  </div>
94
144
 
95
145
  <div 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">
96
- <h3 className="ui-meganav-overline uppercase" id="meganav-developers-panel-quick-links">
146
+ <h3
147
+ className="ui-meganav-overline uppercase"
148
+ id="meganav-developers-panel-quick-links"
149
+ >
97
150
  Quick links
98
151
  </h3>
99
152
  <ul aria-labelledby="meganav-developers-panel-quick-links">
100
153
  <li>
101
- <a href="https://discord.gg/jwBPhEZ9g5" className="group ui-meganav-media py-12">
154
+ <a
155
+ href="https://discord.gg/jwBPhEZ9g5"
156
+ className="group ui-meganav-media py-12"
157
+ >
102
158
  <p className="ui-meganav-media-heading">Discord</p>
103
159
  </a>
104
160
  </li>
105
161
  <li>
106
- <a href="https://github.com/ably" className="group ui-meganav-media py-12">
162
+ <a
163
+ href="https://github.com/ably"
164
+ className="group ui-meganav-media py-12"
165
+ >
107
166
  <p className="ui-meganav-media-heading">GitHub</p>
108
167
  </a>
109
168
  </li>
110
169
  <li>
111
- <a href="https://changelog.ably.com/" className="group ui-meganav-media py-12">
170
+ <a
171
+ href="https://changelog.ably.com/"
172
+ className="group ui-meganav-media py-12"
173
+ >
112
174
  <p className="ui-meganav-media-heading">Changelog</p>
113
175
  </a>
114
176
  </li>
115
177
  <li>
116
- <a href="https://status.ably.com/" className="group ui-meganav-media py-12">
178
+ <a
179
+ href="https://status.ably.com/"
180
+ className="group ui-meganav-media py-12"
181
+ >
117
182
  <p className="ui-meganav-media-heading">
118
183
  Status
119
184
  <iframe
120
185
  title="Ably status"
121
186
  src="https://status.ably.com/embed/icon"
122
- allowtransparency="true"
187
+ style={{ backgroundColor: "transparent" }}
123
188
  frameBorder="0"
124
189
  scrolling="no"
125
190
  className="w-24 h-24 ml-4 border-none pointer-events-none align-middle"
@@ -128,7 +193,10 @@ const MeganavContentDevelopers = ({ absUrl }) => (
128
193
  </a>
129
194
  </li>
130
195
  <li>
131
- <a href={absUrl("/support")} className="group ui-meganav-media py-12">
196
+ <a
197
+ href={absUrl("/support")}
198
+ className="group ui-meganav-media py-12"
199
+ >
132
200
  <p className="ui-meganav-media-heading">Support & FAQs</p>
133
201
  </a>
134
202
  </li>
@@ -139,8 +207,4 @@ const MeganavContentDevelopers = ({ absUrl }) => (
139
207
  </div>
140
208
  );
141
209
 
142
- MeganavContentDevelopers.propTypes = {
143
- absUrl: T.func,
144
- };
145
-
146
210
  export default MeganavContentDevelopers;
@@ -0,0 +1,165 @@
1
+ import React from "react";
2
+
3
+ import FeaturedLink from "../FeaturedLink/component.tsx";
4
+ import { AbsUrl } from "../Meganav/component.tsx";
5
+
6
+ type MeganavContentProductsProps = {
7
+ paths: {
8
+ ablyStack: string;
9
+ iconSprites: string;
10
+ };
11
+ absUrl: AbsUrl;
12
+ };
13
+
14
+ const MeganavContentProducts = ({
15
+ paths,
16
+ absUrl,
17
+ }: MeganavContentProductsProps) => (
18
+ <div className="flex max-w-screen-xl mx-auto">
19
+ <div className="ui-meganav-content-spacer bg-extra-light-grey"></div>
20
+ <section className="grid grid-cols-12 ui-grid-gap-x w-full">
21
+ <div 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">
22
+ <div className="flex mb-20">
23
+ <img src={paths.ablyStack} alt="Ably homepage" />
24
+ <h3 className="ui-meganav-overline ml-24">The Ably Platform</h3>
25
+ </div>
26
+ <p className="ui-text-p2 font-bold mb-24" style={{ maxWidth: "330px" }}>
27
+ Easily power any realtime experience in your application. No complex
28
+ infrastructure to manage or provision. Just a simple API that handles
29
+ everything realtime, and lets you focus on your code.
30
+ </p>
31
+
32
+ <FeaturedLink url={absUrl("/platform")} textSize="text-p2">
33
+ Explore how it works
34
+ </FeaturedLink>
35
+ </div>
36
+
37
+ <div 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">
38
+ <h3
39
+ className="ui-meganav-overline"
40
+ id="meganav-products-panel-list-examples"
41
+ >
42
+ Products
43
+ </h3>
44
+ <ul
45
+ className="mb-16"
46
+ aria-labelledby="meganav-products-panel-list-examples"
47
+ >
48
+ <li>
49
+ <a
50
+ href={absUrl("/solutions/channels")}
51
+ className="group ui-meganav-media"
52
+ >
53
+ <p className="ui-meganav-media-heading">Pub/Sub Channels</p>
54
+ <p className="ui-meganav-media-copy">
55
+ Build infinitely scalable realtime applications.
56
+ </p>
57
+ </a>
58
+ </li>
59
+ <li>
60
+ <a href={absUrl("/spaces")} className="group ui-meganav-media">
61
+ <p className="ui-meganav-media-heading">Spaces (Beta)</p>
62
+ <p className="ui-meganav-media-copy">
63
+ Create multi-user collaborative environments.
64
+ </p>
65
+ </a>
66
+ </li>
67
+ <li>
68
+ <a href={absUrl("/livesync")} className="group ui-meganav-media">
69
+ <p className="ui-meganav-media-heading">
70
+ LiveSync (Early access)
71
+ </p>
72
+ <p className="ui-meganav-media-copy">
73
+ Keep clients in sync with any relational database.
74
+ </p>
75
+ </a>
76
+ </li>
77
+ </ul>
78
+ </div>
79
+
80
+ <div 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">
81
+ <h3
82
+ className="ui-meganav-overline"
83
+ id="meganav-products-panel-list-our-technology"
84
+ >
85
+ Technology
86
+ </h3>
87
+ <ul
88
+ className="mb-16"
89
+ aria-labelledby="meganav-products-panel-list-our-technology"
90
+ >
91
+ <li>
92
+ <a
93
+ href={absUrl("/four-pillars-of-dependability#performance")}
94
+ className="ui-meganav-media group"
95
+ >
96
+ <p className="ui-meganav-media-heading">
97
+ Predictable performance
98
+ </p>
99
+ <p className="ui-meganav-media-copy">
100
+ A low-latency and high-throughput global network.
101
+ </p>
102
+ </a>
103
+ </li>
104
+ <li>
105
+ <a
106
+ href={absUrl("/four-pillars-of-dependability#integrity")}
107
+ className="ui-meganav-media group"
108
+ >
109
+ <p className="ui-meganav-media-heading">
110
+ Guaranteed ordering & delivery
111
+ </p>
112
+ <p className="ui-meganav-media-copy">
113
+ Data is delivered - in order - even after disconnections.
114
+ </p>
115
+ </a>
116
+ </li>
117
+ <li>
118
+ <a
119
+ href={absUrl("/four-pillars-of-dependability#reliability")}
120
+ className="ui-meganav-media group"
121
+ >
122
+ <p className="ui-meganav-media-heading">
123
+ Fault tolerant infrastructure
124
+ </p>
125
+ <p className="ui-meganav-media-copy">
126
+ Redundancy is built in at global and regional levels.
127
+ </p>
128
+ </a>
129
+ </li>
130
+ <li>
131
+ <a
132
+ href={absUrl("/four-pillars-of-dependability#availability")}
133
+ className="ui-meganav-media group"
134
+ >
135
+ <p className="ui-meganav-media-heading">
136
+ High scalability & availability
137
+ </p>
138
+ <p className="ui-meganav-media-copy">
139
+ Built for scale with legitimate 99.999% uptime SLAs.
140
+ </p>
141
+ </a>
142
+ </li>
143
+ <li>
144
+ <a href={absUrl("/network")} className="ui-meganav-media group">
145
+ <p className="ui-meganav-media-heading">Global edge network</p>
146
+ <p className="ui-meganav-media-copy">
147
+ An edge network of 15 core routing datacenters and 205+ PoPs.
148
+ </p>
149
+ </a>
150
+ </li>
151
+ </ul>
152
+
153
+ <FeaturedLink
154
+ url={absUrl("/four-pillars-of-dependability")}
155
+ textSize="text-p3"
156
+ >
157
+ Explore Four Pillars of Dependability
158
+ </FeaturedLink>
159
+ </div>
160
+ </section>
161
+ <div className="ui-meganav-content-spacer"></div>
162
+ </div>
163
+ );
164
+
165
+ export default MeganavContentProducts;