@ably/ui 13.3.0 → 14.0.0-dev.1939f45

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 (501) hide show
  1. package/README.md +26 -155
  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.js +1 -0
  10. package/core/ContactFooter/.DS_Store +0 -0
  11. package/core/ContactFooter/component.css +0 -1
  12. package/core/ContactFooter/component.js +1 -1
  13. package/core/ContactFooter.js +1 -0
  14. package/core/CookieMessage/.DS_Store +0 -0
  15. package/core/CookieMessage/component.css +0 -1
  16. package/core/CookieMessage.js +1 -0
  17. package/core/CustomerLogos/.DS_Store +0 -0
  18. package/core/CustomerLogos.js +1 -0
  19. package/core/DropdownMenu/.DS_Store +0 -0
  20. package/core/DropdownMenu.js +1 -0
  21. package/core/Expander.js +1 -0
  22. package/core/FeaturedLink/.DS_Store +0 -0
  23. package/core/FeaturedLink.js +1 -0
  24. package/core/Flash/.DS_Store +0 -0
  25. package/core/Flash/component.css +0 -1
  26. package/core/Flash.js +1 -0
  27. package/core/Footer/.DS_Store +0 -0
  28. package/core/Footer/component.css +0 -1
  29. package/core/Footer.js +1 -0
  30. package/core/Icon/.DS_Store +0 -0
  31. package/core/Icon.js +1 -0
  32. package/core/Loader/.DS_Store +0 -0
  33. package/core/Loader.js +13 -0
  34. package/core/Logo/.DS_Store +0 -0
  35. package/core/Logo.js +1 -0
  36. package/core/Meganav/.DS_Store +0 -0
  37. package/core/Meganav/component.css +2 -3
  38. package/core/Meganav/component.js +1 -1
  39. package/core/Meganav.js +1 -0
  40. package/core/MeganavBlogPostsList/.DS_Store +0 -0
  41. package/core/MeganavBlogPostsList/component.js +1 -2
  42. package/core/MeganavBlogPostsList.js +1 -0
  43. package/core/MeganavContentCompany.js +1 -0
  44. package/core/MeganavContentDevelopers.js +1 -0
  45. package/core/MeganavContentProducts.js +1 -0
  46. package/core/MeganavContentUseCases.js +1 -0
  47. package/core/MeganavControl/.DS_Store +0 -0
  48. package/core/MeganavControl/component.js +1 -1
  49. package/core/MeganavControl.js +1 -0
  50. package/core/MeganavControlMobileDropdown/.DS_Store +0 -0
  51. package/core/MeganavControlMobileDropdown/component.js +1 -1
  52. package/core/MeganavControlMobileDropdown.js +1 -0
  53. package/core/MeganavControlMobilePanelClose/.DS_Store +0 -0
  54. package/core/MeganavControlMobilePanelClose/component.js +1 -1
  55. package/core/MeganavControlMobilePanelClose.js +1 -0
  56. package/core/MeganavControlMobilePanelOpen/.DS_Store +0 -0
  57. package/core/MeganavControlMobilePanelOpen/component.js +1 -1
  58. package/core/MeganavControlMobilePanelOpen.js +1 -0
  59. package/core/MeganavItemsDesktop.js +1 -0
  60. package/core/MeganavItemsMobile.js +1 -0
  61. package/core/MeganavItemsSignedIn.js +1 -0
  62. package/core/MeganavSearch.js +1 -0
  63. package/core/MeganavSearchAutocomplete/.DS_Store +0 -0
  64. package/core/MeganavSearchAutocomplete/component.js +1 -1
  65. package/core/MeganavSearchAutocomplete.js +1 -0
  66. package/core/MeganavSearchPanel.js +1 -0
  67. package/core/MeganavSearchSuggestions/.DS_Store +0 -0
  68. package/core/MeganavSearchSuggestions/component.js +1 -1
  69. package/core/MeganavSearchSuggestions.js +1 -0
  70. package/core/Notice/.DS_Store +0 -0
  71. package/core/Notice/component.css +0 -1
  72. package/core/Notice/component.js +1 -1
  73. package/core/Notice.js +1 -0
  74. package/core/SignOutLink.js +1 -0
  75. package/core/Slider/.DS_Store +0 -0
  76. package/core/Slider/component.css +32 -1
  77. package/core/Slider/component.js +1 -1
  78. package/core/Slider.js +1 -0
  79. package/core/Table/.DS_Store +0 -0
  80. package/core/Table/Table.js +1 -0
  81. package/core/Table/TableCell.js +7 -0
  82. package/core/Table/TableRow.js +1 -0
  83. package/core/Table/data.js +1 -0
  84. package/core/Table.js +1 -0
  85. package/core/Tooltip/.DS_Store +0 -0
  86. package/core/Tooltip.js +1 -0
  87. package/core/css.js +1 -0
  88. package/core/dom-query.js +1 -0
  89. package/core/hubspot-chat-toggle.js +1 -0
  90. package/core/icons/discord.svg +10 -0
  91. package/core/icons/facebook.svg +4 -0
  92. package/core/icons/github.svg +3 -0
  93. package/core/icons/glassdoor.svg +3 -0
  94. package/core/icons/google.svg +3 -0
  95. package/core/icons/icon-display-48hrs.svg +3 -0
  96. package/core/icons/icon-display-about-ably-col.svg +4 -0
  97. package/core/icons/icon-display-api-keys.svg +3 -0
  98. package/core/icons/icon-display-api.svg +3 -0
  99. package/core/icons/icon-display-asset-tracking-col.svg +18 -0
  100. package/core/icons/icon-display-browser.svg +10 -0
  101. package/core/icons/icon-display-calendar.svg +3 -0
  102. package/core/icons/icon-display-call-mobile.svg +3 -0
  103. package/core/icons/icon-display-careers-col.svg +9 -0
  104. package/core/icons/icon-display-case-studies-col.svg +5 -0
  105. package/core/icons/icon-display-chat-col.svg +4 -0
  106. package/core/icons/icon-display-chat-stack-col.svg +4 -0
  107. package/core/icons/icon-display-chat-stack.svg +4 -0
  108. package/core/icons/icon-display-cloud-servers.svg +3 -0
  109. package/core/icons/icon-display-compare-tech-col.svg +9 -0
  110. package/core/icons/icon-display-customers-col.svg +15 -0
  111. package/core/icons/icon-display-data-broadcast-col.svg +26 -0
  112. package/core/icons/icon-display-data-synchronization-col.svg +14 -0
  113. package/core/icons/icon-display-docs-col.svg +7 -0
  114. package/core/icons/icon-display-documentation.svg +3 -0
  115. package/core/icons/icon-display-events-col.svg +13 -0
  116. package/core/icons/icon-display-examples-col.svg +11 -0
  117. package/core/icons/icon-display-gdpr.svg +3 -0
  118. package/core/icons/icon-display-general-comms.svg +3 -0
  119. package/core/icons/icon-display-hipaa.svg +10 -0
  120. package/core/icons/icon-display-integrations-col.svg +8 -0
  121. package/core/icons/icon-display-it-support-access.svg +3 -0
  122. package/core/icons/icon-display-it-support-helpdesk.svg +3 -0
  123. package/core/icons/icon-display-kafka-at-the-edge-col.svg +8 -0
  124. package/core/icons/icon-display-laptop.svg +10 -0
  125. package/core/icons/icon-display-lightbulb-col.svg +10 -0
  126. package/core/icons/icon-display-live-chat.svg +3 -0
  127. package/core/icons/icon-display-map-pin.svg +3 -0
  128. package/core/icons/icon-display-message.svg +3 -0
  129. package/core/icons/icon-display-padlock-closed.svg +3 -0
  130. package/core/icons/icon-display-platform.svg +22 -0
  131. package/core/icons/icon-display-play.svg +3 -0
  132. package/core/icons/icon-display-privacy-shield-framework.svg +7 -0
  133. package/core/icons/icon-display-push-notifications-col.svg +6 -0
  134. package/core/icons/icon-display-quickstart-guides-col.svg +8 -0
  135. package/core/icons/icon-display-resources-col.svg +21 -0
  136. package/core/icons/icon-display-sdks-col.svg +11 -0
  137. package/core/icons/icon-display-servers.svg +3 -0
  138. package/core/icons/icon-display-shopping-cart.svg +10 -0
  139. package/core/icons/icon-display-sla.svg +3 -0
  140. package/core/icons/icon-display-soc2-type2.svg +3 -0
  141. package/core/icons/icon-display-tech-account-comms.svg +3 -0
  142. package/core/icons/icon-display-tutorials-demos-col.svg +25 -0
  143. package/core/icons/icon-display-virtual-events-col.svg +12 -0
  144. package/core/icons/icon-display-virtual-events.svg +12 -0
  145. package/core/icons/icon-gui-ably-badge.svg +3 -0
  146. package/core/icons/icon-gui-arrow-bidirectional-horizontal.svg +3 -0
  147. package/core/icons/icon-gui-arrow-bidirectional-vertical.svg +3 -0
  148. package/core/icons/icon-gui-arrow-down.svg +3 -0
  149. package/core/icons/icon-gui-arrow-left.svg +3 -0
  150. package/core/icons/icon-gui-arrow-right.svg +3 -0
  151. package/core/icons/icon-gui-arrow-up.svg +3 -0
  152. package/core/icons/icon-gui-burger-menu.svg +5 -0
  153. package/core/icons/icon-gui-check-circled-fill-black.svg +4 -0
  154. package/core/icons/icon-gui-check-circled-fill.svg +4 -0
  155. package/core/icons/icon-gui-check-circled.svg +3 -0
  156. package/core/icons/icon-gui-checklist-checked.svg +3 -0
  157. package/core/icons/icon-gui-clock.svg +3 -0
  158. package/core/icons/icon-gui-close.svg +3 -0
  159. package/core/icons/icon-gui-copy.svg +10 -0
  160. package/core/icons/icon-gui-cross-circled-fill.svg +4 -0
  161. package/core/icons/icon-gui-cross-circled.svg +3 -0
  162. package/core/icons/icon-gui-dash-circled.svg +3 -0
  163. package/core/icons/icon-gui-disclosure-arrow.svg +3 -0
  164. package/core/icons/icon-gui-document-generic.svg +3 -0
  165. package/core/icons/icon-gui-enlarge.svg +3 -0
  166. package/core/icons/icon-gui-external-link.svg +3 -0
  167. package/core/icons/icon-gui-filter-flow-step-1.svg +5 -0
  168. package/core/icons/icon-gui-filter-flow-step-2.svg +5 -0
  169. package/core/icons/icon-gui-filter-flow-step-3.svg +5 -0
  170. package/core/icons/icon-gui-history.svg +3 -0
  171. package/core/icons/icon-gui-info.svg +3 -0
  172. package/core/icons/icon-gui-link-arrow.svg +3 -0
  173. package/core/icons/icon-gui-link.svg +4 -0
  174. package/core/icons/icon-gui-live-chat.svg +3 -0
  175. package/core/icons/icon-gui-minus.svg +3 -0
  176. package/core/icons/icon-gui-partial.svg +4 -0
  177. package/core/icons/icon-gui-plus.svg +3 -0
  178. package/core/icons/icon-gui-quote-marks-solid.svg +3 -0
  179. package/core/icons/icon-gui-refresh.svg +10 -0
  180. package/core/icons/icon-gui-resources.svg +3 -0
  181. package/core/icons/icon-gui-search.svg +3 -0
  182. package/core/icons/icon-gui-tick.svg +3 -0
  183. package/core/icons/icon-gui-warning.svg +5 -0
  184. package/core/icons/icon-live-updates-results-metrics-col.svg +26 -0
  185. package/core/icons/icon-multi-user-spaces-col.svg +13 -0
  186. package/core/icons/icon-social-x.svg +3 -0
  187. package/core/icons/icon-tech-apachekafka.svg +3 -0
  188. package/core/icons/linkedin.svg +3 -0
  189. package/core/icons/quote.svg +3 -0
  190. package/core/icons/stackoverflow.svg +3 -0
  191. package/core/icons/twitter.svg +3 -0
  192. package/core/icons/youtube.svg +11 -0
  193. package/core/icons.js +1 -0
  194. package/core/load-sprites.js +1 -0
  195. package/core/react-renderer.js +1 -0
  196. package/core/remote-blogs-posts.js +1 -0
  197. package/core/remote-data-store.js +1 -0
  198. package/core/remote-data-util.js +1 -0
  199. package/core/remote-session-data.js +1 -0
  200. package/core/scripts.js +1 -2
  201. package/core/sprites.svg +1 -525
  202. package/core/styles/buttons.css +124 -0
  203. package/core/styles/forms.css +64 -0
  204. package/core/styles/layout.css +21 -0
  205. package/core/styles/properties.css +278 -0
  206. package/core/styles/text.css +168 -0
  207. package/core/styles.base.css +1 -0
  208. package/core/styles.components.css +35 -0
  209. package/core/styles.css +2 -699
  210. package/core/url-base.js +1 -0
  211. package/core/utils/syntax-highlighter-registry.js +1 -0
  212. package/core/utils/syntax-highlighter.css +74 -0
  213. package/core/utils/syntax-highlighter.js +1 -0
  214. package/package.json +39 -35
  215. package/reset/scripts.js +1 -1
  216. package/reset/styles/normalize.css +353 -0
  217. package/reset/styles/reset.css +129 -0
  218. package/reset/styles.css +2 -477
  219. package/src/.DS_Store +0 -0
  220. package/src/core/.DS_Store +0 -0
  221. package/src/core/Accordion/.DS_Store +0 -0
  222. package/src/core/Accordion/Accordion.stories.tsx +39 -0
  223. package/src/core/Accordion.tsx +147 -0
  224. package/src/core/Code/.DS_Store +0 -0
  225. package/src/core/Code/Code.stories.tsx +71 -0
  226. package/src/core/Code.tsx +45 -0
  227. package/src/core/{ConnectStateWrapper/component.jsx → ConnectStateWrapper.tsx} +8 -4
  228. package/src/core/ContactFooter/.DS_Store +0 -0
  229. package/src/core/ContactFooter/ContactFooter.stories.tsx +11 -0
  230. package/src/core/{ContactFooter/component.jsx → ContactFooter.tsx} +44 -19
  231. package/src/core/CookieMessage/.DS_Store +0 -0
  232. package/src/core/CookieMessage/CookieMessage.stories.tsx +12 -0
  233. package/src/core/{CookieMessage/component.jsx → CookieMessage.tsx} +15 -11
  234. package/src/core/CustomerLogos/.DS_Store +0 -0
  235. package/src/core/CustomerLogos/CustomerLogos.stories.tsx +43 -0
  236. package/src/core/CustomerLogos.tsx +35 -0
  237. package/src/core/DropdownMenu/.DS_Store +0 -0
  238. package/src/core/DropdownMenu/DropdownMenu.stories.tsx +48 -0
  239. package/src/core/{DropdownMenu/component.jsx → DropdownMenu.tsx} +64 -36
  240. package/src/core/Expander/Expander.stories.tsx +132 -0
  241. package/src/core/Expander.tsx +54 -0
  242. package/src/core/FeaturedLink/.DS_Store +0 -0
  243. package/src/core/FeaturedLink/FeaturedLink.stories.tsx +43 -0
  244. package/src/core/{FeaturedLink/component.jsx → FeaturedLink.tsx} +26 -18
  245. package/src/core/Flash/.DS_Store +0 -0
  246. package/src/core/Flash/Flash.stories.tsx +37 -0
  247. package/src/core/{Flash/component.jsx → Flash.tsx} +77 -39
  248. package/src/core/Footer/.DS_Store +0 -0
  249. package/src/core/Footer/Footer.stories.tsx +26 -0
  250. package/src/core/{Footer/component.jsx → Footer.tsx} +236 -70
  251. package/src/core/Icon/.DS_Store +0 -0
  252. package/src/core/Icon/Icon.stories.tsx +151 -0
  253. package/src/core/Icon.tsx +26 -0
  254. package/src/core/Loader/.DS_Store +0 -0
  255. package/src/core/Loader/Loader.stories.tsx +21 -0
  256. package/src/core/{Loader/component.jsx → Loader.tsx} +11 -8
  257. package/src/core/Logo/.DS_Store +0 -0
  258. package/src/core/Logo/Logo.stories.tsx +12 -0
  259. package/src/core/Logo.tsx +29 -0
  260. package/src/core/Meganav/.DS_Store +0 -0
  261. package/src/core/Meganav/Meganav.stories.tsx +86 -0
  262. package/src/core/Meganav/component.css +2 -2
  263. package/src/core/Meganav/component.js +6 -9
  264. package/src/core/Meganav.tsx +225 -0
  265. package/src/core/MeganavBlogPostsList/.DS_Store +0 -0
  266. package/src/core/{MeganavBlogPostsList/component.jsx → MeganavBlogPostsList.tsx} +15 -14
  267. package/src/core/{MeganavContentCompany/component.jsx → MeganavContentCompany.tsx} +82 -33
  268. package/src/core/{MeganavContentDevelopers/component.jsx → MeganavContentDevelopers.tsx} +98 -34
  269. package/src/core/MeganavContentProducts.tsx +165 -0
  270. package/src/core/MeganavContentUseCases.tsx +244 -0
  271. package/src/core/MeganavControl/.DS_Store +0 -0
  272. package/src/core/{MeganavControl/component.jsx → MeganavControl.tsx} +18 -12
  273. package/src/core/MeganavControlMobileDropdown/.DS_Store +0 -0
  274. package/src/core/{MeganavControlMobileDropdown/component.jsx → MeganavControlMobileDropdown.tsx} +3 -7
  275. package/src/core/MeganavControlMobilePanelClose/.DS_Store +0 -0
  276. package/src/core/{MeganavControlMobilePanelClose/component.jsx → MeganavControlMobilePanelClose.tsx} +15 -9
  277. package/src/core/MeganavControlMobilePanelOpen/.DS_Store +0 -0
  278. package/src/core/MeganavControlMobilePanelOpen.tsx +31 -0
  279. package/src/core/MeganavItemsDesktop.tsx +68 -0
  280. package/src/core/MeganavItemsMobile.tsx +197 -0
  281. package/src/core/{MeganavItemsSignedIn/component.jsx → MeganavItemsSignedIn.tsx} +55 -23
  282. package/src/core/MeganavSearch.tsx +36 -0
  283. package/src/core/MeganavSearchAutocomplete/.DS_Store +0 -0
  284. package/src/core/MeganavSearchAutocomplete.tsx +12 -0
  285. package/src/core/MeganavSearchPanel.tsx +52 -0
  286. package/src/core/MeganavSearchSuggestions/.DS_Store +0 -0
  287. package/src/core/MeganavSearchSuggestions.tsx +62 -0
  288. package/src/core/Notice/.DS_Store +0 -0
  289. package/src/core/Notice/component.js +1 -2
  290. package/src/core/Notice.tsx +102 -0
  291. package/src/core/SignOutLink.tsx +51 -0
  292. package/src/core/Slider/.DS_Store +0 -0
  293. package/src/core/Slider/Slider.stories.tsx +98 -0
  294. package/src/core/Slider/component.css +32 -0
  295. package/src/core/Slider/component.js +0 -2
  296. package/src/core/Slider.tsx +192 -0
  297. package/src/core/Table/.DS_Store +0 -0
  298. package/src/core/Table/Table.stories.tsx +12 -0
  299. package/src/core/Table/Table.tsx +59 -0
  300. package/src/core/Table/TableCell.tsx +109 -0
  301. package/src/core/Table/TableRow.tsx +25 -0
  302. package/src/core/Table/data.tsx +113 -0
  303. package/src/core/Table.tsx +26 -0
  304. package/src/core/Tooltip/.DS_Store +0 -0
  305. package/src/core/Tooltip/Tooltip.stories.tsx +27 -0
  306. package/src/core/Tooltip.tsx +88 -0
  307. package/src/core/icons/icon-gui-partial.svg +4 -0
  308. package/src/core/icons.js +6 -0
  309. package/src/core/{react-renderer.js → react-renderer.tsx} +9 -7
  310. package/src/core/scripts.js +0 -2
  311. package/src/core/styles/properties.css +0 -7
  312. package/src/core/utils/syntax-highlighter.css +3 -0
  313. package/src/pages/Buttons.mdx +121 -0
  314. package/src/pages/Chips.mdx +136 -0
  315. package/src/pages/Colour.mdx +23 -0
  316. package/src/pages/Forms.mdx +173 -0
  317. package/src/pages/Layout.mdx +58 -0
  318. package/src/pages/Typography.mdx +206 -0
  319. package/src/pages/utils.ts +70 -0
  320. package/tailwind.config.js +1 -7
  321. package/tailwind.extend.js +1 -1
  322. package/core/.gitignore +0 -1
  323. package/core/Code.jsx +0 -684
  324. package/core/CompanyAutocomplete/component.css +0 -46
  325. package/core/CompanyAutocomplete/component.js +0 -2
  326. package/core/CompanyAutocomplete/component.js.LICENSE.txt +0 -1
  327. package/core/ConnectStateWrapper/component.js +0 -1
  328. package/core/ConnectStateWrapper.jsx +0 -222
  329. package/core/ContactFooter.jsx +0 -342
  330. package/core/CookieMessage/component.js +0 -1
  331. package/core/CookieMessage.jsx +0 -204
  332. package/core/CustomerLogos/component.js +0 -1
  333. package/core/CustomerLogos.jsx +0 -144
  334. package/core/DropdownMenu/component.js +0 -1
  335. package/core/DropdownMenu.jsx +0 -313
  336. package/core/FeatureFooter/component.css +0 -13
  337. package/core/FeatureFooter/component.js +0 -1
  338. package/core/FeaturedLink/component.js +0 -1
  339. package/core/FeaturedLink.jsx +0 -241
  340. package/core/Flash/component.js +0 -1
  341. package/core/Flash.jsx +0 -622
  342. package/core/Footer/component.js +0 -1
  343. package/core/Footer.jsx +0 -587
  344. package/core/Icon/component.js +0 -1
  345. package/core/Icon.jsx +0 -152
  346. package/core/Loader/component.js +0 -1
  347. package/core/Loader.jsx +0 -154
  348. package/core/Logo/component.js +0 -1
  349. package/core/Logo.jsx +0 -147
  350. package/core/Meganav.jsx +0 -4151
  351. package/core/MeganavBlogPostsList/component.js.LICENSE.txt +0 -1
  352. package/core/MeganavBlogPostsList.jsx +0 -296
  353. package/core/MeganavContentCompany/component.js +0 -1
  354. package/core/MeganavContentCompany.jsx +0 -1058
  355. package/core/MeganavContentDevelopers/component.js +0 -1
  356. package/core/MeganavContentDevelopers.jsx +0 -334
  357. package/core/MeganavContentProducts/component.js +0 -1
  358. package/core/MeganavContentProducts.jsx +0 -373
  359. package/core/MeganavContentUseCases/component.js +0 -1
  360. package/core/MeganavContentUseCases.jsx +0 -341
  361. package/core/MeganavControl.jsx +0 -199
  362. package/core/MeganavControlMobileDropdown.jsx +0 -197
  363. package/core/MeganavControlMobilePanelClose.jsx +0 -198
  364. package/core/MeganavControlMobilePanelOpen.jsx +0 -193
  365. package/core/MeganavItemsDesktop/component.js +0 -1
  366. package/core/MeganavItemsDesktop.jsx +0 -279
  367. package/core/MeganavItemsMobile/component.js +0 -1
  368. package/core/MeganavItemsMobile.jsx +0 -689
  369. package/core/MeganavItemsSignedIn/component.js +0 -1
  370. package/core/MeganavItemsSignedIn.jsx +0 -643
  371. package/core/MeganavSearch/component.js +0 -1
  372. package/core/MeganavSearch.jsx +0 -434
  373. package/core/MeganavSearchAutocomplete.jsx +0 -117
  374. package/core/MeganavSearchPanel/component.js +0 -1
  375. package/core/MeganavSearchPanel.jsx +0 -386
  376. package/core/MeganavSearchSuggestions.jsx +0 -299
  377. package/core/Notice.jsx +0 -914
  378. package/core/Showcase/component.css +0 -31
  379. package/core/Showcase/component.js +0 -1
  380. package/core/Showcase.jsx +0 -17
  381. package/core/SignOutLink/component.js +0 -1
  382. package/core/SignOutLink.jsx +0 -157
  383. package/core/Slider.jsx +0 -400
  384. package/core/Uptime/component.css +0 -128
  385. package/core/Uptime/component.js +0 -1
  386. package/core/Uptime.jsx +0 -895
  387. package/core/scripts.js.LICENSE.txt +0 -1
  388. package/preview/log/.keep +0 -0
  389. package/preview/tmp/.keep +0 -0
  390. package/preview/tmp/pids/.keep +0 -0
  391. package/reset/.gitignore +0 -1
  392. package/src/core/Code/component.html.erb +0 -3
  393. package/src/core/Code/component.jsx +0 -31
  394. package/src/core/Code/component.rb +0 -12
  395. package/src/core/CompanyAutocomplete/component.css +0 -45
  396. package/src/core/CompanyAutocomplete/component.js +0 -204
  397. package/src/core/ConnectStateWrapper/component.js +0 -0
  398. package/src/core/ContactFooter/component.html.erb +0 -32
  399. package/src/core/ContactFooter/component.rb +0 -13
  400. package/src/core/CookieMessage/component.js +0 -1
  401. package/src/core/CustomerLogos/component.html.erb +0 -9
  402. package/src/core/CustomerLogos/component.js +0 -0
  403. package/src/core/CustomerLogos/component.jsx +0 -28
  404. package/src/core/CustomerLogos/component.rb +0 -14
  405. package/src/core/DropdownMenu/component.js +0 -0
  406. package/src/core/FeatureFooter/component.css +0 -12
  407. package/src/core/FeatureFooter/component.html.erb +0 -54
  408. package/src/core/FeatureFooter/component.js +0 -7
  409. package/src/core/FeatureFooter/component.rb +0 -30
  410. package/src/core/FeaturedLink/component.html.erb +0 -15
  411. package/src/core/FeaturedLink/component.js +0 -0
  412. package/src/core/FeaturedLink/component.rb +0 -21
  413. package/src/core/Flash/component.js +0 -1
  414. package/src/core/Footer/component.html.erb +0 -256
  415. package/src/core/Footer/component.js +0 -1
  416. package/src/core/Footer/component.rb +0 -14
  417. package/src/core/Icon/component.html.erb +0 -3
  418. package/src/core/Icon/component.js +0 -0
  419. package/src/core/Icon/component.jsx +0 -19
  420. package/src/core/Icon/component.rb +0 -25
  421. package/src/core/Loader/component.html.erb +0 -18
  422. package/src/core/Loader/component.js +0 -0
  423. package/src/core/Loader/component.rb +0 -19
  424. package/src/core/Logo/component.html.erb +0 -3
  425. package/src/core/Logo/component.js +0 -0
  426. package/src/core/Logo/component.jsx +0 -20
  427. package/src/core/Logo/component.rb +0 -31
  428. package/src/core/Meganav/component.html.erb +0 -31
  429. package/src/core/Meganav/component.jsx +0 -123
  430. package/src/core/Meganav/component.rb +0 -60
  431. package/src/core/MeganavBlogPostsList/component.html.erb +0 -5
  432. package/src/core/MeganavBlogPostsList/component.rb +0 -13
  433. package/src/core/MeganavContentCompany/component.html.erb +0 -90
  434. package/src/core/MeganavContentCompany/component.js +0 -0
  435. package/src/core/MeganavContentCompany/component.rb +0 -14
  436. package/src/core/MeganavContentDevelopers/component.html.erb +0 -129
  437. package/src/core/MeganavContentDevelopers/component.js +0 -0
  438. package/src/core/MeganavContentDevelopers/component.rb +0 -13
  439. package/src/core/MeganavContentProducts/component.html.erb +0 -83
  440. package/src/core/MeganavContentProducts/component.js +0 -0
  441. package/src/core/MeganavContentProducts/component.jsx +0 -105
  442. package/src/core/MeganavContentProducts/component.rb +0 -14
  443. package/src/core/MeganavContentUseCases/component.html.erb +0 -135
  444. package/src/core/MeganavContentUseCases/component.js +0 -1
  445. package/src/core/MeganavContentUseCases/component.jsx +0 -147
  446. package/src/core/MeganavContentUseCases/component.rb +0 -13
  447. package/src/core/MeganavControl/component.html.erb +0 -6
  448. package/src/core/MeganavControl/component.rb +0 -20
  449. package/src/core/MeganavControlMobileDropdown/component.html.erb +0 -7
  450. package/src/core/MeganavControlMobileDropdown/component.rb +0 -11
  451. package/src/core/MeganavControlMobilePanelClose/component.html.erb +0 -12
  452. package/src/core/MeganavControlMobilePanelClose/component.rb +0 -12
  453. package/src/core/MeganavControlMobilePanelOpen/component.html.erb +0 -7
  454. package/src/core/MeganavControlMobilePanelOpen/component.jsx +0 -25
  455. package/src/core/MeganavControlMobilePanelOpen/component.rb +0 -9
  456. package/src/core/MeganavItemsDesktop/component.html.erb +0 -17
  457. package/src/core/MeganavItemsDesktop/component.js +0 -0
  458. package/src/core/MeganavItemsDesktop/component.jsx +0 -49
  459. package/src/core/MeganavItemsDesktop/component.rb +0 -23
  460. package/src/core/MeganavItemsMobile/component.html.erb +0 -75
  461. package/src/core/MeganavItemsMobile/component.js +0 -0
  462. package/src/core/MeganavItemsMobile/component.jsx +0 -137
  463. package/src/core/MeganavItemsMobile/component.rb +0 -21
  464. package/src/core/MeganavItemsSignedIn/component.html.erb +0 -53
  465. package/src/core/MeganavItemsSignedIn/component.js +0 -0
  466. package/src/core/MeganavItemsSignedIn/component.rb +0 -33
  467. package/src/core/MeganavSearch/component.html.erb +0 -15
  468. package/src/core/MeganavSearch/component.js +0 -0
  469. package/src/core/MeganavSearch/component.jsx +0 -33
  470. package/src/core/MeganavSearch/component.rb +0 -13
  471. package/src/core/MeganavSearchAutocomplete/component.html.erb +0 -6
  472. package/src/core/MeganavSearchAutocomplete/component.jsx +0 -14
  473. package/src/core/MeganavSearchAutocomplete/component.rb +0 -6
  474. package/src/core/MeganavSearchPanel/component.html.erb +0 -22
  475. package/src/core/MeganavSearchPanel/component.js +0 -0
  476. package/src/core/MeganavSearchPanel/component.jsx +0 -39
  477. package/src/core/MeganavSearchPanel/component.rb +0 -13
  478. package/src/core/MeganavSearchSuggestions/component.html.erb +0 -22
  479. package/src/core/MeganavSearchSuggestions/component.jsx +0 -49
  480. package/src/core/MeganavSearchSuggestions/component.rb +0 -18
  481. package/src/core/Notice/component.html.erb +0 -16
  482. package/src/core/Notice/component.jsx +0 -71
  483. package/src/core/Notice/component.rb +0 -29
  484. package/src/core/Showcase/component.css +0 -30
  485. package/src/core/Showcase/component.html.erb +0 -76
  486. package/src/core/Showcase/component.js +0 -180
  487. package/src/core/Showcase/component.jsx +0 -0
  488. package/src/core/Showcase/component.rb +0 -190
  489. package/src/core/SignOutLink/component.html.erb +0 -1
  490. package/src/core/SignOutLink/component.js +0 -0
  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
@@ -1,44 +1,76 @@
1
1
  import React from "react";
2
- import T from "prop-types";
3
2
 
4
- import Icon from "../Icon/component.jsx";
5
- import _absUrl from "../url-base";
3
+ import Icon from "./Icon";
4
+ import _absUrl from "./url-base.js";
6
5
 
7
- export default function Footer({ paths, urlBase }) {
6
+ type FooterProps = {
7
+ paths: {
8
+ ablyStack: string;
9
+ highestPerformer: string;
10
+ highestUserAdoption: string;
11
+ bestSupport: string;
12
+ fastestImplementation: string;
13
+ };
14
+ urlBase: string;
15
+ };
16
+
17
+ const Footer = ({ paths, urlBase }: FooterProps) => {
8
18
  const absUrl = (path) => _absUrl(path, urlBase);
9
19
 
10
20
  return (
11
- <footer className="bg-light-grey font-sans antialiased leading-normal" data-id="footer">
21
+ <footer
22
+ className="bg-light-grey font-sans antialiased leading-normal"
23
+ data-id="footer"
24
+ >
12
25
  <div className="max-w-screen-xl mx-auto py-32 sm:py-40 md:py-64 ui-grid-gap ui-grid-px grid grid-cols-6">
13
26
  <div className="col-span-full md:col-span-2">
14
27
  <div className="flex flex-row p-menu-row-snug">
15
- <img className="mr-24 -mt-16" src={paths.ablyStack} alt="Ably homepage" />
16
- <h2 className="ui-text-overline2 col-span-full">The Ably Platform</h2>
28
+ <img
29
+ className="mr-24 -mt-16"
30
+ src={paths.ablyStack}
31
+ alt="Ably homepage"
32
+ />
33
+ <h2 className="ui-text-overline2 col-span-full">
34
+ The Ably Platform
35
+ </h2>
17
36
  </div>
18
37
  <div className="md:col-span-4 md:w-3/4 xs:w-3/5 w-full">
19
38
  <p className="ui-text-p3 font-bold py-16 p-menu-row-snug">
20
- Easily power any realtime experience in your application via a simple API that handles everything realtime.
39
+ Easily power any realtime experience in your application via a
40
+ simple API that handles everything realtime.
21
41
  </p>
22
42
  </div>
23
43
 
24
44
  <ul className="grid grid-cols-1">
25
45
  <li className="p-menu-row-snug">
26
- <a href={absUrl("/solutions/channels")} className="ui-footer-menu-row-link">
46
+ <a
47
+ href={absUrl("/solutions/channels")}
48
+ className="ui-footer-menu-row-link"
49
+ >
27
50
  Pub/sub messaging
28
51
  </a>
29
52
  </li>
30
53
  <li className="p-menu-row-snug">
31
- <a href={absUrl("/push-notifications")} className="ui-footer-menu-row-link">
54
+ <a
55
+ href={absUrl("/push-notifications")}
56
+ className="ui-footer-menu-row-link"
57
+ >
32
58
  Push notifications
33
59
  </a>
34
60
  </li>
35
61
  <li className="p-menu-row-snug">
36
- <a href={absUrl("/integrations")} className="ui-footer-menu-row-link">
62
+ <a
63
+ href={absUrl("/integrations")}
64
+ className="ui-footer-menu-row-link"
65
+ >
37
66
  Third-party integrations
38
67
  </a>
39
68
  </li>
40
69
  <li className="p-menu-row-snug">
41
- <a href={absUrl("/protocols")} className="ui-footer-menu-row-link">
70
+ <a
71
+ href={absUrl("/protocols")}
72
+ className="ui-footer-menu-row-link"
73
+ >
42
74
  Multiple protocol messaging
43
75
  </a>
44
76
  </li>
@@ -49,52 +81,82 @@ export default function Footer({ paths, urlBase }) {
49
81
  <h2 className="ui-footer-col-title">Ably is for</h2>
50
82
  <ul>
51
83
  <li className="p-menu-row-snug">
52
- <a href={absUrl("/solutions/asset-tracking")} className="ui-footer-menu-row-link">
84
+ <a
85
+ href={absUrl("/solutions/asset-tracking")}
86
+ className="ui-footer-menu-row-link"
87
+ >
53
88
  Ably Asset Tracking
54
89
  </a>
55
90
  </li>
56
91
  <li className="p-menu-row-snug">
57
- <a href={absUrl("/solutions/extend-kafka-to-the-edge")} className="ui-footer-menu-row-link">
92
+ <a
93
+ href={absUrl("/solutions/extend-kafka-to-the-edge")}
94
+ className="ui-footer-menu-row-link"
95
+ >
58
96
  Extend Kafka to the edge
59
97
  </a>
60
98
  </li>
61
99
  <li className="p-menu-row-snug">
62
- <a href={absUrl("/solutions/edtech")} className="ui-footer-menu-row-link">
100
+ <a
101
+ href={absUrl("/solutions/edtech")}
102
+ className="ui-footer-menu-row-link"
103
+ >
63
104
  EdTech
64
105
  </a>
65
106
  </li>
66
107
  <li className="p-menu-row-snug">
67
- <a href={absUrl("/solutions/automotive-logistics-and-mobility")} className="ui-footer-menu-row-link">
108
+ <a
109
+ href={absUrl("/solutions/automotive-logistics-and-mobility")}
110
+ className="ui-footer-menu-row-link"
111
+ >
68
112
  Automotive, Logistics, &amp; Mobility
69
113
  </a>
70
114
  </li>
71
115
  <li className="p-menu-row-snug">
72
- <a href={absUrl("/solutions/b2b-platforms")} className="ui-footer-menu-row-link">
116
+ <a
117
+ href={absUrl("/solutions/b2b-platforms")}
118
+ className="ui-footer-menu-row-link"
119
+ >
73
120
  B2B Platforms
74
121
  </a>
75
122
  </li>
76
123
  <li className="p-menu-row-snug">
77
- <a href={absUrl("/solutions/healthcare")} className="ui-footer-menu-row-link">
124
+ <a
125
+ href={absUrl("/solutions/healthcare")}
126
+ className="ui-footer-menu-row-link"
127
+ >
78
128
  Healthcare
79
129
  </a>
80
130
  </li>
81
131
  <li className="p-menu-row-snug">
82
- <a href={absUrl("/solutions/ecommerce-and-retail")} className="ui-footer-menu-row-link">
132
+ <a
133
+ href={absUrl("/solutions/ecommerce-and-retail")}
134
+ className="ui-footer-menu-row-link"
135
+ >
83
136
  eCommerce &amp; Retail
84
137
  </a>
85
138
  </li>
86
139
  <li className="p-menu-row-snug">
87
- <a href={absUrl("/solutions/sports-and-media")} className="ui-footer-menu-row-link">
140
+ <a
141
+ href={absUrl("/solutions/sports-and-media")}
142
+ className="ui-footer-menu-row-link"
143
+ >
88
144
  Sports &amp; Media
89
145
  </a>
90
146
  </li>
91
147
  <li className="p-menu-row-snug">
92
- <a href={absUrl("/solutions/gaming")} className="ui-footer-menu-row-link">
148
+ <a
149
+ href={absUrl("/solutions/gaming")}
150
+ className="ui-footer-menu-row-link"
151
+ >
93
152
  Gaming
94
153
  </a>
95
154
  </li>
96
155
  <li className="p-menu-row-snug">
97
- <a href={absUrl("/solutions/iot-and-connected-devices")} className="ui-footer-menu-row-link">
156
+ <a
157
+ href={absUrl("/solutions/iot-and-connected-devices")}
158
+ className="ui-footer-menu-row-link"
159
+ >
98
160
  IoT &amp; Connected Devices
99
161
  </a>
100
162
  </li>
@@ -105,7 +167,10 @@ export default function Footer({ paths, urlBase }) {
105
167
  <h2 className="ui-footer-col-title">Developers</h2>
106
168
  <ul>
107
169
  <li className="p-menu-row-snug">
108
- <a href={absUrl("/docs/quick-start-guide")} className="ui-footer-menu-row-link">
170
+ <a
171
+ href={absUrl("/docs/quick-start-guide")}
172
+ className="ui-footer-menu-row-link"
173
+ >
109
174
  Start in 5 minutes
110
175
  </a>
111
176
  </li>
@@ -115,12 +180,18 @@ export default function Footer({ paths, urlBase }) {
115
180
  </a>
116
181
  </li>
117
182
  <li className="p-menu-row-snug">
118
- <a href={absUrl("/tutorials")} className="ui-footer-menu-row-link">
183
+ <a
184
+ href={absUrl("/tutorials")}
185
+ className="ui-footer-menu-row-link"
186
+ >
119
187
  Tutorials
120
188
  </a>
121
189
  </li>
122
190
  <li className="p-menu-row-snug">
123
- <a href="https://changelog.ably.com/" className="ui-footer-menu-row-link">
191
+ <a
192
+ href="https://changelog.ably.com/"
193
+ className="ui-footer-menu-row-link"
194
+ >
124
195
  Changelog
125
196
  </a>
126
197
  </li>
@@ -130,18 +201,24 @@ export default function Footer({ paths, urlBase }) {
130
201
  </a>
131
202
  </li>
132
203
  <li className="p-menu-row-snug">
133
- <a href={absUrl("/docs/sdks")} className="ui-footer-menu-row-link">
204
+ <a
205
+ href={absUrl("/docs/sdks")}
206
+ className="ui-footer-menu-row-link"
207
+ >
134
208
  SDKs
135
209
  </a>
136
210
  </li>
137
211
  <li className="p-menu-row-snug flex items-center -mt-4">
138
- <a className="pr-8 ui-footer-menu-row-link" href="https://status.ably.com/">
212
+ <a
213
+ className="pr-8 ui-footer-menu-row-link"
214
+ href="https://status.ably.com/"
215
+ >
139
216
  System status
140
217
  </a>
141
218
  <iframe
142
219
  className="w-20 h-20 mb-2"
143
220
  src="https://status.ably.com/embed/icon"
144
- allowTransparency={true}
221
+ style={{ backgroundColor: "transparent" }}
145
222
  frameBorder="0"
146
223
  scrolling="no"
147
224
  title="System Status"
@@ -154,17 +231,26 @@ export default function Footer({ paths, urlBase }) {
154
231
  <h2 className="ui-footer-col-title">WHY ABLY</h2>
155
232
  <ul>
156
233
  <li className="p-menu-row-snug">
157
- <a href={absUrl("/customers")} className="ui-footer-menu-row-link">
234
+ <a
235
+ href={absUrl("/customers")}
236
+ className="ui-footer-menu-row-link"
237
+ >
158
238
  Customers
159
239
  </a>
160
240
  </li>
161
241
  <li className="p-menu-row-snug">
162
- <a href={absUrl("/case-studies")} className="ui-footer-menu-row-link">
242
+ <a
243
+ href={absUrl("/case-studies")}
244
+ className="ui-footer-menu-row-link"
245
+ >
163
246
  Case Studies
164
247
  </a>
165
248
  </li>
166
249
  <li className="p-menu-row-snug">
167
- <a href={absUrl("/four-pillars-of-dependability")} className="ui-footer-menu-row-link">
250
+ <a
251
+ href={absUrl("/four-pillars-of-dependability")}
252
+ className="ui-footer-menu-row-link"
253
+ >
168
254
  Four Pillars of Dependability
169
255
  </a>
170
256
  </li>
@@ -174,12 +260,18 @@ export default function Footer({ paths, urlBase }) {
174
260
  </a>
175
261
  </li>
176
262
  <li className="p-menu-row-snug">
177
- <a href={absUrl("/protocols")} className="ui-footer-menu-row-link">
263
+ <a
264
+ href={absUrl("/protocols")}
265
+ className="ui-footer-menu-row-link"
266
+ >
178
267
  Multi protocol support
179
268
  </a>
180
269
  </li>
181
270
  <li className="p-menu-row-snug">
182
- <a href={absUrl("/integrations")} className="ui-footer-menu-row-link">
271
+ <a
272
+ href={absUrl("/integrations")}
273
+ className="ui-footer-menu-row-link"
274
+ >
183
275
  Third-party integrations
184
276
  </a>
185
277
  </li>
@@ -210,12 +302,18 @@ export default function Footer({ paths, urlBase }) {
210
302
  </a>
211
303
  </li>
212
304
  <li className="p-menu-row-snug">
213
- <a href={absUrl("/open-policy")} className="ui-footer-menu-row-link">
305
+ <a
306
+ href={absUrl("/open-policy")}
307
+ className="ui-footer-menu-row-link"
308
+ >
214
309
  Open protocol policy
215
310
  </a>
216
311
  </li>
217
312
  <li className="p-menu-row-snug">
218
- <a href={absUrl("/press-center")} className="ui-footer-menu-row-link">
313
+ <a
314
+ href={absUrl("/press-center")}
315
+ className="ui-footer-menu-row-link"
316
+ >
219
317
  Press & Media
220
318
  </a>
221
319
  </li>
@@ -236,7 +334,11 @@ export default function Footer({ paths, urlBase }) {
236
334
  <div className="flex flex-col md:flex-row flex-auto ml-8 sm:col-span-1 md:col-span-2">
237
335
  <div className="">
238
336
  <div className="flex pb-24">
239
- <a className="h-24 pr-24 text-cool-black hover:text-icon-twitter" href="https://twitter.com/ablyrealtime" title="Ably on X">
337
+ <a
338
+ className="h-24 pr-24 text-cool-black hover:text-icon-twitter"
339
+ href="https://twitter.com/ablyrealtime"
340
+ title="Ably on X"
341
+ >
240
342
  <Icon name="icon-social-x" size="1.5rem" />
241
343
  </a>
242
344
  <a
@@ -246,10 +348,18 @@ export default function Footer({ paths, urlBase }) {
246
348
  >
247
349
  <Icon name="linkedin" size="1.5rem" />
248
350
  </a>
249
- <a className="h-24 pr-24 text-cool-black hover:text-icon-github" href="https://github.com/ably/" title="Ably on Github">
351
+ <a
352
+ className="h-24 pr-24 text-cool-black hover:text-icon-github"
353
+ href="https://github.com/ably/"
354
+ title="Ably on Github"
355
+ >
250
356
  <Icon name="github" size="1.5rem" />
251
357
  </a>
252
- <a className="h-24 pr-24 text-cool-black hover:text-icon-discord" href="https://discord.gg/jwBPhEZ9g5" title="Ably on Discord">
358
+ <a
359
+ className="h-24 pr-24 text-cool-black hover:text-icon-discord"
360
+ href="https://discord.gg/jwBPhEZ9g5"
361
+ title="Ably on Discord"
362
+ >
253
363
  <Icon name="discord" size="1.5rem" />
254
364
  </a>
255
365
  </div>
@@ -265,8 +375,13 @@ export default function Footer({ paths, urlBase }) {
265
375
  <Icon name="glassdoor" size="1.5rem" />
266
376
  </a>
267
377
  <div className="pl-16 text-menu3 font-sans font-medium">
268
- <strong className="block font-medium">We&apos;re hiring!</strong>
269
- <a href="https://www.glassdoor.co.uk/Overview/Working-at-Ably-EI_IE2184188.11,15.htm" className="ui-footer-link">
378
+ <strong className="block font-medium">
379
+ We&apos;re hiring!
380
+ </strong>
381
+ <a
382
+ href="https://www.glassdoor.co.uk/Overview/Working-at-Ably-EI_IE2184188.11,15.htm"
383
+ className="ui-footer-link"
384
+ >
270
385
  Learn more at Glassdoor
271
386
  </a>
272
387
  </div>
@@ -285,8 +400,13 @@ export default function Footer({ paths, urlBase }) {
285
400
  <Icon name="glassdoor" size="1.5rem" />
286
401
  </a>
287
402
  <div className="text-menu3 font-sans font-medium">
288
- <strong className="block font-medium">We&apos;re hiring!</strong>
289
- <a href="https://www.glassdoor.co.uk/Overview/Working-at-Ably-EI_IE2184188.11,15.htm" className="ui-footer-link">
403
+ <strong className="block font-medium">
404
+ We&apos;re hiring!
405
+ </strong>
406
+ <a
407
+ href="https://www.glassdoor.co.uk/Overview/Working-at-Ably-EI_IE2184188.11,15.htm"
408
+ className="ui-footer-link"
409
+ >
290
410
  Learn more at Glassdoor
291
411
  </a>
292
412
  </div>
@@ -295,10 +415,26 @@ export default function Footer({ paths, urlBase }) {
295
415
  </div>
296
416
 
297
417
  <div className="col-span-full sm:col-span-1 inline-flex sm:ml-auto sm:items-center">
298
- <img className="mr-24 h-80" src={paths.highestUserAdoption} alt="Highest User Adoption 2023" />
299
- <img className="mr-24 h-80" src={paths.bestSupport} alt="Best Support 2023" />
300
- <img className="mr-24 h-80" src={paths.fastestImplementation} alt="Fastest Implementation 2023" />
301
- <img className="mr-24 h-80" src={paths.highestPerformer} alt="High Performer 2023" />
418
+ <img
419
+ className="mr-24 h-80"
420
+ src={paths.highestUserAdoption}
421
+ alt="Highest User Adoption 2023"
422
+ />
423
+ <img
424
+ className="mr-24 h-80"
425
+ src={paths.bestSupport}
426
+ alt="Best Support 2023"
427
+ />
428
+ <img
429
+ className="mr-24 h-80"
430
+ src={paths.fastestImplementation}
431
+ alt="Fastest Implementation 2023"
432
+ />
433
+ <img
434
+ className="mr-24 h-80"
435
+ src={paths.highestPerformer}
436
+ alt="High Performer 2023"
437
+ />
302
438
  </div>
303
439
  </div>
304
440
 
@@ -314,7 +450,10 @@ export default function Footer({ paths, urlBase }) {
314
450
  <a href={absUrl("/legals")} className="pr-24 ui-footer-link">
315
451
  Legals
316
452
  </a>
317
- <a href={absUrl("/data-protection")} className="pr-24 ui-footer-link">
453
+ <a
454
+ href={absUrl("/data-protection")}
455
+ className="pr-24 ui-footer-link"
456
+ >
318
457
  Data Protection
319
458
  </a>
320
459
  <a href={absUrl("/privacy")} className="ui-footer-link">
@@ -324,46 +463,73 @@ export default function Footer({ paths, urlBase }) {
324
463
  </div>
325
464
  <div className="xs:grid xs:grid-cols-2 sm:grid-cols-4 xs:pl-16 sm:pl-8 md:justify-items-end">
326
465
  <div className="flex mr-24">
327
- <Icon name="icon-gui-tick" color="text-active-orange" size="1.5rem" additionalCSS="bg-white rounded-full mr-12 ui-footer-tick-icon" />
466
+ <Icon
467
+ name="icon-gui-tick"
468
+ color="text-active-orange"
469
+ size="1.5rem"
470
+ additionalCSS="bg-white rounded-full mr-12 ui-footer-tick-icon"
471
+ />
328
472
  <div>
329
- <p className="ui-footer-compliance-text font-bold whitespace-nowrap">SOC 2 Type 2</p>
330
- <p className="ui-footer-compliance-text font-medium mb-24">Certified</p>
473
+ <p className="ui-footer-compliance-text font-bold whitespace-nowrap">
474
+ SOC 2 Type 2
475
+ </p>
476
+ <p className="ui-footer-compliance-text font-medium mb-24">
477
+ Certified
478
+ </p>
331
479
  </div>
332
480
  </div>
333
481
  <div className="flex mr-24 md:col-start-2">
334
- <Icon name="icon-gui-tick" color="text-active-orange" size="1.5rem" additionalCSS="bg-white rounded-full mr-12 ui-footer-tick-icon" />
482
+ <Icon
483
+ name="icon-gui-tick"
484
+ color="text-active-orange"
485
+ size="1.5rem"
486
+ additionalCSS="bg-white rounded-full mr-12 ui-footer-tick-icon"
487
+ />
335
488
  <div>
336
- <p className="ui-footer-compliance-text font-bold whitespace-nowrap">HIPAA</p>
337
- <p className="ui-footer-compliance-text font-medium mb-24">Compliant</p>
489
+ <p className="ui-footer-compliance-text font-bold whitespace-nowrap">
490
+ HIPAA
491
+ </p>
492
+ <p className="ui-footer-compliance-text font-medium mb-24">
493
+ Compliant
494
+ </p>
338
495
  </div>
339
496
  </div>
340
497
  <div className="flex mr-24 md:col-start-3">
341
- <Icon name="icon-gui-tick" color="text-active-orange" size="1.5rem" additionalCSS="bg-white rounded-full mr-12 ui-footer-tick-icon" />
498
+ <Icon
499
+ name="icon-gui-tick"
500
+ color="text-active-orange"
501
+ size="1.5rem"
502
+ additionalCSS="bg-white rounded-full mr-12 ui-footer-tick-icon"
503
+ />
342
504
  <div>
343
- <p className="ui-footer-compliance-text font-bold whitespace-nowrap">EU GDPR</p>
344
- <p className="ui-footer-compliance-text font-medium mb-24">Certified</p>
505
+ <p className="ui-footer-compliance-text font-bold whitespace-nowrap">
506
+ EU GDPR
507
+ </p>
508
+ <p className="ui-footer-compliance-text font-medium mb-24">
509
+ Certified
510
+ </p>
345
511
  </div>
346
512
  </div>
347
513
  <div className="flex mr-24 md:col-start-4">
348
- <Icon name="icon-gui-tick" color="text-active-orange" size="1.5rem" additionalCSS="bg-white rounded-full mr-12 ui-footer-tick-icon" />
514
+ <Icon
515
+ name="icon-gui-tick"
516
+ color="text-active-orange"
517
+ size="1.5rem"
518
+ additionalCSS="bg-white rounded-full mr-12 ui-footer-tick-icon"
519
+ />
349
520
  <div>
350
- <p className="ui-footer-compliance-text font-bold whitespace-nowrap">256-bit AES</p>
351
- <p className="ui-footer-compliance-text font-medium mb-24">Encryption</p>
521
+ <p className="ui-footer-compliance-text font-bold whitespace-nowrap">
522
+ 256-bit AES
523
+ </p>
524
+ <p className="ui-footer-compliance-text font-medium mb-24">
525
+ Encryption
526
+ </p>
352
527
  </div>
353
528
  </div>
354
529
  </div>
355
530
  </div>
356
531
  </footer>
357
532
  );
358
- }
359
-
360
- Footer.propTypes = {
361
- paths: T.shape({
362
- ablyStack: T.string,
363
- highestPerformer: T.string,
364
- highestUserAdoption: T.string,
365
- bestSupport: T.string,
366
- fastestImplementation: T.string,
367
- }),
368
- urlBase: T.string,
369
533
  };
534
+
535
+ export default Footer;
Binary file
@@ -0,0 +1,151 @@
1
+ import React from "react";
2
+ import Icon from "../Icon";
3
+
4
+ export default {
5
+ title: "Components/Icon",
6
+ component: Icon,
7
+ parameters: {
8
+ layout: "fullscreen",
9
+ },
10
+ tags: ["autodocs"],
11
+ };
12
+
13
+ const coreIcons = [
14
+ "icon-gui-ably-badge",
15
+ "icon-gui-arrow-bidirectional-horizontal",
16
+ "icon-gui-arrow-bidirectional-vertical",
17
+ "icon-gui-arrow-down",
18
+ "icon-gui-arrow-left",
19
+ "icon-gui-arrow-right",
20
+ "icon-gui-arrow-up",
21
+ "icon-gui-burger-menu",
22
+ "icon-gui-check-circled-fill",
23
+ "icon-gui-check-circled-fill-black",
24
+ "icon-gui-check-circled",
25
+ "icon-gui-checklist-checked",
26
+ "icon-gui-clock",
27
+ "icon-gui-close",
28
+ "icon-gui-cross-circled-fill",
29
+ "icon-gui-cross-circled",
30
+ "icon-gui-copy",
31
+ "icon-gui-dash-circled",
32
+ "icon-gui-disclosure-arrow",
33
+ "icon-gui-document-generic",
34
+ "icon-gui-enlarge",
35
+ "icon-gui-external-link",
36
+ "icon-gui-history",
37
+ "icon-gui-info",
38
+ "icon-gui-link-arrow",
39
+ "icon-gui-live-chat",
40
+ "icon-gui-minus",
41
+ "icon-gui-partial",
42
+ "icon-gui-plus",
43
+ "icon-gui-quote-marks-solid",
44
+ "icon-gui-refresh",
45
+ "icon-gui-search",
46
+ "icon-gui-tick",
47
+ "icon-gui-warning",
48
+ "icon-gui-link",
49
+ "icon-gui-filter-flow-step-1",
50
+ "icon-gui-filter-flow-step-2",
51
+ "icon-gui-filter-flow-step-3",
52
+ "icon-gui-resources",
53
+ ];
54
+
55
+ const displayIcons = [
56
+ "icon-display-48hrs",
57
+ "icon-display-about-ably-col",
58
+ "icon-display-api",
59
+ "icon-display-api-keys",
60
+ "icon-display-asset-tracking-col",
61
+ "icon-display-browser",
62
+ "icon-display-calendar",
63
+ "icon-display-call-mobile",
64
+ "icon-display-careers-col",
65
+ "icon-display-case-studies-col",
66
+ "icon-display-chat-stack-col",
67
+ "icon-display-cloud-servers",
68
+ "icon-display-compare-tech-col",
69
+ "icon-display-customers-col",
70
+ "icon-display-docs-col",
71
+ "icon-display-documentation",
72
+ "icon-display-examples-col",
73
+ "icon-display-gdpr",
74
+ "icon-display-general-comms",
75
+ "icon-display-hipaa",
76
+ "icon-display-it-support-access",
77
+ "icon-display-it-support-helpdesk",
78
+ "icon-display-laptop",
79
+ "icon-display-lightbulb-col",
80
+ "icon-display-live-chat",
81
+ "icon-display-map-pin",
82
+ "icon-display-message",
83
+ "icon-display-padlock-closed",
84
+ "icon-display-platform",
85
+ "icon-display-play",
86
+ "icon-display-privacy-shield-framework",
87
+ "icon-display-quickstart-guides-col",
88
+ "icon-display-resources-col",
89
+ "icon-display-sdks-col",
90
+ "icon-display-servers",
91
+ "icon-display-shopping-cart",
92
+ "icon-display-sla",
93
+ "icon-display-chat-col",
94
+ "icon-display-soc2-type2",
95
+ "icon-display-tech-account-comms",
96
+ "icon-display-tutorials-demos-col",
97
+ "icon-display-integrations-col",
98
+ "icon-display-virtual-events-col",
99
+ "icon-live-updates-results-metrics-col",
100
+ "icon-multi-user-spaces-col",
101
+ ];
102
+
103
+ const socialIcons = [
104
+ "discord",
105
+ "facebook",
106
+ "github",
107
+ "glassdoor",
108
+ "linkedin",
109
+ "twitter",
110
+ "google",
111
+ "stackoverflow",
112
+ "youtube",
113
+ ];
114
+
115
+ const otherIcons = ["quote"];
116
+
117
+ const renderIcons = (iconSet: string[]) => (
118
+ <div className="grid grid-cols-4 ui-grid-gap max-w-screen-lg mb-64">
119
+ {iconSet.map((icon: string) => (
120
+ <div className="border p-16" key={icon}>
121
+ <code className="ui-text-code mb-8 block">{icon}</code>
122
+ <div className="border inline-flex flex-0">
123
+ <div className="flex pi-checkered-bg">
124
+ <Icon
125
+ name={icon}
126
+ additionalCSS="hover:text-active-orange"
127
+ color="text-cool-black"
128
+ size="1.5rem"
129
+ />
130
+ </div>
131
+ </div>
132
+ </div>
133
+ ))}
134
+ </div>
135
+ );
136
+
137
+ export const GUIIcons = {
138
+ render: () => renderIcons(coreIcons),
139
+ };
140
+
141
+ export const DisplayIcons = {
142
+ render: () => renderIcons(displayIcons),
143
+ };
144
+
145
+ export const SocialIcons = {
146
+ render: () => renderIcons(socialIcons),
147
+ };
148
+
149
+ export const Other = {
150
+ render: () => renderIcons(otherIcons),
151
+ };