@retinalabsllc/zairusjs 15.0.55 → 15.0.70

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.
package/dist/index.d.mts CHANGED
@@ -902,13 +902,6 @@ interface UniversalCardActionPageProps {
902
902
  }
903
903
  declare const UniversalCardActionPage: React.FC<UniversalCardActionPageProps>;
904
904
 
905
- interface CardCreationDialogProps {
906
- isOpen: boolean;
907
- onClose: () => void;
908
- onSuccess: () => void;
909
- }
910
- declare const CardCreationDialog: React.FC<CardCreationDialogProps>;
911
-
912
905
  interface PinDialerBottomSheetProps {
913
906
  isOpen: boolean;
914
907
  title?: string;
@@ -918,4 +911,4 @@ interface PinDialerBottomSheetProps {
918
911
  }
919
912
  declare const PinDialerBottomSheet: React.FC<PinDialerBottomSheetProps>;
920
913
 
921
- export { AppBento2, type AppBento2Props, type BannerProps, type BentoFeature, type BoardMember, CardCreationDialog, type CardCreationDialogProps, type CompanyDetails, type ConsultantProfile, ConsultantShowcase, type ConsultantShowcaseProps, ContentGridBlock, type ContentGridBlockProps, type DocumentSectionData, type EmailContact, Faq, type FaqItem, type FaqProps, FeatureScroll, type FeatureScrollProps, Footer, type FooterColumn, type FooterLink, type FooterProps, GifFeatureCard, type GifFeatureCardProps, Header, type HeaderLink, type HeaderProps, type AppLogo$1 as HeroAppLogo, HeroSection, type HeroSectionProps, type HomeActionBtn, type LeaderboardItem, ManagedBoardBlock, type ManagedBoardBlockProps, ManagedContactBlock, type ManagedContactBlockProps, ManagedDocument, type ManagedDocumentProps, ManagedNewsletterSplitBlock, type ManagedNewsletterSplitBlockProps, ManagedNotFoundBlock, type ManagedNotFoundBlockProps, ManagedPricingBlock, type ManagedPricingBlockProps, ManagedProjectsBlock, type ManagedProjectsBlockProps, ManagedToaster, MedicalFeatureStatsBlock, MobileNav, type MobileNavItem, type MobileNavProps, type NavItem, type NotificationItem, NumberInput, type NumberInputProps, PageSpinner, type PageSpinnerProps, PinDialerBottomSheet, type PinDialerBottomSheetProps, PipleAuth, type PipleAuthProps, type PlatformFeatureItem, PlatformFeatures, type PlatformFeaturesProps, PortfolioHero, type PortfolioHeroProps, type AppLogo as PricingAppLogo, type PricingFeature, type PricingFeature2, type PricingPlan, type PricingTab, type ProjectItem, type ReferralProfile, type RewardItem, type RewardProfile, type ScrollFeature, type SocialContact, type SocialLink, type StatItem, TextInput, type TextInputProps, ThreeDActionButton, type ThreeDActionButtonProps, ThreeDButton, type ThreeDButtonProps, type TierOption, UniversalCardActionPage, type UniversalCardActionPageProps, UniversalCardPage, type UniversalCardPageProps, UniversalErrorView, type UniversalErrorViewProps, UniversalHomeView, type UniversalHomeViewProps, UniversalOrganizationPage, type UniversalOrganizationPageProps, UniversalProfilePage, type UniversalProfilePageProps, UniversalProfileSettings, type UniversalProfileSettingsProps, type UniversalReferralItem, UniversalReferralPage, type UniversalReferralPageProps, UniversalRewardPage, type UniversalRewardPageProps, UniversalSecurityPage, type UniversalSecurityPageProps, UniversalSidebar, type UniversalSidebarProps, type UniversalTransaction, UniversalTransactionPage, type UniversalTransactionPageProps, UniversalVerificationPage, type UniversalVerificationPageProps, type UniversalWallet, UniversalWalletPage, type UniversalWalletPageProps, type VerificationStatus, WaitlistDialog, type WaitlistDialogProps };
914
+ export { AppBento2, type AppBento2Props, type BannerProps, type BentoFeature, type BoardMember, type CompanyDetails, type ConsultantProfile, ConsultantShowcase, type ConsultantShowcaseProps, ContentGridBlock, type ContentGridBlockProps, type DocumentSectionData, type EmailContact, Faq, type FaqItem, type FaqProps, FeatureScroll, type FeatureScrollProps, Footer, type FooterColumn, type FooterLink, type FooterProps, GifFeatureCard, type GifFeatureCardProps, Header, type HeaderLink, type HeaderProps, type AppLogo$1 as HeroAppLogo, HeroSection, type HeroSectionProps, type HomeActionBtn, type LeaderboardItem, ManagedBoardBlock, type ManagedBoardBlockProps, ManagedContactBlock, type ManagedContactBlockProps, ManagedDocument, type ManagedDocumentProps, ManagedNewsletterSplitBlock, type ManagedNewsletterSplitBlockProps, ManagedNotFoundBlock, type ManagedNotFoundBlockProps, ManagedPricingBlock, type ManagedPricingBlockProps, ManagedProjectsBlock, type ManagedProjectsBlockProps, ManagedToaster, MedicalFeatureStatsBlock, MobileNav, type MobileNavItem, type MobileNavProps, type NavItem, type NotificationItem, NumberInput, type NumberInputProps, PageSpinner, type PageSpinnerProps, PinDialerBottomSheet, type PinDialerBottomSheetProps, PipleAuth, type PipleAuthProps, type PlatformFeatureItem, PlatformFeatures, type PlatformFeaturesProps, PortfolioHero, type PortfolioHeroProps, type AppLogo as PricingAppLogo, type PricingFeature, type PricingFeature2, type PricingPlan, type PricingTab, type ProjectItem, type ReferralProfile, type RewardItem, type RewardProfile, type ScrollFeature, type SocialContact, type SocialLink, type StatItem, TextInput, type TextInputProps, ThreeDActionButton, type ThreeDActionButtonProps, ThreeDButton, type ThreeDButtonProps, type TierOption, UniversalCardActionPage, type UniversalCardActionPageProps, UniversalCardPage, type UniversalCardPageProps, UniversalErrorView, type UniversalErrorViewProps, UniversalHomeView, type UniversalHomeViewProps, UniversalOrganizationPage, type UniversalOrganizationPageProps, UniversalProfilePage, type UniversalProfilePageProps, UniversalProfileSettings, type UniversalProfileSettingsProps, type UniversalReferralItem, UniversalReferralPage, type UniversalReferralPageProps, UniversalRewardPage, type UniversalRewardPageProps, UniversalSecurityPage, type UniversalSecurityPageProps, UniversalSidebar, type UniversalSidebarProps, type UniversalTransaction, UniversalTransactionPage, type UniversalTransactionPageProps, UniversalVerificationPage, type UniversalVerificationPageProps, type UniversalWallet, UniversalWalletPage, type UniversalWalletPageProps, type VerificationStatus, WaitlistDialog, type WaitlistDialogProps };
package/dist/index.d.ts CHANGED
@@ -902,13 +902,6 @@ interface UniversalCardActionPageProps {
902
902
  }
903
903
  declare const UniversalCardActionPage: React.FC<UniversalCardActionPageProps>;
904
904
 
905
- interface CardCreationDialogProps {
906
- isOpen: boolean;
907
- onClose: () => void;
908
- onSuccess: () => void;
909
- }
910
- declare const CardCreationDialog: React.FC<CardCreationDialogProps>;
911
-
912
905
  interface PinDialerBottomSheetProps {
913
906
  isOpen: boolean;
914
907
  title?: string;
@@ -918,4 +911,4 @@ interface PinDialerBottomSheetProps {
918
911
  }
919
912
  declare const PinDialerBottomSheet: React.FC<PinDialerBottomSheetProps>;
920
913
 
921
- export { AppBento2, type AppBento2Props, type BannerProps, type BentoFeature, type BoardMember, CardCreationDialog, type CardCreationDialogProps, type CompanyDetails, type ConsultantProfile, ConsultantShowcase, type ConsultantShowcaseProps, ContentGridBlock, type ContentGridBlockProps, type DocumentSectionData, type EmailContact, Faq, type FaqItem, type FaqProps, FeatureScroll, type FeatureScrollProps, Footer, type FooterColumn, type FooterLink, type FooterProps, GifFeatureCard, type GifFeatureCardProps, Header, type HeaderLink, type HeaderProps, type AppLogo$1 as HeroAppLogo, HeroSection, type HeroSectionProps, type HomeActionBtn, type LeaderboardItem, ManagedBoardBlock, type ManagedBoardBlockProps, ManagedContactBlock, type ManagedContactBlockProps, ManagedDocument, type ManagedDocumentProps, ManagedNewsletterSplitBlock, type ManagedNewsletterSplitBlockProps, ManagedNotFoundBlock, type ManagedNotFoundBlockProps, ManagedPricingBlock, type ManagedPricingBlockProps, ManagedProjectsBlock, type ManagedProjectsBlockProps, ManagedToaster, MedicalFeatureStatsBlock, MobileNav, type MobileNavItem, type MobileNavProps, type NavItem, type NotificationItem, NumberInput, type NumberInputProps, PageSpinner, type PageSpinnerProps, PinDialerBottomSheet, type PinDialerBottomSheetProps, PipleAuth, type PipleAuthProps, type PlatformFeatureItem, PlatformFeatures, type PlatformFeaturesProps, PortfolioHero, type PortfolioHeroProps, type AppLogo as PricingAppLogo, type PricingFeature, type PricingFeature2, type PricingPlan, type PricingTab, type ProjectItem, type ReferralProfile, type RewardItem, type RewardProfile, type ScrollFeature, type SocialContact, type SocialLink, type StatItem, TextInput, type TextInputProps, ThreeDActionButton, type ThreeDActionButtonProps, ThreeDButton, type ThreeDButtonProps, type TierOption, UniversalCardActionPage, type UniversalCardActionPageProps, UniversalCardPage, type UniversalCardPageProps, UniversalErrorView, type UniversalErrorViewProps, UniversalHomeView, type UniversalHomeViewProps, UniversalOrganizationPage, type UniversalOrganizationPageProps, UniversalProfilePage, type UniversalProfilePageProps, UniversalProfileSettings, type UniversalProfileSettingsProps, type UniversalReferralItem, UniversalReferralPage, type UniversalReferralPageProps, UniversalRewardPage, type UniversalRewardPageProps, UniversalSecurityPage, type UniversalSecurityPageProps, UniversalSidebar, type UniversalSidebarProps, type UniversalTransaction, UniversalTransactionPage, type UniversalTransactionPageProps, UniversalVerificationPage, type UniversalVerificationPageProps, type UniversalWallet, UniversalWalletPage, type UniversalWalletPageProps, type VerificationStatus, WaitlistDialog, type WaitlistDialogProps };
914
+ export { AppBento2, type AppBento2Props, type BannerProps, type BentoFeature, type BoardMember, type CompanyDetails, type ConsultantProfile, ConsultantShowcase, type ConsultantShowcaseProps, ContentGridBlock, type ContentGridBlockProps, type DocumentSectionData, type EmailContact, Faq, type FaqItem, type FaqProps, FeatureScroll, type FeatureScrollProps, Footer, type FooterColumn, type FooterLink, type FooterProps, GifFeatureCard, type GifFeatureCardProps, Header, type HeaderLink, type HeaderProps, type AppLogo$1 as HeroAppLogo, HeroSection, type HeroSectionProps, type HomeActionBtn, type LeaderboardItem, ManagedBoardBlock, type ManagedBoardBlockProps, ManagedContactBlock, type ManagedContactBlockProps, ManagedDocument, type ManagedDocumentProps, ManagedNewsletterSplitBlock, type ManagedNewsletterSplitBlockProps, ManagedNotFoundBlock, type ManagedNotFoundBlockProps, ManagedPricingBlock, type ManagedPricingBlockProps, ManagedProjectsBlock, type ManagedProjectsBlockProps, ManagedToaster, MedicalFeatureStatsBlock, MobileNav, type MobileNavItem, type MobileNavProps, type NavItem, type NotificationItem, NumberInput, type NumberInputProps, PageSpinner, type PageSpinnerProps, PinDialerBottomSheet, type PinDialerBottomSheetProps, PipleAuth, type PipleAuthProps, type PlatformFeatureItem, PlatformFeatures, type PlatformFeaturesProps, PortfolioHero, type PortfolioHeroProps, type AppLogo as PricingAppLogo, type PricingFeature, type PricingFeature2, type PricingPlan, type PricingTab, type ProjectItem, type ReferralProfile, type RewardItem, type RewardProfile, type ScrollFeature, type SocialContact, type SocialLink, type StatItem, TextInput, type TextInputProps, ThreeDActionButton, type ThreeDActionButtonProps, ThreeDButton, type ThreeDButtonProps, type TierOption, UniversalCardActionPage, type UniversalCardActionPageProps, UniversalCardPage, type UniversalCardPageProps, UniversalErrorView, type UniversalErrorViewProps, UniversalHomeView, type UniversalHomeViewProps, UniversalOrganizationPage, type UniversalOrganizationPageProps, UniversalProfilePage, type UniversalProfilePageProps, UniversalProfileSettings, type UniversalProfileSettingsProps, type UniversalReferralItem, UniversalReferralPage, type UniversalReferralPageProps, UniversalRewardPage, type UniversalRewardPageProps, UniversalSecurityPage, type UniversalSecurityPageProps, UniversalSidebar, type UniversalSidebarProps, type UniversalTransaction, UniversalTransactionPage, type UniversalTransactionPageProps, UniversalVerificationPage, type UniversalVerificationPageProps, type UniversalWallet, UniversalWalletPage, type UniversalWalletPageProps, type VerificationStatus, WaitlistDialog, type WaitlistDialogProps };
package/dist/index.js CHANGED
@@ -32,7 +32,6 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
32
32
  var index_exports = {};
33
33
  __export(index_exports, {
34
34
  AppBento2: () => AppBento2,
35
- CardCreationDialog: () => CardCreationDialog,
36
35
  ConsultantShowcase: () => ConsultantShowcase,
37
36
  ContentGridBlock: () => ContentGridBlock,
38
37
  Faq: () => Faq,
@@ -1447,8 +1446,7 @@ var UniversalTransactionPage = ({
1447
1446
  {
1448
1447
  onClick: handleGenerateReceipt,
1449
1448
  isLoading: isGeneratingReceipt,
1450
- className: "hidden",
1451
- style: { display: "none" }
1449
+ className: "w-full hidden"
1452
1450
  },
1453
1451
  "Generate Receipt"
1454
1452
  ), /* @__PURE__ */ import_react23.default.createElement(
@@ -3610,7 +3608,7 @@ var PortfolioHero = ({
3610
3608
  import_link8.default,
3611
3609
  {
3612
3610
  href: secondaryCtaHref,
3613
- className: "w-full sm:w-auto inline-flex items-center justify-center gap-3 text-[11px] tracking-[0.2em] rounded-full px-8 py-3.5 bg-neutral-100 transition-colors text-black hover:bg-neutral-50 outline-none"
3611
+ className: "w-full sm:w-auto inline-flex items-center justify-center gap-3 text-[11px] tracking-[0.2em] rounded-full px-8 py-3.5 bg-neutral-200 transition-colors text-black hover:bg-neutral-50 outline-none"
3614
3612
  },
3615
3613
  secondaryCtaText,
3616
3614
  /* @__PURE__ */ import_react55.default.createElement(import_react56.HugeiconsIcon, { icon: import_core_free_icons17.ArrowRight01Icon, size: 16 })
@@ -3819,7 +3817,7 @@ var ContentGridBlock = ({
3819
3817
  middleBottomCard,
3820
3818
  rightCards
3821
3819
  }) => {
3822
- return /* @__PURE__ */ import_react62.default.createElement("section", { className: " w-full flex justify-center z-10 relative" }, /* @__PURE__ */ import_react62.default.createElement("div", { className: "max-w-300 w-full px-4 md:px-8 flex flex-col gap-12" }, /* @__PURE__ */ import_react62.default.createElement("div", { className: "flex flex-col lg:flex-row justify-between items-start lg:items-end gap-6 w-full" }, /* @__PURE__ */ import_react62.default.createElement("h2", { className: "text-3xl tracking-tight text-black leading-[1.15] max-w-lg" }, header.titlePrefix, " ", /* @__PURE__ */ import_react62.default.createElement("span", { className: "gradient-text" }, header.highlightText))), /* @__PURE__ */ import_react62.default.createElement("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6" }, /* @__PURE__ */ import_react62.default.createElement("div", { className: "flex flex-col justify-end" }, /* @__PURE__ */ import_react62.default.createElement("div", { className: "bg-black rounded-3xl p-8 flex flex-col h-80" }, /* @__PURE__ */ import_react62.default.createElement("p", { className: "text-[17px] text-white leading-snug mb-4" }, leftCard.mainText), leftCard.tag && /* @__PURE__ */ import_react62.default.createElement("span", { className: "mb-auto text-[11px] text-neutral-100 tracking-widest" }, leftCard.tag), /* @__PURE__ */ import_react62.default.createElement("div", { className: "flex items-center justify-between mt-8" }, /* @__PURE__ */ import_react62.default.createElement("div", null, /* @__PURE__ */ import_react62.default.createElement("h4", { className: "text-[15px] text-white" }, leftCard.title), /* @__PURE__ */ import_react62.default.createElement("p", { className: "text-[13px] text-neutral-300" }, leftCard.subtitle)), /* @__PURE__ */ import_react62.default.createElement("div", { className: "w-10 h-10 rounded-full overflow-hidden relative" }, /* @__PURE__ */ import_react62.default.createElement(import_image11.default, { src: leftCard.thumbnailSrc, alt: leftCard.title, fill: true, className: "object-cover" }))))), /* @__PURE__ */ import_react62.default.createElement("div", { className: "flex flex-col gap-6" }, /* @__PURE__ */ import_react62.default.createElement("div", { className: "bg-white rounded-3xl p-8 flex flex-col relative h-75" }, /* @__PURE__ */ import_react62.default.createElement("div", { className: "absolute top-6 right-6 flex flex-col items-end gap-1" }, /* @__PURE__ */ import_react62.default.createElement("span", { className: "text-[11px] text-neutral-400 tracking-wide" }, middleTopCard.topRightLabel), /* @__PURE__ */ import_react62.default.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ import_react62.default.createElement("div", { className: "flex -space-x-2" }, middleTopCard.topRightAvatars.map((src, i) => /* @__PURE__ */ import_react62.default.createElement("div", { key: i, className: "w-7 h-7 rounded-full border-2 border-white overflow-hidden relative z-10" }, /* @__PURE__ */ import_react62.default.createElement(import_image11.default, { src, alt: "Avatar", fill: true, className: "object-cover", sizes: "28px" })))), /* @__PURE__ */ import_react62.default.createElement("span", { className: "text-sm text-neutral-500" }, middleTopCard.topRightCount))), /* @__PURE__ */ import_react62.default.createElement("div", { className: "grow flex flex-col justify-center items-center py-6" }, /* @__PURE__ */ import_react62.default.createElement("div", { className: "px-5 py-2 rounded-full bg-neutral-50/50 border border-neutral-200 text-[13px] text-neutral-600" }, middleTopCard.badgePrefix, " ", /* @__PURE__ */ import_react62.default.createElement("span", { className: " text-black" }, middleTopCard.badgeHighlight), middleTopCard.badgeSuffix)), /* @__PURE__ */ import_react62.default.createElement("div", { className: "mt-auto" }, /* @__PURE__ */ import_react62.default.createElement("p", { className: "text-[11px] text-neutral-400 tracking-wide mb-1" }, middleTopCard.title), /* @__PURE__ */ import_react62.default.createElement("p", { className: "text-[14px] text-black leading-snug pr-4" }, middleTopCard.description))), /* @__PURE__ */ import_react62.default.createElement("div", { className: "bg-white rounded-3xl p-8 flex flex-col h-80" }, /* @__PURE__ */ import_react62.default.createElement("div", { className: "flex justify-between items-start mb-6" }, /* @__PURE__ */ import_react62.default.createElement("div", null, /* @__PURE__ */ import_react62.default.createElement("h4", { className: "text-[15px] text-black leading-tight" }, middleBottomCard.title), /* @__PURE__ */ import_react62.default.createElement("p", { className: "text-[13px] text-neutral-400" }, middleBottomCard.subtitle)), /* @__PURE__ */ import_react62.default.createElement("div", { className: "w-10 h-10 rounded-full overflow-hidden relative" }, /* @__PURE__ */ import_react62.default.createElement(import_image11.default, { src: middleBottomCard.thumbnailSrc, alt: middleBottomCard.title, fill: true, className: "object-cover" }))), /* @__PURE__ */ import_react62.default.createElement("div", { className: "mt-auto" }, /* @__PURE__ */ import_react62.default.createElement("p", { className: "text-[16px] text-black leading-snug mb-4" }, middleBottomCard.mainText), middleBottomCard.tag && /* @__PURE__ */ import_react62.default.createElement("span", { className: "text-[11px] text-neutral-400 tracking-widest" }, middleBottomCard.tag)))), /* @__PURE__ */ import_react62.default.createElement("div", { className: "flex flex-col gap-6" }, rightCards.slice(0, 2).map((card, idx) => {
3820
+ return /* @__PURE__ */ import_react62.default.createElement("section", { className: " w-full flex justify-center z-10 relative" }, /* @__PURE__ */ import_react62.default.createElement("div", { className: "max-w-300 w-full px-4 md:px-8 flex flex-col gap-12" }, /* @__PURE__ */ import_react62.default.createElement("div", { className: "flex flex-col lg:flex-row justify-between items-start lg:items-end gap-6 w-full" }, /* @__PURE__ */ import_react62.default.createElement("h2", { className: "text-3xl tracking-tight text-black leading-[1.15] max-w-lg" }, header.titlePrefix, " ", /* @__PURE__ */ import_react62.default.createElement("span", { className: "gradient-text" }, header.highlightText))), /* @__PURE__ */ import_react62.default.createElement("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6" }, /* @__PURE__ */ import_react62.default.createElement("div", { className: "flex flex-col justify-end" }, /* @__PURE__ */ import_react62.default.createElement("div", { className: "bg-black rounded-3xl p-8 flex flex-col h-80" }, /* @__PURE__ */ import_react62.default.createElement("p", { className: "text-[17px] text-white leading-snug mb-4" }, leftCard.mainText), leftCard.tag && /* @__PURE__ */ import_react62.default.createElement("span", { className: "mb-auto text-[11px] text-neutral-100 tracking-widest" }, leftCard.tag), /* @__PURE__ */ import_react62.default.createElement("div", { className: "flex items-center justify-between mt-8" }, /* @__PURE__ */ import_react62.default.createElement("div", null, /* @__PURE__ */ import_react62.default.createElement("h4", { className: "text-[15px] text-white" }, leftCard.title), /* @__PURE__ */ import_react62.default.createElement("p", { className: "text-[13px] text-neutral-300" }, leftCard.subtitle)), /* @__PURE__ */ import_react62.default.createElement("div", { className: "w-10 h-10 rounded-full overflow-hidden relative" }, /* @__PURE__ */ import_react62.default.createElement(import_image11.default, { src: leftCard.thumbnailSrc, alt: leftCard.title, fill: true, className: "object-cover" }))))), /* @__PURE__ */ import_react62.default.createElement("div", { className: "flex flex-col gap-6" }, /* @__PURE__ */ import_react62.default.createElement("div", { className: "bg-white rounded-3xl p-8 flex flex-col relative h-75" }, /* @__PURE__ */ import_react62.default.createElement("div", { className: "absolute top-6 right-6 flex flex-col items-end gap-1" }, /* @__PURE__ */ import_react62.default.createElement("span", { className: "text-[11px] text-neutral-400 tracking-wide" }, middleTopCard.topRightLabel), /* @__PURE__ */ import_react62.default.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ import_react62.default.createElement("div", { className: "flex -space-x-2" }, middleTopCard.topRightAvatars.map((src, i) => /* @__PURE__ */ import_react62.default.createElement("div", { key: i, className: "w-7 h-7 rounded-full border-2 border-white overflow-hidden relative z-10" }, /* @__PURE__ */ import_react62.default.createElement(import_image11.default, { src, alt: "Avatar", fill: true, className: "object-cover", sizes: "28px" })))), /* @__PURE__ */ import_react62.default.createElement("span", { className: "text-sm text-neutral-500" }, middleTopCard.topRightCount))), /* @__PURE__ */ import_react62.default.createElement("div", { className: "grow flex flex-col justify-center items-center py-6" }, /* @__PURE__ */ import_react62.default.createElement("div", { className: "px-5 py-2 rounded-full bg-neutral-50/50 border border-neutral-200 text-[13px] text-neutral-600" }, middleTopCard.badgePrefix, " ", /* @__PURE__ */ import_react62.default.createElement("span", { className: " text-black" }, middleTopCard.badgeHighlight), middleTopCard.badgeSuffix)), /* @__PURE__ */ import_react62.default.createElement("div", { className: "mt-auto" }, /* @__PURE__ */ import_react62.default.createElement("p", { className: "text-[11px] text-neutral-400 tracking-wide mb-1" }, middleTopCard.title), /* @__PURE__ */ import_react62.default.createElement("p", { className: "text-[14px] text-black leading-snug pr-4" }, middleTopCard.description))), /* @__PURE__ */ import_react62.default.createElement("div", { className: "bg-white rounded-3xl p-8 flex flex-col h-80" }, /* @__PURE__ */ import_react62.default.createElement("div", { className: "flex justify-between items-start mb-6" }, /* @__PURE__ */ import_react62.default.createElement("div", null, /* @__PURE__ */ import_react62.default.createElement("h4", { className: "text-[15px] text-black leading-tight" }, middleBottomCard.title), /* @__PURE__ */ import_react62.default.createElement("p", { className: "text-[13px] text-neutral-400" }, middleBottomCard.subtitle)), /* @__PURE__ */ import_react62.default.createElement("div", { className: "w-10 h-10 rounded-full overflow-hidden relative" }, /* @__PURE__ */ import_react62.default.createElement(import_image11.default, { src: middleBottomCard.thumbnailSrc, alt: middleBottomCard.title, fill: true, className: "object-cover" }))), /* @__PURE__ */ import_react62.default.createElement("div", { className: "mt-auto" }, /* @__PURE__ */ import_react62.default.createElement("p", { className: "text-[14px] text-black leading-snug mb-4" }, middleBottomCard.mainText), middleBottomCard.tag && /* @__PURE__ */ import_react62.default.createElement("span", { className: "text-[11px] text-neutral-400 tracking-widest" }, middleBottomCard.tag)))), /* @__PURE__ */ import_react62.default.createElement("div", { className: "flex flex-col gap-6" }, rightCards.slice(0, 2).map((card, idx) => {
3823
3821
  const isSecondCard = idx === 1;
3824
3822
  return /* @__PURE__ */ import_react62.default.createElement(
3825
3823
  "div",
@@ -4354,134 +4352,10 @@ var UniversalCardActionPage = ({
4354
4352
  ));
4355
4353
  };
4356
4354
 
4357
- // src/components/CardCreationDialog.tsx
4355
+ // src/components/PinDialerBottomSheet.tsx
4358
4356
  var import_react73 = __toESM(require("react"));
4359
- var import_axios2 = __toESM(require("axios"));
4360
- var import_react_hot_toast11 = __toESM(require("react-hot-toast"));
4361
4357
  var import_react74 = require("@hugeicons/react");
4362
4358
  var import_core_free_icons25 = require("@hugeicons/core-free-icons");
4363
- var CheckIcon3 = ({ className = "" }) => /* @__PURE__ */ import_react73.default.createElement("svg", { viewBox: "0 0 24 24", fill: "none", className: `w-4 h-4 shrink-0 ${className}`, xmlns: "http://www.w3.org/2000/svg" }, /* @__PURE__ */ import_react73.default.createElement("circle", { cx: "12", cy: "12", r: "10", fill: "black" }), /* @__PURE__ */ import_react73.default.createElement("path", { d: "M8 12L11 15L16 9", stroke: "white", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }));
4364
- var CrossIcon3 = ({ className = "" }) => /* @__PURE__ */ import_react73.default.createElement("svg", { viewBox: "0 0 24 24", fill: "none", className: `w-4 h-4 shrink-0 ${className}`, xmlns: "http://www.w3.org/2000/svg" }, /* @__PURE__ */ import_react73.default.createElement("circle", { cx: "12", cy: "12", r: "10", fill: "#F5F5F5" }), /* @__PURE__ */ import_react73.default.createElement("path", { d: "M15 9L9 15M9 9l6 6", stroke: "#D4D4D4", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }));
4365
- var formatTierName2 = (name) => {
4366
- if (!name) return "";
4367
- return name.charAt(0).toUpperCase() + name.slice(1).toLowerCase();
4368
- };
4369
- var CardCreationDialog = ({ isOpen, onClose, onSuccess }) => {
4370
- const [step, setStep] = (0, import_react73.useState)("INPUT");
4371
- const [activationCode, setActivationCode] = (0, import_react73.useState)("");
4372
- const [isProcessing, setIsProcessing] = (0, import_react73.useState)(false);
4373
- const [cardConfig, setCardConfig] = (0, import_react73.useState)(null);
4374
- const [useKyc, setUseKyc] = (0, import_react73.useState)(true);
4375
- const [agreedToTerms, setAgreedToTerms] = (0, import_react73.useState)(false);
4376
- if (!isOpen) return null;
4377
- const handleVerifyCode = async (e) => {
4378
- e.preventDefault();
4379
- const code = activationCode.trim().toUpperCase();
4380
- if (code.length < 3) return import_react_hot_toast11.default.error("Please enter a valid activation code.");
4381
- setIsProcessing(true);
4382
- try {
4383
- const res = await import_axios2.default.post("/api/cards/create", { activation_code: code });
4384
- if (res.data.success && res.data.payload?.config) {
4385
- setCardConfig(res.data.payload.config);
4386
- setStep("CONFIG");
4387
- setUseKyc(true);
4388
- setAgreedToTerms(false);
4389
- }
4390
- } catch (err) {
4391
- import_react_hot_toast11.default.error(err.response?.data?.error || "Invalid or expired activation code.");
4392
- } finally {
4393
- setIsProcessing(false);
4394
- }
4395
- };
4396
- const handleCreateCard = async () => {
4397
- if (!agreedToTerms) return import_react_hot_toast11.default.error("You must agree to the Terms and Privacy Policy.");
4398
- setIsProcessing(true);
4399
- try {
4400
- const res = await import_axios2.default.post("/api/beta/create", {
4401
- activation_code: activationCode.trim().toUpperCase(),
4402
- useKyc
4403
- });
4404
- if (res.data.success) {
4405
- import_react_hot_toast11.default.success("Card created successfully!");
4406
- onSuccess();
4407
- }
4408
- } catch (err) {
4409
- import_react_hot_toast11.default.error(err.response?.data?.error || "Failed to create card. Please try again.");
4410
- } finally {
4411
- setIsProcessing(false);
4412
- }
4413
- };
4414
- const currentPrice = cardConfig ? useKyc ? cardConfig.priceUSD : cardConfig.priceIfKycSkippedUSD : 0;
4415
- const canSkipKyc = cardConfig?.canSkipKyc && cardConfig?.priceIfKycSkippedUSD !== void 0;
4416
- const currentDescription = cardConfig ? useKyc ? cardConfig.description : cardConfig.descriptionIfKycSkipped : "";
4417
- const currentLimit = cardConfig ? useKyc ? cardConfig.cardBalanceLimit : cardConfig.cardBalanceLimitIfKycSkipped : "-";
4418
- const currentCashbackRate = cardConfig ? useKyc ? cardConfig.cashbackPercent : cardConfig.cashbackPercentIfKycSkipped : "-";
4419
- const currentFxFeeObj = cardConfig ? useKyc ? cardConfig.fxFee : cardConfig.fxFeeIfKycSkipped : null;
4420
- const fxFeeDisplay = currentFxFeeObj ? `$${currentFxFeeObj.fixedUSD} + ${currentFxFeeObj.percentage}%` : "Standard";
4421
- const instantCashback = cardConfig?.instantCashbackAmount || 0;
4422
- return /* @__PURE__ */ import_react73.default.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ import_react73.default.createElement("div", { className: "absolute inset-0 bg-black/40", onClick: () => !isProcessing && onClose() }), /* @__PURE__ */ import_react73.default.createElement("div", { className: "relative w-full max-w-md bg-white rounded-2xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200 max-h-[90vh]" }, /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex items-center justify-between p-5 shrink-0 relative z-10" }, /* @__PURE__ */ import_react73.default.createElement("h3", { className: "text-[15px] text-black tracking-tight" }, step === "INPUT" ? "Activate Card" : "Configure Your Card"), /* @__PURE__ */ import_react73.default.createElement(
4423
- "button",
4424
- {
4425
- disabled: isProcessing,
4426
- onClick: onClose,
4427
- className: "text-neutral-400 hover:text-black transition-colors outline-none disabled:opacity-50"
4428
- },
4429
- /* @__PURE__ */ import_react73.default.createElement(import_react74.HugeiconsIcon, { icon: import_core_free_icons25.CancelCircleIcon, size: 18 })
4430
- )), /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex-1 overflow-y-auto custom-scrollbar p-6 pt-2 relative z-10" }, step === "INPUT" && /* @__PURE__ */ import_react73.default.createElement("div", { className: "animate-in fade-in duration-300" }, /* @__PURE__ */ import_react73.default.createElement("p", { className: "text-xs text-neutral-500 mb-6" }, "Enter your secure invitation or activation code to begin the provisioning process."), /* @__PURE__ */ import_react73.default.createElement("form", { onSubmit: handleVerifyCode, className: "flex flex-col gap-6" }, /* @__PURE__ */ import_react73.default.createElement(
4431
- TextInput,
4432
- {
4433
- label: "Activation Code",
4434
- value: activationCode,
4435
- onChange: (val) => setActivationCode(val.toUpperCase().replace(/[^A-Z0-9]/g, "")),
4436
- placeholder: "Code",
4437
- disabled: isProcessing
4438
- }
4439
- ), /* @__PURE__ */ import_react73.default.createElement(
4440
- ThreeDActionButton,
4441
- {
4442
- type: "submit",
4443
- disabled: activationCode.length < 3 || isProcessing,
4444
- isLoading: isProcessing,
4445
- className: "w-full mt-2"
4446
- },
4447
- "Verify Code"
4448
- ))), step === "CONFIG" && cardConfig && /* @__PURE__ */ import_react73.default.createElement("div", { className: "animate-in fade-in slide-in-from-right-4 duration-300 flex flex-col gap-5" }, /* @__PURE__ */ import_react73.default.createElement("div", { className: "relative bg-white rounded-xl p-5 overflow-hidden flex flex-col" }, /* @__PURE__ */ import_react73.default.createElement("div", { className: `absolute -top-10 -right-10 w-40 h-40 bg-linear-to-bl from-[#ceff8a] to-transparent opacity-40 blur-2xl rounded-full pointer-events-none` }), /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex justify-between items-start mb-2 relative z-10" }, /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-black text-sm tracking-widest " }, cardConfig.name || `${formatTierName2(cardConfig.cardTier)} Card`), /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-[10px] tracking-widest px-2.5 py-1 rounded-full bg-white text-black " }, cardConfig.cardBrand || "VISA")), /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex items-baseline justify-between mt-2 relative z-10 flex-wrap gap-2" }, /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex items-baseline gap-1" }, /* @__PURE__ */ import_react73.default.createElement("h3", { className: "text-3xl font-light text-black" }, currentPrice === 0 ? "Free" : `$${currentPrice.toFixed(2)}`), currentPrice > 0 && /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-xs text-neutral-500" }, "issuance")), instantCashback > 0 && /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-[11px] text-white bg-[#143731] px-2.5 py-1 rounded-full" }, "+$", instantCashback.toFixed(2), " Instant Cashback")), /* @__PURE__ */ import_react73.default.createElement("p", { className: "text-[12px] text-neutral-500 mt-2 leading-relaxed relative z-10" }, currentDescription || "Premium global spending card.")), canSkipKyc && /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex items-center justify-between p-3.5 border border-neutral-200 rounded-xl bg-white" }, /* @__PURE__ */ import_react73.default.createElement("div", { className: "pr-4" }, /* @__PURE__ */ import_react73.default.createElement("p", { className: "text-[13px] text-black mb-0.5" }, "Use Verified Identity (KYC)"), /* @__PURE__ */ import_react73.default.createElement("p", { className: "text-[11px] text-neutral-500 leading-snug" }, "Turn off to issue card anonymously via synthetic proxy.")), /* @__PURE__ */ import_react73.default.createElement(
4449
- "button",
4450
- {
4451
- type: "button",
4452
- onClick: () => setUseKyc(!useKyc),
4453
- className: `relative w-11 h-6 rounded-full transition-colors duration-300 shrink-0 ${useKyc ? "bg-black" : "bg-neutral-100"}`
4454
- },
4455
- /* @__PURE__ */ import_react73.default.createElement("div", { className: `absolute top-1 left-1 w-4 h-4 rounded-full bg-white shadow-xs transition-transform duration-300 flex items-center justify-center ${useKyc ? "translate-x-5" : "translate-x-0"}` })
4456
- )), /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex flex-col gap-3 bg-neutral-50 p-4 rounded-xl" }, /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex justify-between items-center" }, /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-[10px] tracking-wider text-neutral-500 " }, "Balance Limit"), /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-[12px] text-black" }, currentLimit)), /* @__PURE__ */ import_react73.default.createElement("div", { className: "w-full h-px bg-neutral-100/60" }), /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex justify-between items-center" }, /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-[10px] tracking-wider text-neutral-500 " }, "Cashback Rate"), /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-[12px] text-black" }, currentCashbackRate)), /* @__PURE__ */ import_react73.default.createElement("div", { className: "w-full h-px bg-neutral-100/60" }), /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex justify-between items-center" }, /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-[10px] tracking-wider text-neutral-500 " }, "FX Fee"), /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-[12px] text-black" }, fxFeeDisplay))), cardConfig.features && cardConfig.features.length > 0 && /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex flex-col gap-2.5 my-1" }, cardConfig.features.map((feature, idx) => {
4457
- const isAvailable = feature.value !== false;
4458
- const valueText = typeof feature.value === "string" ? feature.value : "";
4459
- return /* @__PURE__ */ import_react73.default.createElement("div", { key: idx, className: "flex items-center gap-3" }, isAvailable ? /* @__PURE__ */ import_react73.default.createElement(CheckIcon3, null) : /* @__PURE__ */ import_react73.default.createElement(CrossIcon3, null), /* @__PURE__ */ import_react73.default.createElement("span", { className: `text-[12px] truncate ${isAvailable ? "text-neutral-800" : "text-neutral-400"}` }, feature.name, valueText && /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-neutral-500 ml-1" }, valueText)));
4460
- })), /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex items-start gap-3 mt-1" }, /* @__PURE__ */ import_react73.default.createElement(
4461
- "input",
4462
- {
4463
- type: "checkbox",
4464
- id: "card-terms",
4465
- checked: agreedToTerms,
4466
- onChange: (e) => setAgreedToTerms(e.target.checked),
4467
- className: "mt-0.5 w-4 h-4 bg-white border-neutral-300 rounded text-black focus:ring-black cursor-pointer shrink-0"
4468
- }
4469
- ), /* @__PURE__ */ import_react73.default.createElement("label", { htmlFor: "card-terms", className: "text-[11px] text-neutral-500 cursor-pointer leading-snug" }, "I agree to the ", /* @__PURE__ */ import_react73.default.createElement("a", { href: "https://aeona.finance/terms", target: "_blank", className: "text-black underline" }, "Terms of Service"), " and ", /* @__PURE__ */ import_react73.default.createElement("a", { href: "https://aeona.finance/privacy", target: "_blank", className: "text-black underline" }, "Privacy Policy"), " governing card issuance.")), /* @__PURE__ */ import_react73.default.createElement("div", { className: "bg-neutral-50 rounded-lg p-3" }, /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-[10px] tracking-[0.2em] text-neutral-400 block mb-1 " }, "Payment Notice"), /* @__PURE__ */ import_react73.default.createElement("span", { className: "text-[11px] text-neutral-600 leading-relaxed block" }, "By confirming, $", currentPrice.toFixed(2), " will be securely deducted from your USD asset balance to guarantee your order.")), /* @__PURE__ */ import_react73.default.createElement("div", { className: "mt-1" }, /* @__PURE__ */ import_react73.default.createElement(
4470
- ThreeDActionButton,
4471
- {
4472
- onClick: handleCreateCard,
4473
- isLoading: isProcessing,
4474
- disabled: !agreedToTerms || isProcessing,
4475
- className: "w-full"
4476
- },
4477
- "Create Card"
4478
- ))))));
4479
- };
4480
-
4481
- // src/components/PinDialerBottomSheet.tsx
4482
- var import_react75 = __toESM(require("react"));
4483
- var import_react76 = require("@hugeicons/react");
4484
- var import_core_free_icons26 = require("@hugeicons/core-free-icons");
4485
4359
  var PinDialerBottomSheet = ({
4486
4360
  isOpen,
4487
4361
  title = "Action Required",
@@ -4489,8 +4363,8 @@ var PinDialerBottomSheet = ({
4489
4363
  onClose,
4490
4364
  onComplete
4491
4365
  }) => {
4492
- const [pin, setPin] = (0, import_react75.useState)("");
4493
- (0, import_react75.useEffect)(() => {
4366
+ const [pin, setPin] = (0, import_react73.useState)("");
4367
+ (0, import_react73.useEffect)(() => {
4494
4368
  setPin("");
4495
4369
  }, [isOpen]);
4496
4370
  const handleSubmit = (e) => {
@@ -4499,7 +4373,7 @@ var PinDialerBottomSheet = ({
4499
4373
  onComplete(pin);
4500
4374
  };
4501
4375
  if (!isOpen) return null;
4502
- return /* @__PURE__ */ import_react75.default.createElement("div", { className: "fixed inset-0 z-150 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ import_react75.default.createElement(
4376
+ return /* @__PURE__ */ import_react73.default.createElement("div", { className: "fixed inset-0 z-150 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ import_react73.default.createElement(
4503
4377
  "div",
4504
4378
  {
4505
4379
  className: "absolute inset-0 bg-black/40 animate-in fade-in duration-200",
@@ -4507,7 +4381,7 @@ var PinDialerBottomSheet = ({
4507
4381
  if (!isVerifying) onClose();
4508
4382
  }
4509
4383
  }
4510
- ), /* @__PURE__ */ import_react75.default.createElement("div", { className: "relative w-full max-w-sm bg-white rounded-2xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200" }, /* @__PURE__ */ import_react75.default.createElement("div", { className: "flex items-center justify-between p-5 shrink-0" }, /* @__PURE__ */ import_react75.default.createElement("h3", { className: "text-[16px] text-black tracking-tight" }, title), /* @__PURE__ */ import_react75.default.createElement(
4384
+ ), /* @__PURE__ */ import_react73.default.createElement("div", { className: "relative w-full max-w-sm bg-white rounded-2xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200" }, /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex items-center justify-between p-5 shrink-0" }, /* @__PURE__ */ import_react73.default.createElement("h3", { className: "text-[16px] text-black tracking-tight" }, title), /* @__PURE__ */ import_react73.default.createElement(
4511
4385
  "button",
4512
4386
  {
4513
4387
  onClick: () => {
@@ -4516,8 +4390,8 @@ var PinDialerBottomSheet = ({
4516
4390
  disabled: isVerifying,
4517
4391
  className: "text-neutral-400 hover:text-black transition-colors outline-none disabled:opacity-50"
4518
4392
  },
4519
- /* @__PURE__ */ import_react75.default.createElement(import_react76.HugeiconsIcon, { icon: import_core_free_icons26.CancelCircleIcon, size: 20 })
4520
- )), /* @__PURE__ */ import_react75.default.createElement("div", { className: "flex flex-col px-6 pb-6 pt-2 relative" }, /* @__PURE__ */ import_react75.default.createElement("form", { onSubmit: handleSubmit, className: "flex flex-col gap-6" }, /* @__PURE__ */ import_react75.default.createElement(
4393
+ /* @__PURE__ */ import_react73.default.createElement(import_react74.HugeiconsIcon, { icon: import_core_free_icons25.CancelCircleIcon, size: 20 })
4394
+ )), /* @__PURE__ */ import_react73.default.createElement("div", { className: "flex flex-col px-6 pb-6 pt-2 relative" }, /* @__PURE__ */ import_react73.default.createElement("form", { onSubmit: handleSubmit, className: "flex flex-col gap-6" }, /* @__PURE__ */ import_react73.default.createElement(
4521
4395
  TextInput,
4522
4396
  {
4523
4397
  type: "password",
@@ -4528,7 +4402,7 @@ var PinDialerBottomSheet = ({
4528
4402
  onChange: (val) => setPin(val.replace(/\D/g, "").substring(0, 4)),
4529
4403
  placeholder: "\u2022\u2022\u2022\u2022"
4530
4404
  }
4531
- ), /* @__PURE__ */ import_react75.default.createElement("div", { className: "pt-2" }, /* @__PURE__ */ import_react75.default.createElement(
4405
+ ), /* @__PURE__ */ import_react73.default.createElement("div", { className: "pt-2" }, /* @__PURE__ */ import_react73.default.createElement(
4532
4406
  ThreeDActionButton,
4533
4407
  {
4534
4408
  type: "submit",
@@ -4542,7 +4416,6 @@ var PinDialerBottomSheet = ({
4542
4416
  // Annotate the CommonJS export names for ESM import in node:
4543
4417
  0 && (module.exports = {
4544
4418
  AppBento2,
4545
- CardCreationDialog,
4546
4419
  ConsultantShowcase,
4547
4420
  ContentGridBlock,
4548
4421
  Faq,
package/dist/index.mjs CHANGED
@@ -1394,8 +1394,7 @@ var UniversalTransactionPage = ({
1394
1394
  {
1395
1395
  onClick: handleGenerateReceipt,
1396
1396
  isLoading: isGeneratingReceipt,
1397
- className: "hidden",
1398
- style: { display: "none" }
1397
+ className: "w-full hidden"
1399
1398
  },
1400
1399
  "Generate Receipt"
1401
1400
  ), /* @__PURE__ */ React15.createElement(
@@ -3605,7 +3604,7 @@ var PortfolioHero = ({
3605
3604
  Link8,
3606
3605
  {
3607
3606
  href: secondaryCtaHref,
3608
- className: "w-full sm:w-auto inline-flex items-center justify-center gap-3 text-[11px] tracking-[0.2em] rounded-full px-8 py-3.5 bg-neutral-100 transition-colors text-black hover:bg-neutral-50 outline-none"
3607
+ className: "w-full sm:w-auto inline-flex items-center justify-center gap-3 text-[11px] tracking-[0.2em] rounded-full px-8 py-3.5 bg-neutral-200 transition-colors text-black hover:bg-neutral-50 outline-none"
3609
3608
  },
3610
3609
  secondaryCtaText,
3611
3610
  /* @__PURE__ */ React34.createElement(HugeiconsIcon22, { icon: ArrowRight01Icon7, size: 16 })
@@ -3814,7 +3813,7 @@ var ContentGridBlock = ({
3814
3813
  middleBottomCard,
3815
3814
  rightCards
3816
3815
  }) => {
3817
- return /* @__PURE__ */ React38.createElement("section", { className: " w-full flex justify-center z-10 relative" }, /* @__PURE__ */ React38.createElement("div", { className: "max-w-300 w-full px-4 md:px-8 flex flex-col gap-12" }, /* @__PURE__ */ React38.createElement("div", { className: "flex flex-col lg:flex-row justify-between items-start lg:items-end gap-6 w-full" }, /* @__PURE__ */ React38.createElement("h2", { className: "text-3xl tracking-tight text-black leading-[1.15] max-w-lg" }, header.titlePrefix, " ", /* @__PURE__ */ React38.createElement("span", { className: "gradient-text" }, header.highlightText))), /* @__PURE__ */ React38.createElement("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6" }, /* @__PURE__ */ React38.createElement("div", { className: "flex flex-col justify-end" }, /* @__PURE__ */ React38.createElement("div", { className: "bg-black rounded-3xl p-8 flex flex-col h-80" }, /* @__PURE__ */ React38.createElement("p", { className: "text-[17px] text-white leading-snug mb-4" }, leftCard.mainText), leftCard.tag && /* @__PURE__ */ React38.createElement("span", { className: "mb-auto text-[11px] text-neutral-100 tracking-widest" }, leftCard.tag), /* @__PURE__ */ React38.createElement("div", { className: "flex items-center justify-between mt-8" }, /* @__PURE__ */ React38.createElement("div", null, /* @__PURE__ */ React38.createElement("h4", { className: "text-[15px] text-white" }, leftCard.title), /* @__PURE__ */ React38.createElement("p", { className: "text-[13px] text-neutral-300" }, leftCard.subtitle)), /* @__PURE__ */ React38.createElement("div", { className: "w-10 h-10 rounded-full overflow-hidden relative" }, /* @__PURE__ */ React38.createElement(Image12, { src: leftCard.thumbnailSrc, alt: leftCard.title, fill: true, className: "object-cover" }))))), /* @__PURE__ */ React38.createElement("div", { className: "flex flex-col gap-6" }, /* @__PURE__ */ React38.createElement("div", { className: "bg-white rounded-3xl p-8 flex flex-col relative h-75" }, /* @__PURE__ */ React38.createElement("div", { className: "absolute top-6 right-6 flex flex-col items-end gap-1" }, /* @__PURE__ */ React38.createElement("span", { className: "text-[11px] text-neutral-400 tracking-wide" }, middleTopCard.topRightLabel), /* @__PURE__ */ React38.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ React38.createElement("div", { className: "flex -space-x-2" }, middleTopCard.topRightAvatars.map((src, i) => /* @__PURE__ */ React38.createElement("div", { key: i, className: "w-7 h-7 rounded-full border-2 border-white overflow-hidden relative z-10" }, /* @__PURE__ */ React38.createElement(Image12, { src, alt: "Avatar", fill: true, className: "object-cover", sizes: "28px" })))), /* @__PURE__ */ React38.createElement("span", { className: "text-sm text-neutral-500" }, middleTopCard.topRightCount))), /* @__PURE__ */ React38.createElement("div", { className: "grow flex flex-col justify-center items-center py-6" }, /* @__PURE__ */ React38.createElement("div", { className: "px-5 py-2 rounded-full bg-neutral-50/50 border border-neutral-200 text-[13px] text-neutral-600" }, middleTopCard.badgePrefix, " ", /* @__PURE__ */ React38.createElement("span", { className: " text-black" }, middleTopCard.badgeHighlight), middleTopCard.badgeSuffix)), /* @__PURE__ */ React38.createElement("div", { className: "mt-auto" }, /* @__PURE__ */ React38.createElement("p", { className: "text-[11px] text-neutral-400 tracking-wide mb-1" }, middleTopCard.title), /* @__PURE__ */ React38.createElement("p", { className: "text-[14px] text-black leading-snug pr-4" }, middleTopCard.description))), /* @__PURE__ */ React38.createElement("div", { className: "bg-white rounded-3xl p-8 flex flex-col h-80" }, /* @__PURE__ */ React38.createElement("div", { className: "flex justify-between items-start mb-6" }, /* @__PURE__ */ React38.createElement("div", null, /* @__PURE__ */ React38.createElement("h4", { className: "text-[15px] text-black leading-tight" }, middleBottomCard.title), /* @__PURE__ */ React38.createElement("p", { className: "text-[13px] text-neutral-400" }, middleBottomCard.subtitle)), /* @__PURE__ */ React38.createElement("div", { className: "w-10 h-10 rounded-full overflow-hidden relative" }, /* @__PURE__ */ React38.createElement(Image12, { src: middleBottomCard.thumbnailSrc, alt: middleBottomCard.title, fill: true, className: "object-cover" }))), /* @__PURE__ */ React38.createElement("div", { className: "mt-auto" }, /* @__PURE__ */ React38.createElement("p", { className: "text-[16px] text-black leading-snug mb-4" }, middleBottomCard.mainText), middleBottomCard.tag && /* @__PURE__ */ React38.createElement("span", { className: "text-[11px] text-neutral-400 tracking-widest" }, middleBottomCard.tag)))), /* @__PURE__ */ React38.createElement("div", { className: "flex flex-col gap-6" }, rightCards.slice(0, 2).map((card, idx) => {
3816
+ return /* @__PURE__ */ React38.createElement("section", { className: " w-full flex justify-center z-10 relative" }, /* @__PURE__ */ React38.createElement("div", { className: "max-w-300 w-full px-4 md:px-8 flex flex-col gap-12" }, /* @__PURE__ */ React38.createElement("div", { className: "flex flex-col lg:flex-row justify-between items-start lg:items-end gap-6 w-full" }, /* @__PURE__ */ React38.createElement("h2", { className: "text-3xl tracking-tight text-black leading-[1.15] max-w-lg" }, header.titlePrefix, " ", /* @__PURE__ */ React38.createElement("span", { className: "gradient-text" }, header.highlightText))), /* @__PURE__ */ React38.createElement("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6" }, /* @__PURE__ */ React38.createElement("div", { className: "flex flex-col justify-end" }, /* @__PURE__ */ React38.createElement("div", { className: "bg-black rounded-3xl p-8 flex flex-col h-80" }, /* @__PURE__ */ React38.createElement("p", { className: "text-[17px] text-white leading-snug mb-4" }, leftCard.mainText), leftCard.tag && /* @__PURE__ */ React38.createElement("span", { className: "mb-auto text-[11px] text-neutral-100 tracking-widest" }, leftCard.tag), /* @__PURE__ */ React38.createElement("div", { className: "flex items-center justify-between mt-8" }, /* @__PURE__ */ React38.createElement("div", null, /* @__PURE__ */ React38.createElement("h4", { className: "text-[15px] text-white" }, leftCard.title), /* @__PURE__ */ React38.createElement("p", { className: "text-[13px] text-neutral-300" }, leftCard.subtitle)), /* @__PURE__ */ React38.createElement("div", { className: "w-10 h-10 rounded-full overflow-hidden relative" }, /* @__PURE__ */ React38.createElement(Image12, { src: leftCard.thumbnailSrc, alt: leftCard.title, fill: true, className: "object-cover" }))))), /* @__PURE__ */ React38.createElement("div", { className: "flex flex-col gap-6" }, /* @__PURE__ */ React38.createElement("div", { className: "bg-white rounded-3xl p-8 flex flex-col relative h-75" }, /* @__PURE__ */ React38.createElement("div", { className: "absolute top-6 right-6 flex flex-col items-end gap-1" }, /* @__PURE__ */ React38.createElement("span", { className: "text-[11px] text-neutral-400 tracking-wide" }, middleTopCard.topRightLabel), /* @__PURE__ */ React38.createElement("div", { className: "flex items-center gap-2" }, /* @__PURE__ */ React38.createElement("div", { className: "flex -space-x-2" }, middleTopCard.topRightAvatars.map((src, i) => /* @__PURE__ */ React38.createElement("div", { key: i, className: "w-7 h-7 rounded-full border-2 border-white overflow-hidden relative z-10" }, /* @__PURE__ */ React38.createElement(Image12, { src, alt: "Avatar", fill: true, className: "object-cover", sizes: "28px" })))), /* @__PURE__ */ React38.createElement("span", { className: "text-sm text-neutral-500" }, middleTopCard.topRightCount))), /* @__PURE__ */ React38.createElement("div", { className: "grow flex flex-col justify-center items-center py-6" }, /* @__PURE__ */ React38.createElement("div", { className: "px-5 py-2 rounded-full bg-neutral-50/50 border border-neutral-200 text-[13px] text-neutral-600" }, middleTopCard.badgePrefix, " ", /* @__PURE__ */ React38.createElement("span", { className: " text-black" }, middleTopCard.badgeHighlight), middleTopCard.badgeSuffix)), /* @__PURE__ */ React38.createElement("div", { className: "mt-auto" }, /* @__PURE__ */ React38.createElement("p", { className: "text-[11px] text-neutral-400 tracking-wide mb-1" }, middleTopCard.title), /* @__PURE__ */ React38.createElement("p", { className: "text-[14px] text-black leading-snug pr-4" }, middleTopCard.description))), /* @__PURE__ */ React38.createElement("div", { className: "bg-white rounded-3xl p-8 flex flex-col h-80" }, /* @__PURE__ */ React38.createElement("div", { className: "flex justify-between items-start mb-6" }, /* @__PURE__ */ React38.createElement("div", null, /* @__PURE__ */ React38.createElement("h4", { className: "text-[15px] text-black leading-tight" }, middleBottomCard.title), /* @__PURE__ */ React38.createElement("p", { className: "text-[13px] text-neutral-400" }, middleBottomCard.subtitle)), /* @__PURE__ */ React38.createElement("div", { className: "w-10 h-10 rounded-full overflow-hidden relative" }, /* @__PURE__ */ React38.createElement(Image12, { src: middleBottomCard.thumbnailSrc, alt: middleBottomCard.title, fill: true, className: "object-cover" }))), /* @__PURE__ */ React38.createElement("div", { className: "mt-auto" }, /* @__PURE__ */ React38.createElement("p", { className: "text-[14px] text-black leading-snug mb-4" }, middleBottomCard.mainText), middleBottomCard.tag && /* @__PURE__ */ React38.createElement("span", { className: "text-[11px] text-neutral-400 tracking-widest" }, middleBottomCard.tag)))), /* @__PURE__ */ React38.createElement("div", { className: "flex flex-col gap-6" }, rightCards.slice(0, 2).map((card, idx) => {
3818
3817
  const isSecondCard = idx === 1;
3819
3818
  return /* @__PURE__ */ React38.createElement(
3820
3819
  "div",
@@ -4371,134 +4370,10 @@ var UniversalCardActionPage = ({
4371
4370
  ));
4372
4371
  };
4373
4372
 
4374
- // src/components/CardCreationDialog.tsx
4375
- import React44, { useState as useState29 } from "react";
4376
- import axios2 from "axios";
4377
- import toast10 from "react-hot-toast";
4373
+ // src/components/PinDialerBottomSheet.tsx
4374
+ import React44, { useState as useState29, useEffect as useEffect17 } from "react";
4378
4375
  import { HugeiconsIcon as HugeiconsIcon30 } from "@hugeicons/react";
4379
4376
  import { CancelCircleIcon as CancelCircleIcon7 } from "@hugeicons/core-free-icons";
4380
- var CheckIcon3 = ({ className = "" }) => /* @__PURE__ */ React44.createElement("svg", { viewBox: "0 0 24 24", fill: "none", className: `w-4 h-4 shrink-0 ${className}`, xmlns: "http://www.w3.org/2000/svg" }, /* @__PURE__ */ React44.createElement("circle", { cx: "12", cy: "12", r: "10", fill: "black" }), /* @__PURE__ */ React44.createElement("path", { d: "M8 12L11 15L16 9", stroke: "white", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }));
4381
- var CrossIcon3 = ({ className = "" }) => /* @__PURE__ */ React44.createElement("svg", { viewBox: "0 0 24 24", fill: "none", className: `w-4 h-4 shrink-0 ${className}`, xmlns: "http://www.w3.org/2000/svg" }, /* @__PURE__ */ React44.createElement("circle", { cx: "12", cy: "12", r: "10", fill: "#F5F5F5" }), /* @__PURE__ */ React44.createElement("path", { d: "M15 9L9 15M9 9l6 6", stroke: "#D4D4D4", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }));
4382
- var formatTierName2 = (name) => {
4383
- if (!name) return "";
4384
- return name.charAt(0).toUpperCase() + name.slice(1).toLowerCase();
4385
- };
4386
- var CardCreationDialog = ({ isOpen, onClose, onSuccess }) => {
4387
- const [step, setStep] = useState29("INPUT");
4388
- const [activationCode, setActivationCode] = useState29("");
4389
- const [isProcessing, setIsProcessing] = useState29(false);
4390
- const [cardConfig, setCardConfig] = useState29(null);
4391
- const [useKyc, setUseKyc] = useState29(true);
4392
- const [agreedToTerms, setAgreedToTerms] = useState29(false);
4393
- if (!isOpen) return null;
4394
- const handleVerifyCode = async (e) => {
4395
- e.preventDefault();
4396
- const code = activationCode.trim().toUpperCase();
4397
- if (code.length < 3) return toast10.error("Please enter a valid activation code.");
4398
- setIsProcessing(true);
4399
- try {
4400
- const res = await axios2.post("/api/cards/create", { activation_code: code });
4401
- if (res.data.success && res.data.payload?.config) {
4402
- setCardConfig(res.data.payload.config);
4403
- setStep("CONFIG");
4404
- setUseKyc(true);
4405
- setAgreedToTerms(false);
4406
- }
4407
- } catch (err) {
4408
- toast10.error(err.response?.data?.error || "Invalid or expired activation code.");
4409
- } finally {
4410
- setIsProcessing(false);
4411
- }
4412
- };
4413
- const handleCreateCard = async () => {
4414
- if (!agreedToTerms) return toast10.error("You must agree to the Terms and Privacy Policy.");
4415
- setIsProcessing(true);
4416
- try {
4417
- const res = await axios2.post("/api/beta/create", {
4418
- activation_code: activationCode.trim().toUpperCase(),
4419
- useKyc
4420
- });
4421
- if (res.data.success) {
4422
- toast10.success("Card created successfully!");
4423
- onSuccess();
4424
- }
4425
- } catch (err) {
4426
- toast10.error(err.response?.data?.error || "Failed to create card. Please try again.");
4427
- } finally {
4428
- setIsProcessing(false);
4429
- }
4430
- };
4431
- const currentPrice = cardConfig ? useKyc ? cardConfig.priceUSD : cardConfig.priceIfKycSkippedUSD : 0;
4432
- const canSkipKyc = cardConfig?.canSkipKyc && cardConfig?.priceIfKycSkippedUSD !== void 0;
4433
- const currentDescription = cardConfig ? useKyc ? cardConfig.description : cardConfig.descriptionIfKycSkipped : "";
4434
- const currentLimit = cardConfig ? useKyc ? cardConfig.cardBalanceLimit : cardConfig.cardBalanceLimitIfKycSkipped : "-";
4435
- const currentCashbackRate = cardConfig ? useKyc ? cardConfig.cashbackPercent : cardConfig.cashbackPercentIfKycSkipped : "-";
4436
- const currentFxFeeObj = cardConfig ? useKyc ? cardConfig.fxFee : cardConfig.fxFeeIfKycSkipped : null;
4437
- const fxFeeDisplay = currentFxFeeObj ? `$${currentFxFeeObj.fixedUSD} + ${currentFxFeeObj.percentage}%` : "Standard";
4438
- const instantCashback = cardConfig?.instantCashbackAmount || 0;
4439
- return /* @__PURE__ */ React44.createElement("div", { className: "fixed inset-0 z-120 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ React44.createElement("div", { className: "absolute inset-0 bg-black/40", onClick: () => !isProcessing && onClose() }), /* @__PURE__ */ React44.createElement("div", { className: "relative w-full max-w-md bg-white rounded-2xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200 max-h-[90vh]" }, /* @__PURE__ */ React44.createElement("div", { className: "flex items-center justify-between p-5 shrink-0 relative z-10" }, /* @__PURE__ */ React44.createElement("h3", { className: "text-[15px] text-black tracking-tight" }, step === "INPUT" ? "Activate Card" : "Configure Your Card"), /* @__PURE__ */ React44.createElement(
4440
- "button",
4441
- {
4442
- disabled: isProcessing,
4443
- onClick: onClose,
4444
- className: "text-neutral-400 hover:text-black transition-colors outline-none disabled:opacity-50"
4445
- },
4446
- /* @__PURE__ */ React44.createElement(HugeiconsIcon30, { icon: CancelCircleIcon7, size: 18 })
4447
- )), /* @__PURE__ */ React44.createElement("div", { className: "flex-1 overflow-y-auto custom-scrollbar p-6 pt-2 relative z-10" }, step === "INPUT" && /* @__PURE__ */ React44.createElement("div", { className: "animate-in fade-in duration-300" }, /* @__PURE__ */ React44.createElement("p", { className: "text-xs text-neutral-500 mb-6" }, "Enter your secure invitation or activation code to begin the provisioning process."), /* @__PURE__ */ React44.createElement("form", { onSubmit: handleVerifyCode, className: "flex flex-col gap-6" }, /* @__PURE__ */ React44.createElement(
4448
- TextInput,
4449
- {
4450
- label: "Activation Code",
4451
- value: activationCode,
4452
- onChange: (val) => setActivationCode(val.toUpperCase().replace(/[^A-Z0-9]/g, "")),
4453
- placeholder: "Code",
4454
- disabled: isProcessing
4455
- }
4456
- ), /* @__PURE__ */ React44.createElement(
4457
- ThreeDActionButton,
4458
- {
4459
- type: "submit",
4460
- disabled: activationCode.length < 3 || isProcessing,
4461
- isLoading: isProcessing,
4462
- className: "w-full mt-2"
4463
- },
4464
- "Verify Code"
4465
- ))), step === "CONFIG" && cardConfig && /* @__PURE__ */ React44.createElement("div", { className: "animate-in fade-in slide-in-from-right-4 duration-300 flex flex-col gap-5" }, /* @__PURE__ */ React44.createElement("div", { className: "relative bg-white rounded-xl p-5 overflow-hidden flex flex-col" }, /* @__PURE__ */ React44.createElement("div", { className: `absolute -top-10 -right-10 w-40 h-40 bg-linear-to-bl from-[#ceff8a] to-transparent opacity-40 blur-2xl rounded-full pointer-events-none` }), /* @__PURE__ */ React44.createElement("div", { className: "flex justify-between items-start mb-2 relative z-10" }, /* @__PURE__ */ React44.createElement("span", { className: "text-black text-sm tracking-widest " }, cardConfig.name || `${formatTierName2(cardConfig.cardTier)} Card`), /* @__PURE__ */ React44.createElement("span", { className: "text-[10px] tracking-widest px-2.5 py-1 rounded-full bg-white text-black " }, cardConfig.cardBrand || "VISA")), /* @__PURE__ */ React44.createElement("div", { className: "flex items-baseline justify-between mt-2 relative z-10 flex-wrap gap-2" }, /* @__PURE__ */ React44.createElement("div", { className: "flex items-baseline gap-1" }, /* @__PURE__ */ React44.createElement("h3", { className: "text-3xl font-light text-black" }, currentPrice === 0 ? "Free" : `$${currentPrice.toFixed(2)}`), currentPrice > 0 && /* @__PURE__ */ React44.createElement("span", { className: "text-xs text-neutral-500" }, "issuance")), instantCashback > 0 && /* @__PURE__ */ React44.createElement("span", { className: "text-[11px] text-white bg-[#143731] px-2.5 py-1 rounded-full" }, "+$", instantCashback.toFixed(2), " Instant Cashback")), /* @__PURE__ */ React44.createElement("p", { className: "text-[12px] text-neutral-500 mt-2 leading-relaxed relative z-10" }, currentDescription || "Premium global spending card.")), canSkipKyc && /* @__PURE__ */ React44.createElement("div", { className: "flex items-center justify-between p-3.5 border border-neutral-200 rounded-xl bg-white" }, /* @__PURE__ */ React44.createElement("div", { className: "pr-4" }, /* @__PURE__ */ React44.createElement("p", { className: "text-[13px] text-black mb-0.5" }, "Use Verified Identity (KYC)"), /* @__PURE__ */ React44.createElement("p", { className: "text-[11px] text-neutral-500 leading-snug" }, "Turn off to issue card anonymously via synthetic proxy.")), /* @__PURE__ */ React44.createElement(
4466
- "button",
4467
- {
4468
- type: "button",
4469
- onClick: () => setUseKyc(!useKyc),
4470
- className: `relative w-11 h-6 rounded-full transition-colors duration-300 shrink-0 ${useKyc ? "bg-black" : "bg-neutral-100"}`
4471
- },
4472
- /* @__PURE__ */ React44.createElement("div", { className: `absolute top-1 left-1 w-4 h-4 rounded-full bg-white shadow-xs transition-transform duration-300 flex items-center justify-center ${useKyc ? "translate-x-5" : "translate-x-0"}` })
4473
- )), /* @__PURE__ */ React44.createElement("div", { className: "flex flex-col gap-3 bg-neutral-50 p-4 rounded-xl" }, /* @__PURE__ */ React44.createElement("div", { className: "flex justify-between items-center" }, /* @__PURE__ */ React44.createElement("span", { className: "text-[10px] tracking-wider text-neutral-500 " }, "Balance Limit"), /* @__PURE__ */ React44.createElement("span", { className: "text-[12px] text-black" }, currentLimit)), /* @__PURE__ */ React44.createElement("div", { className: "w-full h-px bg-neutral-100/60" }), /* @__PURE__ */ React44.createElement("div", { className: "flex justify-between items-center" }, /* @__PURE__ */ React44.createElement("span", { className: "text-[10px] tracking-wider text-neutral-500 " }, "Cashback Rate"), /* @__PURE__ */ React44.createElement("span", { className: "text-[12px] text-black" }, currentCashbackRate)), /* @__PURE__ */ React44.createElement("div", { className: "w-full h-px bg-neutral-100/60" }), /* @__PURE__ */ React44.createElement("div", { className: "flex justify-between items-center" }, /* @__PURE__ */ React44.createElement("span", { className: "text-[10px] tracking-wider text-neutral-500 " }, "FX Fee"), /* @__PURE__ */ React44.createElement("span", { className: "text-[12px] text-black" }, fxFeeDisplay))), cardConfig.features && cardConfig.features.length > 0 && /* @__PURE__ */ React44.createElement("div", { className: "flex flex-col gap-2.5 my-1" }, cardConfig.features.map((feature, idx) => {
4474
- const isAvailable = feature.value !== false;
4475
- const valueText = typeof feature.value === "string" ? feature.value : "";
4476
- return /* @__PURE__ */ React44.createElement("div", { key: idx, className: "flex items-center gap-3" }, isAvailable ? /* @__PURE__ */ React44.createElement(CheckIcon3, null) : /* @__PURE__ */ React44.createElement(CrossIcon3, null), /* @__PURE__ */ React44.createElement("span", { className: `text-[12px] truncate ${isAvailable ? "text-neutral-800" : "text-neutral-400"}` }, feature.name, valueText && /* @__PURE__ */ React44.createElement("span", { className: "text-neutral-500 ml-1" }, valueText)));
4477
- })), /* @__PURE__ */ React44.createElement("div", { className: "flex items-start gap-3 mt-1" }, /* @__PURE__ */ React44.createElement(
4478
- "input",
4479
- {
4480
- type: "checkbox",
4481
- id: "card-terms",
4482
- checked: agreedToTerms,
4483
- onChange: (e) => setAgreedToTerms(e.target.checked),
4484
- className: "mt-0.5 w-4 h-4 bg-white border-neutral-300 rounded text-black focus:ring-black cursor-pointer shrink-0"
4485
- }
4486
- ), /* @__PURE__ */ React44.createElement("label", { htmlFor: "card-terms", className: "text-[11px] text-neutral-500 cursor-pointer leading-snug" }, "I agree to the ", /* @__PURE__ */ React44.createElement("a", { href: "https://aeona.finance/terms", target: "_blank", className: "text-black underline" }, "Terms of Service"), " and ", /* @__PURE__ */ React44.createElement("a", { href: "https://aeona.finance/privacy", target: "_blank", className: "text-black underline" }, "Privacy Policy"), " governing card issuance.")), /* @__PURE__ */ React44.createElement("div", { className: "bg-neutral-50 rounded-lg p-3" }, /* @__PURE__ */ React44.createElement("span", { className: "text-[10px] tracking-[0.2em] text-neutral-400 block mb-1 " }, "Payment Notice"), /* @__PURE__ */ React44.createElement("span", { className: "text-[11px] text-neutral-600 leading-relaxed block" }, "By confirming, $", currentPrice.toFixed(2), " will be securely deducted from your USD asset balance to guarantee your order.")), /* @__PURE__ */ React44.createElement("div", { className: "mt-1" }, /* @__PURE__ */ React44.createElement(
4487
- ThreeDActionButton,
4488
- {
4489
- onClick: handleCreateCard,
4490
- isLoading: isProcessing,
4491
- disabled: !agreedToTerms || isProcessing,
4492
- className: "w-full"
4493
- },
4494
- "Create Card"
4495
- ))))));
4496
- };
4497
-
4498
- // src/components/PinDialerBottomSheet.tsx
4499
- import React45, { useState as useState30, useEffect as useEffect17 } from "react";
4500
- import { HugeiconsIcon as HugeiconsIcon31 } from "@hugeicons/react";
4501
- import { CancelCircleIcon as CancelCircleIcon8 } from "@hugeicons/core-free-icons";
4502
4377
  var PinDialerBottomSheet = ({
4503
4378
  isOpen,
4504
4379
  title = "Action Required",
@@ -4506,7 +4381,7 @@ var PinDialerBottomSheet = ({
4506
4381
  onClose,
4507
4382
  onComplete
4508
4383
  }) => {
4509
- const [pin, setPin] = useState30("");
4384
+ const [pin, setPin] = useState29("");
4510
4385
  useEffect17(() => {
4511
4386
  setPin("");
4512
4387
  }, [isOpen]);
@@ -4516,7 +4391,7 @@ var PinDialerBottomSheet = ({
4516
4391
  onComplete(pin);
4517
4392
  };
4518
4393
  if (!isOpen) return null;
4519
- return /* @__PURE__ */ React45.createElement("div", { className: "fixed inset-0 z-150 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ React45.createElement(
4394
+ return /* @__PURE__ */ React44.createElement("div", { className: "fixed inset-0 z-150 flex items-center justify-center p-4 pointer-events-auto" }, /* @__PURE__ */ React44.createElement(
4520
4395
  "div",
4521
4396
  {
4522
4397
  className: "absolute inset-0 bg-black/40 animate-in fade-in duration-200",
@@ -4524,7 +4399,7 @@ var PinDialerBottomSheet = ({
4524
4399
  if (!isVerifying) onClose();
4525
4400
  }
4526
4401
  }
4527
- ), /* @__PURE__ */ React45.createElement("div", { className: "relative w-full max-w-sm bg-white rounded-2xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200" }, /* @__PURE__ */ React45.createElement("div", { className: "flex items-center justify-between p-5 shrink-0" }, /* @__PURE__ */ React45.createElement("h3", { className: "text-[16px] text-black tracking-tight" }, title), /* @__PURE__ */ React45.createElement(
4402
+ ), /* @__PURE__ */ React44.createElement("div", { className: "relative w-full max-w-sm bg-white rounded-2xl flex flex-col overflow-hidden shadow-2xl animate-in zoom-in-95 duration-200" }, /* @__PURE__ */ React44.createElement("div", { className: "flex items-center justify-between p-5 shrink-0" }, /* @__PURE__ */ React44.createElement("h3", { className: "text-[16px] text-black tracking-tight" }, title), /* @__PURE__ */ React44.createElement(
4528
4403
  "button",
4529
4404
  {
4530
4405
  onClick: () => {
@@ -4533,8 +4408,8 @@ var PinDialerBottomSheet = ({
4533
4408
  disabled: isVerifying,
4534
4409
  className: "text-neutral-400 hover:text-black transition-colors outline-none disabled:opacity-50"
4535
4410
  },
4536
- /* @__PURE__ */ React45.createElement(HugeiconsIcon31, { icon: CancelCircleIcon8, size: 20 })
4537
- )), /* @__PURE__ */ React45.createElement("div", { className: "flex flex-col px-6 pb-6 pt-2 relative" }, /* @__PURE__ */ React45.createElement("form", { onSubmit: handleSubmit, className: "flex flex-col gap-6" }, /* @__PURE__ */ React45.createElement(
4411
+ /* @__PURE__ */ React44.createElement(HugeiconsIcon30, { icon: CancelCircleIcon7, size: 20 })
4412
+ )), /* @__PURE__ */ React44.createElement("div", { className: "flex flex-col px-6 pb-6 pt-2 relative" }, /* @__PURE__ */ React44.createElement("form", { onSubmit: handleSubmit, className: "flex flex-col gap-6" }, /* @__PURE__ */ React44.createElement(
4538
4413
  TextInput,
4539
4414
  {
4540
4415
  type: "password",
@@ -4545,7 +4420,7 @@ var PinDialerBottomSheet = ({
4545
4420
  onChange: (val) => setPin(val.replace(/\D/g, "").substring(0, 4)),
4546
4421
  placeholder: "\u2022\u2022\u2022\u2022"
4547
4422
  }
4548
- ), /* @__PURE__ */ React45.createElement("div", { className: "pt-2" }, /* @__PURE__ */ React45.createElement(
4423
+ ), /* @__PURE__ */ React44.createElement("div", { className: "pt-2" }, /* @__PURE__ */ React44.createElement(
4549
4424
  ThreeDActionButton,
4550
4425
  {
4551
4426
  type: "submit",
@@ -4558,7 +4433,6 @@ var PinDialerBottomSheet = ({
4558
4433
  };
4559
4434
  export {
4560
4435
  AppBento2,
4561
- CardCreationDialog,
4562
4436
  ConsultantShowcase,
4563
4437
  ContentGridBlock,
4564
4438
  Faq,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@retinalabsllc/zairusjs",
3
- "version": "15.0.55",
3
+ "version": "15.0.70",
4
4
  "description": "A perceptive, Ai data driven Next.js UI component library.",
5
5
  "author": "Retina Labs Company",
6
6
  "license": "MIT",