@fluid-app/portal-sdk 0.1.157 → 0.1.158

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 (112) hide show
  1. package/dist/{AppDownloadScreen-WwHX3yXD.mjs → AppDownloadScreen-1e6AaZ4X.mjs} +1 -1
  2. package/dist/{AppDownloadScreen-WwHX3yXD.mjs.map → AppDownloadScreen-1e6AaZ4X.mjs.map} +1 -1
  3. package/dist/{AppDownloadScreen-36KhhLiw.cjs → AppDownloadScreen-BSkt2tYd.cjs} +1 -1
  4. package/dist/{AppDownloadScreen-36KhhLiw.cjs.map → AppDownloadScreen-BSkt2tYd.cjs.map} +1 -1
  5. package/dist/{AppNavigationContext-r22AeKGk.cjs → AppNavigationContext-BiYNDj_X.cjs} +1 -1
  6. package/dist/{AppNavigationContext-r22AeKGk.cjs.map → AppNavigationContext-BiYNDj_X.cjs.map} +1 -1
  7. package/dist/{AppNavigationContext-DTdo1dEH.mjs → AppNavigationContext-D29xW9Ua.mjs} +1 -1
  8. package/dist/{AppNavigationContext-DTdo1dEH.mjs.map → AppNavigationContext-D29xW9Ua.mjs.map} +1 -1
  9. package/dist/{ContactsScreen-CmnKU--w.mjs → ContactsScreen-BOp7_5HV.mjs} +5 -5
  10. package/dist/{ContactsScreen-CmnKU--w.mjs.map → ContactsScreen-BOp7_5HV.mjs.map} +1 -1
  11. package/dist/{ContactsScreen-Ck5NCh9d.cjs → ContactsScreen-BUjE0Idb.cjs} +5 -5
  12. package/dist/{ContactsScreen-Ck5NCh9d.cjs.map → ContactsScreen-BUjE0Idb.cjs.map} +1 -1
  13. package/dist/{ContactsScreen-BKQk5wU5.cjs → ContactsScreen-BiQdoJnm.cjs} +6 -6
  14. package/dist/{CustomersScreen-CeIiZKrq.cjs → CustomersScreen-CSLbl2As.cjs} +1 -1
  15. package/dist/{CustomersScreen-CeIiZKrq.cjs.map → CustomersScreen-CSLbl2As.cjs.map} +1 -1
  16. package/dist/{CustomersScreen-CLJY12Zr.mjs → CustomersScreen-DbaqP6jd.mjs} +1 -1
  17. package/dist/{CustomersScreen-CLJY12Zr.mjs.map → CustomersScreen-DbaqP6jd.mjs.map} +1 -1
  18. package/dist/{MessagingScreen-s9HaMQGR.cjs → MessagingScreen-BGqIn-c2.cjs} +3 -3
  19. package/dist/{MessagingScreen-lAO4PVqi.cjs → MessagingScreen-CBPjP4du.cjs} +3 -3
  20. package/dist/{MessagingScreen-lAO4PVqi.cjs.map → MessagingScreen-CBPjP4du.cjs.map} +1 -1
  21. package/dist/{MessagingScreen-B1MbKdSO.mjs → MessagingScreen-CbmuvlH6.mjs} +2 -2
  22. package/dist/{MessagingScreen-B1MbKdSO.mjs.map → MessagingScreen-CbmuvlH6.mjs.map} +1 -1
  23. package/dist/{MySiteScreen-BEbj9K8U.mjs → MySiteScreen-BT1PBPsH.mjs} +3 -3
  24. package/dist/{MySiteScreen-BEbj9K8U.mjs.map → MySiteScreen-BT1PBPsH.mjs.map} +1 -1
  25. package/dist/{MySiteScreen-D8YvEYwH.cjs → MySiteScreen-Cl6nuU99.cjs} +3 -3
  26. package/dist/{MySiteScreen-D8YvEYwH.cjs.map → MySiteScreen-Cl6nuU99.cjs.map} +1 -1
  27. package/dist/{MySiteScreen-DIbwHNbV.cjs → MySiteScreen-DSDLDnCN.cjs} +2 -2
  28. package/dist/{OrdersScreen-DLjDPnqI.cjs → OrdersScreen-BpfUvIio.cjs} +3 -3
  29. package/dist/{OrdersScreen-DLjDPnqI.cjs.map → OrdersScreen-BpfUvIio.cjs.map} +1 -1
  30. package/dist/{OrdersScreen-CSbbQw2L.mjs → OrdersScreen-C-mM4q1d.mjs} +3 -3
  31. package/dist/{OrdersScreen-CSbbQw2L.mjs.map → OrdersScreen-C-mM4q1d.mjs.map} +1 -1
  32. package/dist/{OrdersScreen-Dxv6ZQlu.cjs → OrdersScreen-OFyr9Wz5.cjs} +3 -3
  33. package/dist/{ProductsScreen-CcRQhx0c.mjs → ProductsScreen-4WRrJcvw.mjs} +4 -4
  34. package/dist/{ProductsScreen-CcRQhx0c.mjs.map → ProductsScreen-4WRrJcvw.mjs.map} +1 -1
  35. package/dist/{ProductsScreen-DTBg7Bm3.cjs → ProductsScreen-BCs3YKVk.cjs} +4 -4
  36. package/dist/{ProductsScreen-DTBg7Bm3.cjs.map → ProductsScreen-BCs3YKVk.cjs.map} +1 -1
  37. package/dist/{ProductsScreen-NmOdT82w.cjs → ProductsScreen-BR9TN4So.cjs} +7 -7
  38. package/dist/{ProductsScreen-MADYD0MH.mjs → ProductsScreen-BwOjfcNL.mjs} +8 -6
  39. package/dist/{ProfileScreen-C01vRpm3.cjs → ProfileScreen-B0KNWXpV.cjs} +1 -1
  40. package/dist/{ProfileScreen-BcCYQt5U.mjs → ProfileScreen-BgyrIQdL.mjs} +4 -9
  41. package/dist/{ProfileScreen-BcCYQt5U.mjs.map → ProfileScreen-BgyrIQdL.mjs.map} +1 -1
  42. package/dist/{ProfileScreen-fmUckcMP.cjs → ProfileScreen-DLLLRNB2.cjs} +14 -19
  43. package/dist/ProfileScreen-DLLLRNB2.cjs.map +1 -0
  44. package/dist/{SearchSort-CZvjMXhS.cjs → SearchSort--3bVTMB4.cjs} +1 -1
  45. package/dist/{SearchSort-CZvjMXhS.cjs.map → SearchSort--3bVTMB4.cjs.map} +1 -1
  46. package/dist/{SearchSort-BSUeC9WT.mjs → SearchSort-Bsnis-kb.mjs} +1 -1
  47. package/dist/{SearchSort-BSUeC9WT.mjs.map → SearchSort-Bsnis-kb.mjs.map} +1 -1
  48. package/dist/{ShareablesScreen-BkVWntLq.mjs → ShareablesScreen--j3RCHXe.mjs} +8 -6
  49. package/dist/{ShareablesScreen-WW2uw8wV.mjs → ShareablesScreen-B8cmh8JC.mjs} +4 -4
  50. package/dist/{ShareablesScreen-WW2uw8wV.mjs.map → ShareablesScreen-B8cmh8JC.mjs.map} +1 -1
  51. package/dist/{ShareablesScreen-BMxugV_y.cjs → ShareablesScreen-DbPJOtCF.cjs} +7 -7
  52. package/dist/{ShareablesScreen-DmtFkpDO.cjs → ShareablesScreen-ySSwCVSI.cjs} +4 -4
  53. package/dist/{ShareablesScreen-DmtFkpDO.cjs.map → ShareablesScreen-ySSwCVSI.cjs.map} +1 -1
  54. package/dist/{ShopScreen-DQDOi7Xn.mjs → ShopScreen-BFFGYwdV.mjs} +4 -4
  55. package/dist/{ShopScreen-DQDOi7Xn.mjs.map → ShopScreen-BFFGYwdV.mjs.map} +1 -1
  56. package/dist/{ShopScreen-D2DmHW7P.cjs → ShopScreen-BkvyW0pE.cjs} +2 -2
  57. package/dist/{ShopScreen-BeBh8oUd.cjs → ShopScreen-DhMo8bvP.cjs} +4 -4
  58. package/dist/{ShopScreen-BeBh8oUd.cjs.map → ShopScreen-DhMo8bvP.cjs.map} +1 -1
  59. package/dist/{SubscriptionsScreen-Bh6hyLOm.mjs → SubscriptionsScreen-CiNR7JUC.mjs} +5 -5
  60. package/dist/{SubscriptionsScreen-Bh6hyLOm.mjs.map → SubscriptionsScreen-CiNR7JUC.mjs.map} +1 -1
  61. package/dist/{SubscriptionsScreen-BBKc60-g.cjs → SubscriptionsScreen-DMh-GE6n.cjs} +4 -4
  62. package/dist/{SubscriptionsScreen-CwglxGt2.cjs → SubscriptionsScreen-RScBCcY0.cjs} +5 -5
  63. package/dist/{SubscriptionsScreen-CwglxGt2.cjs.map → SubscriptionsScreen-RScBCcY0.cjs.map} +1 -1
  64. package/dist/{UpgradeScreen-C_CmZez0.cjs → UpgradeScreen-Bk35epg9.cjs} +1 -1
  65. package/dist/{UpgradeScreen-Cizm99Om.cjs → UpgradeScreen-BlztCeo5.cjs} +1 -1
  66. package/dist/{UpgradeScreen-Cizm99Om.cjs.map → UpgradeScreen-BlztCeo5.cjs.map} +1 -1
  67. package/dist/{UpgradeScreen-BwI6oi93.mjs → UpgradeScreen-D9WpmFa1.mjs} +1 -1
  68. package/dist/{UpgradeScreen-BwI6oi93.mjs.map → UpgradeScreen-D9WpmFa1.mjs.map} +1 -1
  69. package/dist/{dist-Dh18LTcb.cjs → dist-BSKQ_GoC.cjs} +2 -2
  70. package/dist/{dist-Dh18LTcb.cjs.map → dist-BSKQ_GoC.cjs.map} +1 -1
  71. package/dist/{dist-Mf7Sx86H.cjs → dist-Bg8UyHyM.cjs} +1 -1
  72. package/dist/{dist-Mf7Sx86H.cjs.map → dist-Bg8UyHyM.cjs.map} +1 -1
  73. package/dist/{dist-Cl8j9OpJ.mjs → dist-C9vpl_rR.mjs} +2 -2
  74. package/dist/{dist-Cl8j9OpJ.mjs.map → dist-C9vpl_rR.mjs.map} +1 -1
  75. package/dist/{dist-C5_jRw34.mjs → dist-CkIGP8my.mjs} +1 -1
  76. package/dist/{dist-C5_jRw34.mjs.map → dist-CkIGP8my.mjs.map} +1 -1
  77. package/dist/{dist-DBTvrTYG.cjs → dist-thaj08s5.cjs} +1 -1
  78. package/dist/{dist-DBTvrTYG.cjs.map → dist-thaj08s5.cjs.map} +1 -1
  79. package/dist/{es-D2KjfxgY.cjs → es-xQF-WIMq.cjs} +1 -1
  80. package/dist/{es-D2KjfxgY.cjs.map → es-xQF-WIMq.cjs.map} +1 -1
  81. package/dist/index.cjs +46 -46
  82. package/dist/index.mjs +45 -45
  83. package/dist/{order-status-badge-d0x55A3d.mjs → order-status-badge-DEuMgKkP.mjs} +2 -2
  84. package/dist/{order-status-badge-d0x55A3d.mjs.map → order-status-badge-DEuMgKkP.mjs.map} +1 -1
  85. package/dist/{order-status-badge-CwyoXs_m.cjs → order-status-badge-DeAGe2Ur.cjs} +2 -2
  86. package/dist/{order-status-badge-CwyoXs_m.cjs.map → order-status-badge-DeAGe2Ur.cjs.map} +1 -1
  87. package/dist/{sortable.esm-CzzU6kIR.mjs → sortable.esm-Cz-CP2N8.mjs} +1 -1
  88. package/dist/{sortable.esm-CzzU6kIR.mjs.map → sortable.esm-Cz-CP2N8.mjs.map} +1 -1
  89. package/dist/use-account-BJhzTl2j.mjs +41 -0
  90. package/dist/use-account-BJhzTl2j.mjs.map +1 -0
  91. package/dist/use-account-CrgtI83z.cjs +59 -0
  92. package/dist/use-account-CrgtI83z.cjs.map +1 -0
  93. package/dist/{use-portal-products-client-mpdZuZyu.cjs → use-portal-products-client-BmlUixy4.cjs} +1 -1
  94. package/dist/{use-portal-products-client-mpdZuZyu.cjs.map → use-portal-products-client-BmlUixy4.cjs.map} +1 -1
  95. package/dist/{use-portal-products-client-CChGsvZI.mjs → use-portal-products-client-DQK9nFxT.mjs} +1 -1
  96. package/dist/{use-portal-products-client-CChGsvZI.mjs.map → use-portal-products-client-DQK9nFxT.mjs.map} +1 -1
  97. package/dist/{use-portal-shareables-api-CZ4ELYei.cjs → use-portal-shareables-api-D5D6uIJy.cjs} +7 -7
  98. package/dist/{use-portal-shareables-api-CZ4ELYei.cjs.map → use-portal-shareables-api-D5D6uIJy.cjs.map} +1 -1
  99. package/dist/{use-portal-shareables-api-DXuaX66a.mjs → use-portal-shareables-api-KVPj0Jfr.mjs} +6 -6
  100. package/dist/{use-portal-shareables-api-DXuaX66a.mjs.map → use-portal-shareables-api-KVPj0Jfr.mjs.map} +1 -1
  101. package/package.json +11 -11
  102. package/dist/ProfileScreen-fmUckcMP.cjs.map +0 -1
  103. package/dist/query-keys-DQbGdmFe.mjs +0 -23
  104. package/dist/query-keys-DQbGdmFe.mjs.map +0 -1
  105. package/dist/query-keys-nFLtgmnS.cjs +0 -34
  106. package/dist/query-keys-nFLtgmnS.cjs.map +0 -1
  107. package/dist/use-account-C8jzbwMS.mjs +0 -22
  108. package/dist/use-account-C8jzbwMS.mjs.map +0 -1
  109. package/dist/use-account-D_23WtBc.cjs +0 -28
  110. package/dist/use-account-D_23WtBc.cjs.map +0 -1
  111. /package/dist/{src-CxI7zckp.cjs → src-B47XcHTS.cjs} +0 -0
  112. /package/dist/{src-BOIW-KES.mjs → src-DAC9DwXZ.mjs} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"UpgradeScreen-Cizm99Om.cjs","names":["Sparkles","Phone","MessagesSquare","CalendarMinus","MessageSquareHeart","Card","CardHeader","CardTitle","CardDescription","Button"],"sources":["../../pro-upgrade-ui/src/lib/cn.ts","../../pro-upgrade-ui/src/components/PortalProUpgradeScreen.tsx","../src/screens/UpgradeScreen.tsx"],"sourcesContent":["import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","import {\n Sparkles,\n Phone,\n MessagesSquare,\n CalendarMinus,\n MessageSquareHeart,\n type LucideIcon,\n} from \"lucide-react\";\nimport {\n Button,\n Card,\n CardDescription,\n CardHeader,\n CardTitle,\n} from \"@fluid-app/ui-primitives\";\nimport { cn } from \"../lib/cn\";\n\nexport interface PortalProUpgradeScreenProps {\n onJoinWaitlist: () => void;\n waitlistLoading?: boolean;\n className?: string;\n}\n\ninterface Feature {\n icon: LucideIcon;\n title: string;\n description: string;\n}\n\nconst FEATURES: Feature[] = [\n {\n icon: Sparkles,\n title: \"Generative AI\",\n description: \"Get quick drafts and creative messaging help.\",\n },\n {\n icon: Phone,\n title: \"Business phone number\",\n description: \"Look professional with a dedicated client line.\",\n },\n {\n icon: MessagesSquare,\n title: \"Mass Messaging\",\n description: \"Save time by messaging multiple clients at once.\",\n },\n {\n icon: CalendarMinus,\n title: \"Scheduled messages\",\n description: \"Plan ahead and schedule messages easily.\",\n },\n {\n icon: MessageSquareHeart,\n title: \"Unified messaging\",\n description: \"Combine email, SMS, and internal messages.\",\n },\n];\n\nfunction FeatureCard({ icon: Icon, title, description }: Feature) {\n return (\n <Card className=\"bg-background text-foreground h-auto gap-0 border-none py-4\">\n <CardHeader className=\"gap-3 px-4\">\n <Icon className=\"size-6\" strokeWidth={1.5} />\n <CardTitle className=\"text-sm font-bold\">{title}</CardTitle>\n <CardDescription className=\"text-xs\">{description}</CardDescription>\n </CardHeader>\n </Card>\n );\n}\n\nexport function PortalProUpgradeScreen({\n onJoinWaitlist,\n waitlistLoading = false,\n className,\n}: PortalProUpgradeScreenProps) {\n return (\n <div\n className={cn(\n \"relative flex h-full w-full flex-col overflow-hidden md:flex-row\",\n className,\n )}\n >\n {/* Pastel gradient background */}\n <div className=\"pointer-events-none absolute inset-0 rounded-xl bg-linear-[33deg,rgba(8,148,255,0.2)_4.5%,rgba(201,89,221,0.2)_24.5%,rgba(255,46,84,0.2)_54.6%,rgba(255,144,4,0.2)_69.2%,rgba(255,255,255,0.2)_76.4%] blur-[125px]\" />\n\n {/* Hero collage - absolute, behind everything, fades right and bottom */}\n <img\n src=\"https://ik.imagekit.io/fluid/980191006/images/HW87RR/hero-collage_O6DCdkFib.png\"\n alt=\"People using the app with push notifications\"\n className=\"pointer-events-none absolute top-0 left-0 h-full w-full mask-b-from-20% mask-b-to-30% object-contain object-left-top md:w-4/5 md:mask-r-from-50% md:mask-r-to-70% md:mask-b-from-60% md:mask-b-to-80%\"\n />\n\n {/* Left Section - Logo & CTA */}\n <div className=\"relative flex w-full shrink-0 flex-col items-center justify-end px-8 pt-40 md:w-1/2 md:pt-0 md:pb-10\">\n <div className=\"flex flex-col items-center gap-4\">\n <img\n src=\"https://ik.imagekit.io/fluid/980191006/images/ZYT78J/co-founder-badge_NcorZNlUY.png\"\n alt=\"Coming Soon - Co-Founder\"\n className=\"h-auto w-120 object-contain\"\n />\n {/* TODO: This is currently hidden until we actually have a way to waitlist someone */}\n <Button\n className=\"hidden w-full md:w-auto\"\n size=\"xl\"\n onClick={onJoinWaitlist}\n disabled={waitlistLoading}\n >\n {waitlistLoading ? \"Joining...\" : \"Join Waitlist\"}\n </Button>\n </div>\n </div>\n\n {/* Right Section - Content */}\n <div className=\"relative flex min-w-0 flex-1 flex-col gap-6 overflow-y-auto px-8 pt-8 md:pt-16 md:pr-5 md:pb-5 md:pl-10\">\n <div className=\"flex shrink-0 flex-col gap-2.5\">\n <h1 className=\"text-3xl leading-tight font-semibold tracking-tight text-black md:text-5xl\">\n It's like having an\n <br />\n assistant in your pocket\n </h1>\n <p className=\"text-sm leading-5 font-medium text-black\">\n Upgrade your business\n </p>\n </div>\n <div className=\"flex flex-col gap-4 pb-4\">\n {FEATURES.map((feature) => (\n <FeatureCard key={feature.title} {...feature} />\n ))}\n </div>\n </div>\n </div>\n );\n}\n","import type { WidgetPropertySchema } from \"../registries/property-schema-types\";\nimport { PortalProUpgradeScreen } from \"@fluid-app/portal-pro-upgrade-ui\";\n\nexport const upgradeScreenPropertySchema = {\n widgetType: \"UpgradeScreen\",\n displayName: \"Upgrade Screen\",\n fields: [],\n} as const satisfies WidgetPropertySchema;\n\nexport function UpgradeScreen(): React.JSX.Element {\n return (\n <PortalProUpgradeScreen\n onJoinWaitlist={() => {\n // TODO: Wire up to waitlist API\n }}\n />\n );\n}\n"],"mappings":";;;;;;;AAGA,SAAgB,GAAG,GAAG,QAAsB;AAC1C,SAAA,GAAA,eAAA,UAAA,GAAA,KAAA,MAAoB,OAAO,CAAC;;;;ACyB9B,MAAM,WAAsB;CAC1B;EACE,MAAMA,aAAAA;EACN,OAAO;EACP,aAAa;EACd;CACD;EACE,MAAMC,aAAAA;EACN,OAAO;EACP,aAAa;EACd;CACD;EACE,MAAMC,aAAAA;EACN,OAAO;EACP,aAAa;EACd;CACD;EACE,MAAMC,aAAAA;EACN,OAAO;EACP,aAAa;EACd;CACD;EACE,MAAMC,aAAAA;EACN,OAAO;EACP,aAAa;EACd;CACF;AAED,SAAS,YAAY,EAAE,MAAM,MAAM,OAAO,eAAwB;AAChE,QACE,iBAAA,GAAA,kBAAA,KAACC,YAAAA,MAAD;EAAM,WAAU;YACd,iBAAA,GAAA,kBAAA,MAACC,YAAAA,YAAD;GAAY,WAAU;aAAtB;IACE,iBAAA,GAAA,kBAAA,KAAC,MAAD;KAAM,WAAU;KAAS,aAAa;KAAO,CAAA;IAC7C,iBAAA,GAAA,kBAAA,KAACC,YAAAA,WAAD;KAAW,WAAU;eAAqB;KAAkB,CAAA;IAC5D,iBAAA,GAAA,kBAAA,KAACC,YAAAA,iBAAD;KAAiB,WAAU;eAAW;KAA8B,CAAA;IACzD;;EACR,CAAA;;AAIX,SAAgB,uBAAuB,EACrC,gBACA,kBAAkB,OAClB,aAC8B;AAC9B,QACE,iBAAA,GAAA,kBAAA,MAAC,OAAD;EACE,WAAW,GACT,oEACA,UACD;YAJH;GAOE,iBAAA,GAAA,kBAAA,KAAC,OAAD,EAAK,WAAU,sNAAuN,CAAA;GAGtO,iBAAA,GAAA,kBAAA,KAAC,OAAD;IACE,KAAI;IACJ,KAAI;IACJ,WAAU;IACV,CAAA;GAGF,iBAAA,GAAA,kBAAA,KAAC,OAAD;IAAK,WAAU;cACb,iBAAA,GAAA,kBAAA,MAAC,OAAD;KAAK,WAAU;eAAf,CACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;MACE,KAAI;MACJ,KAAI;MACJ,WAAU;MACV,CAAA,EAEF,iBAAA,GAAA,kBAAA,KAACC,YAAAA,QAAD;MACE,WAAU;MACV,MAAK;MACL,SAAS;MACT,UAAU;gBAET,kBAAkB,eAAe;MAC3B,CAAA,CACL;;IACF,CAAA;GAGN,iBAAA,GAAA,kBAAA,MAAC,OAAD;IAAK,WAAU;cAAf,CACE,iBAAA,GAAA,kBAAA,MAAC,OAAD;KAAK,WAAU;eAAf,CACE,iBAAA,GAAA,kBAAA,MAAC,MAAD;MAAI,WAAU;gBAAd;OAA2F;OAEzF,iBAAA,GAAA,kBAAA,KAAC,MAAD,EAAM,CAAA;;OAEH;SACL,iBAAA,GAAA,kBAAA,KAAC,KAAD;MAAG,WAAU;gBAA2C;MAEpD,CAAA,CACA;QACN,iBAAA,GAAA,kBAAA,KAAC,OAAD;KAAK,WAAU;eACZ,SAAS,KAAK,YACb,iBAAA,GAAA,kBAAA,KAAC,aAAD,EAAiC,GAAI,SAAW,EAA9B,QAAQ,MAAsB,CAChD;KACE,CAAA,CACF;;GACF;;;;;AC9HV,MAAa,8BAA8B;CACzC,YAAY;CACZ,aAAa;CACb,QAAQ,EAAE;CACX;AAED,SAAgB,gBAAmC;AACjD,QACE,iBAAA,GAAA,kBAAA,KAAC,wBAAD,EACE,sBAAsB,IAGtB,CAAA"}
1
+ {"version":3,"file":"UpgradeScreen-BlztCeo5.cjs","names":["Sparkles","Phone","MessagesSquare","CalendarMinus","MessageSquareHeart","Card","CardHeader","CardTitle","CardDescription","Button"],"sources":["../../pro-upgrade-ui/src/lib/cn.ts","../../pro-upgrade-ui/src/components/PortalProUpgradeScreen.tsx","../src/screens/UpgradeScreen.tsx"],"sourcesContent":["import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","import {\n Sparkles,\n Phone,\n MessagesSquare,\n CalendarMinus,\n MessageSquareHeart,\n type LucideIcon,\n} from \"lucide-react\";\nimport {\n Button,\n Card,\n CardDescription,\n CardHeader,\n CardTitle,\n} from \"@fluid-app/ui-primitives\";\nimport { cn } from \"../lib/cn\";\n\nexport interface PortalProUpgradeScreenProps {\n onJoinWaitlist: () => void;\n waitlistLoading?: boolean;\n className?: string;\n}\n\ninterface Feature {\n icon: LucideIcon;\n title: string;\n description: string;\n}\n\nconst FEATURES: Feature[] = [\n {\n icon: Sparkles,\n title: \"Generative AI\",\n description: \"Get quick drafts and creative messaging help.\",\n },\n {\n icon: Phone,\n title: \"Business phone number\",\n description: \"Look professional with a dedicated client line.\",\n },\n {\n icon: MessagesSquare,\n title: \"Mass Messaging\",\n description: \"Save time by messaging multiple clients at once.\",\n },\n {\n icon: CalendarMinus,\n title: \"Scheduled messages\",\n description: \"Plan ahead and schedule messages easily.\",\n },\n {\n icon: MessageSquareHeart,\n title: \"Unified messaging\",\n description: \"Combine email, SMS, and internal messages.\",\n },\n];\n\nfunction FeatureCard({ icon: Icon, title, description }: Feature) {\n return (\n <Card className=\"bg-background text-foreground h-auto gap-0 border-none py-4\">\n <CardHeader className=\"gap-3 px-4\">\n <Icon className=\"size-6\" strokeWidth={1.5} />\n <CardTitle className=\"text-sm font-bold\">{title}</CardTitle>\n <CardDescription className=\"text-xs\">{description}</CardDescription>\n </CardHeader>\n </Card>\n );\n}\n\nexport function PortalProUpgradeScreen({\n onJoinWaitlist,\n waitlistLoading = false,\n className,\n}: PortalProUpgradeScreenProps) {\n return (\n <div\n className={cn(\n \"relative flex h-full w-full flex-col overflow-hidden md:flex-row\",\n className,\n )}\n >\n {/* Pastel gradient background */}\n <div className=\"pointer-events-none absolute inset-0 rounded-xl bg-linear-[33deg,rgba(8,148,255,0.2)_4.5%,rgba(201,89,221,0.2)_24.5%,rgba(255,46,84,0.2)_54.6%,rgba(255,144,4,0.2)_69.2%,rgba(255,255,255,0.2)_76.4%] blur-[125px]\" />\n\n {/* Hero collage - absolute, behind everything, fades right and bottom */}\n <img\n src=\"https://ik.imagekit.io/fluid/980191006/images/HW87RR/hero-collage_O6DCdkFib.png\"\n alt=\"People using the app with push notifications\"\n className=\"pointer-events-none absolute top-0 left-0 h-full w-full mask-b-from-20% mask-b-to-30% object-contain object-left-top md:w-4/5 md:mask-r-from-50% md:mask-r-to-70% md:mask-b-from-60% md:mask-b-to-80%\"\n />\n\n {/* Left Section - Logo & CTA */}\n <div className=\"relative flex w-full shrink-0 flex-col items-center justify-end px-8 pt-40 md:w-1/2 md:pt-0 md:pb-10\">\n <div className=\"flex flex-col items-center gap-4\">\n <img\n src=\"https://ik.imagekit.io/fluid/980191006/images/ZYT78J/co-founder-badge_NcorZNlUY.png\"\n alt=\"Coming Soon - Co-Founder\"\n className=\"h-auto w-120 object-contain\"\n />\n {/* TODO: This is currently hidden until we actually have a way to waitlist someone */}\n <Button\n className=\"hidden w-full md:w-auto\"\n size=\"xl\"\n onClick={onJoinWaitlist}\n disabled={waitlistLoading}\n >\n {waitlistLoading ? \"Joining...\" : \"Join Waitlist\"}\n </Button>\n </div>\n </div>\n\n {/* Right Section - Content */}\n <div className=\"relative flex min-w-0 flex-1 flex-col gap-6 overflow-y-auto px-8 pt-8 md:pt-16 md:pr-5 md:pb-5 md:pl-10\">\n <div className=\"flex shrink-0 flex-col gap-2.5\">\n <h1 className=\"text-3xl leading-tight font-semibold tracking-tight text-black md:text-5xl\">\n It's like having an\n <br />\n assistant in your pocket\n </h1>\n <p className=\"text-sm leading-5 font-medium text-black\">\n Upgrade your business\n </p>\n </div>\n <div className=\"flex flex-col gap-4 pb-4\">\n {FEATURES.map((feature) => (\n <FeatureCard key={feature.title} {...feature} />\n ))}\n </div>\n </div>\n </div>\n );\n}\n","import type { WidgetPropertySchema } from \"../registries/property-schema-types\";\nimport { PortalProUpgradeScreen } from \"@fluid-app/portal-pro-upgrade-ui\";\n\nexport const upgradeScreenPropertySchema = {\n widgetType: \"UpgradeScreen\",\n displayName: \"Upgrade Screen\",\n fields: [],\n} as const satisfies WidgetPropertySchema;\n\nexport function UpgradeScreen(): React.JSX.Element {\n return (\n <PortalProUpgradeScreen\n onJoinWaitlist={() => {\n // TODO: Wire up to waitlist API\n }}\n />\n );\n}\n"],"mappings":";;;;;;;AAGA,SAAgB,GAAG,GAAG,QAAsB;AAC1C,SAAA,GAAA,eAAA,UAAA,GAAA,KAAA,MAAoB,OAAO,CAAC;;;;ACyB9B,MAAM,WAAsB;CAC1B;EACE,MAAMA,aAAAA;EACN,OAAO;EACP,aAAa;EACd;CACD;EACE,MAAMC,aAAAA;EACN,OAAO;EACP,aAAa;EACd;CACD;EACE,MAAMC,aAAAA;EACN,OAAO;EACP,aAAa;EACd;CACD;EACE,MAAMC,aAAAA;EACN,OAAO;EACP,aAAa;EACd;CACD;EACE,MAAMC,aAAAA;EACN,OAAO;EACP,aAAa;EACd;CACF;AAED,SAAS,YAAY,EAAE,MAAM,MAAM,OAAO,eAAwB;AAChE,QACE,iBAAA,GAAA,kBAAA,KAACC,YAAAA,MAAD;EAAM,WAAU;YACd,iBAAA,GAAA,kBAAA,MAACC,YAAAA,YAAD;GAAY,WAAU;aAAtB;IACE,iBAAA,GAAA,kBAAA,KAAC,MAAD;KAAM,WAAU;KAAS,aAAa;KAAO,CAAA;IAC7C,iBAAA,GAAA,kBAAA,KAACC,YAAAA,WAAD;KAAW,WAAU;eAAqB;KAAkB,CAAA;IAC5D,iBAAA,GAAA,kBAAA,KAACC,YAAAA,iBAAD;KAAiB,WAAU;eAAW;KAA8B,CAAA;IACzD;;EACR,CAAA;;AAIX,SAAgB,uBAAuB,EACrC,gBACA,kBAAkB,OAClB,aAC8B;AAC9B,QACE,iBAAA,GAAA,kBAAA,MAAC,OAAD;EACE,WAAW,GACT,oEACA,UACD;YAJH;GAOE,iBAAA,GAAA,kBAAA,KAAC,OAAD,EAAK,WAAU,sNAAuN,CAAA;GAGtO,iBAAA,GAAA,kBAAA,KAAC,OAAD;IACE,KAAI;IACJ,KAAI;IACJ,WAAU;IACV,CAAA;GAGF,iBAAA,GAAA,kBAAA,KAAC,OAAD;IAAK,WAAU;cACb,iBAAA,GAAA,kBAAA,MAAC,OAAD;KAAK,WAAU;eAAf,CACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;MACE,KAAI;MACJ,KAAI;MACJ,WAAU;MACV,CAAA,EAEF,iBAAA,GAAA,kBAAA,KAACC,YAAAA,QAAD;MACE,WAAU;MACV,MAAK;MACL,SAAS;MACT,UAAU;gBAET,kBAAkB,eAAe;MAC3B,CAAA,CACL;;IACF,CAAA;GAGN,iBAAA,GAAA,kBAAA,MAAC,OAAD;IAAK,WAAU;cAAf,CACE,iBAAA,GAAA,kBAAA,MAAC,OAAD;KAAK,WAAU;eAAf,CACE,iBAAA,GAAA,kBAAA,MAAC,MAAD;MAAI,WAAU;gBAAd;OAA2F;OAEzF,iBAAA,GAAA,kBAAA,KAAC,MAAD,EAAM,CAAA;;OAEH;SACL,iBAAA,GAAA,kBAAA,KAAC,KAAD;MAAG,WAAU;gBAA2C;MAEpD,CAAA,CACA;QACN,iBAAA,GAAA,kBAAA,KAAC,OAAD;KAAK,WAAU;eACZ,SAAS,KAAK,YACb,iBAAA,GAAA,kBAAA,KAAC,aAAD,EAAiC,GAAI,SAAW,EAA9B,QAAQ,MAAsB,CAChD;KACE,CAAA,CACF;;GACF;;;;;AC9HV,MAAa,8BAA8B;CACzC,YAAY;CACZ,aAAa;CACb,QAAQ,EAAE;CACX;AAED,SAAgB,gBAAmC;AACjD,QACE,iBAAA,GAAA,kBAAA,KAAC,wBAAD,EACE,sBAAsB,IAGtB,CAAA"}
@@ -126,4 +126,4 @@ function UpgradeScreen() {
126
126
  //#endregion
127
127
  export { UpgradeScreen_exports as t };
128
128
 
129
- //# sourceMappingURL=UpgradeScreen-BwI6oi93.mjs.map
129
+ //# sourceMappingURL=UpgradeScreen-D9WpmFa1.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"UpgradeScreen-BwI6oi93.mjs","names":[],"sources":["../../pro-upgrade-ui/src/lib/cn.ts","../../pro-upgrade-ui/src/components/PortalProUpgradeScreen.tsx","../src/screens/UpgradeScreen.tsx"],"sourcesContent":["import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","import {\n Sparkles,\n Phone,\n MessagesSquare,\n CalendarMinus,\n MessageSquareHeart,\n type LucideIcon,\n} from \"lucide-react\";\nimport {\n Button,\n Card,\n CardDescription,\n CardHeader,\n CardTitle,\n} from \"@fluid-app/ui-primitives\";\nimport { cn } from \"../lib/cn\";\n\nexport interface PortalProUpgradeScreenProps {\n onJoinWaitlist: () => void;\n waitlistLoading?: boolean;\n className?: string;\n}\n\ninterface Feature {\n icon: LucideIcon;\n title: string;\n description: string;\n}\n\nconst FEATURES: Feature[] = [\n {\n icon: Sparkles,\n title: \"Generative AI\",\n description: \"Get quick drafts and creative messaging help.\",\n },\n {\n icon: Phone,\n title: \"Business phone number\",\n description: \"Look professional with a dedicated client line.\",\n },\n {\n icon: MessagesSquare,\n title: \"Mass Messaging\",\n description: \"Save time by messaging multiple clients at once.\",\n },\n {\n icon: CalendarMinus,\n title: \"Scheduled messages\",\n description: \"Plan ahead and schedule messages easily.\",\n },\n {\n icon: MessageSquareHeart,\n title: \"Unified messaging\",\n description: \"Combine email, SMS, and internal messages.\",\n },\n];\n\nfunction FeatureCard({ icon: Icon, title, description }: Feature) {\n return (\n <Card className=\"bg-background text-foreground h-auto gap-0 border-none py-4\">\n <CardHeader className=\"gap-3 px-4\">\n <Icon className=\"size-6\" strokeWidth={1.5} />\n <CardTitle className=\"text-sm font-bold\">{title}</CardTitle>\n <CardDescription className=\"text-xs\">{description}</CardDescription>\n </CardHeader>\n </Card>\n );\n}\n\nexport function PortalProUpgradeScreen({\n onJoinWaitlist,\n waitlistLoading = false,\n className,\n}: PortalProUpgradeScreenProps) {\n return (\n <div\n className={cn(\n \"relative flex h-full w-full flex-col overflow-hidden md:flex-row\",\n className,\n )}\n >\n {/* Pastel gradient background */}\n <div className=\"pointer-events-none absolute inset-0 rounded-xl bg-linear-[33deg,rgba(8,148,255,0.2)_4.5%,rgba(201,89,221,0.2)_24.5%,rgba(255,46,84,0.2)_54.6%,rgba(255,144,4,0.2)_69.2%,rgba(255,255,255,0.2)_76.4%] blur-[125px]\" />\n\n {/* Hero collage - absolute, behind everything, fades right and bottom */}\n <img\n src=\"https://ik.imagekit.io/fluid/980191006/images/HW87RR/hero-collage_O6DCdkFib.png\"\n alt=\"People using the app with push notifications\"\n className=\"pointer-events-none absolute top-0 left-0 h-full w-full mask-b-from-20% mask-b-to-30% object-contain object-left-top md:w-4/5 md:mask-r-from-50% md:mask-r-to-70% md:mask-b-from-60% md:mask-b-to-80%\"\n />\n\n {/* Left Section - Logo & CTA */}\n <div className=\"relative flex w-full shrink-0 flex-col items-center justify-end px-8 pt-40 md:w-1/2 md:pt-0 md:pb-10\">\n <div className=\"flex flex-col items-center gap-4\">\n <img\n src=\"https://ik.imagekit.io/fluid/980191006/images/ZYT78J/co-founder-badge_NcorZNlUY.png\"\n alt=\"Coming Soon - Co-Founder\"\n className=\"h-auto w-120 object-contain\"\n />\n {/* TODO: This is currently hidden until we actually have a way to waitlist someone */}\n <Button\n className=\"hidden w-full md:w-auto\"\n size=\"xl\"\n onClick={onJoinWaitlist}\n disabled={waitlistLoading}\n >\n {waitlistLoading ? \"Joining...\" : \"Join Waitlist\"}\n </Button>\n </div>\n </div>\n\n {/* Right Section - Content */}\n <div className=\"relative flex min-w-0 flex-1 flex-col gap-6 overflow-y-auto px-8 pt-8 md:pt-16 md:pr-5 md:pb-5 md:pl-10\">\n <div className=\"flex shrink-0 flex-col gap-2.5\">\n <h1 className=\"text-3xl leading-tight font-semibold tracking-tight text-black md:text-5xl\">\n It's like having an\n <br />\n assistant in your pocket\n </h1>\n <p className=\"text-sm leading-5 font-medium text-black\">\n Upgrade your business\n </p>\n </div>\n <div className=\"flex flex-col gap-4 pb-4\">\n {FEATURES.map((feature) => (\n <FeatureCard key={feature.title} {...feature} />\n ))}\n </div>\n </div>\n </div>\n );\n}\n","import type { WidgetPropertySchema } from \"../registries/property-schema-types\";\nimport { PortalProUpgradeScreen } from \"@fluid-app/portal-pro-upgrade-ui\";\n\nexport const upgradeScreenPropertySchema = {\n widgetType: \"UpgradeScreen\",\n displayName: \"Upgrade Screen\",\n fields: [],\n} as const satisfies WidgetPropertySchema;\n\nexport function UpgradeScreen(): React.JSX.Element {\n return (\n <PortalProUpgradeScreen\n onJoinWaitlist={() => {\n // TODO: Wire up to waitlist API\n }}\n />\n );\n}\n"],"mappings":";;;;;;;AAGA,SAAgB,GAAG,GAAG,QAAsB;AAC1C,QAAO,QAAQ,KAAK,OAAO,CAAC;;;;ACyB9B,MAAM,WAAsB;CAC1B;EACE,MAAM;EACN,OAAO;EACP,aAAa;EACd;CACD;EACE,MAAM;EACN,OAAO;EACP,aAAa;EACd;CACD;EACE,MAAM;EACN,OAAO;EACP,aAAa;EACd;CACD;EACE,MAAM;EACN,OAAO;EACP,aAAa;EACd;CACD;EACE,MAAM;EACN,OAAO;EACP,aAAa;EACd;CACF;AAED,SAAS,YAAY,EAAE,MAAM,MAAM,OAAO,eAAwB;AAChE,QACE,oBAAC,MAAD;EAAM,WAAU;YACd,qBAAC,YAAD;GAAY,WAAU;aAAtB;IACE,oBAAC,MAAD;KAAM,WAAU;KAAS,aAAa;KAAO,CAAA;IAC7C,oBAAC,WAAD;KAAW,WAAU;eAAqB;KAAkB,CAAA;IAC5D,oBAAC,iBAAD;KAAiB,WAAU;eAAW;KAA8B,CAAA;IACzD;;EACR,CAAA;;AAIX,SAAgB,uBAAuB,EACrC,gBACA,kBAAkB,OAClB,aAC8B;AAC9B,QACE,qBAAC,OAAD;EACE,WAAW,GACT,oEACA,UACD;YAJH;GAOE,oBAAC,OAAD,EAAK,WAAU,sNAAuN,CAAA;GAGtO,oBAAC,OAAD;IACE,KAAI;IACJ,KAAI;IACJ,WAAU;IACV,CAAA;GAGF,oBAAC,OAAD;IAAK,WAAU;cACb,qBAAC,OAAD;KAAK,WAAU;eAAf,CACE,oBAAC,OAAD;MACE,KAAI;MACJ,KAAI;MACJ,WAAU;MACV,CAAA,EAEF,oBAAC,QAAD;MACE,WAAU;MACV,MAAK;MACL,SAAS;MACT,UAAU;gBAET,kBAAkB,eAAe;MAC3B,CAAA,CACL;;IACF,CAAA;GAGN,qBAAC,OAAD;IAAK,WAAU;cAAf,CACE,qBAAC,OAAD;KAAK,WAAU;eAAf,CACE,qBAAC,MAAD;MAAI,WAAU;gBAAd;OAA2F;OAEzF,oBAAC,MAAD,EAAM,CAAA;;OAEH;SACL,oBAAC,KAAD;MAAG,WAAU;gBAA2C;MAEpD,CAAA,CACA;QACN,oBAAC,OAAD;KAAK,WAAU;eACZ,SAAS,KAAK,YACb,oBAAC,aAAD,EAAiC,GAAI,SAAW,EAA9B,QAAQ,MAAsB,CAChD;KACE,CAAA,CACF;;GACF;;;;;;;;;AC9HV,MAAa,8BAA8B;CACzC,YAAY;CACZ,aAAa;CACb,QAAQ,EAAE;CACX;AAED,SAAgB,gBAAmC;AACjD,QACE,oBAAC,wBAAD,EACE,sBAAsB,IAGtB,CAAA"}
1
+ {"version":3,"file":"UpgradeScreen-D9WpmFa1.mjs","names":[],"sources":["../../pro-upgrade-ui/src/lib/cn.ts","../../pro-upgrade-ui/src/components/PortalProUpgradeScreen.tsx","../src/screens/UpgradeScreen.tsx"],"sourcesContent":["import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","import {\n Sparkles,\n Phone,\n MessagesSquare,\n CalendarMinus,\n MessageSquareHeart,\n type LucideIcon,\n} from \"lucide-react\";\nimport {\n Button,\n Card,\n CardDescription,\n CardHeader,\n CardTitle,\n} from \"@fluid-app/ui-primitives\";\nimport { cn } from \"../lib/cn\";\n\nexport interface PortalProUpgradeScreenProps {\n onJoinWaitlist: () => void;\n waitlistLoading?: boolean;\n className?: string;\n}\n\ninterface Feature {\n icon: LucideIcon;\n title: string;\n description: string;\n}\n\nconst FEATURES: Feature[] = [\n {\n icon: Sparkles,\n title: \"Generative AI\",\n description: \"Get quick drafts and creative messaging help.\",\n },\n {\n icon: Phone,\n title: \"Business phone number\",\n description: \"Look professional with a dedicated client line.\",\n },\n {\n icon: MessagesSquare,\n title: \"Mass Messaging\",\n description: \"Save time by messaging multiple clients at once.\",\n },\n {\n icon: CalendarMinus,\n title: \"Scheduled messages\",\n description: \"Plan ahead and schedule messages easily.\",\n },\n {\n icon: MessageSquareHeart,\n title: \"Unified messaging\",\n description: \"Combine email, SMS, and internal messages.\",\n },\n];\n\nfunction FeatureCard({ icon: Icon, title, description }: Feature) {\n return (\n <Card className=\"bg-background text-foreground h-auto gap-0 border-none py-4\">\n <CardHeader className=\"gap-3 px-4\">\n <Icon className=\"size-6\" strokeWidth={1.5} />\n <CardTitle className=\"text-sm font-bold\">{title}</CardTitle>\n <CardDescription className=\"text-xs\">{description}</CardDescription>\n </CardHeader>\n </Card>\n );\n}\n\nexport function PortalProUpgradeScreen({\n onJoinWaitlist,\n waitlistLoading = false,\n className,\n}: PortalProUpgradeScreenProps) {\n return (\n <div\n className={cn(\n \"relative flex h-full w-full flex-col overflow-hidden md:flex-row\",\n className,\n )}\n >\n {/* Pastel gradient background */}\n <div className=\"pointer-events-none absolute inset-0 rounded-xl bg-linear-[33deg,rgba(8,148,255,0.2)_4.5%,rgba(201,89,221,0.2)_24.5%,rgba(255,46,84,0.2)_54.6%,rgba(255,144,4,0.2)_69.2%,rgba(255,255,255,0.2)_76.4%] blur-[125px]\" />\n\n {/* Hero collage - absolute, behind everything, fades right and bottom */}\n <img\n src=\"https://ik.imagekit.io/fluid/980191006/images/HW87RR/hero-collage_O6DCdkFib.png\"\n alt=\"People using the app with push notifications\"\n className=\"pointer-events-none absolute top-0 left-0 h-full w-full mask-b-from-20% mask-b-to-30% object-contain object-left-top md:w-4/5 md:mask-r-from-50% md:mask-r-to-70% md:mask-b-from-60% md:mask-b-to-80%\"\n />\n\n {/* Left Section - Logo & CTA */}\n <div className=\"relative flex w-full shrink-0 flex-col items-center justify-end px-8 pt-40 md:w-1/2 md:pt-0 md:pb-10\">\n <div className=\"flex flex-col items-center gap-4\">\n <img\n src=\"https://ik.imagekit.io/fluid/980191006/images/ZYT78J/co-founder-badge_NcorZNlUY.png\"\n alt=\"Coming Soon - Co-Founder\"\n className=\"h-auto w-120 object-contain\"\n />\n {/* TODO: This is currently hidden until we actually have a way to waitlist someone */}\n <Button\n className=\"hidden w-full md:w-auto\"\n size=\"xl\"\n onClick={onJoinWaitlist}\n disabled={waitlistLoading}\n >\n {waitlistLoading ? \"Joining...\" : \"Join Waitlist\"}\n </Button>\n </div>\n </div>\n\n {/* Right Section - Content */}\n <div className=\"relative flex min-w-0 flex-1 flex-col gap-6 overflow-y-auto px-8 pt-8 md:pt-16 md:pr-5 md:pb-5 md:pl-10\">\n <div className=\"flex shrink-0 flex-col gap-2.5\">\n <h1 className=\"text-3xl leading-tight font-semibold tracking-tight text-black md:text-5xl\">\n It's like having an\n <br />\n assistant in your pocket\n </h1>\n <p className=\"text-sm leading-5 font-medium text-black\">\n Upgrade your business\n </p>\n </div>\n <div className=\"flex flex-col gap-4 pb-4\">\n {FEATURES.map((feature) => (\n <FeatureCard key={feature.title} {...feature} />\n ))}\n </div>\n </div>\n </div>\n );\n}\n","import type { WidgetPropertySchema } from \"../registries/property-schema-types\";\nimport { PortalProUpgradeScreen } from \"@fluid-app/portal-pro-upgrade-ui\";\n\nexport const upgradeScreenPropertySchema = {\n widgetType: \"UpgradeScreen\",\n displayName: \"Upgrade Screen\",\n fields: [],\n} as const satisfies WidgetPropertySchema;\n\nexport function UpgradeScreen(): React.JSX.Element {\n return (\n <PortalProUpgradeScreen\n onJoinWaitlist={() => {\n // TODO: Wire up to waitlist API\n }}\n />\n );\n}\n"],"mappings":";;;;;;;AAGA,SAAgB,GAAG,GAAG,QAAsB;AAC1C,QAAO,QAAQ,KAAK,OAAO,CAAC;;;;ACyB9B,MAAM,WAAsB;CAC1B;EACE,MAAM;EACN,OAAO;EACP,aAAa;EACd;CACD;EACE,MAAM;EACN,OAAO;EACP,aAAa;EACd;CACD;EACE,MAAM;EACN,OAAO;EACP,aAAa;EACd;CACD;EACE,MAAM;EACN,OAAO;EACP,aAAa;EACd;CACD;EACE,MAAM;EACN,OAAO;EACP,aAAa;EACd;CACF;AAED,SAAS,YAAY,EAAE,MAAM,MAAM,OAAO,eAAwB;AAChE,QACE,oBAAC,MAAD;EAAM,WAAU;YACd,qBAAC,YAAD;GAAY,WAAU;aAAtB;IACE,oBAAC,MAAD;KAAM,WAAU;KAAS,aAAa;KAAO,CAAA;IAC7C,oBAAC,WAAD;KAAW,WAAU;eAAqB;KAAkB,CAAA;IAC5D,oBAAC,iBAAD;KAAiB,WAAU;eAAW;KAA8B,CAAA;IACzD;;EACR,CAAA;;AAIX,SAAgB,uBAAuB,EACrC,gBACA,kBAAkB,OAClB,aAC8B;AAC9B,QACE,qBAAC,OAAD;EACE,WAAW,GACT,oEACA,UACD;YAJH;GAOE,oBAAC,OAAD,EAAK,WAAU,sNAAuN,CAAA;GAGtO,oBAAC,OAAD;IACE,KAAI;IACJ,KAAI;IACJ,WAAU;IACV,CAAA;GAGF,oBAAC,OAAD;IAAK,WAAU;cACb,qBAAC,OAAD;KAAK,WAAU;eAAf,CACE,oBAAC,OAAD;MACE,KAAI;MACJ,KAAI;MACJ,WAAU;MACV,CAAA,EAEF,oBAAC,QAAD;MACE,WAAU;MACV,MAAK;MACL,SAAS;MACT,UAAU;gBAET,kBAAkB,eAAe;MAC3B,CAAA,CACL;;IACF,CAAA;GAGN,qBAAC,OAAD;IAAK,WAAU;cAAf,CACE,qBAAC,OAAD;KAAK,WAAU;eAAf,CACE,qBAAC,MAAD;MAAI,WAAU;gBAAd;OAA2F;OAEzF,oBAAC,MAAD,EAAM,CAAA;;OAEH;SACL,oBAAC,KAAD;MAAG,WAAU;gBAA2C;MAEpD,CAAA,CACA;QACN,oBAAC,OAAD;KAAK,WAAU;eACZ,SAAS,KAAK,YACb,oBAAC,aAAD,EAAiC,GAAI,SAAW,EAA9B,QAAQ,MAAsB,CAChD;KACE,CAAA,CACF;;GACF;;;;;;;;;AC9HV,MAAa,8BAA8B;CACzC,YAAY;CACZ,aAAa;CACb,QAAQ,EAAE;CACX;AAED,SAAgB,gBAAmC;AACjD,QACE,oBAAC,wBAAD,EACE,sBAAsB,IAGtB,CAAA"}
@@ -1,4 +1,4 @@
1
- const require_dist = require("./dist-DBTvrTYG.cjs");
1
+ const require_dist = require("./dist-thaj08s5.cjs");
2
2
  //#region ../../../node_modules/.pnpm/@tiptap+extension-text-align@2.27.1_@tiptap+core@2.27.1_@tiptap+pm@2.27.1_/node_modules/@tiptap/extension-text-align/dist/index.js
3
3
  /**
4
4
  * This extension allows you to align text.
@@ -118,4 +118,4 @@ Object.defineProperty(exports, "Underline", {
118
118
  }
119
119
  });
120
120
 
121
- //# sourceMappingURL=dist-Dh18LTcb.cjs.map
121
+ //# sourceMappingURL=dist-BSKQ_GoC.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"dist-Dh18LTcb.cjs","names":["Extension","Mark","mergeAttributes"],"sources":["../../../../node_modules/.pnpm/@tiptap+extension-text-align@2.27.1_@tiptap+core@2.27.1_@tiptap+pm@2.27.1_/node_modules/@tiptap/extension-text-align/dist/index.js","../../../../node_modules/.pnpm/@tiptap+extension-underline@2.27.1_@tiptap+core@2.27.1_@tiptap+pm@2.27.1_/node_modules/@tiptap/extension-underline/dist/index.js"],"sourcesContent":["import { Extension } from '@tiptap/core';\n\n/**\n * This extension allows you to align text.\n * @see https://www.tiptap.dev/api/extensions/text-align\n */\nconst TextAlign = Extension.create({\n name: 'textAlign',\n addOptions() {\n return {\n types: [],\n alignments: ['left', 'center', 'right', 'justify'],\n defaultAlignment: null,\n };\n },\n addGlobalAttributes() {\n return [\n {\n types: this.options.types,\n attributes: {\n textAlign: {\n default: this.options.defaultAlignment,\n parseHTML: element => {\n const alignment = element.style.textAlign;\n return this.options.alignments.includes(alignment) ? alignment : this.options.defaultAlignment;\n },\n renderHTML: attributes => {\n if (!attributes.textAlign) {\n return {};\n }\n return { style: `text-align: ${attributes.textAlign}` };\n },\n },\n },\n },\n ];\n },\n addCommands() {\n return {\n setTextAlign: (alignment) => ({ commands }) => {\n if (!this.options.alignments.includes(alignment)) {\n return false;\n }\n return this.options.types\n .map(type => commands.updateAttributes(type, { textAlign: alignment }))\n .every(response => response);\n },\n unsetTextAlign: () => ({ commands }) => {\n return this.options.types\n .map(type => commands.resetAttributes(type, 'textAlign'))\n .every(response => response);\n },\n toggleTextAlign: alignment => ({ editor, commands }) => {\n if (!this.options.alignments.includes(alignment)) {\n return false;\n }\n if (editor.isActive({ textAlign: alignment })) {\n return commands.unsetTextAlign();\n }\n return commands.setTextAlign(alignment);\n },\n };\n },\n addKeyboardShortcuts() {\n return {\n 'Mod-Shift-l': () => this.editor.commands.setTextAlign('left'),\n 'Mod-Shift-e': () => this.editor.commands.setTextAlign('center'),\n 'Mod-Shift-r': () => this.editor.commands.setTextAlign('right'),\n 'Mod-Shift-j': () => this.editor.commands.setTextAlign('justify'),\n };\n },\n});\n\nexport { TextAlign, TextAlign as default };\n//# sourceMappingURL=index.js.map\n","import { Mark, mergeAttributes } from '@tiptap/core';\n\n/**\n * This extension allows you to create underline text.\n * @see https://www.tiptap.dev/api/marks/underline\n */\nconst Underline = Mark.create({\n name: 'underline',\n addOptions() {\n return {\n HTMLAttributes: {},\n };\n },\n parseHTML() {\n return [\n {\n tag: 'u',\n },\n {\n style: 'text-decoration',\n consuming: false,\n getAttrs: style => (style.includes('underline') ? {} : false),\n },\n ];\n },\n renderHTML({ HTMLAttributes }) {\n return ['u', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0];\n },\n addCommands() {\n return {\n setUnderline: () => ({ commands }) => {\n return commands.setMark(this.name);\n },\n toggleUnderline: () => ({ commands }) => {\n return commands.toggleMark(this.name);\n },\n unsetUnderline: () => ({ commands }) => {\n return commands.unsetMark(this.name);\n },\n };\n },\n addKeyboardShortcuts() {\n return {\n 'Mod-u': () => this.editor.commands.toggleUnderline(),\n 'Mod-U': () => this.editor.commands.toggleUnderline(),\n };\n },\n});\n\nexport { Underline, Underline as default };\n//# sourceMappingURL=index.js.map\n"],"x_google_ignoreList":[0,1],"mappings":";;;;;;AAMA,MAAM,YAAYA,aAAAA,UAAU,OAAO;CAC/B,MAAM;CACN,aAAa;AACT,SAAO;GACH,OAAO,EAAE;GACT,YAAY;IAAC;IAAQ;IAAU;IAAS;IAAU;GAClD,kBAAkB;GACrB;;CAEL,sBAAsB;AAClB,SAAO,CACH;GACI,OAAO,KAAK,QAAQ;GACpB,YAAY,EACR,WAAW;IACP,SAAS,KAAK,QAAQ;IACtB,YAAW,YAAW;KAClB,MAAM,YAAY,QAAQ,MAAM;AAChC,YAAO,KAAK,QAAQ,WAAW,SAAS,UAAU,GAAG,YAAY,KAAK,QAAQ;;IAElF,aAAY,eAAc;AACtB,SAAI,CAAC,WAAW,UACZ,QAAO,EAAE;AAEb,YAAO,EAAE,OAAO,eAAe,WAAW,aAAa;;IAE9D,EACJ;GACJ,CACJ;;CAEL,cAAc;AACV,SAAO;GACH,eAAe,eAAe,EAAE,eAAe;AAC3C,QAAI,CAAC,KAAK,QAAQ,WAAW,SAAS,UAAU,CAC5C,QAAO;AAEX,WAAO,KAAK,QAAQ,MACf,KAAI,SAAQ,SAAS,iBAAiB,MAAM,EAAE,WAAW,WAAW,CAAC,CAAC,CACtE,OAAM,aAAY,SAAS;;GAEpC,uBAAuB,EAAE,eAAe;AACpC,WAAO,KAAK,QAAQ,MACf,KAAI,SAAQ,SAAS,gBAAgB,MAAM,YAAY,CAAC,CACxD,OAAM,aAAY,SAAS;;GAEpC,kBAAiB,eAAc,EAAE,QAAQ,eAAe;AACpD,QAAI,CAAC,KAAK,QAAQ,WAAW,SAAS,UAAU,CAC5C,QAAO;AAEX,QAAI,OAAO,SAAS,EAAE,WAAW,WAAW,CAAC,CACzC,QAAO,SAAS,gBAAgB;AAEpC,WAAO,SAAS,aAAa,UAAU;;GAE9C;;CAEL,uBAAuB;AACnB,SAAO;GACH,qBAAqB,KAAK,OAAO,SAAS,aAAa,OAAO;GAC9D,qBAAqB,KAAK,OAAO,SAAS,aAAa,SAAS;GAChE,qBAAqB,KAAK,OAAO,SAAS,aAAa,QAAQ;GAC/D,qBAAqB,KAAK,OAAO,SAAS,aAAa,UAAU;GACpE;;CAER,CAAC;;;;;;;ACjEF,MAAM,YAAYC,aAAAA,KAAK,OAAO;CAC1B,MAAM;CACN,aAAa;AACT,SAAO,EACH,gBAAgB,EAAE,EACrB;;CAEL,YAAY;AACR,SAAO,CACH,EACI,KAAK,KACR,EACD;GACI,OAAO;GACP,WAAW;GACX,WAAU,UAAU,MAAM,SAAS,YAAY,GAAG,EAAE,GAAG;GAC1D,CACJ;;CAEL,WAAW,EAAE,kBAAkB;AAC3B,SAAO;GAAC;GAAKC,aAAAA,gBAAgB,KAAK,QAAQ,gBAAgB,eAAe;GAAE;GAAE;;CAEjF,cAAc;AACV,SAAO;GACH,qBAAqB,EAAE,eAAe;AAClC,WAAO,SAAS,QAAQ,KAAK,KAAK;;GAEtC,wBAAwB,EAAE,eAAe;AACrC,WAAO,SAAS,WAAW,KAAK,KAAK;;GAEzC,uBAAuB,EAAE,eAAe;AACpC,WAAO,SAAS,UAAU,KAAK,KAAK;;GAE3C;;CAEL,uBAAuB;AACnB,SAAO;GACH,eAAe,KAAK,OAAO,SAAS,iBAAiB;GACrD,eAAe,KAAK,OAAO,SAAS,iBAAiB;GACxD;;CAER,CAAC"}
1
+ {"version":3,"file":"dist-BSKQ_GoC.cjs","names":["Extension","Mark","mergeAttributes"],"sources":["../../../../node_modules/.pnpm/@tiptap+extension-text-align@2.27.1_@tiptap+core@2.27.1_@tiptap+pm@2.27.1_/node_modules/@tiptap/extension-text-align/dist/index.js","../../../../node_modules/.pnpm/@tiptap+extension-underline@2.27.1_@tiptap+core@2.27.1_@tiptap+pm@2.27.1_/node_modules/@tiptap/extension-underline/dist/index.js"],"sourcesContent":["import { Extension } from '@tiptap/core';\n\n/**\n * This extension allows you to align text.\n * @see https://www.tiptap.dev/api/extensions/text-align\n */\nconst TextAlign = Extension.create({\n name: 'textAlign',\n addOptions() {\n return {\n types: [],\n alignments: ['left', 'center', 'right', 'justify'],\n defaultAlignment: null,\n };\n },\n addGlobalAttributes() {\n return [\n {\n types: this.options.types,\n attributes: {\n textAlign: {\n default: this.options.defaultAlignment,\n parseHTML: element => {\n const alignment = element.style.textAlign;\n return this.options.alignments.includes(alignment) ? alignment : this.options.defaultAlignment;\n },\n renderHTML: attributes => {\n if (!attributes.textAlign) {\n return {};\n }\n return { style: `text-align: ${attributes.textAlign}` };\n },\n },\n },\n },\n ];\n },\n addCommands() {\n return {\n setTextAlign: (alignment) => ({ commands }) => {\n if (!this.options.alignments.includes(alignment)) {\n return false;\n }\n return this.options.types\n .map(type => commands.updateAttributes(type, { textAlign: alignment }))\n .every(response => response);\n },\n unsetTextAlign: () => ({ commands }) => {\n return this.options.types\n .map(type => commands.resetAttributes(type, 'textAlign'))\n .every(response => response);\n },\n toggleTextAlign: alignment => ({ editor, commands }) => {\n if (!this.options.alignments.includes(alignment)) {\n return false;\n }\n if (editor.isActive({ textAlign: alignment })) {\n return commands.unsetTextAlign();\n }\n return commands.setTextAlign(alignment);\n },\n };\n },\n addKeyboardShortcuts() {\n return {\n 'Mod-Shift-l': () => this.editor.commands.setTextAlign('left'),\n 'Mod-Shift-e': () => this.editor.commands.setTextAlign('center'),\n 'Mod-Shift-r': () => this.editor.commands.setTextAlign('right'),\n 'Mod-Shift-j': () => this.editor.commands.setTextAlign('justify'),\n };\n },\n});\n\nexport { TextAlign, TextAlign as default };\n//# sourceMappingURL=index.js.map\n","import { Mark, mergeAttributes } from '@tiptap/core';\n\n/**\n * This extension allows you to create underline text.\n * @see https://www.tiptap.dev/api/marks/underline\n */\nconst Underline = Mark.create({\n name: 'underline',\n addOptions() {\n return {\n HTMLAttributes: {},\n };\n },\n parseHTML() {\n return [\n {\n tag: 'u',\n },\n {\n style: 'text-decoration',\n consuming: false,\n getAttrs: style => (style.includes('underline') ? {} : false),\n },\n ];\n },\n renderHTML({ HTMLAttributes }) {\n return ['u', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0];\n },\n addCommands() {\n return {\n setUnderline: () => ({ commands }) => {\n return commands.setMark(this.name);\n },\n toggleUnderline: () => ({ commands }) => {\n return commands.toggleMark(this.name);\n },\n unsetUnderline: () => ({ commands }) => {\n return commands.unsetMark(this.name);\n },\n };\n },\n addKeyboardShortcuts() {\n return {\n 'Mod-u': () => this.editor.commands.toggleUnderline(),\n 'Mod-U': () => this.editor.commands.toggleUnderline(),\n };\n },\n});\n\nexport { Underline, Underline as default };\n//# sourceMappingURL=index.js.map\n"],"x_google_ignoreList":[0,1],"mappings":";;;;;;AAMA,MAAM,YAAYA,aAAAA,UAAU,OAAO;CAC/B,MAAM;CACN,aAAa;AACT,SAAO;GACH,OAAO,EAAE;GACT,YAAY;IAAC;IAAQ;IAAU;IAAS;IAAU;GAClD,kBAAkB;GACrB;;CAEL,sBAAsB;AAClB,SAAO,CACH;GACI,OAAO,KAAK,QAAQ;GACpB,YAAY,EACR,WAAW;IACP,SAAS,KAAK,QAAQ;IACtB,YAAW,YAAW;KAClB,MAAM,YAAY,QAAQ,MAAM;AAChC,YAAO,KAAK,QAAQ,WAAW,SAAS,UAAU,GAAG,YAAY,KAAK,QAAQ;;IAElF,aAAY,eAAc;AACtB,SAAI,CAAC,WAAW,UACZ,QAAO,EAAE;AAEb,YAAO,EAAE,OAAO,eAAe,WAAW,aAAa;;IAE9D,EACJ;GACJ,CACJ;;CAEL,cAAc;AACV,SAAO;GACH,eAAe,eAAe,EAAE,eAAe;AAC3C,QAAI,CAAC,KAAK,QAAQ,WAAW,SAAS,UAAU,CAC5C,QAAO;AAEX,WAAO,KAAK,QAAQ,MACf,KAAI,SAAQ,SAAS,iBAAiB,MAAM,EAAE,WAAW,WAAW,CAAC,CAAC,CACtE,OAAM,aAAY,SAAS;;GAEpC,uBAAuB,EAAE,eAAe;AACpC,WAAO,KAAK,QAAQ,MACf,KAAI,SAAQ,SAAS,gBAAgB,MAAM,YAAY,CAAC,CACxD,OAAM,aAAY,SAAS;;GAEpC,kBAAiB,eAAc,EAAE,QAAQ,eAAe;AACpD,QAAI,CAAC,KAAK,QAAQ,WAAW,SAAS,UAAU,CAC5C,QAAO;AAEX,QAAI,OAAO,SAAS,EAAE,WAAW,WAAW,CAAC,CACzC,QAAO,SAAS,gBAAgB;AAEpC,WAAO,SAAS,aAAa,UAAU;;GAE9C;;CAEL,uBAAuB;AACnB,SAAO;GACH,qBAAqB,KAAK,OAAO,SAAS,aAAa,OAAO;GAC9D,qBAAqB,KAAK,OAAO,SAAS,aAAa,SAAS;GAChE,qBAAqB,KAAK,OAAO,SAAS,aAAa,QAAQ;GAC/D,qBAAqB,KAAK,OAAO,SAAS,aAAa,UAAU;GACpE;;CAER,CAAC;;;;;;;ACjEF,MAAM,YAAYC,aAAAA,KAAK,OAAO;CAC1B,MAAM;CACN,aAAa;AACT,SAAO,EACH,gBAAgB,EAAE,EACrB;;CAEL,YAAY;AACR,SAAO,CACH,EACI,KAAK,KACR,EACD;GACI,OAAO;GACP,WAAW;GACX,WAAU,UAAU,MAAM,SAAS,YAAY,GAAG,EAAE,GAAG;GAC1D,CACJ;;CAEL,WAAW,EAAE,kBAAkB;AAC3B,SAAO;GAAC;GAAKC,aAAAA,gBAAgB,KAAK,QAAQ,gBAAgB,eAAe;GAAE;GAAE;;CAEjF,cAAc;AACV,SAAO;GACH,qBAAqB,EAAE,eAAe;AAClC,WAAO,SAAS,QAAQ,KAAK,KAAK;;GAEtC,wBAAwB,EAAE,eAAe;AACrC,WAAO,SAAS,WAAW,KAAK,KAAK;;GAEzC,uBAAuB,EAAE,eAAe;AACpC,WAAO,SAAS,UAAU,KAAK,KAAK;;GAE3C;;CAEL,uBAAuB;AACnB,SAAO;GACH,eAAe,KAAK,OAAO,SAAS,iBAAiB;GACrD,eAAe,KAAK,OAAO,SAAS,iBAAiB;GACxD;;CAER,CAAC"}
@@ -6017,4 +6017,4 @@ Object.defineProperty(exports, "require_dist$2", {
6017
6017
  }
6018
6018
  });
6019
6019
 
6020
- //# sourceMappingURL=dist-Mf7Sx86H.cjs.map
6020
+ //# sourceMappingURL=dist-Bg8UyHyM.cjs.map