@ably/ui 15.7.0-dev.a9daaf05 → 16.0.0-dev.937d7376

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 (85) hide show
  1. package/core/Flyout.js +1 -1
  2. package/core/Flyout.js.map +1 -1
  3. package/core/Header.js +1 -1
  4. package/core/Header.js.map +1 -1
  5. package/core/LegacyMeganav/MeganavBlogPostsList/component.js +2 -0
  6. package/core/LegacyMeganav/MeganavBlogPostsList/component.js.map +1 -0
  7. package/core/LegacyMeganav/MeganavControl/component.js +2 -0
  8. package/core/LegacyMeganav/MeganavControl/component.js.map +1 -0
  9. package/core/LegacyMeganav/MeganavControlMobileDropdown/component.js +2 -0
  10. package/core/LegacyMeganav/MeganavControlMobileDropdown/component.js.map +1 -0
  11. package/core/LegacyMeganav/MeganavControlMobilePanelClose/component.js +2 -0
  12. package/core/LegacyMeganav/MeganavControlMobilePanelClose/component.js.map +1 -0
  13. package/core/LegacyMeganav/MeganavControlMobilePanelOpen/component.js +2 -0
  14. package/core/LegacyMeganav/MeganavControlMobilePanelOpen/component.js.map +1 -0
  15. package/core/LegacyMeganav/MeganavSearchAutocomplete/component.js +2 -0
  16. package/core/LegacyMeganav/MeganavSearchAutocomplete/component.js.map +1 -0
  17. package/core/LegacyMeganav/MeganavSearchSuggestions/component.js +2 -0
  18. package/core/LegacyMeganav/MeganavSearchSuggestions/component.js.map +1 -0
  19. package/core/LegacyMeganav/component.js +2 -0
  20. package/core/{Meganav → LegacyMeganav}/component.js.map +1 -1
  21. package/core/LegacyMeganav.js +2 -0
  22. package/core/LegacyMeganav.js.map +1 -0
  23. package/core/Meganav/.DS_Store +0 -0
  24. package/core/Meganav/Meganav.js +2 -0
  25. package/core/Meganav/Meganav.js.map +1 -0
  26. package/core/Meganav/MeganavMobile.js +2 -0
  27. package/core/Meganav/MeganavMobile.js.map +1 -0
  28. package/core/Meganav/MeganavPanel.js +2 -0
  29. package/core/Meganav/MeganavPanel.js.map +1 -0
  30. package/core/Meganav/data.js +2 -0
  31. package/core/Meganav/data.js.map +1 -0
  32. package/core/Meganav/images/fan-engagement-nav-image.png +0 -0
  33. package/core/Meganav/images/founders-nav-image.png +0 -0
  34. package/core/MeganavBlogPostsList.js.map +1 -1
  35. package/core/MeganavContentCompany.js.map +1 -1
  36. package/core/MeganavContentDevelopers.js.map +1 -1
  37. package/core/MeganavContentProducts.js.map +1 -1
  38. package/core/MeganavContentUseCases.js.map +1 -1
  39. package/core/MeganavControl.js.map +1 -1
  40. package/core/MeganavControlMobileDropdown.js.map +1 -1
  41. package/core/MeganavItemsDesktop.js +1 -1
  42. package/core/MeganavItemsDesktop.js.map +1 -1
  43. package/core/MeganavItemsMobile.js +1 -1
  44. package/core/MeganavItemsMobile.js.map +1 -1
  45. package/core/MeganavItemsSignedIn.js.map +1 -1
  46. package/core/MeganavSearch.js.map +1 -1
  47. package/core/MeganavSearchPanel.js.map +1 -1
  48. package/core/MeganavSearchSuggestions.js.map +1 -1
  49. package/core/Notice/component.js +1 -1
  50. package/core/Notice/component.js.map +1 -1
  51. package/core/SignOutLink.js.map +1 -1
  52. package/core/images/award/g2-best-meets-requirements-2025.png +0 -0
  53. package/core/images/award/g2-best-support-2025.png +0 -0
  54. package/core/images/award/g2-high-performer-2025.png +0 -0
  55. package/core/images/award/g2-users-most-likely-to-recommend-2025.png +0 -0
  56. package/core/insights/index.js +1 -1
  57. package/core/insights/index.js.map +1 -1
  58. package/core/insights/mixpanel.js +1 -1
  59. package/core/insights/mixpanel.js.map +1 -1
  60. package/core/insights/posthog.js +1 -1
  61. package/core/insights/posthog.js.map +1 -1
  62. package/index.d.ts +193 -109
  63. package/package.json +1 -1
  64. package/core/Meganav/component.js +0 -2
  65. package/core/Meganav.js +0 -2
  66. package/core/Meganav.js.map +0 -1
  67. package/core/MeganavBlogPostsList/component.js +0 -2
  68. package/core/MeganavBlogPostsList/component.js.map +0 -1
  69. package/core/MeganavControl/component.js +0 -2
  70. package/core/MeganavControl/component.js.map +0 -1
  71. package/core/MeganavControlMobileDropdown/component.js +0 -2
  72. package/core/MeganavControlMobileDropdown/component.js.map +0 -1
  73. package/core/MeganavControlMobilePanelClose/component.js +0 -2
  74. package/core/MeganavControlMobilePanelClose/component.js.map +0 -1
  75. package/core/MeganavControlMobilePanelOpen/component.js +0 -2
  76. package/core/MeganavControlMobilePanelOpen/component.js.map +0 -1
  77. package/core/MeganavSearchAutocomplete/component.js +0 -2
  78. package/core/MeganavSearchAutocomplete/component.js.map +0 -1
  79. package/core/MeganavSearchSuggestions/component.js +0 -2
  80. package/core/MeganavSearchSuggestions/component.js.map +0 -1
  81. package/core/insights/datalayer.js +0 -2
  82. package/core/insights/datalayer.js.map +0 -1
  83. package/core/styles/colors/computed-colors.json +0 -1
  84. /package/core/{Meganav → LegacyMeganav}/component.css +0 -0
  85. /package/core/{Meganav → LegacyMeganav}/component.json +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/core/MeganavContentCompany.tsx"],"sourcesContent":["import React from \"react\";\n\nimport MeganavBlogPostsList from \"./MeganavBlogPostsList\";\nimport ConnectStateWrapper from \"./ConnectStateWrapper\";\nimport { selectRecentBlogPosts } from \"./remote-blogs-posts.js\";\nimport Icon from \"./Icon\";\nimport { AbsUrl, MeganavPaths } from \"./Meganav\";\n\ntype MeganavContentCompanyProps = {\n absUrl: AbsUrl;\n paths?: MeganavPaths;\n};\n\nconst MeganavContentCompany = ({\n paths,\n absUrl,\n}: MeganavContentCompanyProps) => {\n const BlogPostsList = ConnectStateWrapper(MeganavBlogPostsList, {\n recentBlogPosts: selectRecentBlogPosts,\n });\n\n return (\n <div className=\"flex max-w-screen-xl mx-auto\">\n <div className=\"ui-meganav-content-spacer\"></div>\n <section className=\"grid grid-cols-12 ui-grid-gap-x w-full\">\n <div className=\"col-span-full md:col-span-4 pt-24 md:py-24 lg:py-32 px-24 sm:px-32 md:pl-0 md:pr-24\">\n <h3\n className=\"ui-meganav-overline\"\n id=\"meganav-company-panel-list-why-companies\"\n >\n Why companies choose Ably\n </h3>\n <ul aria-labelledby=\"meganav-company-panel-list-why-companies\">\n <li>\n <a\n href={absUrl(\"/customers\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-customers-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Customers</p>\n <p className=\"ui-meganav-media-copy\">\n Ably supports customers across multiple industries.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/case-studies\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-case-studies-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Case studies</p>\n <p className=\"ui-meganav-media-copy\">\n Discover how customers are benefiting from Ably.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/compare\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-compare-tech-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Compare our tech</p>\n <p className=\"ui-meganav-media-copy\">\n Choose the right realtime service.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/aws\")}\n className=\"ui-meganav-media-with-image group\"\n >\n {paths && <img src={paths.awsLogo} alt=\"AWS logo\" />}\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Partners</p>\n <p className=\"ui-meganav-media-copy\">\n Ably collaborates and integrates with AWS.\n </p>\n </div>\n </a>\n </li>\n </ul>\n </div>\n\n <div className=\"col-span-full md:col-span-4 pb-8 md:py-24 lg:py-32 px-24 sm:px-32 md:px-0\">\n <ul\n className=\"md:mt-40\"\n aria-labelledby=\"meganav-company-panel-list-why-companies\"\n >\n <li>\n <a\n href={absUrl(\"/resources\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-resources-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Resources</p>\n <p className=\"ui-meganav-media-copy\">\n Learn more about realtime with our handy resources.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/about\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-about-ably-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">About Ably</p>\n <p className=\"ui-meganav-media-copy\">\n Find out more about Ably’s mission.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/careers\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-careers-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Careers</p>\n <p className=\"ui-meganav-media-copy\">\n Discover our open roles and core Ably values.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/events\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-events-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Events</p>\n <p className=\"ui-meganav-media-copy\">\n Join Ably at upcoming events.\n </p>\n </div>\n </a>\n </li>\n </ul>\n </div>\n\n <BlogPostsList absUrl={absUrl} />\n </section>\n <div className=\"ui-meganav-content-spacer\"></div>\n </div>\n );\n};\n\nexport default MeganavContentCompany;\n"],"names":["React","MeganavBlogPostsList","ConnectStateWrapper","selectRecentBlogPosts","Icon","MeganavContentCompany","paths","absUrl","BlogPostsList","recentBlogPosts","div","className","section","h3","id","ul","aria-labelledby","li","a","href","name","size","p","img","src","awsLogo","alt"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAE1B,QAAOC,yBAA0B,wBAAyB,AAC1D,QAAOC,wBAAyB,uBAAwB,AACxD,QAASC,qBAAqB,KAAQ,yBAA0B,AAChE,QAAOC,SAAU,QAAS,CAQ1B,MAAMC,sBAAwB,CAAC,CAC7BC,KAAK,CACLC,MAAM,CACqB,IAC3B,MAAMC,cAAgBN,oBAAoBD,qBAAsB,CAC9DQ,gBAAiBN,qBACnB,GAEA,OACE,oBAACO,OAAIC,UAAU,gCACb,oBAACD,OAAIC,UAAU,8BACf,oBAACC,WAAQD,UAAU,0CACjB,oBAACD,OAAIC,UAAU,uFACb,oBAACE,MACCF,UAAU,sBACVG,GAAG,4CACJ,6BAGD,oBAACC,MAAGC,kBAAgB,4CAClB,oBAACC,UACC,oBAACC,KACCC,KAAMZ,OAAO,cACbI,UAAU,qCAEV,oBAACP,MAAKgB,KAAK,6BAA6BC,KAAK,WAC7C,oBAACX,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,aACxC,oBAACW,KAAEX,UAAU,yBAAwB,0DAM3C,oBAACM,UACC,oBAACC,KACCC,KAAMZ,OAAO,iBACbI,UAAU,qCAEV,oBAACP,MAAKgB,KAAK,gCAAgCC,KAAK,WAChD,oBAACX,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,gBACxC,oBAACW,KAAEX,UAAU,yBAAwB,uDAM3C,oBAACM,UACC,oBAACC,KACCC,KAAMZ,OAAO,YACbI,UAAU,qCAEV,oBAACP,MAAKgB,KAAK,gCAAgCC,KAAK,WAChD,oBAACX,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,oBACxC,oBAACW,KAAEX,UAAU,yBAAwB,yCAM3C,oBAACM,UACC,oBAACC,KACCC,KAAMZ,OAAO,QACbI,UAAU,qCAETL,OAAS,oBAACiB,OAAIC,IAAKlB,MAAMmB,OAAO,CAAEC,IAAI,aACvC,oBAAChB,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,YACxC,oBAACW,KAAEX,UAAU,yBAAwB,mDAS/C,oBAACD,OAAIC,UAAU,6EACb,oBAACI,MACCJ,UAAU,WACVK,kBAAgB,4CAEhB,oBAACC,UACC,oBAACC,KACCC,KAAMZ,OAAO,cACbI,UAAU,qCAEV,oBAACP,MAAKgB,KAAK,6BAA6BC,KAAK,WAC7C,oBAACX,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,aACxC,oBAACW,KAAEX,UAAU,yBAAwB,0DAM3C,oBAACM,UACC,oBAACC,KACCC,KAAMZ,OAAO,UACbI,UAAU,qCAEV,oBAACP,MAAKgB,KAAK,8BAA8BC,KAAK,WAC9C,oBAACX,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,cACxC,oBAACW,KAAEX,UAAU,yBAAwB,0CAM3C,oBAACM,UACC,oBAACC,KACCC,KAAMZ,OAAO,YACbI,UAAU,qCAEV,oBAACP,MAAKgB,KAAK,2BAA2BC,KAAK,WAC3C,oBAACX,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,WACxC,oBAACW,KAAEX,UAAU,yBAAwB,oDAM3C,oBAACM,UACC,oBAACC,KACCC,KAAMZ,OAAO,WACbI,UAAU,qCAEV,oBAACP,MAAKgB,KAAK,0BAA0BC,KAAK,WAC1C,oBAACX,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,UACxC,oBAACW,KAAEX,UAAU,yBAAwB,sCAS/C,oBAACH,eAAcD,OAAQA,UAEzB,oBAACG,OAAIC,UAAU,8BAGrB,CAEA,gBAAeN,qBAAsB"}
1
+ {"version":3,"sources":["../../src/core/MeganavContentCompany.tsx"],"sourcesContent":["import React from \"react\";\n\nimport MeganavBlogPostsList from \"./MeganavBlogPostsList\";\nimport ConnectStateWrapper from \"./ConnectStateWrapper\";\nimport { selectRecentBlogPosts } from \"./remote-blogs-posts.js\";\nimport Icon from \"./Icon\";\nimport { AbsUrl, MeganavPaths } from \"./LegacyMeganav\";\n\ntype MeganavContentCompanyProps = {\n absUrl: AbsUrl;\n paths?: MeganavPaths;\n};\n\nconst MeganavContentCompany = ({\n paths,\n absUrl,\n}: MeganavContentCompanyProps) => {\n const BlogPostsList = ConnectStateWrapper(MeganavBlogPostsList, {\n recentBlogPosts: selectRecentBlogPosts,\n });\n\n return (\n <div className=\"flex max-w-screen-xl mx-auto\">\n <div className=\"ui-meganav-content-spacer\"></div>\n <section className=\"grid grid-cols-12 ui-grid-gap-x w-full\">\n <div className=\"col-span-full md:col-span-4 pt-24 md:py-24 lg:py-32 px-24 sm:px-32 md:pl-0 md:pr-24\">\n <h3\n className=\"ui-meganav-overline\"\n id=\"meganav-company-panel-list-why-companies\"\n >\n Why companies choose Ably\n </h3>\n <ul aria-labelledby=\"meganav-company-panel-list-why-companies\">\n <li>\n <a\n href={absUrl(\"/customers\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-customers-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Customers</p>\n <p className=\"ui-meganav-media-copy\">\n Ably supports customers across multiple industries.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/case-studies\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-case-studies-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Case studies</p>\n <p className=\"ui-meganav-media-copy\">\n Discover how customers are benefiting from Ably.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/compare\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-compare-tech-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Compare our tech</p>\n <p className=\"ui-meganav-media-copy\">\n Choose the right realtime service.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/aws\")}\n className=\"ui-meganav-media-with-image group\"\n >\n {paths && <img src={paths.awsLogo} alt=\"AWS logo\" />}\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Partners</p>\n <p className=\"ui-meganav-media-copy\">\n Ably collaborates and integrates with AWS.\n </p>\n </div>\n </a>\n </li>\n </ul>\n </div>\n\n <div className=\"col-span-full md:col-span-4 pb-8 md:py-24 lg:py-32 px-24 sm:px-32 md:px-0\">\n <ul\n className=\"md:mt-40\"\n aria-labelledby=\"meganav-company-panel-list-why-companies\"\n >\n <li>\n <a\n href={absUrl(\"/resources\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-resources-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Resources</p>\n <p className=\"ui-meganav-media-copy\">\n Learn more about realtime with our handy resources.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/about\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-about-ably-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">About Ably</p>\n <p className=\"ui-meganav-media-copy\">\n Find out more about Ably’s mission.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/careers\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-careers-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Careers</p>\n <p className=\"ui-meganav-media-copy\">\n Discover our open roles and core Ably values.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/events\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-events-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Events</p>\n <p className=\"ui-meganav-media-copy\">\n Join Ably at upcoming events.\n </p>\n </div>\n </a>\n </li>\n </ul>\n </div>\n\n <BlogPostsList absUrl={absUrl} />\n </section>\n <div className=\"ui-meganav-content-spacer\"></div>\n </div>\n );\n};\n\nexport default MeganavContentCompany;\n"],"names":["React","MeganavBlogPostsList","ConnectStateWrapper","selectRecentBlogPosts","Icon","MeganavContentCompany","paths","absUrl","BlogPostsList","recentBlogPosts","div","className","section","h3","id","ul","aria-labelledby","li","a","href","name","size","p","img","src","awsLogo","alt"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAE1B,QAAOC,yBAA0B,wBAAyB,AAC1D,QAAOC,wBAAyB,uBAAwB,AACxD,QAASC,qBAAqB,KAAQ,yBAA0B,AAChE,QAAOC,SAAU,QAAS,CAQ1B,MAAMC,sBAAwB,CAAC,CAC7BC,KAAK,CACLC,MAAM,CACqB,IAC3B,MAAMC,cAAgBN,oBAAoBD,qBAAsB,CAC9DQ,gBAAiBN,qBACnB,GAEA,OACE,oBAACO,OAAIC,UAAU,gCACb,oBAACD,OAAIC,UAAU,8BACf,oBAACC,WAAQD,UAAU,0CACjB,oBAACD,OAAIC,UAAU,uFACb,oBAACE,MACCF,UAAU,sBACVG,GAAG,4CACJ,6BAGD,oBAACC,MAAGC,kBAAgB,4CAClB,oBAACC,UACC,oBAACC,KACCC,KAAMZ,OAAO,cACbI,UAAU,qCAEV,oBAACP,MAAKgB,KAAK,6BAA6BC,KAAK,WAC7C,oBAACX,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,aACxC,oBAACW,KAAEX,UAAU,yBAAwB,0DAM3C,oBAACM,UACC,oBAACC,KACCC,KAAMZ,OAAO,iBACbI,UAAU,qCAEV,oBAACP,MAAKgB,KAAK,gCAAgCC,KAAK,WAChD,oBAACX,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,gBACxC,oBAACW,KAAEX,UAAU,yBAAwB,uDAM3C,oBAACM,UACC,oBAACC,KACCC,KAAMZ,OAAO,YACbI,UAAU,qCAEV,oBAACP,MAAKgB,KAAK,gCAAgCC,KAAK,WAChD,oBAACX,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,oBACxC,oBAACW,KAAEX,UAAU,yBAAwB,yCAM3C,oBAACM,UACC,oBAACC,KACCC,KAAMZ,OAAO,QACbI,UAAU,qCAETL,OAAS,oBAACiB,OAAIC,IAAKlB,MAAMmB,OAAO,CAAEC,IAAI,aACvC,oBAAChB,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,YACxC,oBAACW,KAAEX,UAAU,yBAAwB,mDAS/C,oBAACD,OAAIC,UAAU,6EACb,oBAACI,MACCJ,UAAU,WACVK,kBAAgB,4CAEhB,oBAACC,UACC,oBAACC,KACCC,KAAMZ,OAAO,cACbI,UAAU,qCAEV,oBAACP,MAAKgB,KAAK,6BAA6BC,KAAK,WAC7C,oBAACX,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,aACxC,oBAACW,KAAEX,UAAU,yBAAwB,0DAM3C,oBAACM,UACC,oBAACC,KACCC,KAAMZ,OAAO,UACbI,UAAU,qCAEV,oBAACP,MAAKgB,KAAK,8BAA8BC,KAAK,WAC9C,oBAACX,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,cACxC,oBAACW,KAAEX,UAAU,yBAAwB,0CAM3C,oBAACM,UACC,oBAACC,KACCC,KAAMZ,OAAO,YACbI,UAAU,qCAEV,oBAACP,MAAKgB,KAAK,2BAA2BC,KAAK,WAC3C,oBAACX,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,WACxC,oBAACW,KAAEX,UAAU,yBAAwB,oDAM3C,oBAACM,UACC,oBAACC,KACCC,KAAMZ,OAAO,WACbI,UAAU,qCAEV,oBAACP,MAAKgB,KAAK,0BAA0BC,KAAK,WAC1C,oBAACX,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,UACxC,oBAACW,KAAEX,UAAU,yBAAwB,sCAS/C,oBAACH,eAAcD,OAAQA,UAEzB,oBAACG,OAAIC,UAAU,8BAGrB,CAEA,gBAAeN,qBAAsB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/core/MeganavContentDevelopers.tsx"],"sourcesContent":["import React from \"react\";\n\nimport Icon from \"./Icon\";\nimport { AbsUrl } from \"./Meganav\";\nimport { StatusIcon } from \"./Status\";\n\nconst MeganavContentDevelopers = ({\n absUrl,\n statusUrl,\n}: {\n absUrl: AbsUrl;\n statusUrl: string;\n}) => (\n <div className=\"flex max-w-screen-xl mx-auto\">\n <div className=\"ui-meganav-content-spacer\"></div>\n <section className=\"grid grid-cols-12 ui-grid-gap-x w-full\">\n <div className=\"col-span-full md:col-span-4 pt-24 md:py-24 lg:py-32 px-24 sm:px-32 md:pl-0 md:pr-24\">\n <h3\n className=\"ui-meganav-overline uppercase\"\n id=\"meganav-developers-panel-explore\"\n >\n Explore\n </h3>\n <ul aria-labelledby=\"meganav-developers-panel-explore\">\n <li>\n <a\n href={absUrl(\"/docs\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-docs-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Documentation</p>\n <p className=\"ui-meganav-media-copy\">\n Technical guides to help you build with Ably.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/docs/quick-start-guide\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-quickstart-guides-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Quickstart guides</p>\n <p className=\"ui-meganav-media-copy\">\n Documentation to help you get started quickly.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/integrations\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-integrations-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Integrations</p>\n <p className=\"ui-meganav-media-copy\">\n Find out more about Ably integrations.{\" \"}\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/examples\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-examples-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Live examples</p>\n <p className=\"ui-meganav-media-copy\">\n Discover our features and their use cases.\n </p>\n </div>\n </a>\n </li>\n </ul>\n </div>\n\n <div className=\"col-span-full md:col-span-4 pb-8 md:py-24 lg:py-32 px-24 sm:px-32 md:px-0\">\n <ul\n className=\"md:mt-40\"\n aria-labelledby=\"meganav-developers-panel-explore\"\n >\n <li>\n <a\n href={absUrl(\"/docs/sdks\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-sdks-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">SDKs</p>\n <p className=\"ui-meganav-media-copy\">\n Download an SDK to help you build realtime apps faster.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/tutorials\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-tutorials-demos-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Tutorials & Demos</p>\n <p className=\"ui-meganav-media-copy\">\n Get stuck in with our hands-on resources.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/reference-guide-chat\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-chat-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">\n Chat apps reference guide\n </p>\n <p className=\"ui-meganav-media-copy\">\n Learn how to build chat apps with Ably.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/reference-guide-multiplayer\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-multi-user-spaces-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">\n Multiplayer reference guide\n </p>\n <p className=\"ui-meganav-media-copy\">\n Learn how to build collaborative features with Ably.\n </p>\n </div>\n </a>\n </li>\n </ul>\n </div>\n\n <div className=\"col-span-full md:col-span-4 pt-8 pb-24 md:py-24 lg:py-32 px-24 sm:px-32 md:px-0\">\n <h3\n className=\"ui-meganav-overline uppercase\"\n id=\"meganav-developers-panel-quick-links\"\n >\n Quick links\n </h3>\n <ul aria-labelledby=\"meganav-developers-panel-quick-links\">\n <li>\n <a\n href=\"https://discord.gg/jwBPhEZ9g5\"\n className=\"group ui-meganav-media py-12\"\n >\n <p className=\"ui-meganav-media-heading\">Discord</p>\n </a>\n </li>\n <li>\n <a\n href=\"https://github.com/ably\"\n className=\"group ui-meganav-media py-12\"\n >\n <p className=\"ui-meganav-media-heading\">GitHub</p>\n </a>\n </li>\n <li>\n <a\n href=\"https://changelog.ably.com/\"\n className=\"group ui-meganav-media py-12\"\n >\n <p className=\"ui-meganav-media-heading\">Changelog</p>\n </a>\n </li>\n <li>\n <a\n href=\"https://status.ably.com/\"\n className=\"group ui-meganav-media py-12\"\n >\n <p className=\"ui-meganav-media-heading flex items-center gap-4\">\n Status\n <StatusIcon statusUrl={statusUrl} />\n </p>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/support\")}\n className=\"group ui-meganav-media py-12\"\n >\n <p className=\"ui-meganav-media-heading\">Support & FAQs</p>\n </a>\n </li>\n </ul>\n </div>\n </section>\n <div className=\"ui-meganav-content-spacer\"></div>\n </div>\n);\n\nexport default MeganavContentDevelopers;\n"],"names":["React","Icon","StatusIcon","MeganavContentDevelopers","absUrl","statusUrl","div","className","section","h3","id","ul","aria-labelledby","li","a","href","name","size","p"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/core/MeganavContentDevelopers.tsx"],"sourcesContent":["import React from \"react\";\n\nimport Icon from \"./Icon\";\nimport { AbsUrl } from \"./LegacyMeganav\";\nimport { StatusIcon } from \"./Status\";\n\nconst MeganavContentDevelopers = ({\n absUrl,\n statusUrl,\n}: {\n absUrl: AbsUrl;\n statusUrl: string;\n}) => (\n <div className=\"flex max-w-screen-xl mx-auto\">\n <div className=\"ui-meganav-content-spacer\"></div>\n <section className=\"grid grid-cols-12 ui-grid-gap-x w-full\">\n <div className=\"col-span-full md:col-span-4 pt-24 md:py-24 lg:py-32 px-24 sm:px-32 md:pl-0 md:pr-24\">\n <h3\n className=\"ui-meganav-overline uppercase\"\n id=\"meganav-developers-panel-explore\"\n >\n Explore\n </h3>\n <ul aria-labelledby=\"meganav-developers-panel-explore\">\n <li>\n <a\n href={absUrl(\"/docs\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-docs-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Documentation</p>\n <p className=\"ui-meganav-media-copy\">\n Technical guides to help you build with Ably.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/docs/quick-start-guide\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-quickstart-guides-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Quickstart guides</p>\n <p className=\"ui-meganav-media-copy\">\n Documentation to help you get started quickly.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/integrations\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-integrations-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Integrations</p>\n <p className=\"ui-meganav-media-copy\">\n Find out more about Ably integrations.{\" \"}\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/examples\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-examples-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Live examples</p>\n <p className=\"ui-meganav-media-copy\">\n Discover our features and their use cases.\n </p>\n </div>\n </a>\n </li>\n </ul>\n </div>\n\n <div className=\"col-span-full md:col-span-4 pb-8 md:py-24 lg:py-32 px-24 sm:px-32 md:px-0\">\n <ul\n className=\"md:mt-40\"\n aria-labelledby=\"meganav-developers-panel-explore\"\n >\n <li>\n <a\n href={absUrl(\"/docs/sdks\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-sdks-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">SDKs</p>\n <p className=\"ui-meganav-media-copy\">\n Download an SDK to help you build realtime apps faster.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/tutorials\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-tutorials-demos-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Tutorials & Demos</p>\n <p className=\"ui-meganav-media-copy\">\n Get stuck in with our hands-on resources.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/reference-guide-chat\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-chat-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">\n Chat apps reference guide\n </p>\n <p className=\"ui-meganav-media-copy\">\n Learn how to build chat apps with Ably.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/reference-guide-multiplayer\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-multi-user-spaces-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">\n Multiplayer reference guide\n </p>\n <p className=\"ui-meganav-media-copy\">\n Learn how to build collaborative features with Ably.\n </p>\n </div>\n </a>\n </li>\n </ul>\n </div>\n\n <div className=\"col-span-full md:col-span-4 pt-8 pb-24 md:py-24 lg:py-32 px-24 sm:px-32 md:px-0\">\n <h3\n className=\"ui-meganav-overline uppercase\"\n id=\"meganav-developers-panel-quick-links\"\n >\n Quick links\n </h3>\n <ul aria-labelledby=\"meganav-developers-panel-quick-links\">\n <li>\n <a\n href=\"https://discord.gg/jwBPhEZ9g5\"\n className=\"group ui-meganav-media py-12\"\n >\n <p className=\"ui-meganav-media-heading\">Discord</p>\n </a>\n </li>\n <li>\n <a\n href=\"https://github.com/ably\"\n className=\"group ui-meganav-media py-12\"\n >\n <p className=\"ui-meganav-media-heading\">GitHub</p>\n </a>\n </li>\n <li>\n <a\n href=\"https://changelog.ably.com/\"\n className=\"group ui-meganav-media py-12\"\n >\n <p className=\"ui-meganav-media-heading\">Changelog</p>\n </a>\n </li>\n <li>\n <a\n href=\"https://status.ably.com/\"\n className=\"group ui-meganav-media py-12\"\n >\n <p className=\"ui-meganav-media-heading flex items-center gap-4\">\n Status\n <StatusIcon statusUrl={statusUrl} />\n </p>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/support\")}\n className=\"group ui-meganav-media py-12\"\n >\n <p className=\"ui-meganav-media-heading\">Support & FAQs</p>\n </a>\n </li>\n </ul>\n </div>\n </section>\n <div className=\"ui-meganav-content-spacer\"></div>\n </div>\n);\n\nexport default MeganavContentDevelopers;\n"],"names":["React","Icon","StatusIcon","MeganavContentDevelopers","absUrl","statusUrl","div","className","section","h3","id","ul","aria-labelledby","li","a","href","name","size","p"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAE1B,QAAOC,SAAU,QAAS,AAE1B,QAASC,UAAU,KAAQ,UAAW,CAEtC,MAAMC,yBAA2B,CAAC,CAChCC,MAAM,CACNC,SAAS,CAIV,GACC,oBAACC,OAAIC,UAAU,gCACb,oBAACD,OAAIC,UAAU,8BACf,oBAACC,WAAQD,UAAU,0CACjB,oBAACD,OAAIC,UAAU,uFACb,oBAACE,MACCF,UAAU,gCACVG,GAAG,oCACJ,WAGD,oBAACC,MAAGC,kBAAgB,oCAClB,oBAACC,UACC,oBAACC,KACCC,KAAMX,OAAO,SACbG,UAAU,qCAEV,oBAACN,MAAKe,KAAK,wBAAwBC,KAAK,WACxC,oBAACX,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,iBACxC,oBAACW,KAAEX,UAAU,yBAAwB,oDAM3C,oBAACM,UACC,oBAACC,KACCC,KAAMX,OAAO,2BACbG,UAAU,qCAEV,oBAACN,MAAKe,KAAK,qCAAqCC,KAAK,WACrD,oBAACX,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,qBACxC,oBAACW,KAAEX,UAAU,yBAAwB,qDAM3C,oBAACM,UACC,oBAACC,KACCC,KAAMX,OAAO,iBACbG,UAAU,qCAEV,oBAACN,MAAKe,KAAK,gCAAgCC,KAAK,WAChD,oBAACX,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,gBACxC,oBAACW,KAAEX,UAAU,yBAAwB,yCACI,QAK/C,oBAACM,UACC,oBAACC,KACCC,KAAMX,OAAO,aACbG,UAAU,qCAEV,oBAACN,MAAKe,KAAK,4BAA4BC,KAAK,WAC5C,oBAACX,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,iBACxC,oBAACW,KAAEX,UAAU,yBAAwB,mDAS/C,oBAACD,OAAIC,UAAU,6EACb,oBAACI,MACCJ,UAAU,WACVK,kBAAgB,oCAEhB,oBAACC,UACC,oBAACC,KACCC,KAAMX,OAAO,cACbG,UAAU,qCAEV,oBAACN,MAAKe,KAAK,wBAAwBC,KAAK,WACxC,oBAACX,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,QACxC,oBAACW,KAAEX,UAAU,yBAAwB,8DAM3C,oBAACM,UACC,oBAACC,KACCC,KAAMX,OAAO,cACbG,UAAU,qCAEV,oBAACN,MAAKe,KAAK,mCAAmCC,KAAK,WACnD,oBAACX,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,qBACxC,oBAACW,KAAEX,UAAU,yBAAwB,gDAM3C,oBAACM,UACC,oBAACC,KACCC,KAAMX,OAAO,yBACbG,UAAU,qCAEV,oBAACN,MAAKe,KAAK,wBAAwBC,KAAK,WACxC,oBAACX,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,6BAGxC,oBAACW,KAAEX,UAAU,yBAAwB,8CAM3C,oBAACM,UACC,oBAACC,KACCC,KAAMX,OAAO,gCACbG,UAAU,qCAEV,oBAACN,MAAKe,KAAK,qCAAqCC,KAAK,WACrD,oBAACX,OAAIC,UAAU,gCACb,oBAACW,KAAEX,UAAU,4BAA2B,+BAGxC,oBAACW,KAAEX,UAAU,yBAAwB,6DAS/C,oBAACD,OAAIC,UAAU,mFACb,oBAACE,MACCF,UAAU,gCACVG,GAAG,wCACJ,eAGD,oBAACC,MAAGC,kBAAgB,wCAClB,oBAACC,UACC,oBAACC,KACCC,KAAK,gCACLR,UAAU,gCAEV,oBAACW,KAAEX,UAAU,4BAA2B,aAG5C,oBAACM,UACC,oBAACC,KACCC,KAAK,0BACLR,UAAU,gCAEV,oBAACW,KAAEX,UAAU,4BAA2B,YAG5C,oBAACM,UACC,oBAACC,KACCC,KAAK,8BACLR,UAAU,gCAEV,oBAACW,KAAEX,UAAU,4BAA2B,eAG5C,oBAACM,UACC,oBAACC,KACCC,KAAK,2BACLR,UAAU,gCAEV,oBAACW,KAAEX,UAAU,oDAAmD,SAE9D,oBAACL,YAAWG,UAAWA,eAI7B,oBAACQ,UACC,oBAACC,KACCC,KAAMX,OAAO,YACbG,UAAU,gCAEV,oBAACW,KAAEX,UAAU,4BAA2B,uBAMlD,oBAACD,OAAIC,UAAU,8BAInB,gBAAeJ,wBAAyB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/core/MeganavContentProducts.tsx"],"sourcesContent":["import React from \"react\";\n\nimport FeaturedLink from \"./FeaturedLink\";\nimport { AbsUrl, MeganavPaths } from \"./Meganav\";\n\ntype MeganavContentProductsProps = {\n paths?: MeganavPaths;\n absUrl: AbsUrl;\n};\n\nconst MeganavContentProducts = ({\n paths,\n absUrl,\n}: MeganavContentProductsProps) => (\n <div className=\"flex max-w-screen-xl mx-auto\">\n <div className=\"ui-meganav-content-spacer bg-extra-light-grey\"></div>\n <section className=\"grid grid-cols-12 ui-grid-gap-x w-full\">\n <div className=\"col-span-full md:col-span-4 py-24 lg:py-32 px-24 sm:px-32 md:pl-0 md:pr-24 bg-extra-light-grey\">\n <div className=\"flex mb-20\">\n {paths && <img src={paths?.ablyStack} alt=\"Ably homepage\" />}\n <h3 className=\"ui-meganav-overline ml-24\">The Ably Platform</h3>\n </div>\n <p className=\"ui-text-p2 font-bold mb-24\" style={{ maxWidth: \"330px\" }}>\n Easily power any realtime experience in your application. No complex\n infrastructure to manage or provision. Just a simple API that handles\n everything realtime, and lets you focus on your code.\n </p>\n\n <FeaturedLink url={absUrl(\"/platform\")} textSize=\"text-p2\">\n Explore how it works\n </FeaturedLink>\n </div>\n\n <div className=\"col-span-full md:col-span-4 pt-24 pb-8 md:py-24 lg:py-32 px-24 sm:px-32 md:px-0 bg-white\">\n <h3\n className=\"ui-meganav-overline\"\n id=\"meganav-products-panel-list-examples\"\n >\n Products\n </h3>\n <ul\n className=\"mb-16\"\n aria-labelledby=\"meganav-products-panel-list-examples\"\n >\n <li>\n <a href={absUrl(\"/pubsub\")} className=\"group ui-meganav-media\">\n <p className=\"ui-meganav-media-heading\">Pub/Sub</p>\n <p className=\"ui-meganav-media-copy\">\n Build infinitely scalable realtime applications.\n </p>\n </a>\n </li>\n <li>\n <a href={absUrl(\"/spaces\")} className=\"group ui-meganav-media\">\n <p className=\"ui-meganav-media-heading\">Spaces</p>\n <p className=\"ui-meganav-media-copy\">\n Create multi-user collaborative environments.\n </p>\n </a>\n </li>\n <li>\n <a href={absUrl(\"/livesync\")} className=\"group ui-meganav-media\">\n <p className=\"ui-meganav-media-heading\">LiveSync</p>\n <p className=\"ui-meganav-media-copy\">\n Seamlessly sync database changes with frontend clients at scale.\n </p>\n </a>\n </li>\n <li>\n <a href={absUrl(\"/chat\")} className=\"group ui-meganav-media\">\n <p className=\"ui-meganav-media-heading\">Chat</p>\n <p className=\"ui-meganav-media-copy\">\n Deliver highly reliable chat experiences at scale.\n </p>\n </a>\n </li>\n </ul>\n </div>\n\n <div className=\"col-span-full md:col-span-4 pt-8 pb-24 md:py-24 lg:py-32 px-24 sm:px-32 md:px-0 bg-white\">\n <h3\n className=\"ui-meganav-overline\"\n id=\"meganav-products-panel-list-our-technology\"\n >\n Technology\n </h3>\n <ul\n className=\"mb-16\"\n aria-labelledby=\"meganav-products-panel-list-our-technology\"\n >\n <li>\n <a\n href={absUrl(\"/four-pillars-of-dependability#performance\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">\n Predictable performance\n </p>\n <p className=\"ui-meganav-media-copy\">\n A low-latency and high-throughput global network.\n </p>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/four-pillars-of-dependability#integrity\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">\n Guaranteed ordering & delivery\n </p>\n <p className=\"ui-meganav-media-copy\">\n Data is delivered - in order - even after disconnections.\n </p>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/four-pillars-of-dependability#reliability\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">\n Fault tolerant infrastructure\n </p>\n <p className=\"ui-meganav-media-copy\">\n Redundancy is built in at global and regional levels.\n </p>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/four-pillars-of-dependability#availability\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">\n High scalability & availability\n </p>\n <p className=\"ui-meganav-media-copy\">\n Built for scale with legitimate 99.999% uptime SLAs.\n </p>\n </a>\n </li>\n <li>\n <a href={absUrl(\"/network\")} className=\"ui-meganav-media group\">\n <p className=\"ui-meganav-media-heading\">Global edge network</p>\n <p className=\"ui-meganav-media-copy\">\n An edge network of 15 core routing datacenters and 205+ PoPs.\n </p>\n </a>\n </li>\n </ul>\n\n <FeaturedLink\n url={absUrl(\"/four-pillars-of-dependability\")}\n textSize=\"text-p3\"\n >\n Explore Four Pillars of Dependability\n </FeaturedLink>\n </div>\n </section>\n <div className=\"ui-meganav-content-spacer\"></div>\n </div>\n);\n\nexport default MeganavContentProducts;\n"],"names":["React","FeaturedLink","MeganavContentProducts","paths","absUrl","div","className","section","img","src","ablyStack","alt","h3","p","style","maxWidth","url","textSize","id","ul","aria-labelledby","li","a","href"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAE1B,QAAOC,iBAAkB,gBAAiB,CAQ1C,MAAMC,uBAAyB,CAAC,CAC9BC,KAAK,CACLC,MAAM,CACsB,GAC5B,oBAACC,OAAIC,UAAU,gCACb,oBAACD,OAAIC,UAAU,kDACf,oBAACC,WAAQD,UAAU,0CACjB,oBAACD,OAAIC,UAAU,kGACb,oBAACD,OAAIC,UAAU,cACZH,OAAS,oBAACK,OAAIC,IAAKN,OAAOO,UAAWC,IAAI,kBAC1C,oBAACC,MAAGN,UAAU,6BAA4B,sBAE5C,oBAACO,KAAEP,UAAU,6BAA6BQ,MAAO,CAAEC,SAAU,OAAQ,GAAG,oMAMxE,oBAACd,cAAae,IAAKZ,OAAO,aAAca,SAAS,WAAU,yBAK7D,oBAACZ,OAAIC,UAAU,4FACb,oBAACM,MACCN,UAAU,sBACVY,GAAG,wCACJ,YAGD,oBAACC,MACCb,UAAU,QACVc,kBAAgB,wCAEhB,oBAACC,UACC,oBAACC,KAAEC,KAAMnB,OAAO,WAAYE,UAAU,0BACpC,oBAACO,KAAEP,UAAU,4BAA2B,WACxC,oBAACO,KAAEP,UAAU,yBAAwB,sDAKzC,oBAACe,UACC,oBAACC,KAAEC,KAAMnB,OAAO,WAAYE,UAAU,0BACpC,oBAACO,KAAEP,UAAU,4BAA2B,UACxC,oBAACO,KAAEP,UAAU,yBAAwB,mDAKzC,oBAACe,UACC,oBAACC,KAAEC,KAAMnB,OAAO,aAAcE,UAAU,0BACtC,oBAACO,KAAEP,UAAU,4BAA2B,YACxC,oBAACO,KAAEP,UAAU,yBAAwB,sEAKzC,oBAACe,UACC,oBAACC,KAAEC,KAAMnB,OAAO,SAAUE,UAAU,0BAClC,oBAACO,KAAEP,UAAU,4BAA2B,QACxC,oBAACO,KAAEP,UAAU,yBAAwB,0DAQ7C,oBAACD,OAAIC,UAAU,4FACb,oBAACM,MACCN,UAAU,sBACVY,GAAG,8CACJ,cAGD,oBAACC,MACCb,UAAU,QACVc,kBAAgB,8CAEhB,oBAACC,UACC,oBAACC,KACCC,KAAMnB,OAAO,8CACbE,UAAU,0BAEV,oBAACO,KAAEP,UAAU,4BAA2B,2BAGxC,oBAACO,KAAEP,UAAU,yBAAwB,uDAKzC,oBAACe,UACC,oBAACC,KACCC,KAAMnB,OAAO,4CACbE,UAAU,0BAEV,oBAACO,KAAEP,UAAU,4BAA2B,kCAGxC,oBAACO,KAAEP,UAAU,yBAAwB,+DAKzC,oBAACe,UACC,oBAACC,KACCC,KAAMnB,OAAO,8CACbE,UAAU,0BAEV,oBAACO,KAAEP,UAAU,4BAA2B,iCAGxC,oBAACO,KAAEP,UAAU,yBAAwB,2DAKzC,oBAACe,UACC,oBAACC,KACCC,KAAMnB,OAAO,+CACbE,UAAU,0BAEV,oBAACO,KAAEP,UAAU,4BAA2B,mCAGxC,oBAACO,KAAEP,UAAU,yBAAwB,0DAKzC,oBAACe,UACC,oBAACC,KAAEC,KAAMnB,OAAO,YAAaE,UAAU,0BACrC,oBAACO,KAAEP,UAAU,4BAA2B,uBACxC,oBAACO,KAAEP,UAAU,yBAAwB,oEAO3C,oBAACL,cACCe,IAAKZ,OAAO,kCACZa,SAAS,WACV,2CAKL,oBAACZ,OAAIC,UAAU,8BAInB,gBAAeJ,sBAAuB"}
1
+ {"version":3,"sources":["../../src/core/MeganavContentProducts.tsx"],"sourcesContent":["import React from \"react\";\n\nimport FeaturedLink from \"./FeaturedLink\";\nimport { AbsUrl, MeganavPaths } from \"./LegacyMeganav\";\n\ntype MeganavContentProductsProps = {\n paths?: MeganavPaths;\n absUrl: AbsUrl;\n};\n\nconst MeganavContentProducts = ({\n paths,\n absUrl,\n}: MeganavContentProductsProps) => (\n <div className=\"flex max-w-screen-xl mx-auto\">\n <div className=\"ui-meganav-content-spacer bg-extra-light-grey\"></div>\n <section className=\"grid grid-cols-12 ui-grid-gap-x w-full\">\n <div className=\"col-span-full md:col-span-4 py-24 lg:py-32 px-24 sm:px-32 md:pl-0 md:pr-24 bg-extra-light-grey\">\n <div className=\"flex mb-20\">\n {paths && <img src={paths?.ablyStack} alt=\"Ably homepage\" />}\n <h3 className=\"ui-meganav-overline ml-24\">The Ably Platform</h3>\n </div>\n <p className=\"ui-text-p2 font-bold mb-24\" style={{ maxWidth: \"330px\" }}>\n Easily power any realtime experience in your application. No complex\n infrastructure to manage or provision. Just a simple API that handles\n everything realtime, and lets you focus on your code.\n </p>\n\n <FeaturedLink url={absUrl(\"/platform\")} textSize=\"text-p2\">\n Explore how it works\n </FeaturedLink>\n </div>\n\n <div className=\"col-span-full md:col-span-4 pt-24 pb-8 md:py-24 lg:py-32 px-24 sm:px-32 md:px-0 bg-white\">\n <h3\n className=\"ui-meganav-overline\"\n id=\"meganav-products-panel-list-examples\"\n >\n Products\n </h3>\n <ul\n className=\"mb-16\"\n aria-labelledby=\"meganav-products-panel-list-examples\"\n >\n <li>\n <a href={absUrl(\"/pubsub\")} className=\"group ui-meganav-media\">\n <p className=\"ui-meganav-media-heading\">Pub/Sub</p>\n <p className=\"ui-meganav-media-copy\">\n Build infinitely scalable realtime applications.\n </p>\n </a>\n </li>\n <li>\n <a href={absUrl(\"/spaces\")} className=\"group ui-meganav-media\">\n <p className=\"ui-meganav-media-heading\">Spaces</p>\n <p className=\"ui-meganav-media-copy\">\n Create multi-user collaborative environments.\n </p>\n </a>\n </li>\n <li>\n <a href={absUrl(\"/livesync\")} className=\"group ui-meganav-media\">\n <p className=\"ui-meganav-media-heading\">LiveSync</p>\n <p className=\"ui-meganav-media-copy\">\n Seamlessly sync database changes with frontend clients at scale.\n </p>\n </a>\n </li>\n <li>\n <a href={absUrl(\"/chat\")} className=\"group ui-meganav-media\">\n <p className=\"ui-meganav-media-heading\">Chat</p>\n <p className=\"ui-meganav-media-copy\">\n Deliver highly reliable chat experiences at scale.\n </p>\n </a>\n </li>\n </ul>\n </div>\n\n <div className=\"col-span-full md:col-span-4 pt-8 pb-24 md:py-24 lg:py-32 px-24 sm:px-32 md:px-0 bg-white\">\n <h3\n className=\"ui-meganav-overline\"\n id=\"meganav-products-panel-list-our-technology\"\n >\n Technology\n </h3>\n <ul\n className=\"mb-16\"\n aria-labelledby=\"meganav-products-panel-list-our-technology\"\n >\n <li>\n <a\n href={absUrl(\"/four-pillars-of-dependability#performance\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">\n Predictable performance\n </p>\n <p className=\"ui-meganav-media-copy\">\n A low-latency and high-throughput global network.\n </p>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/four-pillars-of-dependability#integrity\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">\n Guaranteed ordering & delivery\n </p>\n <p className=\"ui-meganav-media-copy\">\n Data is delivered - in order - even after disconnections.\n </p>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/four-pillars-of-dependability#reliability\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">\n Fault tolerant infrastructure\n </p>\n <p className=\"ui-meganav-media-copy\">\n Redundancy is built in at global and regional levels.\n </p>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/four-pillars-of-dependability#availability\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">\n High scalability & availability\n </p>\n <p className=\"ui-meganav-media-copy\">\n Built for scale with legitimate 99.999% uptime SLAs.\n </p>\n </a>\n </li>\n <li>\n <a href={absUrl(\"/network\")} className=\"ui-meganav-media group\">\n <p className=\"ui-meganav-media-heading\">Global edge network</p>\n <p className=\"ui-meganav-media-copy\">\n An edge network of 15 core routing datacenters and 205+ PoPs.\n </p>\n </a>\n </li>\n </ul>\n\n <FeaturedLink\n url={absUrl(\"/four-pillars-of-dependability\")}\n textSize=\"text-p3\"\n >\n Explore Four Pillars of Dependability\n </FeaturedLink>\n </div>\n </section>\n <div className=\"ui-meganav-content-spacer\"></div>\n </div>\n);\n\nexport default MeganavContentProducts;\n"],"names":["React","FeaturedLink","MeganavContentProducts","paths","absUrl","div","className","section","img","src","ablyStack","alt","h3","p","style","maxWidth","url","textSize","id","ul","aria-labelledby","li","a","href"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAE1B,QAAOC,iBAAkB,gBAAiB,CAQ1C,MAAMC,uBAAyB,CAAC,CAC9BC,KAAK,CACLC,MAAM,CACsB,GAC5B,oBAACC,OAAIC,UAAU,gCACb,oBAACD,OAAIC,UAAU,kDACf,oBAACC,WAAQD,UAAU,0CACjB,oBAACD,OAAIC,UAAU,kGACb,oBAACD,OAAIC,UAAU,cACZH,OAAS,oBAACK,OAAIC,IAAKN,OAAOO,UAAWC,IAAI,kBAC1C,oBAACC,MAAGN,UAAU,6BAA4B,sBAE5C,oBAACO,KAAEP,UAAU,6BAA6BQ,MAAO,CAAEC,SAAU,OAAQ,GAAG,oMAMxE,oBAACd,cAAae,IAAKZ,OAAO,aAAca,SAAS,WAAU,yBAK7D,oBAACZ,OAAIC,UAAU,4FACb,oBAACM,MACCN,UAAU,sBACVY,GAAG,wCACJ,YAGD,oBAACC,MACCb,UAAU,QACVc,kBAAgB,wCAEhB,oBAACC,UACC,oBAACC,KAAEC,KAAMnB,OAAO,WAAYE,UAAU,0BACpC,oBAACO,KAAEP,UAAU,4BAA2B,WACxC,oBAACO,KAAEP,UAAU,yBAAwB,sDAKzC,oBAACe,UACC,oBAACC,KAAEC,KAAMnB,OAAO,WAAYE,UAAU,0BACpC,oBAACO,KAAEP,UAAU,4BAA2B,UACxC,oBAACO,KAAEP,UAAU,yBAAwB,mDAKzC,oBAACe,UACC,oBAACC,KAAEC,KAAMnB,OAAO,aAAcE,UAAU,0BACtC,oBAACO,KAAEP,UAAU,4BAA2B,YACxC,oBAACO,KAAEP,UAAU,yBAAwB,sEAKzC,oBAACe,UACC,oBAACC,KAAEC,KAAMnB,OAAO,SAAUE,UAAU,0BAClC,oBAACO,KAAEP,UAAU,4BAA2B,QACxC,oBAACO,KAAEP,UAAU,yBAAwB,0DAQ7C,oBAACD,OAAIC,UAAU,4FACb,oBAACM,MACCN,UAAU,sBACVY,GAAG,8CACJ,cAGD,oBAACC,MACCb,UAAU,QACVc,kBAAgB,8CAEhB,oBAACC,UACC,oBAACC,KACCC,KAAMnB,OAAO,8CACbE,UAAU,0BAEV,oBAACO,KAAEP,UAAU,4BAA2B,2BAGxC,oBAACO,KAAEP,UAAU,yBAAwB,uDAKzC,oBAACe,UACC,oBAACC,KACCC,KAAMnB,OAAO,4CACbE,UAAU,0BAEV,oBAACO,KAAEP,UAAU,4BAA2B,kCAGxC,oBAACO,KAAEP,UAAU,yBAAwB,+DAKzC,oBAACe,UACC,oBAACC,KACCC,KAAMnB,OAAO,8CACbE,UAAU,0BAEV,oBAACO,KAAEP,UAAU,4BAA2B,iCAGxC,oBAACO,KAAEP,UAAU,yBAAwB,2DAKzC,oBAACe,UACC,oBAACC,KACCC,KAAMnB,OAAO,+CACbE,UAAU,0BAEV,oBAACO,KAAEP,UAAU,4BAA2B,mCAGxC,oBAACO,KAAEP,UAAU,yBAAwB,0DAKzC,oBAACe,UACC,oBAACC,KAAEC,KAAMnB,OAAO,YAAaE,UAAU,0BACrC,oBAACO,KAAEP,UAAU,4BAA2B,uBACxC,oBAACO,KAAEP,UAAU,yBAAwB,oEAO3C,oBAACL,cACCe,IAAKZ,OAAO,kCACZa,SAAS,WACV,2CAKL,oBAACZ,OAAIC,UAAU,8BAInB,gBAAeJ,sBAAuB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/core/MeganavContentUseCases.tsx"],"sourcesContent":["import React from \"react\";\n\nimport Icon from \"./Icon\";\nimport { AbsUrl } from \"./Meganav\";\n\nconst MeganavContentUseCases = ({ absUrl }: { absUrl: AbsUrl }) => (\n <div className=\"flex max-w-screen-xl mx-auto\">\n <div className=\"ui-meganav-content-spacer bg-extra-light-grey\"></div>\n <section className=\"grid grid-cols-12 ui-grid-gap-x w-full\">\n <div className=\"col-span-full md:col-span-4 py-24 lg:py-32 px-24 sm:px-32 md:pl-0 md:pr-24 bg-extra-light-grey\">\n <h3\n className=\"ui-meganav-overline\"\n id=\"meganav-use-cases-panel-use-cases\"\n >\n Solutions\n </h3>\n <ul aria-labelledby=\"meganav-use-cases-panel-industry-use-cases\">\n <li>\n <a\n href={absUrl(\"/chat\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-chat-stack-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Live Chat</p>\n <p className=\"ui-meganav-media-copy\">\n Deliver highly reliable chat experiences at scale.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/solutions/multiplayer-collaboration\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-multi-user-spaces-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">\n Multiplayer Collaboration\n </p>\n <p className=\"ui-meganav-media-copy\">\n Bring collaborative multiplayer experiences to your users.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/solutions/data-broadcast\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-data-broadcast-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Data Broadcast</p>\n <p className=\"ui-meganav-media-copy\">\n Broadcast realtime event data to millions of devices around\n the globe.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/solutions/data-synchronization\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon\n name=\"icon-display-data-synchronization-col\"\n size=\"2.5rem\"\n />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Data Synchronization</p>\n <p className=\"ui-meganav-media-copy\">\n Keep your frontend and backend in realtime sync, at global\n scale.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/push-notifications\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-push-notifications-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Notifications</p>\n <p className=\"ui-meganav-media-copy\">\n Deliver cross-platform push notifications with a simple\n unified API.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/solutions/asset-tracking\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-asset-tracking-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Asset Tracking</p>\n <p className=\"ui-meganav-media-copy\">\n Track assets in realtime with a solution optimised for last\n mile logistics.\n </p>\n </div>\n </a>\n </li>\n </ul>\n </div>\n\n <div className=\"col-span-full md:col-span-4 pt-24 pb-0 md:py-24 lg:py-32 px-24 sm:px-32 md:px-0 bg-white\">\n <h3\n className=\"ui-meganav-overline\"\n id=\"meganav-use-cases-panel-industry\"\n >\n Industry\n </h3>\n <ul aria-labelledby=\"meganav-use-cases-panel-industry\">\n <li>\n <a\n href={absUrl(\"/solutions/sports-and-media\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">\n Sports, Media & Fan Engagement\n </p>\n <p className=\"ui-meganav-media-copy\">\n Deliver engaging global realtime experiences.\n </p>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/solutions/b2b-platforms\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">B2B Platforms</p>\n <p className=\"ui-meganav-media-copy\">\n Empower your customers with realtime solutions.\n </p>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/solutions/fintech\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">FinTech</p>\n <p className=\"ui-meganav-media-copy\">\n Deliver personalised financial data in realtime.\n </p>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/solutions/edtech\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">EdTech</p>\n <p className=\"ui-meganav-media-copy\">\n Deliver interactive learning experiences.\n </p>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/solutions/healthcare\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">Healthcare (HIPAA)</p>\n <p className=\"ui-meganav-media-copy\">\n Provide trustworthy, HIPAA-compliant realtime apps.\n </p>\n </a>\n </li>\n </ul>\n </div>\n\n <div className=\"col-span-full md:col-span-4 pt-0 pb-24 md:py-24 lg:py-32 px-24 sm:px-32 md:px-0 bg-white\">\n <ul\n aria-labelledby=\"meganav-use-cases-panel-solutions\"\n className=\"mt-0 md:mt-40\"\n >\n <li>\n <a\n href={absUrl(\"/solutions/gaming\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">Gaming</p>\n <p className=\"ui-meganav-media-copy\">\n Power ultra fast and reliable gaming experiences.\n </p>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/solutions/automotive-logistics-and-mobility\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">\n Automotive, Logistics, & Mobility\n </p>\n <p className=\"ui-meganav-media-copy\">\n Power diagnostics, order tracking and more.\n </p>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/solutions/ecommerce-and-retail\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">eCommerce & Retail</p>\n <p className=\"ui-meganav-media-copy\">\n Enrich customer experiences with realtime updates.\n </p>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/solutions/iot-and-connected-devices\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">\n IoT & Connected Devices\n </p>\n <p className=\"ui-meganav-media-copy\">\n Monitor and control global IoT deployments in realtime.\n </p>\n </a>\n </li>\n </ul>\n </div>\n </section>\n <div className=\"ui-meganav-content-spacer\"></div>\n </div>\n);\n\nexport default MeganavContentUseCases;\n"],"names":["React","Icon","MeganavContentUseCases","absUrl","div","className","section","h3","id","ul","aria-labelledby","li","a","href","name","size","p"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/core/MeganavContentUseCases.tsx"],"sourcesContent":["import React from \"react\";\n\nimport Icon from \"./Icon\";\nimport { AbsUrl } from \"./LegacyMeganav\";\n\nconst MeganavContentUseCases = ({ absUrl }: { absUrl: AbsUrl }) => (\n <div className=\"flex max-w-screen-xl mx-auto\">\n <div className=\"ui-meganav-content-spacer bg-extra-light-grey\"></div>\n <section className=\"grid grid-cols-12 ui-grid-gap-x w-full\">\n <div className=\"col-span-full md:col-span-4 py-24 lg:py-32 px-24 sm:px-32 md:pl-0 md:pr-24 bg-extra-light-grey\">\n <h3\n className=\"ui-meganav-overline\"\n id=\"meganav-use-cases-panel-use-cases\"\n >\n Solutions\n </h3>\n <ul aria-labelledby=\"meganav-use-cases-panel-industry-use-cases\">\n <li>\n <a\n href={absUrl(\"/chat\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-chat-stack-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Live Chat</p>\n <p className=\"ui-meganav-media-copy\">\n Deliver highly reliable chat experiences at scale.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/solutions/multiplayer-collaboration\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-multi-user-spaces-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">\n Multiplayer Collaboration\n </p>\n <p className=\"ui-meganav-media-copy\">\n Bring collaborative multiplayer experiences to your users.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/solutions/data-broadcast\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-data-broadcast-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Data Broadcast</p>\n <p className=\"ui-meganav-media-copy\">\n Broadcast realtime event data to millions of devices around\n the globe.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/solutions/data-synchronization\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon\n name=\"icon-display-data-synchronization-col\"\n size=\"2.5rem\"\n />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Data Synchronization</p>\n <p className=\"ui-meganav-media-copy\">\n Keep your frontend and backend in realtime sync, at global\n scale.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/push-notifications\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-push-notifications-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Notifications</p>\n <p className=\"ui-meganav-media-copy\">\n Deliver cross-platform push notifications with a simple\n unified API.\n </p>\n </div>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/solutions/asset-tracking\")}\n className=\"ui-meganav-media-with-image group\"\n >\n <Icon name=\"icon-display-asset-tracking-col\" size=\"2.5rem\" />\n <div className=\"flex flex-col justify-center\">\n <p className=\"ui-meganav-media-heading\">Asset Tracking</p>\n <p className=\"ui-meganav-media-copy\">\n Track assets in realtime with a solution optimised for last\n mile logistics.\n </p>\n </div>\n </a>\n </li>\n </ul>\n </div>\n\n <div className=\"col-span-full md:col-span-4 pt-24 pb-0 md:py-24 lg:py-32 px-24 sm:px-32 md:px-0 bg-white\">\n <h3\n className=\"ui-meganav-overline\"\n id=\"meganav-use-cases-panel-industry\"\n >\n Industry\n </h3>\n <ul aria-labelledby=\"meganav-use-cases-panel-industry\">\n <li>\n <a\n href={absUrl(\"/solutions/sports-and-media\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">\n Sports, Media & Fan Engagement\n </p>\n <p className=\"ui-meganav-media-copy\">\n Deliver engaging global realtime experiences.\n </p>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/solutions/b2b-platforms\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">B2B Platforms</p>\n <p className=\"ui-meganav-media-copy\">\n Empower your customers with realtime solutions.\n </p>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/solutions/fintech\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">FinTech</p>\n <p className=\"ui-meganav-media-copy\">\n Deliver personalised financial data in realtime.\n </p>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/solutions/edtech\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">EdTech</p>\n <p className=\"ui-meganav-media-copy\">\n Deliver interactive learning experiences.\n </p>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/solutions/healthcare\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">Healthcare (HIPAA)</p>\n <p className=\"ui-meganav-media-copy\">\n Provide trustworthy, HIPAA-compliant realtime apps.\n </p>\n </a>\n </li>\n </ul>\n </div>\n\n <div className=\"col-span-full md:col-span-4 pt-0 pb-24 md:py-24 lg:py-32 px-24 sm:px-32 md:px-0 bg-white\">\n <ul\n aria-labelledby=\"meganav-use-cases-panel-solutions\"\n className=\"mt-0 md:mt-40\"\n >\n <li>\n <a\n href={absUrl(\"/solutions/gaming\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">Gaming</p>\n <p className=\"ui-meganav-media-copy\">\n Power ultra fast and reliable gaming experiences.\n </p>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/solutions/automotive-logistics-and-mobility\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">\n Automotive, Logistics, & Mobility\n </p>\n <p className=\"ui-meganav-media-copy\">\n Power diagnostics, order tracking and more.\n </p>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/solutions/ecommerce-and-retail\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">eCommerce & Retail</p>\n <p className=\"ui-meganav-media-copy\">\n Enrich customer experiences with realtime updates.\n </p>\n </a>\n </li>\n <li>\n <a\n href={absUrl(\"/solutions/iot-and-connected-devices\")}\n className=\"ui-meganav-media group\"\n >\n <p className=\"ui-meganav-media-heading\">\n IoT & Connected Devices\n </p>\n <p className=\"ui-meganav-media-copy\">\n Monitor and control global IoT deployments in realtime.\n </p>\n </a>\n </li>\n </ul>\n </div>\n </section>\n <div className=\"ui-meganav-content-spacer\"></div>\n </div>\n);\n\nexport default MeganavContentUseCases;\n"],"names":["React","Icon","MeganavContentUseCases","absUrl","div","className","section","h3","id","ul","aria-labelledby","li","a","href","name","size","p"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/core/MeganavControl.tsx"],"sourcesContent":["import React, { ReactNode } from \"react\";\n\nimport Icon from \"./Icon\";\nimport { MeganavTheme } from \"./Meganav\";\n\ntype MeganavControlProps = {\n ariaControls: string;\n ariaLabel: string;\n children: ReactNode;\n theme: MeganavTheme;\n additionalCSS?: string;\n};\n\nconst MeganavControl = ({\n ariaControls,\n ariaLabel,\n children,\n theme,\n additionalCSS,\n}: MeganavControlProps) => (\n <button\n type=\"button\"\n data-id=\"meganav-control\"\n className={`ui-meganav-link h-64 flex items-center group ${additionalCSS} ${theme.textColor}`}\n aria-expanded=\"false\"\n aria-controls={ariaControls}\n aria-label={`Show ${ariaLabel} panel`}\n >\n {children}\n <Icon\n name=\"icon-gui-chevron-down-micro\"\n color=\"text-cool-black\"\n size=\"1.5rem\"\n additionalCSS=\"group-hover:text-gui-hover group-focus:text-gui-focus\"\n />\n </button>\n);\n\nexport default MeganavControl;\n"],"names":["React","Icon","MeganavControl","ariaControls","ariaLabel","children","theme","additionalCSS","button","type","data-id","className","textColor","aria-expanded","aria-controls","aria-label","name","color","size"],"mappings":"AAAA,OAAOA,UAA0B,OAAQ,AAEzC,QAAOC,SAAU,QAAS,CAW1B,MAAMC,eAAiB,CAAC,CACtBC,YAAY,CACZC,SAAS,CACTC,QAAQ,CACRC,KAAK,CACLC,aAAa,CACO,GACpB,oBAACC,UACCC,KAAK,SACLC,UAAQ,kBACRC,UAAW,CAAC,6CAA6C,EAAEJ,cAAc,CAAC,EAAED,MAAMM,SAAS,CAAC,CAAC,CAC7FC,gBAAc,QACdC,gBAAeX,aACfY,aAAY,CAAC,KAAK,EAAEX,UAAU,MAAM,CAAC,EAEpCC,SACD,oBAACJ,MACCe,KAAK,8BACLC,MAAM,kBACNC,KAAK,SACLX,cAAc,0DAKpB,gBAAeL,cAAe"}
1
+ {"version":3,"sources":["../../src/core/MeganavControl.tsx"],"sourcesContent":["import React, { ReactNode } from \"react\";\n\nimport Icon from \"./Icon\";\nimport { MeganavTheme } from \"./LegacyMeganav\";\n\ntype MeganavControlProps = {\n ariaControls: string;\n ariaLabel: string;\n children: ReactNode;\n theme: MeganavTheme;\n additionalCSS?: string;\n};\n\nconst MeganavControl = ({\n ariaControls,\n ariaLabel,\n children,\n theme,\n additionalCSS,\n}: MeganavControlProps) => (\n <button\n type=\"button\"\n data-id=\"meganav-control\"\n className={`ui-meganav-link h-64 flex items-center group ${additionalCSS} ${theme.textColor}`}\n aria-expanded=\"false\"\n aria-controls={ariaControls}\n aria-label={`Show ${ariaLabel} panel`}\n >\n {children}\n <Icon\n name=\"icon-gui-chevron-down-micro\"\n color=\"text-cool-black\"\n size=\"1.5rem\"\n additionalCSS=\"group-hover:text-gui-hover group-focus:text-gui-focus\"\n />\n </button>\n);\n\nexport default MeganavControl;\n"],"names":["React","Icon","MeganavControl","ariaControls","ariaLabel","children","theme","additionalCSS","button","type","data-id","className","textColor","aria-expanded","aria-controls","aria-label","name","color","size"],"mappings":"AAAA,OAAOA,UAA0B,OAAQ,AAEzC,QAAOC,SAAU,QAAS,CAW1B,MAAMC,eAAiB,CAAC,CACtBC,YAAY,CACZC,SAAS,CACTC,QAAQ,CACRC,KAAK,CACLC,aAAa,CACO,GACpB,oBAACC,UACCC,KAAK,SACLC,UAAQ,kBACRC,UAAW,CAAC,6CAA6C,EAAEJ,cAAc,CAAC,EAAED,MAAMM,SAAS,CAAC,CAAC,CAC7FC,gBAAc,QACdC,gBAAeX,aACfY,aAAY,CAAC,KAAK,EAAEX,UAAU,MAAM,CAAC,EAEpCC,SACD,oBAACJ,MACCe,KAAK,8BACLC,MAAM,kBACNC,KAAK,SACLX,cAAc,0DAKpB,gBAAeL,cAAe"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/core/MeganavControlMobileDropdown.tsx"],"sourcesContent":["import React from \"react\";\n\nimport Icon from \"./Icon\";\nimport { MeganavTheme } from \"./Meganav\";\n\nconst MeganavControlMobileDropdown = ({ theme }: { theme: MeganavTheme }) => (\n <button\n type=\"button\"\n className=\"block ml-24 mr-0 px-0 py-16 hover:text-gui-hover focus:text-gui-focus focus:outline-none\"\n data-id=\"meganav-control-mobile-dropdown\"\n aria-expanded=\"false\"\n aria-controls=\"meganav-mobile-dropdown\"\n >\n <Icon\n name=\"icon-gui-bars-3-outline\"\n size=\"1.5rem\"\n color={theme.mobileMenuColor}\n additionalCSS=\"transition-colors\"\n data-id=\"meganav-control-mobile-dropdown-menu\"\n />\n <Icon\n name=\"icon-gui-x-mark-outline\"\n size=\"1.5rem\"\n color={theme.mobileMenuColor}\n additionalCSS=\"transition-colors hidden\"\n data-id=\"meganav-control-mobile-dropdown-close\"\n />\n </button>\n);\n\nexport default MeganavControlMobileDropdown;\n"],"names":["React","Icon","MeganavControlMobileDropdown","theme","button","type","className","data-id","aria-expanded","aria-controls","name","size","color","mobileMenuColor","additionalCSS"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAE1B,QAAOC,SAAU,QAAS,CAG1B,MAAMC,6BAA+B,CAAC,CAAEC,KAAK,CAA2B,GACtE,oBAACC,UACCC,KAAK,SACLC,UAAU,2FACVC,UAAQ,kCACRC,gBAAc,QACdC,gBAAc,2BAEd,oBAACR,MACCS,KAAK,0BACLC,KAAK,SACLC,MAAOT,MAAMU,eAAe,CAC5BC,cAAc,oBACdP,UAAQ,yCAEV,oBAACN,MACCS,KAAK,0BACLC,KAAK,SACLC,MAAOT,MAAMU,eAAe,CAC5BC,cAAc,2BACdP,UAAQ,0CAKd,gBAAeL,4BAA6B"}
1
+ {"version":3,"sources":["../../src/core/MeganavControlMobileDropdown.tsx"],"sourcesContent":["import React from \"react\";\n\nimport Icon from \"./Icon\";\nimport { MeganavTheme } from \"./LegacyMeganav\";\n\nconst MeganavControlMobileDropdown = ({ theme }: { theme: MeganavTheme }) => (\n <button\n type=\"button\"\n className=\"block ml-24 mr-0 px-0 py-16 hover:text-gui-hover focus:text-gui-focus focus:outline-none\"\n data-id=\"meganav-control-mobile-dropdown\"\n aria-expanded=\"false\"\n aria-controls=\"meganav-mobile-dropdown\"\n >\n <Icon\n name=\"icon-gui-bars-3-outline\"\n size=\"1.5rem\"\n color={theme.mobileMenuColor}\n additionalCSS=\"transition-colors\"\n data-id=\"meganav-control-mobile-dropdown-menu\"\n />\n <Icon\n name=\"icon-gui-x-mark-outline\"\n size=\"1.5rem\"\n color={theme.mobileMenuColor}\n additionalCSS=\"transition-colors hidden\"\n data-id=\"meganav-control-mobile-dropdown-close\"\n />\n </button>\n);\n\nexport default MeganavControlMobileDropdown;\n"],"names":["React","Icon","MeganavControlMobileDropdown","theme","button","type","className","data-id","aria-expanded","aria-controls","name","size","color","mobileMenuColor","additionalCSS"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAE1B,QAAOC,SAAU,QAAS,CAG1B,MAAMC,6BAA+B,CAAC,CAAEC,KAAK,CAA2B,GACtE,oBAACC,UACCC,KAAK,SACLC,UAAU,2FACVC,UAAQ,kCACRC,gBAAc,QACdC,gBAAc,2BAEd,oBAACR,MACCS,KAAK,0BACLC,KAAK,SACLC,MAAOT,MAAMU,eAAe,CAC5BC,cAAc,oBACdP,UAAQ,yCAEV,oBAACN,MACCS,KAAK,0BACLC,KAAK,SACLC,MAAOT,MAAMU,eAAe,CAC5BC,cAAc,2BACdP,UAAQ,0CAKd,gBAAeL,4BAA6B"}
@@ -1,2 +1,2 @@
1
- import React from"react";import MeganavData from"./Meganav/component.json";import MeganavControl from"./MeganavControl";const MeganavDesktopItems=({panels,paths,theme,absUrl,statusUrl})=>React.createElement("ul",{className:"hidden md:flex","data-id":"meganav-items-desktop"},MeganavData.panels.map(panel=>{const PanelComponent=panels[panel.component];const bgCSS=["products-panel","use-cases-panel"].includes(panel.id)?"ui-meganav-panel-split-bg":"";return React.createElement("li",{className:"ui-meganav-item",key:panel.id},React.createElement(MeganavControl,{theme:theme,ariaControls:panel.id,ariaLabel:panel.label},React.createElement("span",{className:"hidden lg:inline"},panel.label),React.createElement("span",{className:"lg:hidden"},panel.shortLabel)),React.createElement("div",{className:`ui-meganav-panel invisible ${bgCSS}`,id:panel.id,"data-id":"meganav-panel"},React.createElement(PanelComponent,{paths:paths,absUrl:absUrl,statusUrl:statusUrl})))}),React.createElement("li",{className:"ui-meganav-item"},React.createElement("a",{href:absUrl("/pricing"),"data-id":"meganav-link",className:`ui-meganav-link h-64 items-center flex ${theme.textColor}`},"Pricing")));export default React.memo(MeganavDesktopItems);
1
+ import React from"react";import MeganavData from"./LegacyMeganav/component.json";import MeganavControl from"./MeganavControl";const MeganavDesktopItems=({panels,paths,theme,absUrl,statusUrl})=>React.createElement("ul",{className:"hidden md:flex","data-id":"meganav-items-desktop"},MeganavData.panels.map(panel=>{const PanelComponent=panels[panel.component];const bgCSS=["products-panel","use-cases-panel"].includes(panel.id)?"ui-meganav-panel-split-bg":"";return React.createElement("li",{className:"ui-meganav-item",key:panel.id},React.createElement(MeganavControl,{theme:theme,ariaControls:panel.id,ariaLabel:panel.label},React.createElement("span",{className:"hidden lg:inline"},panel.label),React.createElement("span",{className:"lg:hidden"},panel.shortLabel)),React.createElement("div",{className:`ui-meganav-panel invisible ${bgCSS}`,id:panel.id,"data-id":"meganav-panel"},React.createElement(PanelComponent,{paths:paths,absUrl:absUrl,statusUrl:statusUrl})))}),React.createElement("li",{className:"ui-meganav-item"},React.createElement("a",{href:absUrl("/pricing"),"data-id":"meganav-link",className:`ui-meganav-link h-64 items-center flex ${theme.textColor}`},"Pricing")));export default React.memo(MeganavDesktopItems);
2
2
  //# sourceMappingURL=MeganavItemsDesktop.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/core/MeganavItemsDesktop.tsx"],"sourcesContent":["import React from \"react\";\n\nimport MeganavData from \"./Meganav/component.json\";\nimport MeganavControl from \"./MeganavControl\";\nimport { AbsUrl, MeganavPanels, MeganavPaths, MeganavTheme } from \"./Meganav\";\n\ntype MeganavDesktopItems = {\n panels: MeganavPanels;\n paths?: MeganavPaths;\n theme: MeganavTheme;\n absUrl: AbsUrl;\n statusUrl: string;\n};\n\nconst MeganavDesktopItems = ({\n panels,\n paths,\n theme,\n absUrl,\n statusUrl,\n}: MeganavDesktopItems) => (\n <ul className=\"hidden md:flex\" data-id=\"meganav-items-desktop\">\n {MeganavData.panels.map((panel) => {\n const PanelComponent = panels[panel.component];\n const bgCSS = [\"products-panel\", \"use-cases-panel\"].includes(panel.id)\n ? \"ui-meganav-panel-split-bg\"\n : \"\";\n\n return (\n <li className=\"ui-meganav-item\" key={panel.id}>\n <MeganavControl\n theme={theme}\n ariaControls={panel.id}\n ariaLabel={panel.label}\n >\n <span className=\"hidden lg:inline\">{panel.label}</span>\n <span className=\"lg:hidden\">{panel.shortLabel}</span>\n </MeganavControl>\n\n <div\n className={`ui-meganav-panel invisible ${bgCSS}`}\n id={panel.id}\n data-id=\"meganav-panel\"\n >\n <PanelComponent\n paths={paths}\n absUrl={absUrl}\n statusUrl={statusUrl}\n />\n </div>\n </li>\n );\n })}\n\n <li className=\"ui-meganav-item\">\n <a\n href={absUrl(\"/pricing\")}\n data-id=\"meganav-link\"\n className={`ui-meganav-link h-64 items-center flex ${theme.textColor}`}\n >\n Pricing\n </a>\n </li>\n </ul>\n);\n\nexport default React.memo(MeganavDesktopItems);\n"],"names":["React","MeganavData","MeganavControl","MeganavDesktopItems","panels","paths","theme","absUrl","statusUrl","ul","className","data-id","map","panel","PanelComponent","component","bgCSS","includes","id","li","key","ariaControls","ariaLabel","label","span","shortLabel","div","a","href","textColor","memo"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAE1B,QAAOC,gBAAiB,0BAA2B,AACnD,QAAOC,mBAAoB,kBAAmB,CAW9C,MAAMC,oBAAsB,CAAC,CAC3BC,MAAM,CACNC,KAAK,CACLC,KAAK,CACLC,MAAM,CACNC,SAAS,CACW,GACpB,oBAACC,MAAGC,UAAU,iBAAiBC,UAAQ,yBACpCV,YAAYG,MAAM,CAACQ,GAAG,CAAC,AAACC,QACvB,MAAMC,eAAiBV,MAAM,CAACS,MAAME,SAAS,CAAC,CAC9C,MAAMC,MAAQ,CAAC,iBAAkB,kBAAkB,CAACC,QAAQ,CAACJ,MAAMK,EAAE,EACjE,4BACA,GAEJ,OACE,oBAACC,MAAGT,UAAU,kBAAkBU,IAAKP,MAAMK,EAAE,EAC3C,oBAAChB,gBACCI,MAAOA,MACPe,aAAcR,MAAMK,EAAE,CACtBI,UAAWT,MAAMU,KAAK,EAEtB,oBAACC,QAAKd,UAAU,oBAAoBG,MAAMU,KAAK,EAC/C,oBAACC,QAAKd,UAAU,aAAaG,MAAMY,UAAU,GAG/C,oBAACC,OACChB,UAAW,CAAC,2BAA2B,EAAEM,MAAM,CAAC,CAChDE,GAAIL,MAAMK,EAAE,CACZP,UAAQ,iBAER,oBAACG,gBACCT,MAAOA,MACPE,OAAQA,OACRC,UAAWA,aAKrB,GAEA,oBAACW,MAAGT,UAAU,mBACZ,oBAACiB,KACCC,KAAMrB,OAAO,YACbI,UAAQ,eACRD,UAAW,CAAC,uCAAuC,EAAEJ,MAAMuB,SAAS,CAAC,CAAC,EACvE,YAOP,gBAAe7B,MAAM8B,IAAI,CAAC3B,oBAAqB"}
1
+ {"version":3,"sources":["../../src/core/MeganavItemsDesktop.tsx"],"sourcesContent":["import React from \"react\";\n\nimport MeganavData from \"./LegacyMeganav/component.json\";\nimport MeganavControl from \"./MeganavControl\";\nimport {\n AbsUrl,\n MeganavPanels,\n MeganavPaths,\n MeganavTheme,\n} from \"./LegacyMeganav\";\n\ntype MeganavDesktopItems = {\n panels: MeganavPanels;\n paths?: MeganavPaths;\n theme: MeganavTheme;\n absUrl: AbsUrl;\n statusUrl: string;\n};\n\nconst MeganavDesktopItems = ({\n panels,\n paths,\n theme,\n absUrl,\n statusUrl,\n}: MeganavDesktopItems) => (\n <ul className=\"hidden md:flex\" data-id=\"meganav-items-desktop\">\n {MeganavData.panels.map((panel) => {\n const PanelComponent = panels[panel.component];\n const bgCSS = [\"products-panel\", \"use-cases-panel\"].includes(panel.id)\n ? \"ui-meganav-panel-split-bg\"\n : \"\";\n\n return (\n <li className=\"ui-meganav-item\" key={panel.id}>\n <MeganavControl\n theme={theme}\n ariaControls={panel.id}\n ariaLabel={panel.label}\n >\n <span className=\"hidden lg:inline\">{panel.label}</span>\n <span className=\"lg:hidden\">{panel.shortLabel}</span>\n </MeganavControl>\n\n <div\n className={`ui-meganav-panel invisible ${bgCSS}`}\n id={panel.id}\n data-id=\"meganav-panel\"\n >\n <PanelComponent\n paths={paths}\n absUrl={absUrl}\n statusUrl={statusUrl}\n />\n </div>\n </li>\n );\n })}\n\n <li className=\"ui-meganav-item\">\n <a\n href={absUrl(\"/pricing\")}\n data-id=\"meganav-link\"\n className={`ui-meganav-link h-64 items-center flex ${theme.textColor}`}\n >\n Pricing\n </a>\n </li>\n </ul>\n);\n\nexport default React.memo(MeganavDesktopItems);\n"],"names":["React","MeganavData","MeganavControl","MeganavDesktopItems","panels","paths","theme","absUrl","statusUrl","ul","className","data-id","map","panel","PanelComponent","component","bgCSS","includes","id","li","key","ariaControls","ariaLabel","label","span","shortLabel","div","a","href","textColor","memo"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAE1B,QAAOC,gBAAiB,gCAAiC,AACzD,QAAOC,mBAAoB,kBAAmB,CAgB9C,MAAMC,oBAAsB,CAAC,CAC3BC,MAAM,CACNC,KAAK,CACLC,KAAK,CACLC,MAAM,CACNC,SAAS,CACW,GACpB,oBAACC,MAAGC,UAAU,iBAAiBC,UAAQ,yBACpCV,YAAYG,MAAM,CAACQ,GAAG,CAAC,AAACC,QACvB,MAAMC,eAAiBV,MAAM,CAACS,MAAME,SAAS,CAAC,CAC9C,MAAMC,MAAQ,CAAC,iBAAkB,kBAAkB,CAACC,QAAQ,CAACJ,MAAMK,EAAE,EACjE,4BACA,GAEJ,OACE,oBAACC,MAAGT,UAAU,kBAAkBU,IAAKP,MAAMK,EAAE,EAC3C,oBAAChB,gBACCI,MAAOA,MACPe,aAAcR,MAAMK,EAAE,CACtBI,UAAWT,MAAMU,KAAK,EAEtB,oBAACC,QAAKd,UAAU,oBAAoBG,MAAMU,KAAK,EAC/C,oBAACC,QAAKd,UAAU,aAAaG,MAAMY,UAAU,GAG/C,oBAACC,OACChB,UAAW,CAAC,2BAA2B,EAAEM,MAAM,CAAC,CAChDE,GAAIL,MAAMK,EAAE,CACZP,UAAQ,iBAER,oBAACG,gBACCT,MAAOA,MACPE,OAAQA,OACRC,UAAWA,aAKrB,GAEA,oBAACW,MAAGT,UAAU,mBACZ,oBAACiB,KACCC,KAAMrB,OAAO,YACbI,UAAQ,eACRD,UAAW,CAAC,uCAAuC,EAAEJ,MAAMuB,SAAS,CAAC,CAAC,EACvE,YAOP,gBAAe7B,MAAM8B,IAAI,CAAC3B,oBAAqB"}
@@ -1,2 +1,2 @@
1
- import React from"react";import SignOutLink from"./SignOutLink";import MeganavSearchSuggestions from"./MeganavSearchSuggestions";import Icon from"./Icon";import MeganavData from"./Meganav/component.json";import MeganavControlMobileDropdown from"./MeganavControlMobileDropdown";import MeganavControlMobilePanelClose from"./MeganavControlMobilePanelClose";import MeganavControlMobilePanelOpen from"./MeganavControlMobilePanelOpen";import MeganavSearchAutocomplete from"./MeganavSearchAutocomplete";const MeganavItemsMobile=({panels,paths,sessionState,theme,loginLink,absUrl,statusUrl,searchDataId})=>{const classNames=`ui-meganav-link ${theme.textColor}`;return React.createElement("ul",{className:"flex md:hidden items-center","data-id":"meganav-items-mobile"},React.createElement("li",null,sessionState?.signedIn&&sessionState?.logOut?React.createElement(SignOutLink,{absUrl:absUrl,...sessionState.logOut},({text,href,onClick})=>React.createElement("a",{onClick:onClick,href:absUrl(href),className:classNames,"data-id":"meganav-link"},text)):React.createElement("a",{href:absUrl(loginLink),className:classNames,"data-id":"meganav-link"},"Login")),React.createElement("li",{className:"ui-meganav-item"},React.createElement(MeganavControlMobileDropdown,{theme:theme}),React.createElement("div",{className:"ui-meganav-mobile-dropdown invisible",id:"meganav-mobile-dropdown","data-id":"meganav-mobile-dropdown"},React.createElement("div",{className:"pt-24 pb-16 ui-grid-px bg-white"},React.createElement("form",{className:"mb-16",action:absUrl("/search"),method:"get"},React.createElement("div",{className:"relative w-full"},React.createElement(Icon,{name:"icon-gui-magnifying-glass-outline",color:"text-cool-black",size:"1.5rem",additionalCSS:"absolute top-12 left-16 hover:text-gui-hover"}),React.createElement("button",{type:"button",className:"absolute top-12 right-16 p-0 focus:outline-none focus-visible:outline-gui-focus m-0 md:hidden invisible","data-id":"meganav-search-input-clear"},React.createElement(Icon,{name:"icon-gui-x-circle-solid",color:"text-dark-grey",size:"1.5rem",additionalCSS:""})),React.createElement("input",{type:"search",name:"q",className:"ui-input px-48 h-48",style:{maxWidth:"none"},placeholder:"Search",autoComplete:"off","data-id":searchDataId??"meganav-mobile-search-input"}),React.createElement(MeganavSearchAutocomplete,null))),React.createElement("div",{className:"max-h-0 overflow-hidden transition-all","data-id":"meganav-mobile-search-suggestions"},React.createElement(MeganavSearchSuggestions,{absUrl:absUrl,displaySupportLink:false})),React.createElement("ul",{className:"mb-16","data-id":"meganav-mobile-panel-controls"},MeganavData.panels.map(panel=>{const PanelComponent=panels[panel.component];const displayHr=["company-panel","developers-panel"].includes(panel.id);return React.createElement("li",{className:"ui-meganav-mobile-item",key:`${panel.id}-mobile`},React.createElement(MeganavControlMobilePanelOpen,{ariaControls:`${panel.id}-mobile`},panel.label),React.createElement("div",{className:"ui-meganav-panel-mobile hidden",id:`${panel.id}-mobile`,"data-scroll-lock-scrollable":true},React.createElement(MeganavControlMobilePanelClose,{ariaControls:`${panel.id}-mobile`,displayHr:displayHr}),React.createElement(PanelComponent,{paths:paths,absUrl:absUrl,statusUrl:statusUrl})))}),React.createElement("li",null,React.createElement("a",{href:absUrl("/pricing"),className:"ui-meganav-mobile-link"},"Pricing"))),React.createElement("hr",{className:"ui-meganav-hr mb-20"}),React.createElement("div",{className:"flex justify-between items-center mb-16"},React.createElement("a",{href:absUrl("/contact"),className:"text-menu2 font-medium block ml-0 mr-8 lg:mx-12 p-0 hover:text-gui-hover focus:text-gui-focus focus:outline-none"},"Contact us"),sessionState?.signedIn&&sessionState?.account?React.createElement("a",{href:absUrl(sessionState.account.links.dashboard.href),className:"ui-btn-secondary"},"Dashboard"):React.createElement("a",{href:absUrl("/sign-up"),className:"ui-btn"},"Sign up free"))))))};export default React.memo(MeganavItemsMobile,(oldState,newState)=>{const{paths:pathsOld,theme:themeOld}=oldState;const{paths:pathsNew,theme:themeNew}=newState;return pathsOld===pathsNew&&themeOld===themeNew&&Object.keys(newState.sessionState||{}).length===0});
1
+ import React from"react";import SignOutLink from"./SignOutLink";import MeganavSearchSuggestions from"./MeganavSearchSuggestions";import Icon from"./Icon";import MeganavData from"./LegacyMeganav/component.json";import MeganavControlMobileDropdown from"./MeganavControlMobileDropdown";import MeganavControlMobilePanelClose from"./MeganavControlMobilePanelClose";import MeganavControlMobilePanelOpen from"./MeganavControlMobilePanelOpen";import MeganavSearchAutocomplete from"./MeganavSearchAutocomplete";const MeganavItemsMobile=({panels,paths,sessionState,theme,loginLink,absUrl,statusUrl,searchDataId})=>{const classNames=`ui-meganav-link ${theme.textColor}`;return React.createElement("ul",{className:"flex md:hidden items-center","data-id":"meganav-items-mobile"},React.createElement("li",null,sessionState?.signedIn&&sessionState?.logOut?React.createElement(SignOutLink,{absUrl:absUrl,...sessionState.logOut},({text,href,onClick})=>React.createElement("a",{onClick:onClick,href:absUrl(href),className:classNames,"data-id":"meganav-link"},text)):React.createElement("a",{href:absUrl(loginLink),className:classNames,"data-id":"meganav-link"},"Login")),React.createElement("li",{className:"ui-meganav-item"},React.createElement(MeganavControlMobileDropdown,{theme:theme}),React.createElement("div",{className:"ui-meganav-mobile-dropdown invisible",id:"meganav-mobile-dropdown","data-id":"meganav-mobile-dropdown"},React.createElement("div",{className:"pt-24 pb-16 ui-grid-px bg-white"},React.createElement("form",{className:"mb-16",action:absUrl("/search"),method:"get"},React.createElement("div",{className:"relative w-full"},React.createElement(Icon,{name:"icon-gui-magnifying-glass-outline",color:"text-cool-black",size:"1.5rem",additionalCSS:"absolute top-12 left-16 hover:text-gui-hover"}),React.createElement("button",{type:"button",className:"absolute top-12 right-16 p-0 focus:outline-none focus-visible:outline-gui-focus m-0 md:hidden invisible","data-id":"meganav-search-input-clear"},React.createElement(Icon,{name:"icon-gui-x-circle-solid",color:"text-dark-grey",size:"1.5rem",additionalCSS:""})),React.createElement("input",{type:"search",name:"q",className:"ui-input px-48 h-48",style:{maxWidth:"none"},placeholder:"Search",autoComplete:"off","data-id":searchDataId??"meganav-mobile-search-input"}),React.createElement(MeganavSearchAutocomplete,null))),React.createElement("div",{className:"max-h-0 overflow-hidden transition-all","data-id":"meganav-mobile-search-suggestions"},React.createElement(MeganavSearchSuggestions,{absUrl:absUrl,displaySupportLink:false})),React.createElement("ul",{className:"mb-16","data-id":"meganav-mobile-panel-controls"},MeganavData.panels.map(panel=>{const PanelComponent=panels[panel.component];const displayHr=["company-panel","developers-panel"].includes(panel.id);return React.createElement("li",{className:"ui-meganav-mobile-item",key:`${panel.id}-mobile`},React.createElement(MeganavControlMobilePanelOpen,{ariaControls:`${panel.id}-mobile`},panel.label),React.createElement("div",{className:"ui-meganav-panel-mobile hidden",id:`${panel.id}-mobile`,"data-scroll-lock-scrollable":true},React.createElement(MeganavControlMobilePanelClose,{ariaControls:`${panel.id}-mobile`,displayHr:displayHr}),React.createElement(PanelComponent,{paths:paths,absUrl:absUrl,statusUrl:statusUrl})))}),React.createElement("li",null,React.createElement("a",{href:absUrl("/pricing"),className:"ui-meganav-mobile-link"},"Pricing"))),React.createElement("hr",{className:"ui-meganav-hr mb-20"}),React.createElement("div",{className:"flex justify-between items-center mb-16"},React.createElement("a",{href:absUrl("/contact"),className:"text-menu2 font-medium block ml-0 mr-8 lg:mx-12 p-0 hover:text-gui-hover focus:text-gui-focus focus:outline-none"},"Contact us"),sessionState?.signedIn&&sessionState?.account?React.createElement("a",{href:absUrl(sessionState.account.links.dashboard.href),className:"ui-btn-secondary"},"Dashboard"):React.createElement("a",{href:absUrl("/sign-up"),className:"ui-btn"},"Sign up free"))))))};export default React.memo(MeganavItemsMobile,(oldState,newState)=>{const{paths:pathsOld,theme:themeOld}=oldState;const{paths:pathsNew,theme:themeNew}=newState;return pathsOld===pathsNew&&themeOld===themeNew&&Object.keys(newState.sessionState||{}).length===0});
2
2
  //# sourceMappingURL=MeganavItemsMobile.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/core/MeganavItemsMobile.tsx"],"sourcesContent":["import React from \"react\";\n\nimport SignOutLink from \"./SignOutLink\";\nimport MeganavSearchSuggestions from \"./MeganavSearchSuggestions\";\nimport Icon from \"./Icon\";\nimport MeganavData from \"./Meganav/component.json\";\nimport MeganavControlMobileDropdown from \"./MeganavControlMobileDropdown\";\nimport MeganavControlMobilePanelClose from \"./MeganavControlMobilePanelClose\";\nimport MeganavControlMobilePanelOpen from \"./MeganavControlMobilePanelOpen\";\nimport MeganavSearchAutocomplete from \"./MeganavSearchAutocomplete\";\nimport {\n AbsUrl,\n MeganavPanels,\n MeganavPaths,\n MeganavSessionState,\n MeganavTheme,\n} from \"./Meganav\";\n\ntype MeganavItemsMobileProps = {\n panels: MeganavPanels;\n paths?: MeganavPaths;\n sessionState?: MeganavSessionState;\n theme: MeganavTheme;\n loginLink: string;\n absUrl: AbsUrl;\n statusUrl: string;\n searchDataId?: string;\n};\n\nconst MeganavItemsMobile = ({\n panels,\n paths,\n sessionState,\n theme,\n loginLink,\n absUrl,\n statusUrl,\n searchDataId,\n}: MeganavItemsMobileProps) => {\n const classNames = `ui-meganav-link ${theme.textColor}`;\n\n return (\n <ul className=\"flex md:hidden items-center\" data-id=\"meganav-items-mobile\">\n <li>\n {sessionState?.signedIn && sessionState?.logOut ? (\n <SignOutLink absUrl={absUrl} {...sessionState.logOut}>\n {({ text, href, onClick }) => (\n <a\n onClick={onClick}\n href={absUrl(href)}\n className={classNames}\n data-id=\"meganav-link\"\n >\n {text}\n </a>\n )}\n </SignOutLink>\n ) : (\n <a\n href={absUrl(loginLink)}\n className={classNames}\n data-id=\"meganav-link\"\n >\n Login\n </a>\n )}\n </li>\n\n <li className=\"ui-meganav-item\">\n <MeganavControlMobileDropdown theme={theme} />\n\n <div\n className=\"ui-meganav-mobile-dropdown invisible\"\n id=\"meganav-mobile-dropdown\"\n data-id=\"meganav-mobile-dropdown\"\n >\n <div className=\"pt-24 pb-16 ui-grid-px bg-white\">\n <form className=\"mb-16\" action={absUrl(\"/search\")} method=\"get\">\n <div className=\"relative w-full\">\n <Icon\n name=\"icon-gui-magnifying-glass-outline\"\n color=\"text-cool-black\"\n size=\"1.5rem\"\n additionalCSS=\"absolute top-12 left-16 hover:text-gui-hover\"\n />\n <button\n type=\"button\"\n className=\"absolute top-12 right-16 p-0 focus:outline-none focus-visible:outline-gui-focus m-0 md:hidden invisible\"\n data-id=\"meganav-search-input-clear\"\n >\n <Icon\n name=\"icon-gui-x-circle-solid\"\n color=\"text-dark-grey\"\n size=\"1.5rem\"\n additionalCSS=\"\"\n />\n </button>\n <input\n type=\"search\"\n name=\"q\"\n className=\"ui-input px-48 h-48\"\n style={{ maxWidth: \"none\" }}\n placeholder=\"Search\"\n autoComplete=\"off\"\n data-id={searchDataId ?? \"meganav-mobile-search-input\"}\n />\n\n <MeganavSearchAutocomplete />\n </div>\n </form>\n\n <div\n className=\"max-h-0 overflow-hidden transition-all\"\n data-id=\"meganav-mobile-search-suggestions\"\n >\n <MeganavSearchSuggestions\n absUrl={absUrl}\n displaySupportLink={false}\n />\n </div>\n\n <ul className=\"mb-16\" data-id=\"meganav-mobile-panel-controls\">\n {MeganavData.panels.map((panel) => {\n const PanelComponent = panels[panel.component];\n const displayHr = [\n \"company-panel\",\n \"developers-panel\",\n ].includes(panel.id);\n\n return (\n <li\n className=\"ui-meganav-mobile-item\"\n key={`${panel.id}-mobile`}\n >\n <MeganavControlMobilePanelOpen\n ariaControls={`${panel.id}-mobile`}\n >\n {panel.label}\n </MeganavControlMobilePanelOpen>\n\n <div\n className=\"ui-meganav-panel-mobile hidden\"\n id={`${panel.id}-mobile`}\n data-scroll-lock-scrollable\n >\n <MeganavControlMobilePanelClose\n ariaControls={`${panel.id}-mobile`}\n displayHr={displayHr}\n />\n <PanelComponent\n paths={paths}\n absUrl={absUrl}\n statusUrl={statusUrl}\n />\n </div>\n </li>\n );\n })}\n <li>\n <a href={absUrl(\"/pricing\")} className=\"ui-meganav-mobile-link\">\n Pricing\n </a>\n </li>\n </ul>\n\n <hr className=\"ui-meganav-hr mb-20\" />\n\n <div className=\"flex justify-between items-center mb-16\">\n <a\n href={absUrl(\"/contact\")}\n className=\"text-menu2 font-medium block ml-0 mr-8 lg:mx-12 p-0 hover:text-gui-hover focus:text-gui-focus focus:outline-none\"\n >\n Contact us\n </a>\n {sessionState?.signedIn && sessionState?.account ? (\n <a\n href={absUrl(sessionState.account.links.dashboard.href)}\n className=\"ui-btn-secondary\"\n >\n Dashboard\n </a>\n ) : (\n <a href={absUrl(\"/sign-up\")} className=\"ui-btn\">\n Sign up free\n </a>\n )}\n </div>\n </div>\n </div>\n </li>\n </ul>\n );\n};\n\nexport default React.memo(MeganavItemsMobile, (oldState, newState) => {\n const { paths: pathsOld, theme: themeOld } = oldState;\n const { paths: pathsNew, theme: themeNew } = newState;\n\n return (\n pathsOld === pathsNew &&\n themeOld === themeNew &&\n Object.keys(newState.sessionState || {}).length === 0\n );\n});\n"],"names":["React","SignOutLink","MeganavSearchSuggestions","Icon","MeganavData","MeganavControlMobileDropdown","MeganavControlMobilePanelClose","MeganavControlMobilePanelOpen","MeganavSearchAutocomplete","MeganavItemsMobile","panels","paths","sessionState","theme","loginLink","absUrl","statusUrl","searchDataId","classNames","textColor","ul","className","data-id","li","signedIn","logOut","text","href","onClick","a","div","id","form","action","method","name","color","size","additionalCSS","button","type","input","style","maxWidth","placeholder","autoComplete","displaySupportLink","map","panel","PanelComponent","component","displayHr","includes","key","ariaControls","label","data-scroll-lock-scrollable","hr","account","links","dashboard","memo","oldState","newState","pathsOld","themeOld","pathsNew","themeNew","Object","keys","length"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/core/MeganavItemsMobile.tsx"],"sourcesContent":["import React from \"react\";\n\nimport SignOutLink from \"./SignOutLink\";\nimport MeganavSearchSuggestions from \"./MeganavSearchSuggestions\";\nimport Icon from \"./Icon\";\nimport MeganavData from \"./LegacyMeganav/component.json\";\nimport MeganavControlMobileDropdown from \"./MeganavControlMobileDropdown\";\nimport MeganavControlMobilePanelClose from \"./MeganavControlMobilePanelClose\";\nimport MeganavControlMobilePanelOpen from \"./MeganavControlMobilePanelOpen\";\nimport MeganavSearchAutocomplete from \"./MeganavSearchAutocomplete\";\nimport {\n AbsUrl,\n MeganavPanels,\n MeganavPaths,\n MeganavSessionState,\n MeganavTheme,\n} from \"./LegacyMeganav\";\n\ntype MeganavItemsMobileProps = {\n panels: MeganavPanels;\n paths?: MeganavPaths;\n sessionState?: MeganavSessionState;\n theme: MeganavTheme;\n loginLink: string;\n absUrl: AbsUrl;\n statusUrl: string;\n searchDataId?: string;\n};\n\nconst MeganavItemsMobile = ({\n panels,\n paths,\n sessionState,\n theme,\n loginLink,\n absUrl,\n statusUrl,\n searchDataId,\n}: MeganavItemsMobileProps) => {\n const classNames = `ui-meganav-link ${theme.textColor}`;\n\n return (\n <ul className=\"flex md:hidden items-center\" data-id=\"meganav-items-mobile\">\n <li>\n {sessionState?.signedIn && sessionState?.logOut ? (\n <SignOutLink absUrl={absUrl} {...sessionState.logOut}>\n {({ text, href, onClick }) => (\n <a\n onClick={onClick}\n href={absUrl(href)}\n className={classNames}\n data-id=\"meganav-link\"\n >\n {text}\n </a>\n )}\n </SignOutLink>\n ) : (\n <a\n href={absUrl(loginLink)}\n className={classNames}\n data-id=\"meganav-link\"\n >\n Login\n </a>\n )}\n </li>\n\n <li className=\"ui-meganav-item\">\n <MeganavControlMobileDropdown theme={theme} />\n\n <div\n className=\"ui-meganav-mobile-dropdown invisible\"\n id=\"meganav-mobile-dropdown\"\n data-id=\"meganav-mobile-dropdown\"\n >\n <div className=\"pt-24 pb-16 ui-grid-px bg-white\">\n <form className=\"mb-16\" action={absUrl(\"/search\")} method=\"get\">\n <div className=\"relative w-full\">\n <Icon\n name=\"icon-gui-magnifying-glass-outline\"\n color=\"text-cool-black\"\n size=\"1.5rem\"\n additionalCSS=\"absolute top-12 left-16 hover:text-gui-hover\"\n />\n <button\n type=\"button\"\n className=\"absolute top-12 right-16 p-0 focus:outline-none focus-visible:outline-gui-focus m-0 md:hidden invisible\"\n data-id=\"meganav-search-input-clear\"\n >\n <Icon\n name=\"icon-gui-x-circle-solid\"\n color=\"text-dark-grey\"\n size=\"1.5rem\"\n additionalCSS=\"\"\n />\n </button>\n <input\n type=\"search\"\n name=\"q\"\n className=\"ui-input px-48 h-48\"\n style={{ maxWidth: \"none\" }}\n placeholder=\"Search\"\n autoComplete=\"off\"\n data-id={searchDataId ?? \"meganav-mobile-search-input\"}\n />\n\n <MeganavSearchAutocomplete />\n </div>\n </form>\n\n <div\n className=\"max-h-0 overflow-hidden transition-all\"\n data-id=\"meganav-mobile-search-suggestions\"\n >\n <MeganavSearchSuggestions\n absUrl={absUrl}\n displaySupportLink={false}\n />\n </div>\n\n <ul className=\"mb-16\" data-id=\"meganav-mobile-panel-controls\">\n {MeganavData.panels.map((panel) => {\n const PanelComponent = panels[panel.component];\n const displayHr = [\n \"company-panel\",\n \"developers-panel\",\n ].includes(panel.id);\n\n return (\n <li\n className=\"ui-meganav-mobile-item\"\n key={`${panel.id}-mobile`}\n >\n <MeganavControlMobilePanelOpen\n ariaControls={`${panel.id}-mobile`}\n >\n {panel.label}\n </MeganavControlMobilePanelOpen>\n\n <div\n className=\"ui-meganav-panel-mobile hidden\"\n id={`${panel.id}-mobile`}\n data-scroll-lock-scrollable\n >\n <MeganavControlMobilePanelClose\n ariaControls={`${panel.id}-mobile`}\n displayHr={displayHr}\n />\n <PanelComponent\n paths={paths}\n absUrl={absUrl}\n statusUrl={statusUrl}\n />\n </div>\n </li>\n );\n })}\n <li>\n <a href={absUrl(\"/pricing\")} className=\"ui-meganav-mobile-link\">\n Pricing\n </a>\n </li>\n </ul>\n\n <hr className=\"ui-meganav-hr mb-20\" />\n\n <div className=\"flex justify-between items-center mb-16\">\n <a\n href={absUrl(\"/contact\")}\n className=\"text-menu2 font-medium block ml-0 mr-8 lg:mx-12 p-0 hover:text-gui-hover focus:text-gui-focus focus:outline-none\"\n >\n Contact us\n </a>\n {sessionState?.signedIn && sessionState?.account ? (\n <a\n href={absUrl(sessionState.account.links.dashboard.href)}\n className=\"ui-btn-secondary\"\n >\n Dashboard\n </a>\n ) : (\n <a href={absUrl(\"/sign-up\")} className=\"ui-btn\">\n Sign up free\n </a>\n )}\n </div>\n </div>\n </div>\n </li>\n </ul>\n );\n};\n\nexport default React.memo(MeganavItemsMobile, (oldState, newState) => {\n const { paths: pathsOld, theme: themeOld } = oldState;\n const { paths: pathsNew, theme: themeNew } = newState;\n\n return (\n pathsOld === pathsNew &&\n themeOld === themeNew &&\n Object.keys(newState.sessionState || {}).length === 0\n );\n});\n"],"names":["React","SignOutLink","MeganavSearchSuggestions","Icon","MeganavData","MeganavControlMobileDropdown","MeganavControlMobilePanelClose","MeganavControlMobilePanelOpen","MeganavSearchAutocomplete","MeganavItemsMobile","panels","paths","sessionState","theme","loginLink","absUrl","statusUrl","searchDataId","classNames","textColor","ul","className","data-id","li","signedIn","logOut","text","href","onClick","a","div","id","form","action","method","name","color","size","additionalCSS","button","type","input","style","maxWidth","placeholder","autoComplete","displaySupportLink","map","panel","PanelComponent","component","displayHr","includes","key","ariaControls","label","data-scroll-lock-scrollable","hr","account","links","dashboard","memo","oldState","newState","pathsOld","themeOld","pathsNew","themeNew","Object","keys","length"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/core/MeganavItemsSignedIn.tsx"],"sourcesContent":["import React from \"react\";\nimport MeganavSearch from \"./MeganavSearch\";\nimport { AbsUrl, MeganavSessionState, MeganavTheme } from \"./Meganav\";\n\ntype MeganavItemsSignedIn = {\n sessionState: MeganavSessionState;\n theme: MeganavTheme;\n absUrl: AbsUrl;\n searchDataId?: string;\n};\n\nconst truncate = (string: string, length: number) => {\n return string?.length && string.length > length\n ? `${string.slice(0, length - 1)}…`\n : string;\n};\n\nconst MeganavItemsSignedIn = ({\n sessionState,\n absUrl,\n searchDataId,\n}: MeganavItemsSignedIn) => {\n const accountName = truncate(sessionState.accountName, 20);\n\n return (\n <ul className=\"hidden md:flex items-center\">\n <li className=\"ui-meganav-item relative\">\n <span className=\"ui-meganav-link h-64 hover:text-cool-black mr-0\">\n {accountName}\n </span>\n </li>\n\n <li>\n <MeganavSearch absUrl={absUrl} dataId={searchDataId} />\n </li>\n\n {sessionState.account && (\n <li>\n <a\n href={absUrl(sessionState.account.links.dashboard.href)}\n className=\"ui-btn-secondary p-btn-small\"\n >\n Dashboard\n </a>\n </li>\n )}\n </ul>\n );\n};\n\nexport default MeganavItemsSignedIn;\n"],"names":["React","MeganavSearch","truncate","string","length","slice","MeganavItemsSignedIn","sessionState","absUrl","searchDataId","accountName","ul","className","li","span","dataId","account","a","href","links","dashboard"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAC1B,QAAOC,kBAAmB,iBAAkB,CAU5C,MAAMC,SAAW,CAACC,OAAgBC,UAChC,OAAOD,QAAQC,QAAUD,OAAOC,MAAM,CAAGA,OACrC,CAAC,EAAED,OAAOE,KAAK,CAAC,EAAGD,OAAS,GAAG,CAAC,CAAC,CACjCD,MACN,EAEA,MAAMG,qBAAuB,CAAC,CAC5BC,YAAY,CACZC,MAAM,CACNC,YAAY,CACS,IACrB,MAAMC,YAAcR,SAASK,aAAaG,WAAW,CAAE,IAEvD,OACE,oBAACC,MAAGC,UAAU,+BACZ,oBAACC,MAAGD,UAAU,4BACZ,oBAACE,QAAKF,UAAU,mDACbF,cAIL,oBAACG,UACC,oBAACZ,eAAcO,OAAQA,OAAQO,OAAQN,gBAGxCF,aAAaS,OAAO,EACnB,oBAACH,UACC,oBAACI,KACCC,KAAMV,OAAOD,aAAaS,OAAO,CAACG,KAAK,CAACC,SAAS,CAACF,IAAI,EACtDN,UAAU,gCACX,cAOX,CAEA,gBAAeN,oBAAqB"}
1
+ {"version":3,"sources":["../../src/core/MeganavItemsSignedIn.tsx"],"sourcesContent":["import React from \"react\";\nimport MeganavSearch from \"./MeganavSearch\";\nimport { AbsUrl, MeganavSessionState, MeganavTheme } from \"./LegacyMeganav\";\n\ntype MeganavItemsSignedIn = {\n sessionState: MeganavSessionState;\n theme: MeganavTheme;\n absUrl: AbsUrl;\n searchDataId?: string;\n};\n\nconst truncate = (string: string, length: number) => {\n return string?.length && string.length > length\n ? `${string.slice(0, length - 1)}…`\n : string;\n};\n\nconst MeganavItemsSignedIn = ({\n sessionState,\n absUrl,\n searchDataId,\n}: MeganavItemsSignedIn) => {\n const accountName = truncate(sessionState.accountName, 20);\n\n return (\n <ul className=\"hidden md:flex items-center\">\n <li className=\"ui-meganav-item relative\">\n <span className=\"ui-meganav-link h-64 hover:text-cool-black mr-0\">\n {accountName}\n </span>\n </li>\n\n <li>\n <MeganavSearch absUrl={absUrl} dataId={searchDataId} />\n </li>\n\n {sessionState.account && (\n <li>\n <a\n href={absUrl(sessionState.account.links.dashboard.href)}\n className=\"ui-btn-secondary p-btn-small\"\n >\n Dashboard\n </a>\n </li>\n )}\n </ul>\n );\n};\n\nexport default MeganavItemsSignedIn;\n"],"names":["React","MeganavSearch","truncate","string","length","slice","MeganavItemsSignedIn","sessionState","absUrl","searchDataId","accountName","ul","className","li","span","dataId","account","a","href","links","dashboard"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAC1B,QAAOC,kBAAmB,iBAAkB,CAU5C,MAAMC,SAAW,CAACC,OAAgBC,UAChC,OAAOD,QAAQC,QAAUD,OAAOC,MAAM,CAAGA,OACrC,CAAC,EAAED,OAAOE,KAAK,CAAC,EAAGD,OAAS,GAAG,CAAC,CAAC,CACjCD,MACN,EAEA,MAAMG,qBAAuB,CAAC,CAC5BC,YAAY,CACZC,MAAM,CACNC,YAAY,CACS,IACrB,MAAMC,YAAcR,SAASK,aAAaG,WAAW,CAAE,IAEvD,OACE,oBAACC,MAAGC,UAAU,+BACZ,oBAACC,MAAGD,UAAU,4BACZ,oBAACE,QAAKF,UAAU,mDACbF,cAIL,oBAACG,UACC,oBAACZ,eAAcO,OAAQA,OAAQO,OAAQN,gBAGxCF,aAAaS,OAAO,EACnB,oBAACH,UACC,oBAACI,KACCC,KAAMV,OAAOD,aAAaS,OAAO,CAACG,KAAK,CAACC,SAAS,CAACF,IAAI,EACtDN,UAAU,gCACX,cAOX,CAEA,gBAAeN,oBAAqB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/core/MeganavSearch.tsx"],"sourcesContent":["import React from \"react\";\n\nimport Icon from \"./Icon\";\nimport MeganavSearchPanel from \"./MeganavSearchPanel\";\nimport { AbsUrl } from \"./Meganav\";\n\nconst MeganavSearch = ({\n absUrl,\n dataId = \"meganav-control\",\n}: {\n absUrl: AbsUrl;\n dataId?: string;\n}) => (\n <>\n <button\n type=\"button\"\n data-id={dataId}\n data-control=\"search\"\n className=\"h-64 w-24 px-24 pr-48 py-20 group focus:outline-none\"\n aria-expanded=\"false\"\n aria-controls=\"panel-search\"\n aria-label={`Show Search Panel`}\n >\n <Icon\n name=\"icon-gui-magnifying-glass-outline\"\n color=\"text-cool-black\"\n size=\"1.5rem\"\n additionalCSS=\"group-hover:text-gui-hover group-focus:text-gui-focus\"\n />\n </button>\n\n <div\n className=\"ui-meganav-panel invisible\"\n id=\"panel-search\"\n data-id=\"meganav-panel\"\n >\n <MeganavSearchPanel absUrl={absUrl} />\n </div>\n </>\n);\n\nexport default MeganavSearch;\n"],"names":["React","Icon","MeganavSearchPanel","MeganavSearch","absUrl","dataId","button","type","data-id","data-control","className","aria-expanded","aria-controls","aria-label","name","color","size","additionalCSS","div","id"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAE1B,QAAOC,SAAU,QAAS,AAC1B,QAAOC,uBAAwB,sBAAuB,CAGtD,MAAMC,cAAgB,CAAC,CACrBC,MAAM,CACNC,OAAS,iBAAiB,CAI3B,GACC,wCACE,oBAACC,UACCC,KAAK,SACLC,UAASH,OACTI,eAAa,SACbC,UAAU,uDACVC,gBAAc,QACdC,gBAAc,eACdC,aAAY,CAAC,iBAAiB,CAAC,EAE/B,oBAACZ,MACCa,KAAK,oCACLC,MAAM,kBACNC,KAAK,SACLC,cAAc,2DAIlB,oBAACC,OACCR,UAAU,6BACVS,GAAG,eACHX,UAAQ,iBAER,oBAACN,oBAAmBE,OAAQA,UAKlC,gBAAeD,aAAc"}
1
+ {"version":3,"sources":["../../src/core/MeganavSearch.tsx"],"sourcesContent":["import React from \"react\";\n\nimport Icon from \"./Icon\";\nimport MeganavSearchPanel from \"./MeganavSearchPanel\";\nimport { AbsUrl } from \"./LegacyMeganav\";\n\nconst MeganavSearch = ({\n absUrl,\n dataId = \"meganav-control\",\n}: {\n absUrl: AbsUrl;\n dataId?: string;\n}) => (\n <>\n <button\n type=\"button\"\n data-id={dataId}\n data-control=\"search\"\n className=\"h-64 w-24 px-24 pr-48 py-20 group focus:outline-none\"\n aria-expanded=\"false\"\n aria-controls=\"panel-search\"\n aria-label={`Show Search Panel`}\n >\n <Icon\n name=\"icon-gui-magnifying-glass-outline\"\n color=\"text-cool-black\"\n size=\"1.5rem\"\n additionalCSS=\"group-hover:text-gui-hover group-focus:text-gui-focus\"\n />\n </button>\n\n <div\n className=\"ui-meganav-panel invisible\"\n id=\"panel-search\"\n data-id=\"meganav-panel\"\n >\n <MeganavSearchPanel absUrl={absUrl} />\n </div>\n </>\n);\n\nexport default MeganavSearch;\n"],"names":["React","Icon","MeganavSearchPanel","MeganavSearch","absUrl","dataId","button","type","data-id","data-control","className","aria-expanded","aria-controls","aria-label","name","color","size","additionalCSS","div","id"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAE1B,QAAOC,SAAU,QAAS,AAC1B,QAAOC,uBAAwB,sBAAuB,CAGtD,MAAMC,cAAgB,CAAC,CACrBC,MAAM,CACNC,OAAS,iBAAiB,CAI3B,GACC,wCACE,oBAACC,UACCC,KAAK,SACLC,UAASH,OACTI,eAAa,SACbC,UAAU,uDACVC,gBAAc,QACdC,gBAAc,eACdC,aAAY,CAAC,iBAAiB,CAAC,EAE/B,oBAACZ,MACCa,KAAK,oCACLC,MAAM,kBACNC,KAAK,SACLC,cAAc,2DAIlB,oBAACC,OACCR,UAAU,6BACVS,GAAG,eACHX,UAAQ,iBAER,oBAACN,oBAAmBE,OAAQA,UAKlC,gBAAeD,aAAc"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/core/MeganavSearchPanel.tsx"],"sourcesContent":["import React from \"react\";\n\nimport Icon from \"./Icon\";\nimport MeganavSearchSuggestions from \"./MeganavSearchSuggestions\";\nimport MeganavSearchAutocomplete from \"./MeganavSearchAutocomplete\";\nimport { AbsUrl } from \"./Meganav\";\n\nconst MeganavSearchPanel = ({ absUrl }: { absUrl: AbsUrl }) => (\n <section className=\"ui-meganav-content grid-cols-12\">\n <div className=\"col-span-8\">\n <div className=\"mb-32\">\n <form\n className=\"flex items-start\"\n action={absUrl(\"/search\")}\n method=\"get\"\n >\n <div className=\"relative w-full\">\n <Icon\n name=\"icon-gui-magnifying-glass-outline\"\n color=\"text-cool-black\"\n size=\"1.5rem\"\n additionalCSS=\"absolute top-12 left-16\"\n />\n <input\n type=\"search\"\n name=\"q\"\n className=\"ui-input pl-48 h-48\"\n placeholder=\"Search\"\n autoComplete=\"off\"\n data-id=\"meganav-search-input\"\n />\n\n <MeganavSearchAutocomplete />\n </div>\n\n <button\n type=\"submit\"\n className=\"ui-btn-secondary flex-shrink-0 ml-8 sm:ml-16 md:ml-24 xl:ml-32\"\n >\n Search\n </button>\n </form>\n </div>\n </div>\n\n <div className=\"col-span-12\">\n <MeganavSearchSuggestions displaySupportLink={true} absUrl={absUrl} />\n </div>\n </section>\n);\n\nexport default MeganavSearchPanel;\n"],"names":["React","Icon","MeganavSearchSuggestions","MeganavSearchAutocomplete","MeganavSearchPanel","absUrl","section","className","div","form","action","method","name","color","size","additionalCSS","input","type","placeholder","autoComplete","data-id","button","displaySupportLink"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAE1B,QAAOC,SAAU,QAAS,AAC1B,QAAOC,6BAA8B,4BAA6B,AAClE,QAAOC,8BAA+B,6BAA8B,CAGpE,MAAMC,mBAAqB,CAAC,CAAEC,MAAM,CAAsB,GACxD,oBAACC,WAAQC,UAAU,mCACjB,oBAACC,OAAID,UAAU,cACb,oBAACC,OAAID,UAAU,SACb,oBAACE,QACCF,UAAU,mBACVG,OAAQL,OAAO,WACfM,OAAO,OAEP,oBAACH,OAAID,UAAU,mBACb,oBAACN,MACCW,KAAK,oCACLC,MAAM,kBACNC,KAAK,SACLC,cAAc,4BAEhB,oBAACC,SACCC,KAAK,SACLL,KAAK,IACLL,UAAU,sBACVW,YAAY,SACZC,aAAa,MACbC,UAAQ,yBAGV,oBAACjB,iCAGH,oBAACkB,UACCJ,KAAK,SACLV,UAAU,kEACX,aAOP,oBAACC,OAAID,UAAU,eACb,oBAACL,0BAAyBoB,mBAAoB,KAAMjB,OAAQA,UAKlE,gBAAeD,kBAAmB"}
1
+ {"version":3,"sources":["../../src/core/MeganavSearchPanel.tsx"],"sourcesContent":["import React from \"react\";\n\nimport Icon from \"./Icon\";\nimport MeganavSearchSuggestions from \"./MeganavSearchSuggestions\";\nimport MeganavSearchAutocomplete from \"./MeganavSearchAutocomplete\";\nimport { AbsUrl } from \"./LegacyMeganav\";\n\nconst MeganavSearchPanel = ({ absUrl }: { absUrl: AbsUrl }) => (\n <section className=\"ui-meganav-content grid-cols-12\">\n <div className=\"col-span-8\">\n <div className=\"mb-32\">\n <form\n className=\"flex items-start\"\n action={absUrl(\"/search\")}\n method=\"get\"\n >\n <div className=\"relative w-full\">\n <Icon\n name=\"icon-gui-magnifying-glass-outline\"\n color=\"text-cool-black\"\n size=\"1.5rem\"\n additionalCSS=\"absolute top-12 left-16\"\n />\n <input\n type=\"search\"\n name=\"q\"\n className=\"ui-input pl-48 h-48\"\n placeholder=\"Search\"\n autoComplete=\"off\"\n data-id=\"meganav-search-input\"\n />\n\n <MeganavSearchAutocomplete />\n </div>\n\n <button\n type=\"submit\"\n className=\"ui-btn-secondary flex-shrink-0 ml-8 sm:ml-16 md:ml-24 xl:ml-32\"\n >\n Search\n </button>\n </form>\n </div>\n </div>\n\n <div className=\"col-span-12\">\n <MeganavSearchSuggestions displaySupportLink={true} absUrl={absUrl} />\n </div>\n </section>\n);\n\nexport default MeganavSearchPanel;\n"],"names":["React","Icon","MeganavSearchSuggestions","MeganavSearchAutocomplete","MeganavSearchPanel","absUrl","section","className","div","form","action","method","name","color","size","additionalCSS","input","type","placeholder","autoComplete","data-id","button","displaySupportLink"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAE1B,QAAOC,SAAU,QAAS,AAC1B,QAAOC,6BAA8B,4BAA6B,AAClE,QAAOC,8BAA+B,6BAA8B,CAGpE,MAAMC,mBAAqB,CAAC,CAAEC,MAAM,CAAsB,GACxD,oBAACC,WAAQC,UAAU,mCACjB,oBAACC,OAAID,UAAU,cACb,oBAACC,OAAID,UAAU,SACb,oBAACE,QACCF,UAAU,mBACVG,OAAQL,OAAO,WACfM,OAAO,OAEP,oBAACH,OAAID,UAAU,mBACb,oBAACN,MACCW,KAAK,oCACLC,MAAM,kBACNC,KAAK,SACLC,cAAc,4BAEhB,oBAACC,SACCC,KAAK,SACLL,KAAK,IACLL,UAAU,sBACVW,YAAY,SACZC,aAAa,MACbC,UAAQ,yBAGV,oBAACjB,iCAGH,oBAACkB,UACCJ,KAAK,SACLV,UAAU,kEACX,aAOP,oBAACC,OAAID,UAAU,eACb,oBAACL,0BAAyBoB,mBAAoB,KAAMjB,OAAQA,UAKlE,gBAAeD,kBAAmB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/core/MeganavSearchSuggestions.tsx"],"sourcesContent":["import React from \"react\";\n\nimport FeaturedLink from \"./FeaturedLink\";\nimport { AbsUrl } from \"./Meganav\";\n\ntype MeganavSearchSuggestionsProps = {\n absUrl: AbsUrl;\n displaySupportLink: boolean;\n};\n\nconst MeganavSearchSuggestions = ({\n absUrl,\n displaySupportLink,\n}: MeganavSearchSuggestionsProps) => (\n <>\n <p className=\"ui-text-overline2 text-cool-black py-12\">Popular pages</p>\n\n <div className=\"flex justify-between items-center overflow-hidden\">\n <ul className=\"flex transition-transform\">\n <li className=\"py-12 pr-8 flex-shrink-0\">\n <a\n href={absUrl(\"/docs/how-ably-works\")}\n className=\"ui-text-p2 hover:text-gui-hover active:text-gui-active focus:text-gui-focus\"\n >\n How does Ably work?\n </a>\n </li>\n <li className=\"py-12 px-8 flex-shrink-0\">\n <a\n href={absUrl(\"/docs/quick-start-guide\")}\n className=\"ui-text-p2 hover:text-gui-hover active:text-gui-active focus:text-gui-focus\"\n >\n Quickstart guide\n </a>\n </li>\n <li className=\"py-12 px-8 flex-shrink-0\">\n <a\n href={absUrl(\"/docs/core-features/pubsub\")}\n className=\"ui-text-p2 hover:text-gui-hover active:text-gui-active focus:text-gui-focus\"\n >\n Publish/Subscribe Messaging\n </a>\n </li>\n <li className=\"py-12 pl-8 flex-shrink-0\">\n <a\n href={absUrl(\"/platform\")}\n className=\"ui-text-p2 hover:text-gui-hover active:text-gui-active focus:text-gui-focus\"\n >\n Platform\n </a>\n </li>\n </ul>\n {displaySupportLink ? (\n <FeaturedLink url={absUrl(\"/support\")} textSize=\"text-p2\">\n Support\n </FeaturedLink>\n ) : null}\n </div>\n </>\n);\n\nexport default MeganavSearchSuggestions;\n"],"names":["React","FeaturedLink","MeganavSearchSuggestions","absUrl","displaySupportLink","p","className","div","ul","li","a","href","url","textSize"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAE1B,QAAOC,iBAAkB,gBAAiB,CAQ1C,MAAMC,yBAA2B,CAAC,CAChCC,MAAM,CACNC,kBAAkB,CACY,GAC9B,wCACE,oBAACC,KAAEC,UAAU,2CAA0C,iBAEvD,oBAACC,OAAID,UAAU,qDACb,oBAACE,MAAGF,UAAU,6BACZ,oBAACG,MAAGH,UAAU,4BACZ,oBAACI,KACCC,KAAMR,OAAO,wBACbG,UAAU,+EACX,wBAIH,oBAACG,MAAGH,UAAU,4BACZ,oBAACI,KACCC,KAAMR,OAAO,2BACbG,UAAU,+EACX,qBAIH,oBAACG,MAAGH,UAAU,4BACZ,oBAACI,KACCC,KAAMR,OAAO,8BACbG,UAAU,+EACX,gCAIH,oBAACG,MAAGH,UAAU,4BACZ,oBAACI,KACCC,KAAMR,OAAO,aACbG,UAAU,+EACX,cAKJF,mBACC,oBAACH,cAAaW,IAAKT,OAAO,YAAaU,SAAS,WAAU,WAGxD,MAKV,gBAAeX,wBAAyB"}
1
+ {"version":3,"sources":["../../src/core/MeganavSearchSuggestions.tsx"],"sourcesContent":["import React from \"react\";\n\nimport FeaturedLink from \"./FeaturedLink\";\nimport { AbsUrl } from \"./LegacyMeganav\";\n\ntype MeganavSearchSuggestionsProps = {\n absUrl: AbsUrl;\n displaySupportLink: boolean;\n};\n\nconst MeganavSearchSuggestions = ({\n absUrl,\n displaySupportLink,\n}: MeganavSearchSuggestionsProps) => (\n <>\n <p className=\"ui-text-overline2 text-cool-black py-12\">Popular pages</p>\n\n <div className=\"flex justify-between items-center overflow-hidden\">\n <ul className=\"flex transition-transform\">\n <li className=\"py-12 pr-8 flex-shrink-0\">\n <a\n href={absUrl(\"/docs/how-ably-works\")}\n className=\"ui-text-p2 hover:text-gui-hover active:text-gui-active focus:text-gui-focus\"\n >\n How does Ably work?\n </a>\n </li>\n <li className=\"py-12 px-8 flex-shrink-0\">\n <a\n href={absUrl(\"/docs/quick-start-guide\")}\n className=\"ui-text-p2 hover:text-gui-hover active:text-gui-active focus:text-gui-focus\"\n >\n Quickstart guide\n </a>\n </li>\n <li className=\"py-12 px-8 flex-shrink-0\">\n <a\n href={absUrl(\"/docs/core-features/pubsub\")}\n className=\"ui-text-p2 hover:text-gui-hover active:text-gui-active focus:text-gui-focus\"\n >\n Publish/Subscribe Messaging\n </a>\n </li>\n <li className=\"py-12 pl-8 flex-shrink-0\">\n <a\n href={absUrl(\"/platform\")}\n className=\"ui-text-p2 hover:text-gui-hover active:text-gui-active focus:text-gui-focus\"\n >\n Platform\n </a>\n </li>\n </ul>\n {displaySupportLink ? (\n <FeaturedLink url={absUrl(\"/support\")} textSize=\"text-p2\">\n Support\n </FeaturedLink>\n ) : null}\n </div>\n </>\n);\n\nexport default MeganavSearchSuggestions;\n"],"names":["React","FeaturedLink","MeganavSearchSuggestions","absUrl","displaySupportLink","p","className","div","ul","li","a","href","url","textSize"],"mappings":"AAAA,OAAOA,UAAW,OAAQ,AAE1B,QAAOC,iBAAkB,gBAAiB,CAQ1C,MAAMC,yBAA2B,CAAC,CAChCC,MAAM,CACNC,kBAAkB,CACY,GAC9B,wCACE,oBAACC,KAAEC,UAAU,2CAA0C,iBAEvD,oBAACC,OAAID,UAAU,qDACb,oBAACE,MAAGF,UAAU,6BACZ,oBAACG,MAAGH,UAAU,4BACZ,oBAACI,KACCC,KAAMR,OAAO,wBACbG,UAAU,+EACX,wBAIH,oBAACG,MAAGH,UAAU,4BACZ,oBAACI,KACCC,KAAMR,OAAO,2BACbG,UAAU,+EACX,qBAIH,oBAACG,MAAGH,UAAU,4BACZ,oBAACI,KACCC,KAAMR,OAAO,8BACbG,UAAU,+EACX,gCAIH,oBAACG,MAAGH,UAAU,4BACZ,oBAACI,KACCC,KAAMR,OAAO,aACbG,UAAU,+EACX,cAKJF,mBACC,oBAACH,cAAaW,IAAKT,OAAO,YAAaU,SAAS,WAAU,WAGxD,MAKV,gBAAeX,wBAAyB"}
@@ -1,2 +1,2 @@
1
- import Cookie from"js-cookie";import throttle from"lodash.throttle";import{queryId}from"../dom-query";import{FLASH_DATA_ID}from"../Flash";const COOKIE_EXPIRY=90;const COLLAPSE_TRIGGER_DISTANCE=5;const SCROLL_LISTENER_THROTTLE=100;const RESIZE_LISTENER_THROTTLE=100;const isMdViewport=()=>!window.matchMedia(`(min-width: 65rem)`).matches;const adjustFlashMargin=open=>{const flash=queryId(FLASH_DATA_ID);if(flash){flash.style.marginTop=open?`4rem`:null}};const hideOnMobile=bannerContainer=>{if(isMdViewport()){bannerContainer.style.display="none"}else{bannerContainer.style.display=null}};const hideNotice=bannerContainer=>{bannerContainer.style.maxHeight=0;bannerContainer.style.overflow="hidden";adjustFlashMargin(false)};const showNotice=bannerContainer=>{bannerContainer.style.maxHeight=null;bannerContainer.style.overflow=null;adjustFlashMargin(true)};const setupRememberClosed=(cookieId,noticeId)=>{const cookie=Cookie.get(cookieId)||"";Cookie.set(cookieId,`${cookie.replace(`${noticeId},`,"")+noticeId},`,{expires:COOKIE_EXPIRY})};const hasBeenClosedBefore=(cookieId,noticeId)=>(Cookie.get(cookieId)||"").includes(noticeId);const setupNoticeCollapse=bannerContainer=>{const scrollTop=window.scrollY;if(scrollTop>COLLAPSE_TRIGGER_DISTANCE){hideNotice(bannerContainer)}const listener=throttle(()=>{const scrollTop=window.scrollY;if(scrollTop>COLLAPSE_TRIGGER_DISTANCE){hideNotice(bannerContainer)}else if(bannerContainer.style.overflow){showNotice(bannerContainer)}},SCROLL_LISTENER_THROTTLE);document.addEventListener("scroll",listener);return()=>document.removeEventListener("scroll",listener)};const setupCloseBtn=(bannerContainer,cookieId,noticeId,collapseUnmountListeners)=>{const closeBtn=bannerContainer.querySelector("button");if(!closeBtn)return()=>{};const listener=()=>{if(cookieId&&noticeId)setupRememberClosed(cookieId,noticeId);hideNotice(bannerContainer);collapseUnmountListeners()};closeBtn.addEventListener("click",listener);return()=>document.removeEventListener("click",listener)};const resizeHandler=bannerContainer=>{const handler=throttle(()=>{hideOnMobile(bannerContainer)},RESIZE_LISTENER_THROTTLE);window.addEventListener("resize",handler);return()=>window.removeEventListener("resize",handler)};const Notice=({bannerContainer,cookieId,noticeId,options})=>{if(typeof window==="undefined")return()=>{};if(!bannerContainer){console.warn("A Notice component was initited but no notice container was found.");return()=>{}}if(hasBeenClosedBefore(cookieId,noticeId))return()=>{};hideOnMobile(bannerContainer);showNotice(bannerContainer);const opts={collapse:true,...options};const collapseUnmountListeners=opts.collapse?setupNoticeCollapse(bannerContainer):()=>{};const closeBtnUnmountListeners=setupCloseBtn(bannerContainer,cookieId,noticeId,collapseUnmountListeners);const resizeUnmountListener=resizeHandler(bannerContainer);return()=>{[closeBtnUnmountListeners,collapseUnmountListeners,resizeUnmountListener].forEach(unmount=>unmount())}};export default Notice;
1
+ import Cookie from"js-cookie";import throttle from"lodash.throttle";import{queryId}from"../dom-query";import{FLASH_DATA_ID}from"../Flash";const COOKIE_EXPIRY=90;export const COLLAPSE_TRIGGER_DISTANCE=5;const SCROLL_LISTENER_THROTTLE=100;const RESIZE_LISTENER_THROTTLE=100;const isMdViewport=()=>!window.matchMedia(`(min-width: 65rem)`).matches;const adjustFlashMargin=open=>{const flash=queryId(FLASH_DATA_ID);if(flash){flash.style.marginTop=open?`4rem`:null}};const hideOnMobile=bannerContainer=>{if(isMdViewport()){bannerContainer.style.display="none"}else{bannerContainer.style.display=null}};const hideNotice=bannerContainer=>{bannerContainer.style.maxHeight=0;bannerContainer.style.overflow="hidden";adjustFlashMargin(false)};const showNotice=bannerContainer=>{bannerContainer.style.maxHeight=null;bannerContainer.style.overflow=null;adjustFlashMargin(true)};const setupRememberClosed=(cookieId,noticeId)=>{const cookie=Cookie.get(cookieId)||"";Cookie.set(cookieId,`${cookie.replace(`${noticeId},`,"")+noticeId},`,{expires:COOKIE_EXPIRY})};const hasBeenClosedBefore=(cookieId,noticeId)=>(Cookie.get(cookieId)||"").includes(noticeId);const setupNoticeCollapse=bannerContainer=>{const scrollTop=window.scrollY;if(scrollTop>COLLAPSE_TRIGGER_DISTANCE){hideNotice(bannerContainer)}const listener=throttle(()=>{const scrollTop=window.scrollY;if(scrollTop>COLLAPSE_TRIGGER_DISTANCE){hideNotice(bannerContainer)}else if(bannerContainer.style.overflow){showNotice(bannerContainer)}},SCROLL_LISTENER_THROTTLE);document.addEventListener("scroll",listener);return()=>document.removeEventListener("scroll",listener)};const setupCloseBtn=(bannerContainer,cookieId,noticeId,collapseUnmountListeners)=>{const closeBtn=bannerContainer.querySelector("button");if(!closeBtn)return()=>{};const listener=()=>{if(cookieId&&noticeId)setupRememberClosed(cookieId,noticeId);hideNotice(bannerContainer);collapseUnmountListeners()};closeBtn.addEventListener("click",listener);return()=>document.removeEventListener("click",listener)};const resizeHandler=bannerContainer=>{const handler=throttle(()=>{hideOnMobile(bannerContainer)},RESIZE_LISTENER_THROTTLE);window.addEventListener("resize",handler);return()=>window.removeEventListener("resize",handler)};const Notice=({bannerContainer,cookieId,noticeId,options})=>{if(typeof window==="undefined")return()=>{};if(!bannerContainer){console.warn("A Notice component was initited but no notice container was found.");return()=>{}}if(hasBeenClosedBefore(cookieId,noticeId))return()=>{};hideOnMobile(bannerContainer);showNotice(bannerContainer);const opts={collapse:true,...options};const collapseUnmountListeners=opts.collapse?setupNoticeCollapse(bannerContainer):()=>{};const closeBtnUnmountListeners=setupCloseBtn(bannerContainer,cookieId,noticeId,collapseUnmountListeners);const resizeUnmountListener=resizeHandler(bannerContainer);return()=>{[closeBtnUnmountListeners,collapseUnmountListeners,resizeUnmountListener].forEach(unmount=>unmount())}};export default Notice;
2
2
  //# sourceMappingURL=component.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/core/Notice/component.js"],"sourcesContent":["import Cookie from \"js-cookie\";\nimport throttle from \"lodash.throttle\";\n\nimport { queryId } from \"../dom-query\";\nimport { FLASH_DATA_ID } from \"../Flash\";\n\nconst COOKIE_EXPIRY = 90;\nconst COLLAPSE_TRIGGER_DISTANCE = 5;\nconst SCROLL_LISTENER_THROTTLE = 100;\nconst RESIZE_LISTENER_THROTTLE = 100;\n\nconst isMdViewport = () => !window.matchMedia(`(min-width: 65rem)`).matches;\n\nconst adjustFlashMargin = (open) => {\n // HACK ALERT\n // Add margin to flashes when opening the notice.\n // Flashes are react components and this notice needs to work as a view-component and react component.\n // We could do this with redux but then we potentially update state on every scroll event, which\n // even with debounce will deplate our frame budget.\n\n const flash = queryId(FLASH_DATA_ID);\n\n if (flash) {\n flash.style.marginTop = open ? `4rem` : null;\n }\n};\n\nconst hideOnMobile = (bannerContainer) => {\n if (isMdViewport()) {\n bannerContainer.style.display = \"none\";\n } else {\n bannerContainer.style.display = null;\n }\n};\n\nconst hideNotice = (bannerContainer) => {\n bannerContainer.style.maxHeight = 0;\n bannerContainer.style.overflow = \"hidden\";\n\n adjustFlashMargin(false);\n};\n\nconst showNotice = (bannerContainer) => {\n bannerContainer.style.maxHeight = null;\n bannerContainer.style.overflow = null;\n\n adjustFlashMargin(true);\n};\n\nconst setupRememberClosed = (cookieId, noticeId) => {\n const cookie = Cookie.get(cookieId) || \"\";\n\n Cookie.set(cookieId, `${cookie.replace(`${noticeId},`, \"\") + noticeId},`, {\n expires: COOKIE_EXPIRY,\n });\n};\n\nconst hasBeenClosedBefore = (cookieId, noticeId) =>\n (Cookie.get(cookieId) || \"\").includes(noticeId);\n\nconst setupNoticeCollapse = (bannerContainer) => {\n const scrollTop = window.scrollY;\n\n if (scrollTop > COLLAPSE_TRIGGER_DISTANCE) {\n hideNotice(bannerContainer);\n }\n\n const listener = throttle(() => {\n const scrollTop = window.scrollY;\n\n if (scrollTop > COLLAPSE_TRIGGER_DISTANCE) {\n hideNotice(bannerContainer);\n } else if (bannerContainer.style.overflow) {\n showNotice(bannerContainer);\n }\n }, SCROLL_LISTENER_THROTTLE);\n\n document.addEventListener(\"scroll\", listener);\n\n return () => document.removeEventListener(\"scroll\", listener);\n};\n\nconst setupCloseBtn = (\n bannerContainer,\n cookieId,\n noticeId,\n collapseUnmountListeners,\n) => {\n const closeBtn = bannerContainer.querySelector(\"button\");\n\n if (!closeBtn) return () => {};\n\n const listener = () => {\n if (cookieId && noticeId) setupRememberClosed(cookieId, noticeId);\n\n hideNotice(bannerContainer);\n collapseUnmountListeners();\n };\n\n closeBtn.addEventListener(\"click\", listener);\n\n return () => document.removeEventListener(\"click\", listener);\n};\n\nconst resizeHandler = (bannerContainer) => {\n const handler = throttle(() => {\n hideOnMobile(bannerContainer);\n }, RESIZE_LISTENER_THROTTLE);\n\n window.addEventListener(\"resize\", handler);\n\n return () => window.removeEventListener(\"resize\", handler);\n};\n\nconst Notice = ({ bannerContainer, cookieId, noticeId, options }) => {\n if (typeof window === \"undefined\") return () => {};\n\n if (!bannerContainer) {\n console.warn(\n \"A Notice component was initited but no notice container was found.\",\n );\n return () => {};\n }\n\n if (hasBeenClosedBefore(cookieId, noticeId)) return () => {};\n\n hideOnMobile(bannerContainer);\n showNotice(bannerContainer);\n\n const opts = { collapse: true, ...options };\n\n const collapseUnmountListeners = opts.collapse\n ? setupNoticeCollapse(bannerContainer)\n : () => {};\n\n const closeBtnUnmountListeners = setupCloseBtn(\n bannerContainer,\n cookieId,\n noticeId,\n collapseUnmountListeners,\n );\n\n const resizeUnmountListener = resizeHandler(bannerContainer);\n\n return () => {\n [\n closeBtnUnmountListeners,\n collapseUnmountListeners,\n resizeUnmountListener,\n ].forEach((unmount) => unmount());\n };\n};\n\nexport default Notice;\n"],"names":["Cookie","throttle","queryId","FLASH_DATA_ID","COOKIE_EXPIRY","COLLAPSE_TRIGGER_DISTANCE","SCROLL_LISTENER_THROTTLE","RESIZE_LISTENER_THROTTLE","isMdViewport","window","matchMedia","matches","adjustFlashMargin","open","flash","style","marginTop","hideOnMobile","bannerContainer","display","hideNotice","maxHeight","overflow","showNotice","setupRememberClosed","cookieId","noticeId","cookie","get","set","replace","expires","hasBeenClosedBefore","includes","setupNoticeCollapse","scrollTop","scrollY","listener","document","addEventListener","removeEventListener","setupCloseBtn","collapseUnmountListeners","closeBtn","querySelector","resizeHandler","handler","Notice","options","console","warn","opts","collapse","closeBtnUnmountListeners","resizeUnmountListener","forEach","unmount"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/core/Notice/component.js"],"sourcesContent":["import Cookie from \"js-cookie\";\nimport throttle from \"lodash.throttle\";\n\nimport { queryId } from \"../dom-query\";\nimport { FLASH_DATA_ID } from \"../Flash\";\n\nconst COOKIE_EXPIRY = 90;\nexport const COLLAPSE_TRIGGER_DISTANCE = 5;\nconst SCROLL_LISTENER_THROTTLE = 100;\nconst RESIZE_LISTENER_THROTTLE = 100;\n\nconst isMdViewport = () => !window.matchMedia(`(min-width: 65rem)`).matches;\n\nconst adjustFlashMargin = (open) => {\n // HACK ALERT\n // Add margin to flashes when opening the notice.\n // Flashes are react components and this notice needs to work as a view-component and react component.\n // We could do this with redux but then we potentially update state on every scroll event, which\n // even with debounce will deplate our frame budget.\n\n const flash = queryId(FLASH_DATA_ID);\n\n if (flash) {\n flash.style.marginTop = open ? `4rem` : null;\n }\n};\n\nconst hideOnMobile = (bannerContainer) => {\n if (isMdViewport()) {\n bannerContainer.style.display = \"none\";\n } else {\n bannerContainer.style.display = null;\n }\n};\n\nconst hideNotice = (bannerContainer) => {\n bannerContainer.style.maxHeight = 0;\n bannerContainer.style.overflow = \"hidden\";\n\n adjustFlashMargin(false);\n};\n\nconst showNotice = (bannerContainer) => {\n bannerContainer.style.maxHeight = null;\n bannerContainer.style.overflow = null;\n\n adjustFlashMargin(true);\n};\n\nconst setupRememberClosed = (cookieId, noticeId) => {\n const cookie = Cookie.get(cookieId) || \"\";\n\n Cookie.set(cookieId, `${cookie.replace(`${noticeId},`, \"\") + noticeId},`, {\n expires: COOKIE_EXPIRY,\n });\n};\n\nconst hasBeenClosedBefore = (cookieId, noticeId) =>\n (Cookie.get(cookieId) || \"\").includes(noticeId);\n\nconst setupNoticeCollapse = (bannerContainer) => {\n const scrollTop = window.scrollY;\n\n if (scrollTop > COLLAPSE_TRIGGER_DISTANCE) {\n hideNotice(bannerContainer);\n }\n\n const listener = throttle(() => {\n const scrollTop = window.scrollY;\n\n if (scrollTop > COLLAPSE_TRIGGER_DISTANCE) {\n hideNotice(bannerContainer);\n } else if (bannerContainer.style.overflow) {\n showNotice(bannerContainer);\n }\n }, SCROLL_LISTENER_THROTTLE);\n\n document.addEventListener(\"scroll\", listener);\n\n return () => document.removeEventListener(\"scroll\", listener);\n};\n\nconst setupCloseBtn = (\n bannerContainer,\n cookieId,\n noticeId,\n collapseUnmountListeners,\n) => {\n const closeBtn = bannerContainer.querySelector(\"button\");\n\n if (!closeBtn) return () => {};\n\n const listener = () => {\n if (cookieId && noticeId) setupRememberClosed(cookieId, noticeId);\n\n hideNotice(bannerContainer);\n collapseUnmountListeners();\n };\n\n closeBtn.addEventListener(\"click\", listener);\n\n return () => document.removeEventListener(\"click\", listener);\n};\n\nconst resizeHandler = (bannerContainer) => {\n const handler = throttle(() => {\n hideOnMobile(bannerContainer);\n }, RESIZE_LISTENER_THROTTLE);\n\n window.addEventListener(\"resize\", handler);\n\n return () => window.removeEventListener(\"resize\", handler);\n};\n\nconst Notice = ({ bannerContainer, cookieId, noticeId, options }) => {\n if (typeof window === \"undefined\") return () => {};\n\n if (!bannerContainer) {\n console.warn(\n \"A Notice component was initited but no notice container was found.\",\n );\n return () => {};\n }\n\n if (hasBeenClosedBefore(cookieId, noticeId)) return () => {};\n\n hideOnMobile(bannerContainer);\n showNotice(bannerContainer);\n\n const opts = { collapse: true, ...options };\n\n const collapseUnmountListeners = opts.collapse\n ? setupNoticeCollapse(bannerContainer)\n : () => {};\n\n const closeBtnUnmountListeners = setupCloseBtn(\n bannerContainer,\n cookieId,\n noticeId,\n collapseUnmountListeners,\n );\n\n const resizeUnmountListener = resizeHandler(bannerContainer);\n\n return () => {\n [\n closeBtnUnmountListeners,\n collapseUnmountListeners,\n resizeUnmountListener,\n ].forEach((unmount) => unmount());\n };\n};\n\nexport default Notice;\n"],"names":["Cookie","throttle","queryId","FLASH_DATA_ID","COOKIE_EXPIRY","COLLAPSE_TRIGGER_DISTANCE","SCROLL_LISTENER_THROTTLE","RESIZE_LISTENER_THROTTLE","isMdViewport","window","matchMedia","matches","adjustFlashMargin","open","flash","style","marginTop","hideOnMobile","bannerContainer","display","hideNotice","maxHeight","overflow","showNotice","setupRememberClosed","cookieId","noticeId","cookie","get","set","replace","expires","hasBeenClosedBefore","includes","setupNoticeCollapse","scrollTop","scrollY","listener","document","addEventListener","removeEventListener","setupCloseBtn","collapseUnmountListeners","closeBtn","querySelector","resizeHandler","handler","Notice","options","console","warn","opts","collapse","closeBtnUnmountListeners","resizeUnmountListener","forEach","unmount"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/core/SignOutLink.tsx"],"sourcesContent":["import React, { MouseEvent, MouseEventHandler, ReactNode, useRef } from \"react\";\nimport { AbsUrl } from \"./Meganav\";\n\ntype SignOutLinkProps = {\n token: string;\n href: string;\n text: string;\n children: ({\n href,\n text,\n onClick,\n }: {\n href: string;\n text: string;\n onClick: MouseEventHandler<HTMLAnchorElement>;\n }) => ReactNode;\n absUrl: AbsUrl;\n};\n\nconst SignOutLink = ({\n token,\n href,\n text,\n children,\n absUrl,\n}: SignOutLinkProps) => {\n const formRef = useRef<HTMLFormElement>(null);\n\n const onClick = (e: MouseEvent) => {\n formRef.current?.submit();\n e.preventDefault();\n };\n\n return (\n <>\n <form\n ref={formRef}\n method=\"post\"\n action={absUrl(href)}\n className=\"hidden\"\n >\n <input name=\"_method\" value=\"delete\" type=\"hidden\" />\n <input name=\"authenticity_token\" value={token} type=\"hidden\" />\n </form>\n\n {children({ href, text, onClick })}\n </>\n );\n};\n\nexport default SignOutLink;\n"],"names":["React","useRef","SignOutLink","token","href","text","children","absUrl","formRef","onClick","e","current","submit","preventDefault","form","ref","method","action","className","input","name","value","type"],"mappings":"AAAA,OAAOA,OAAmDC,MAAM,KAAQ,OAAQ,CAmBhF,MAAMC,YAAc,CAAC,CACnBC,KAAK,CACLC,IAAI,CACJC,IAAI,CACJC,QAAQ,CACRC,MAAM,CACW,IACjB,MAAMC,QAAUP,OAAwB,MAExC,MAAMQ,QAAU,AAACC,IACfF,QAAQG,OAAO,EAAEC,SACjBF,EAAEG,cAAc,EAClB,EAEA,OACE,wCACE,oBAACC,QACCC,IAAKP,QACLQ,OAAO,OACPC,OAAQV,OAAOH,MACfc,UAAU,UAEV,oBAACC,SAAMC,KAAK,UAAUC,MAAM,SAASC,KAAK,WAC1C,oBAACH,SAAMC,KAAK,qBAAqBC,MAAOlB,MAAOmB,KAAK,YAGrDhB,SAAS,CAAEF,KAAMC,KAAMI,OAAQ,GAGtC,CAEA,gBAAeP,WAAY"}
1
+ {"version":3,"sources":["../../src/core/SignOutLink.tsx"],"sourcesContent":["import React, { MouseEvent, MouseEventHandler, ReactNode, useRef } from \"react\";\nimport { AbsUrl } from \"./LegacyMeganav\";\n\ntype SignOutLinkProps = {\n token: string;\n href: string;\n text: string;\n children: ({\n href,\n text,\n onClick,\n }: {\n href: string;\n text: string;\n onClick: MouseEventHandler<HTMLAnchorElement>;\n }) => ReactNode;\n absUrl: AbsUrl;\n};\n\nconst SignOutLink = ({\n token,\n href,\n text,\n children,\n absUrl,\n}: SignOutLinkProps) => {\n const formRef = useRef<HTMLFormElement>(null);\n\n const onClick = (e: MouseEvent) => {\n formRef.current?.submit();\n e.preventDefault();\n };\n\n return (\n <>\n <form\n ref={formRef}\n method=\"post\"\n action={absUrl(href)}\n className=\"hidden\"\n >\n <input name=\"_method\" value=\"delete\" type=\"hidden\" />\n <input name=\"authenticity_token\" value={token} type=\"hidden\" />\n </form>\n\n {children({ href, text, onClick })}\n </>\n );\n};\n\nexport default SignOutLink;\n"],"names":["React","useRef","SignOutLink","token","href","text","children","absUrl","formRef","onClick","e","current","submit","preventDefault","form","ref","method","action","className","input","name","value","type"],"mappings":"AAAA,OAAOA,OAAmDC,MAAM,KAAQ,OAAQ,CAmBhF,MAAMC,YAAc,CAAC,CACnBC,KAAK,CACLC,IAAI,CACJC,IAAI,CACJC,QAAQ,CACRC,MAAM,CACW,IACjB,MAAMC,QAAUP,OAAwB,MAExC,MAAMQ,QAAU,AAACC,IACfF,QAAQG,OAAO,EAAEC,SACjBF,EAAEG,cAAc,EAClB,EAEA,OACE,wCACE,oBAACC,QACCC,IAAKP,QACLQ,OAAO,OACPC,OAAQV,OAAOH,MACfc,UAAU,UAEV,oBAACC,SAAMC,KAAK,UAAUC,MAAM,SAASC,KAAK,WAC1C,oBAACH,SAAMC,KAAK,qBAAqBC,MAAOlB,MAAOmB,KAAK,YAGrDhB,SAAS,CAAEF,KAAMC,KAAMI,OAAQ,GAGtC,CAEA,gBAAeP,WAAY"}
@@ -1,2 +1,2 @@
1
- import*as datalayer from"./datalayer";import*as mixpanel from"./mixpanel";import*as posthog from"./posthog";let debugMode=false;export const initInsights=({mixpanelToken,mixpanelAutoCapture,mixpanelRecordSessionsPercent=1,posthogApiKey,posthogApiHost,debug=false})=>{debugMode=!!debug;try{mixpanel.initMixpanel(mixpanelToken,mixpanelAutoCapture,debugMode,mixpanelRecordSessionsPercent)}catch(e){if(debugMode){console.error("Failed to initialize Mixpanel",e)}}try{posthog.initPosthog(posthogApiKey,posthogApiHost)}catch(e){if(debugMode){console.error("Failed to initialize Posthog",e)}}try{datalayer.initDatalayer()}catch(e){if(debugMode){console.error("Failed to initialize Datalayer",e)}}};export const enableDebugMode=()=>{debugMode=true;try{mixpanel.enableDebugMode();posthog.enableDebugMode()}catch(e){console.error("Failed to enable debug mode",e)}};export const disableDebugMode=()=>{debugMode=false;try{mixpanel.disableDebugMode();posthog.disableDebugMode()}catch(e){console.error("Failed to disable debug mode",e)}};export const identify=({userId,accountId,organisationId,email,name})=>{if(!userId){if(debugMode){console.warn("User ID not provided, skipping identify")}return}try{mixpanel.identify({userId,accountId,organisationId,email,name})}catch(e){if(debugMode){console.error("Failed to identify user in Mixpanel",e)}}try{posthog.identify({userId,accountId,organisationId,email,name})}catch(e){if(debugMode){console.error("Failed to identify user in Posthog",e)}}};export const trackPageView=()=>{try{mixpanel.trackPageView()}catch(e){if(debugMode){console.error("Failed to track page view in Mixpanel",e)}}try{posthog.trackPageView()}catch(e){if(debugMode){console.error("Failed to track page view in Posthog",e)}}};export const track=(event,properties)=>{try{mixpanel.track(event,properties)}catch(e){if(debugMode){console.error("Failed to track event in Mixpanel",e)}}try{posthog.track(event,properties)}catch(e){if(debugMode){console.error("Failed to track event in Posthog",e)}}try{datalayer.track(event,properties)}catch(e){if(debugMode){console.error("Failed to track event in Datalayer",e)}}};export const startSessionRecording=()=>{try{mixpanel.startSessionRecording()}catch(e){if(debugMode){console.error("Failed to start session recording in Mixpanel",e)}}try{posthog.startSessionRecording()}catch(e){if(debugMode){console.error("Failed to start session recording in Posthog",e)}}};export const stopSessionRecording=()=>{try{mixpanel.stopSessionRecording()}catch(e){if(debugMode){console.error("Failed to stop session recording in Mixpanel",e)}}try{posthog.stopSessionRecording()}catch(e){if(debugMode){console.error("Failed to stop session recording in Posthog",e)}}};export const setupObserver=()=>{const getInsightAttributes=element=>{const MAX_ATTRIBUTES=10;let count=0;const attributes={};for(const attr of element.attributes){if(count>=MAX_ATTRIBUTES)break;if(attr.name.startsWith("data-insight-")){if(!/^data-insight-[a-zA-Z0-9-]+$/.test(attr.name))continue;if(typeof attr.value!=="string"||attr.value.length>100)continue;const key=attr.name.replace("data-insight-","").split("-").map((part,index)=>index===0?part:part.charAt(0).toUpperCase()+part.slice(1)).join("");attributes[key]=attr.value;count++}}return attributes};const findClosestElementWithInsights=element=>{let current=element;while(current&&current!==document.body){const insights=getInsightAttributes(current);if(Object.keys(insights).length>0){return insights}current=current.parentElement}return null};const handleClick=event=>{if(!(event.target instanceof HTMLElement))return;const insights=findClosestElementWithInsights(event.target);if(insights){const{event:eventName,...properties}=insights;track(eventName||"element_clicked",properties)}};document.body.addEventListener("click",handleClick);return()=>{document.body.removeEventListener("click",handleClick)}};
1
+ import*as mixpanel from"./mixpanel";import*as posthog from"./posthog";let debugMode=false;export const initInsights=({mixpanelToken,mixpanelAutoCapture,posthogApiKey,posthogApiHost,debug=false})=>{debugMode=!!debug;try{mixpanel.initMixpanel(mixpanelToken,mixpanelAutoCapture,debugMode)}catch(e){if(debugMode){console.error("Failed to initialize Mixpanel",e)}}try{posthog.initPosthog(posthogApiKey,posthogApiHost)}catch(e){if(debugMode){console.error("Failed to initialize Posthog",e)}}};export const enableDebugMode=()=>{debugMode=true;try{mixpanel.enableDebugMode();posthog.enableDebugMode()}catch(e){console.error("Failed to enable debug mode",e)}};export const disableDebugMode=()=>{debugMode=false;try{mixpanel.disableDebugMode();posthog.disableDebugMode()}catch(e){console.error("Failed to disable debug mode",e)}};export const identify=({userId,accountId,organisationId,email,name})=>{if(!userId){if(debugMode){console.warn("User ID not provided, skipping identify")}return}try{mixpanel.identify({userId,accountId,organisationId,email,name})}catch(e){if(debugMode){console.error("Failed to identify user in Mixpanel",e)}}try{posthog.identify({userId,accountId,organisationId,email,name})}catch(e){if(debugMode){console.error("Failed to identify user in Posthog",e)}}};export const trackPageView=()=>{try{mixpanel.trackPageView()}catch(e){if(debugMode){console.error("Failed to track page view in Mixpanel",e)}}try{posthog.trackPageView()}catch(e){if(debugMode){console.error("Failed to track page view in Posthog",e)}}};export const track=(event,properties)=>{try{mixpanel.track(event,properties)}catch(e){if(debugMode){console.error("Failed to track event in Mixpanel",e)}}try{posthog.track(event,properties)}catch(e){if(debugMode){console.error("Failed to track event in Posthog",e)}}};export const setupObserver=()=>{const getInsightAttributes=element=>{const MAX_ATTRIBUTES=10;let count=0;const attributes={};for(const attr of element.attributes){if(count>=MAX_ATTRIBUTES)break;if(attr.name.startsWith("data-insight-")){if(!/^data-insight-[a-zA-Z0-9-]+$/.test(attr.name))continue;if(typeof attr.value!=="string"||attr.value.length>100)continue;const key=attr.name.replace("data-insight-","").split("-").map((part,index)=>index===0?part:part.charAt(0).toUpperCase()+part.slice(1)).join("");attributes[key]=attr.value;count++}}return attributes};const findClosestElementWithInsights=element=>{let current=element;while(current&&current!==document.body){const insights=getInsightAttributes(current);if(Object.keys(insights).length>0){return insights}current=current.parentElement}return null};const handleClick=event=>{if(!(event.target instanceof HTMLElement))return;const insights=findClosestElementWithInsights(event.target);if(insights){const{event:eventName,...properties}=insights;track(eventName||"element_clicked",properties)}};document.body.addEventListener("click",handleClick);return()=>{document.body.removeEventListener("click",handleClick)}};
2
2
  //# sourceMappingURL=index.js.map