@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 +0,0 @@
1
- /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
package/preview/log/.keep DELETED
File without changes
package/preview/tmp/.keep DELETED
File without changes
File without changes
package/reset/.gitignore DELETED
@@ -1 +0,0 @@
1
- *
@@ -1,3 +0,0 @@
1
- <%= tag.div class: "hljs p-32 overflow-auto", data: { id: "code" } do %>
2
- <%= tag.pre lang: @language do %><%= tag.code class: "language-#{@language} #{@text_size}" do %><%= @snippet %><% end %><% end %>
3
- <% end %>
@@ -1,31 +0,0 @@
1
- import React from "react";
2
- import T from "prop-types";
3
-
4
- import "../utils/syntax-highlighter.css";
5
- import { highlightSnippet, registerDefaultLanguages } from "../utils/syntax-highlighter";
6
- import languagesRegistry from "../utils/syntax-highlighter-registry";
7
-
8
- registerDefaultLanguages(languagesRegistry);
9
-
10
- const Code = ({ language, snippet, textSize = "ui-text-code", padding = "p-32", additionalCSS = "" }) => {
11
- const HTMLraw = highlightSnippet(language, `${snippet}`.trim());
12
- const className = `language-${language} ${textSize}`;
13
-
14
- return (
15
- <div className={`hljs overflow-auto ${padding} ${additionalCSS}`} data-id="code">
16
- <pre lang={language}>
17
- <code className={className} dangerouslySetInnerHTML={{ __html: HTMLraw }} />
18
- </pre>
19
- </div>
20
- );
21
- };
22
-
23
- Code.propTypes = {
24
- language: T.string,
25
- snippet: T.string,
26
- textSize: T.string,
27
- padding: T.string,
28
- additionalCSS: T.string,
29
- };
30
-
31
- export default Code;
@@ -1,12 +0,0 @@
1
- module AblyUi
2
- module Core
3
- class Code < ViewComponent::Base
4
- include AblyUi::Core::Util
5
- def initialize(language:, snippet:, text_size: 'ui-text-code')
6
- @language = language
7
- @snippet = snippet.try(:strip)
8
- @text_size = text_size
9
- end
10
- end
11
- end
12
- end
@@ -1,45 +0,0 @@
1
- @layer components {
2
- .ui-company-autocomplete-container {
3
- @apply shadow-container absolute bg-white w-full z-10 font-sans;
4
- }
5
-
6
- .ui-company-autocomplete-list {
7
- @apply border border-mid-grey border-t-0;
8
- }
9
-
10
- .ui-company-autocomplete-listitem {
11
- @apply border-b border-mid-grey h-48;
12
- }
13
-
14
- .ui-company-autocomplete-btn {
15
- @apply h-full w-full flex items-center py-4 px-12;
16
- }
17
-
18
- .ui-company-autocomplete-btn:focus {
19
- @apply focus:text-gui-focus;
20
- }
21
-
22
- .ui-company-autocomplete-listitem:last-child {
23
- @apply border-b-0;
24
- }
25
-
26
- .ui-company-autocomplete-listitem:hover {
27
- @apply bg-light-grey cursor-pointer;
28
- }
29
-
30
- .ui-company-autocomplete-listitem:hover .ui-company-autocomplete-name {
31
- @apply text-gui-hover;
32
- }
33
-
34
- .ui-company-autocomplete-logo {
35
- @apply w-32;
36
- }
37
-
38
- .ui-company-autocomplete-name {
39
- @apply font-sans font-light text-cool-black ml-8 text-p3 text-left;
40
- }
41
-
42
- .ui-company-autocomplete-domain {
43
- @apply font-sans font-light text-dark-grey ml-auto text-p3;
44
- }
45
- }
@@ -1,204 +0,0 @@
1
- import "./component.css";
2
-
3
- import throttle from "lodash.throttle";
4
-
5
- const COMPANY_AUTOCOMPLETE_DROPDOWN = "[data-id=company-autocomplete-dropdown]";
6
-
7
- const getContainer = (input) =>
8
- input.parentNode.querySelector(COMPANY_AUTOCOMPLETE_DROPDOWN);
9
- const getItems = (container) =>
10
- container ? container.querySelectorAll("li > button") : [];
11
- const getFocusedItemIndex = (items) =>
12
- Array.from(items).indexOf(document.activeElement);
13
-
14
- const clearList = (input) => {
15
- const container = getContainer(input);
16
-
17
- if (container) {
18
- container.classList.add("hidden");
19
- container.querySelector("ol").innerHTML = "";
20
- }
21
- };
22
-
23
- const renderItems = (data) =>
24
- data.map((element) => {
25
- const listItem = document.createElement("li");
26
- listItem.classList.add("ui-company-autocomplete-listitem");
27
-
28
- const btn = document.createElement("button");
29
- btn.classList.add("ui-company-autocomplete-btn");
30
- btn.dataset.name = element.name;
31
-
32
- const logo = document.createElement("img");
33
- logo.alt = `${element.name} logo`;
34
- logo.src = element.logo;
35
- logo.classList.add("ui-company-autocomplete-logo");
36
-
37
- const name = document.createElement("p");
38
- name.textContent = element.name;
39
- name.classList.add("ui-company-autocomplete-name");
40
-
41
- const domain = document.createElement("p");
42
- domain.textContent = element.domain;
43
- domain.classList.add("ui-company-autocomplete-domain");
44
-
45
- btn.append(logo);
46
- btn.append(name);
47
- btn.append(domain);
48
- listItem.append(btn);
49
-
50
- return listItem;
51
- });
52
-
53
- const renderContainer = (input) => {
54
- let container = getContainer(input);
55
-
56
- if (!container) {
57
- input.parentNode.style.position = "relative";
58
-
59
- container = document.createElement("div");
60
- container.dataset.id = "company-autocomplete-dropdown";
61
- container.classList.add("ui-company-autocomplete-container");
62
-
63
- const list = document.createElement("ol");
64
- list.classList.add("ui-company-autocomplete-list");
65
-
66
- return { container, list };
67
- }
68
-
69
- return { container, list: container.querySelector("ol") };
70
- };
71
-
72
- const renderDropdown = (input, data) => {
73
- const parent = input.parentNode;
74
- const { container, list } = renderContainer(input);
75
- const items = renderItems(data);
76
-
77
- clearList(input);
78
-
79
- items.forEach((item, index) => {
80
- list.append(item);
81
- item.addEventListener("click", (event) => {
82
- input.value = data[index].name;
83
- event.preventDefault();
84
- });
85
- });
86
-
87
- container.append(list);
88
- container.classList.remove("hidden");
89
- parent.append(container);
90
- };
91
-
92
- const fetchData = async (url, query) => {
93
- try {
94
- if (!query) {
95
- return [];
96
- }
97
-
98
- const res = await fetch(`${url}?query=${query}`);
99
- const payload = await res.json();
100
-
101
- return payload;
102
- } catch (e) {
103
- // eslint-disable-next-line no-console
104
- console.error(e);
105
- return [];
106
- }
107
- };
108
-
109
- const handleDownArrow = (input, event) => {
110
- const container = getContainer(input);
111
- const items = getItems(container);
112
- const focusedItemIndex = getFocusedItemIndex(items);
113
-
114
- if (items.length === 0) {
115
- return;
116
- } else if (document.activeElement === input) {
117
- items[0].focus();
118
- } else if (focusedItemIndex >= 0 && focusedItemIndex < items.length - 1) {
119
- items[focusedItemIndex + 1].focus();
120
- }
121
-
122
- event.preventDefault();
123
- };
124
-
125
- const handleUpArrow = (input, event) => {
126
- const container = getContainer(input);
127
- const items = getItems(container);
128
- const focusedItemIndex = getFocusedItemIndex(items);
129
-
130
- if (items.length === 0) {
131
- return;
132
- } else if (focusedItemIndex === 0) {
133
- input.focus();
134
- } else if (focusedItemIndex > 0) {
135
- items[focusedItemIndex - 1].focus();
136
- }
137
-
138
- event.preventDefault();
139
- };
140
-
141
- const handleTab = (input, event) => {
142
- const container = getContainer(input);
143
- const items = getItems(container);
144
- const focusedItemIndex = getFocusedItemIndex(items);
145
-
146
- if (document.activeElement === input && event.shiftKey) {
147
- clearList(input);
148
- } else if (focusedItemIndex === items.length - 1) {
149
- clearList(input);
150
- }
151
- };
152
-
153
- const handleEnter = (input, event) => {
154
- if (event.target.dataset.name) {
155
- input.value = event.target.dataset.name;
156
- clearList(input);
157
- input.focus();
158
- event.preventDefault();
159
- }
160
- };
161
-
162
- const CompanyAutocomplete = (input, url) => {
163
- if (!input || !url) return;
164
-
165
- input.setAttribute("autocomplete", "off");
166
-
167
- input.addEventListener(
168
- "keyup",
169
- throttle(
170
- async (event) => {
171
- if (["Enter", "Space", "Tab", "Escape"].includes(event.code)) return;
172
-
173
- const query = event.target.value;
174
- const data = await fetchData(url, query);
175
-
176
- if (data && data.length > 0) {
177
- renderDropdown(input, data);
178
- }
179
- },
180
- 100,
181
- { trailing: true }
182
- )
183
- );
184
-
185
- input.parentNode.addEventListener("keydown", (event) => {
186
- if (event.code === "ArrowDown") {
187
- handleDownArrow(input, event);
188
- } else if (event.code === "ArrowUp") {
189
- handleUpArrow(input, event);
190
- } else if (event.code === "Enter" || event.code === "Space") {
191
- handleEnter(input, event);
192
- } else if (event.code === "Tab") {
193
- handleTab(input, event);
194
- } else if (event.code === "Escape") {
195
- clearList(input);
196
- }
197
- });
198
-
199
- document.body.addEventListener("click", () => {
200
- clearList(input);
201
- });
202
- };
203
-
204
- export default CompanyAutocomplete;
File without changes
@@ -1,32 +0,0 @@
1
- <div class="ui-contact-footer font-sans antialiased" data-id="contact-footer">
2
- <div class="w-full bp-lg max-w-screen-xl mx-auto py-64 grid grid-cols-1 md:grid-cols-3 ui-grid-gap ui-grid-px">
3
- <div class="ui-contact-footer-box">
4
- <%= render(AblyUi::Core::Icon.new(name: "icon-display-live-chat", size: "3rem", additional_css: "block mb-16")) %>
5
- <div>
6
- <div class="ui-text-h3 mb-24">Live Chat</div>
7
- <p class="ui-text-p1">Reach out team of experts over chat powered by Ably.</p>
8
- </div>
9
- <%= tag.button type: "button", class: "ui-btn-secondary self-start mt-16", data: { id: "open-chat-widget", enabled_label: "Start a live chat", disabled_label: "Live chat unavailable" }, disabled: true do %>
10
- Live chat unavailable
11
- <% end %>
12
- </div>
13
- <div class="ui-contact-footer-box">
14
- <%= render(AblyUi::Core::Icon.new(name: "icon-display-call-mobile", size: "3rem", additional_css: "block mb-16")) %>
15
- <div class="flex-grow">
16
- <div class="ui-text-h3 mb-24">Call us</div>
17
- <p class="ui-text-p1">
18
- <span class="block"><strong class="font-bold">+1 877 434 5287</strong> (USA, toll free) </span>
19
- <span class="block"><strong class="font-bold">+44 20 3318 4689</strong> (UK) </span>
20
- </p>
21
- </div>
22
- </div>
23
- <div class="ui-contact-footer-box">
24
- <%= render(AblyUi::Core::Icon.new(name: "icon-display-tech-account-comms", size: "3rem", additional_css: "block mb-16")) %>
25
- <div>
26
- <div class="ui-text-h3 mb-24">Technical and account support</div>
27
- <p class="ui-text-p1">We&apos;re standing by to help with any questions or code.</p>
28
- </div>
29
- <%= link_to 'Get support now', abs_url("/support"), class: "ui-btn-secondary self-start p-btn mt-16" %>
30
- </div>
31
- </div>
32
- </div>
@@ -1,13 +0,0 @@
1
- module AblyUi
2
- module Core
3
- class ContactFooter < ViewComponent::Base
4
- include AblyUi::Core::Util
5
-
6
- attr_reader :url_base
7
-
8
- def initialize(url_base: AblyUi::Core::Util::DEFAULT_URL_BASE)
9
- @url_base = url_base
10
- end
11
- end
12
- end
13
- end
@@ -1 +0,0 @@
1
- import "./component.css";
@@ -1,9 +0,0 @@
1
- <section class="w-full bg-white">
2
- <%= tag.ul class: "py-64 flex flex-row flex-wrap md:flex-nowrap content-between m-auto items-center #{@additional_css}" do %>
3
- <% companies.each do |company| %>
4
- <li class="flex-auto text-center sm:w-1/3 w-1/2">
5
- <%= image_tag company[:logo], alt: "#{company[:label]} logo", class: 'mx-auto' %>
6
- </li>
7
- <% end %>
8
- <% end %>
9
- </section>
File without changes
@@ -1,28 +0,0 @@
1
- import React from "react";
2
- import T from "prop-types";
3
-
4
- const CustomerLogos = ({ companies, additionalCss = "" }) => {
5
- return (
6
- <section className="w-full bg-white">
7
- <ul className={`py-64 flex flex-row flex-wrap md:flex-nowrap content-between m-auto items-center ${additionalCss}`}>
8
- {companies.map((company) => (
9
- <li key={company.label} className="flex-auto text-center sm:w-1/3 w-1/2">
10
- <img alt={company.label} src={company.logo} className="mx-auto" />
11
- </li>
12
- ))}
13
- </ul>
14
- </section>
15
- );
16
- };
17
-
18
- CustomerLogos.propTypes = {
19
- companies: T.arrayOf(
20
- T.shape({
21
- label: T.string,
22
- logo: T.string,
23
- })
24
- ),
25
- additionalCss: T.string,
26
- };
27
-
28
- export default CustomerLogos;
@@ -1,14 +0,0 @@
1
- require 'json'
2
-
3
- module AblyUi
4
- module Core
5
- class CustomerLogos < ViewComponent::Base
6
- attr_reader :companies
7
-
8
- def initialize(companies:, additional_css: '')
9
- @companies = companies
10
- @additional_css = additional_css
11
- end
12
- end
13
- end
14
- end
File without changes
@@ -1,12 +0,0 @@
1
- @layer components {
2
- .ui-feature-footer {
3
- background: var(--gradient-active-orange);
4
- background-size: 100% 100%;
5
- background-position: right center;
6
- @apply w-full font-sans antialiased bg-gradient-active-orange;
7
- }
8
-
9
- .ui-feature-footer-box {
10
- @apply p-24 sm:p-32 xl:p-40 flex flex-col justify-between rounded-sm;
11
- }
12
- }
@@ -1,54 +0,0 @@
1
- <%- @image_url ||= asset_path('ably_ui/core/images/technical-support-01-800x533.jpg') %>
2
- <div class="ui-feature-footer" data-id="feature-footer">
3
- <div class="w-full bp-lg max-w-screen-xl mx-auto py-64 md:grid grid-cols-3 ui-grid-gap ui-grid-px">
4
- <div class="col-span-2 bg-cool-black text-white rounded-lg overflow-hidden sm:flex flex-row mb-24 md:mb-0">
5
- <%= tag.div class: 'ui-feature-image flex-0 bg-center bg-cover w-full h-256 sm:w-1/2 sm:h-auto', style: "background-image:url(#{@image_url})" %>
6
- <div class="p-24 sm:p-32 flex-1 h-full">
7
- <div class="flex flex-col h-full space-between">
8
- <span class="flex-1">
9
- <div class="ui-text-h3 text-white mb-24 flex-1"><%= @title %> </div>
10
- <p class="ui-text-p1 text-white"><%= @subtitle %></p>
11
- <%= tag.button type: "button", class: "ui-btn-secondary-invert self-start mt-24", data: { id: "open-chat-widget", enabled_label: live_chat_label, disabled_label: live_chat_disabled_label }, disabled: true do %>
12
- <%= live_chat_disabled_label %>
13
- <% end %>
14
- </span>
15
- <span class="flex-0 mt-24 md:mt-0">
16
- <p class="ui-text-p1 text-white">
17
- Don’t want to chat?
18
- <%= link_to 'Get in touch via our contact page', abs_url("/contact"), class: "text-white underline font-medium hover:text-gui-hover focus:text-gui-focus focus:outline-gui-focus" %>
19
- </p>
20
- </span>
21
- </div>
22
- </div>
23
- </div>
24
- <div class="bg-white rounded-lg p-24 sm:p-32 w-auto">
25
- <div class="flex flex-col h-full space-between">
26
- <span class="flex-1">
27
- <div class="ui-text-h3 mb-24">Try our APIs for free</div>
28
- <p class="ui-text-p1 mb-16">Our free plan includes</p>
29
- <ul class="relative ml-24 ui-text-p1">
30
- <li>
31
- <%= render(AblyUi::Core::Icon.new(name: "icon-gui-tick", size: "1.5rem", additional_css: "align-text-bottom")) %>
32
- 6m messages per month
33
- </li>
34
- <li>
35
- <%= render(AblyUi::Core::Icon.new(name: "icon-gui-tick", size: "1.5rem", additional_css: "align-text-bottom")) %>
36
- 200 peak connections
37
- </li>
38
- <li>
39
- <%= render(AblyUi::Core::Icon.new(name: "icon-gui-tick", size: "1.5rem", additional_css: "align-text-bottom")) %>
40
- 200 peak channels
41
- </li>
42
- <li>
43
- <%= render(AblyUi::Core::Icon.new(name: "icon-gui-tick", size: "1.5rem", additional_css: "align-text-bottom")) %>
44
- Loads of features
45
- </li>
46
- </ul>
47
- </span>
48
- <span class="flex-0">
49
- <%= link_to 'Start building', abs_url("/sign-up"), class: "ui-btn-secondary self-start mt-24" %>
50
- </span>
51
- </div>
52
- </div>
53
- </div>
54
- </div>
@@ -1,7 +0,0 @@
1
- import toggleChatWidget from "../hubspot-chat-toggle";
2
- import "./component.css";
3
-
4
- export default () =>
5
- toggleChatWidget({
6
- dataId: "feature-footer",
7
- });
@@ -1,30 +0,0 @@
1
- module AblyUi
2
- module Core
3
- class FeatureFooter < ViewComponent::Base
4
- include AblyUi::Core::Util
5
-
6
- attr_reader :url_base,
7
- :image_url,
8
- :title,
9
- :subtitle,
10
- :live_chat_label,
11
- :live_chat_disabled_label
12
-
13
- def initialize(
14
- url_base: AblyUi::Core::Util::DEFAULT_URL_BASE,
15
- image_url: nil,
16
- title: 'Talk to our technical team',
17
- subtitle: "If you're having technical or account issues just get in touch.",
18
- live_chat_label: 'Start a live chat',
19
- live_chat_disabled_label: 'Live chat unavailable'
20
- )
21
- @url_base = url_base
22
- @image_url = image_url
23
- @title = title
24
- @subtitle = subtitle
25
- @live_chat_label = live_chat_label
26
- @live_chat_disabled_label = live_chat_disabled_label
27
- end
28
- end
29
- end
30
- end
@@ -1,15 +0,0 @@
1
- <%= link_to(@url, class: "font-sans font-bold block text-gui-default hover:text-gui-hover focus:text-gui-focus focus:outline-gui-focus group ui-#{@text_size} #{@flush ? '' : 'py-8'} #{@additional_css}", style: "--featured-link-icon-size: var(#{@text_size.gsub("text", "--fs")})") do %>
2
- <% if @reverse %>
3
- <%= render(AblyUi::Core::Icon.new(name: "icon-gui-link-arrow",
4
- size: "calc(var(--featured-link-icon-size) * 1.25)",
5
- color: @icon_color,
6
- additional_css: "align-middle mr-8 relative -top-1 -right-4 transition-all group-hover:right-0 transform rotate-180")) %>
7
- <%= content -%>
8
- <% else %>
9
- <%= content -%><%= render(AblyUi::Core::Icon.new(name: "icon-gui-link-arrow",
10
- size: "calc(var(--featured-link-icon-size) * 1.25)",
11
- color: @icon_color,
12
- additional_css: "align-middle ml-8 relative -top-1 -left-4 transition-all group-hover:left-0")) %>
13
- <% end %>
14
-
15
- <% end %>
File without changes
@@ -1,21 +0,0 @@
1
- module AblyUi
2
- module Core
3
- class FeaturedLink < ViewComponent::Base
4
- def initialize(
5
- url:,
6
- text_size: 'text-p2',
7
- icon_color: 'text-cool-black',
8
- flush: false,
9
- reverse: false,
10
- additional_css: ''
11
- )
12
- @url = url
13
- @text_size = text_size
14
- @icon_color = icon_color
15
- @flush = flush
16
- @reverse = reverse
17
- @additional_css = additional_css
18
- end
19
- end
20
- end
21
- end
@@ -1 +0,0 @@
1
- import "./component.css";