braid-ui 1.0.52 → 1.0.54

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.cts CHANGED
@@ -5,7 +5,6 @@ import React__default, { ReactNode } from 'react';
5
5
  import { UseFormReturn, FieldValues, FieldPath, UseFormProps, Path } from 'react-hook-form';
6
6
  import * as class_variance_authority_dist_types from 'class-variance-authority/dist/types';
7
7
  import { VariantProps } from 'class-variance-authority';
8
- import * as lucide_react from 'lucide-react';
9
8
  import { DayPicker } from 'react-day-picker';
10
9
  import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
11
10
  import * as DialogPrimitive from '@radix-ui/react-dialog';
@@ -1010,19 +1009,22 @@ interface NewTransactionFormValues {
1010
1009
  adjustmentType?: string;
1011
1010
  receiverAccountNumber?: string;
1012
1011
  }
1013
- declare const TRANSACTION_TYPES: {
1012
+ interface TransactionTypeOption {
1014
1013
  value: string;
1015
1014
  label: string;
1016
- icon: React__default.ForwardRefExoticComponent<Omit<lucide_react.LucideProps, "ref"> & React__default.RefAttributes<SVGSVGElement>>;
1017
- }[];
1015
+ icon: React__default.ComponentType<{
1016
+ className?: string;
1017
+ }>;
1018
+ disabled?: boolean;
1019
+ }
1018
1020
  declare const ADJUSTMENT_DIRECTION_OPTIONS: {
1019
1021
  value: string;
1020
1022
  label: string;
1021
1023
  }[];
1022
- declare const ADJUSTMENT_TYPE_OPTIONS: {
1024
+ interface AdjustmentTypeOption {
1023
1025
  value: string;
1024
1026
  label: string;
1025
- }[];
1027
+ }
1026
1028
  interface NewTransactionViewProps {
1027
1029
  form: UseFormReturn<NewTransactionFormValues>;
1028
1030
  accountLookedUp: boolean;
@@ -1051,14 +1053,20 @@ interface NewTransactionViewProps {
1051
1053
  onCounterpartySearchChange: (value: string) => void;
1052
1054
  onCounterpartySelect: (result: CounterpartySearchResult) => void;
1053
1055
  onCounterpartyDropdownClose: () => void;
1056
+ counterpartyHasMore: boolean;
1057
+ counterpartyTotalResults: number;
1058
+ isLoadingMoreCounterparties: boolean;
1059
+ onLoadMoreCounterparties: () => void;
1054
1060
  receiverAccountLookedUp: boolean;
1055
1061
  receiverAccountData: AccountData | null;
1056
1062
  isReceiverAccountLoading: boolean;
1057
1063
  onReceiverAccountLookup: () => void;
1058
1064
  onEditReceiverAccount: () => void;
1059
1065
  isReviewReady: boolean;
1066
+ adjustmentTypeOptions: AdjustmentTypeOption[];
1067
+ transactionTypeOptions: TransactionTypeOption[];
1060
1068
  }
1061
- declare const NewTransactionView: ({ form, accountLookedUp, accountData, counterpartyLookedUp, counterpartyData, confirmationOpen, submissionStatus, errorMessage, transactionId, isAccountLoading, isCounterpartyLoading, isSubmitting, counterpartySearchResults, isCounterpartySearching, showCounterpartyDropdown, onAccountLookup, onEditAccount, onEditCounterparty, onTransactionTypeChange, onSubmit, onCancel, onConfirmationClose, onConfirmationOpenChange, onNewTransaction, onCounterpartySearchChange, onCounterpartySelect, onCounterpartyDropdownClose, receiverAccountLookedUp, receiverAccountData, isReceiverAccountLoading, onReceiverAccountLookup, onEditReceiverAccount, isReviewReady, }: NewTransactionViewProps) => react_jsx_runtime.JSX.Element;
1069
+ declare const NewTransactionView: ({ form, accountLookedUp, accountData, counterpartyLookedUp, counterpartyData, confirmationOpen, submissionStatus, errorMessage, transactionId, isAccountLoading, isCounterpartyLoading, isSubmitting, counterpartySearchResults, isCounterpartySearching, showCounterpartyDropdown, onAccountLookup, onEditAccount, onEditCounterparty, onTransactionTypeChange, onSubmit, onCancel, onConfirmationClose, onConfirmationOpenChange, onNewTransaction, onCounterpartySearchChange, onCounterpartySelect, onCounterpartyDropdownClose, counterpartyHasMore, counterpartyTotalResults, isLoadingMoreCounterparties, onLoadMoreCounterparties, receiverAccountLookedUp, receiverAccountData, isReceiverAccountLoading, onReceiverAccountLookup, onEditReceiverAccount, isReviewReady, adjustmentTypeOptions, transactionTypeOptions, }: NewTransactionViewProps) => react_jsx_runtime.JSX.Element;
1062
1070
 
1063
1071
  interface AccountCardProps {
1064
1072
  account: {
@@ -1907,4 +1915,4 @@ declare function generateStatementCSV(header: StatementHeader, transactions: Sta
1907
1915
  */
1908
1916
  declare function downloadCSV(content: string, filename: string): void;
1909
1917
 
1910
- export { ACHBankCard, ACHBasicInfoCard, ACHDetailsSection, ACHTransferSection, ADJUSTMENT_DIRECTION_OPTIONS, ADJUSTMENT_TYPE_OPTIONS, AccountCard, type AccountData, AccountDetail, Accounts, AddressForm, AlertDetail, AlertDetailRouter, type AlertDetailRouterProps, AlertDocuments, AlertHeaderControls, AlertNotes, AlertTimeline, Alerts, AppSidebar, Badge, type BadgeProps, BankAddressCard, BankingDetailsCard, BasicInfoCard, BasicInfoSection, BeneficiaryAddress, BeneficiaryCard, BeneficiaryDomesticWire, Breadcrumb, type BreadcrumbItem, BusinessDetail, BusinessDetailView, BusinessFiltersSheet, BusinessProfileCard, BusinessStatusCard, BusinessTypeBadge, Businesses, Button, type ButtonProps, CIPStatusBadge, Calendar, type CalendarProps, Card, CardContent, type CardContentProps, CardDescription, CardFooter, type CardFooterProps, CardHeader, type CardHeaderProps, type CardProps, CardTitle, type CardTitleProps, Cases, Checkbox, ContactInfoCard, Container, ContextSection, Counterparties, CounterpartiesView, CounterpartyBasicInfo, type CounterpartyData, CounterpartyDetail, CounterpartyDetailView, CounterpartyProfileCard, CounterpartyRecordsCard, type CounterpartySearchResult, CounterpartyTypeBadge, type CounterpartyWithEntity, CreateBusiness, CreateBusinessView, CreateCounterparty, CreateCounterpartyView, CreateIndividual, CreateVelocityLimit, Dashboard, DashboardDemo, DataGrid, type DataGridItem, type DataGridSection, DataTable, type DataTableColumn, type DataTableProps, DetailPageLayout, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, EditableFormCard, EditableInfoField, EnhancedInput, EnhancedSelect, EnhancedTextarea, EntityCard, FormCard, type FormCardProps, FormField, FormInput, FormProvider, FormSection, FormSelect, IndividualDetail, Individuals, InfoField, type InputProps, IntermediaryCard, IntermediaryFI, IntermediaryFIAddress, JsonViewer, Label, ListPage, MainLayout, MetricCard, NewTransaction, type NewTransactionFormValues, NewTransactionView, NotFound, OFACAlertView, type OFACAlertViewProps, OriginatorCard, OriginatorFI, OriginatorFIAddress, type PageAction, type PageCard, PageLayout, PatternLibrary, PaymentInformationSection, Popover, PopoverContent, PopoverTrigger, ReceiverCard, ReconExceptions, ReconUpload, ResolveAlertDialog, ResponsiveGrid, ScrollArea, ScrollBar, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Stack, Statement, type StatementHeader, type StatementTransaction, StatementView, StatusBadge, TRANSACTION_TYPES, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, type TextareaProps, Toast$1 as Toast, ToastAction, type ToastActionElement, ToastClose, ToastDescription, type ToastProps, ToastProvider, ToastTitle, ToastViewport, Toaster, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TransactionDetail, TransactionHistory, TransactionTypeBadge, UIKit, UIKitShowcase, type UseAlertDetailReturn, VelocityLimitDetail, VelocityLimits, WireDetailsSection, WireTransferSection, badgeVariants, buttonVariants, cardVariants, downloadCSV, generateStatementCSV, inputVariants, newTransactionSchema, reducer, textareaVariants, toast, useAlertDetail, useCounterpartyEntity, useEditState, useFormWithEditState, useIsMobile, useSidebar, useToast };
1918
+ export { ACHBankCard, ACHBasicInfoCard, ACHDetailsSection, ACHTransferSection, ADJUSTMENT_DIRECTION_OPTIONS, AccountCard, type AccountData, AccountDetail, Accounts, AddressForm, type AdjustmentTypeOption, AlertDetail, AlertDetailRouter, type AlertDetailRouterProps, AlertDocuments, AlertHeaderControls, AlertNotes, AlertTimeline, Alerts, AppSidebar, Badge, type BadgeProps, BankAddressCard, BankingDetailsCard, BasicInfoCard, BasicInfoSection, BeneficiaryAddress, BeneficiaryCard, BeneficiaryDomesticWire, Breadcrumb, type BreadcrumbItem, BusinessDetail, BusinessDetailView, BusinessFiltersSheet, BusinessProfileCard, BusinessStatusCard, BusinessTypeBadge, Businesses, Button, type ButtonProps, CIPStatusBadge, Calendar, type CalendarProps, Card, CardContent, type CardContentProps, CardDescription, CardFooter, type CardFooterProps, CardHeader, type CardHeaderProps, type CardProps, CardTitle, type CardTitleProps, Cases, Checkbox, ContactInfoCard, Container, ContextSection, Counterparties, CounterpartiesView, CounterpartyBasicInfo, type CounterpartyData, CounterpartyDetail, CounterpartyDetailView, CounterpartyProfileCard, CounterpartyRecordsCard, type CounterpartySearchResult, CounterpartyTypeBadge, type CounterpartyWithEntity, CreateBusiness, CreateBusinessView, CreateCounterparty, CreateCounterpartyView, CreateIndividual, CreateVelocityLimit, Dashboard, DashboardDemo, DataGrid, type DataGridItem, type DataGridSection, DataTable, type DataTableColumn, type DataTableProps, DetailPageLayout, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, EditableFormCard, EditableInfoField, EnhancedInput, EnhancedSelect, EnhancedTextarea, EntityCard, FormCard, type FormCardProps, FormField, FormInput, FormProvider, FormSection, FormSelect, IndividualDetail, Individuals, InfoField, type InputProps, IntermediaryCard, IntermediaryFI, IntermediaryFIAddress, JsonViewer, Label, ListPage, MainLayout, MetricCard, NewTransaction, type NewTransactionFormValues, NewTransactionView, NotFound, OFACAlertView, type OFACAlertViewProps, OriginatorCard, OriginatorFI, OriginatorFIAddress, type PageAction, type PageCard, PageLayout, PatternLibrary, PaymentInformationSection, Popover, PopoverContent, PopoverTrigger, ReceiverCard, ReconExceptions, ReconUpload, ResolveAlertDialog, ResponsiveGrid, ScrollArea, ScrollBar, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Stack, Statement, type StatementHeader, type StatementTransaction, StatementView, StatusBadge, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, type TextareaProps, Toast$1 as Toast, ToastAction, type ToastActionElement, ToastClose, ToastDescription, type ToastProps, ToastProvider, ToastTitle, ToastViewport, Toaster, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TransactionDetail, TransactionHistory, TransactionTypeBadge, type TransactionTypeOption, UIKit, UIKitShowcase, type UseAlertDetailReturn, VelocityLimitDetail, VelocityLimits, WireDetailsSection, WireTransferSection, badgeVariants, buttonVariants, cardVariants, downloadCSV, generateStatementCSV, inputVariants, newTransactionSchema, reducer, textareaVariants, toast, useAlertDetail, useCounterpartyEntity, useEditState, useFormWithEditState, useIsMobile, useSidebar, useToast };
package/dist/index.d.ts CHANGED
@@ -5,7 +5,6 @@ import React__default, { ReactNode } from 'react';
5
5
  import { UseFormReturn, FieldValues, FieldPath, UseFormProps, Path } from 'react-hook-form';
6
6
  import * as class_variance_authority_dist_types from 'class-variance-authority/dist/types';
7
7
  import { VariantProps } from 'class-variance-authority';
8
- import * as lucide_react from 'lucide-react';
9
8
  import { DayPicker } from 'react-day-picker';
10
9
  import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
11
10
  import * as DialogPrimitive from '@radix-ui/react-dialog';
@@ -1010,19 +1009,22 @@ interface NewTransactionFormValues {
1010
1009
  adjustmentType?: string;
1011
1010
  receiverAccountNumber?: string;
1012
1011
  }
1013
- declare const TRANSACTION_TYPES: {
1012
+ interface TransactionTypeOption {
1014
1013
  value: string;
1015
1014
  label: string;
1016
- icon: React__default.ForwardRefExoticComponent<Omit<lucide_react.LucideProps, "ref"> & React__default.RefAttributes<SVGSVGElement>>;
1017
- }[];
1015
+ icon: React__default.ComponentType<{
1016
+ className?: string;
1017
+ }>;
1018
+ disabled?: boolean;
1019
+ }
1018
1020
  declare const ADJUSTMENT_DIRECTION_OPTIONS: {
1019
1021
  value: string;
1020
1022
  label: string;
1021
1023
  }[];
1022
- declare const ADJUSTMENT_TYPE_OPTIONS: {
1024
+ interface AdjustmentTypeOption {
1023
1025
  value: string;
1024
1026
  label: string;
1025
- }[];
1027
+ }
1026
1028
  interface NewTransactionViewProps {
1027
1029
  form: UseFormReturn<NewTransactionFormValues>;
1028
1030
  accountLookedUp: boolean;
@@ -1051,14 +1053,20 @@ interface NewTransactionViewProps {
1051
1053
  onCounterpartySearchChange: (value: string) => void;
1052
1054
  onCounterpartySelect: (result: CounterpartySearchResult) => void;
1053
1055
  onCounterpartyDropdownClose: () => void;
1056
+ counterpartyHasMore: boolean;
1057
+ counterpartyTotalResults: number;
1058
+ isLoadingMoreCounterparties: boolean;
1059
+ onLoadMoreCounterparties: () => void;
1054
1060
  receiverAccountLookedUp: boolean;
1055
1061
  receiverAccountData: AccountData | null;
1056
1062
  isReceiverAccountLoading: boolean;
1057
1063
  onReceiverAccountLookup: () => void;
1058
1064
  onEditReceiverAccount: () => void;
1059
1065
  isReviewReady: boolean;
1066
+ adjustmentTypeOptions: AdjustmentTypeOption[];
1067
+ transactionTypeOptions: TransactionTypeOption[];
1060
1068
  }
1061
- declare const NewTransactionView: ({ form, accountLookedUp, accountData, counterpartyLookedUp, counterpartyData, confirmationOpen, submissionStatus, errorMessage, transactionId, isAccountLoading, isCounterpartyLoading, isSubmitting, counterpartySearchResults, isCounterpartySearching, showCounterpartyDropdown, onAccountLookup, onEditAccount, onEditCounterparty, onTransactionTypeChange, onSubmit, onCancel, onConfirmationClose, onConfirmationOpenChange, onNewTransaction, onCounterpartySearchChange, onCounterpartySelect, onCounterpartyDropdownClose, receiverAccountLookedUp, receiverAccountData, isReceiverAccountLoading, onReceiverAccountLookup, onEditReceiverAccount, isReviewReady, }: NewTransactionViewProps) => react_jsx_runtime.JSX.Element;
1069
+ declare const NewTransactionView: ({ form, accountLookedUp, accountData, counterpartyLookedUp, counterpartyData, confirmationOpen, submissionStatus, errorMessage, transactionId, isAccountLoading, isCounterpartyLoading, isSubmitting, counterpartySearchResults, isCounterpartySearching, showCounterpartyDropdown, onAccountLookup, onEditAccount, onEditCounterparty, onTransactionTypeChange, onSubmit, onCancel, onConfirmationClose, onConfirmationOpenChange, onNewTransaction, onCounterpartySearchChange, onCounterpartySelect, onCounterpartyDropdownClose, counterpartyHasMore, counterpartyTotalResults, isLoadingMoreCounterparties, onLoadMoreCounterparties, receiverAccountLookedUp, receiverAccountData, isReceiverAccountLoading, onReceiverAccountLookup, onEditReceiverAccount, isReviewReady, adjustmentTypeOptions, transactionTypeOptions, }: NewTransactionViewProps) => react_jsx_runtime.JSX.Element;
1062
1070
 
1063
1071
  interface AccountCardProps {
1064
1072
  account: {
@@ -1907,4 +1915,4 @@ declare function generateStatementCSV(header: StatementHeader, transactions: Sta
1907
1915
  */
1908
1916
  declare function downloadCSV(content: string, filename: string): void;
1909
1917
 
1910
- export { ACHBankCard, ACHBasicInfoCard, ACHDetailsSection, ACHTransferSection, ADJUSTMENT_DIRECTION_OPTIONS, ADJUSTMENT_TYPE_OPTIONS, AccountCard, type AccountData, AccountDetail, Accounts, AddressForm, AlertDetail, AlertDetailRouter, type AlertDetailRouterProps, AlertDocuments, AlertHeaderControls, AlertNotes, AlertTimeline, Alerts, AppSidebar, Badge, type BadgeProps, BankAddressCard, BankingDetailsCard, BasicInfoCard, BasicInfoSection, BeneficiaryAddress, BeneficiaryCard, BeneficiaryDomesticWire, Breadcrumb, type BreadcrumbItem, BusinessDetail, BusinessDetailView, BusinessFiltersSheet, BusinessProfileCard, BusinessStatusCard, BusinessTypeBadge, Businesses, Button, type ButtonProps, CIPStatusBadge, Calendar, type CalendarProps, Card, CardContent, type CardContentProps, CardDescription, CardFooter, type CardFooterProps, CardHeader, type CardHeaderProps, type CardProps, CardTitle, type CardTitleProps, Cases, Checkbox, ContactInfoCard, Container, ContextSection, Counterparties, CounterpartiesView, CounterpartyBasicInfo, type CounterpartyData, CounterpartyDetail, CounterpartyDetailView, CounterpartyProfileCard, CounterpartyRecordsCard, type CounterpartySearchResult, CounterpartyTypeBadge, type CounterpartyWithEntity, CreateBusiness, CreateBusinessView, CreateCounterparty, CreateCounterpartyView, CreateIndividual, CreateVelocityLimit, Dashboard, DashboardDemo, DataGrid, type DataGridItem, type DataGridSection, DataTable, type DataTableColumn, type DataTableProps, DetailPageLayout, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, EditableFormCard, EditableInfoField, EnhancedInput, EnhancedSelect, EnhancedTextarea, EntityCard, FormCard, type FormCardProps, FormField, FormInput, FormProvider, FormSection, FormSelect, IndividualDetail, Individuals, InfoField, type InputProps, IntermediaryCard, IntermediaryFI, IntermediaryFIAddress, JsonViewer, Label, ListPage, MainLayout, MetricCard, NewTransaction, type NewTransactionFormValues, NewTransactionView, NotFound, OFACAlertView, type OFACAlertViewProps, OriginatorCard, OriginatorFI, OriginatorFIAddress, type PageAction, type PageCard, PageLayout, PatternLibrary, PaymentInformationSection, Popover, PopoverContent, PopoverTrigger, ReceiverCard, ReconExceptions, ReconUpload, ResolveAlertDialog, ResponsiveGrid, ScrollArea, ScrollBar, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Stack, Statement, type StatementHeader, type StatementTransaction, StatementView, StatusBadge, TRANSACTION_TYPES, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, type TextareaProps, Toast$1 as Toast, ToastAction, type ToastActionElement, ToastClose, ToastDescription, type ToastProps, ToastProvider, ToastTitle, ToastViewport, Toaster, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TransactionDetail, TransactionHistory, TransactionTypeBadge, UIKit, UIKitShowcase, type UseAlertDetailReturn, VelocityLimitDetail, VelocityLimits, WireDetailsSection, WireTransferSection, badgeVariants, buttonVariants, cardVariants, downloadCSV, generateStatementCSV, inputVariants, newTransactionSchema, reducer, textareaVariants, toast, useAlertDetail, useCounterpartyEntity, useEditState, useFormWithEditState, useIsMobile, useSidebar, useToast };
1918
+ export { ACHBankCard, ACHBasicInfoCard, ACHDetailsSection, ACHTransferSection, ADJUSTMENT_DIRECTION_OPTIONS, AccountCard, type AccountData, AccountDetail, Accounts, AddressForm, type AdjustmentTypeOption, AlertDetail, AlertDetailRouter, type AlertDetailRouterProps, AlertDocuments, AlertHeaderControls, AlertNotes, AlertTimeline, Alerts, AppSidebar, Badge, type BadgeProps, BankAddressCard, BankingDetailsCard, BasicInfoCard, BasicInfoSection, BeneficiaryAddress, BeneficiaryCard, BeneficiaryDomesticWire, Breadcrumb, type BreadcrumbItem, BusinessDetail, BusinessDetailView, BusinessFiltersSheet, BusinessProfileCard, BusinessStatusCard, BusinessTypeBadge, Businesses, Button, type ButtonProps, CIPStatusBadge, Calendar, type CalendarProps, Card, CardContent, type CardContentProps, CardDescription, CardFooter, type CardFooterProps, CardHeader, type CardHeaderProps, type CardProps, CardTitle, type CardTitleProps, Cases, Checkbox, ContactInfoCard, Container, ContextSection, Counterparties, CounterpartiesView, CounterpartyBasicInfo, type CounterpartyData, CounterpartyDetail, CounterpartyDetailView, CounterpartyProfileCard, CounterpartyRecordsCard, type CounterpartySearchResult, CounterpartyTypeBadge, type CounterpartyWithEntity, CreateBusiness, CreateBusinessView, CreateCounterparty, CreateCounterpartyView, CreateIndividual, CreateVelocityLimit, Dashboard, DashboardDemo, DataGrid, type DataGridItem, type DataGridSection, DataTable, type DataTableColumn, type DataTableProps, DetailPageLayout, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, EditableFormCard, EditableInfoField, EnhancedInput, EnhancedSelect, EnhancedTextarea, EntityCard, FormCard, type FormCardProps, FormField, FormInput, FormProvider, FormSection, FormSelect, IndividualDetail, Individuals, InfoField, type InputProps, IntermediaryCard, IntermediaryFI, IntermediaryFIAddress, JsonViewer, Label, ListPage, MainLayout, MetricCard, NewTransaction, type NewTransactionFormValues, NewTransactionView, NotFound, OFACAlertView, type OFACAlertViewProps, OriginatorCard, OriginatorFI, OriginatorFIAddress, type PageAction, type PageCard, PageLayout, PatternLibrary, PaymentInformationSection, Popover, PopoverContent, PopoverTrigger, ReceiverCard, ReconExceptions, ReconUpload, ResolveAlertDialog, ResponsiveGrid, ScrollArea, ScrollBar, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Stack, Statement, type StatementHeader, type StatementTransaction, StatementView, StatusBadge, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, type TextareaProps, Toast$1 as Toast, ToastAction, type ToastActionElement, ToastClose, ToastDescription, type ToastProps, ToastProvider, ToastTitle, ToastViewport, Toaster, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TransactionDetail, TransactionHistory, TransactionTypeBadge, type TransactionTypeOption, UIKit, UIKitShowcase, type UseAlertDetailReturn, VelocityLimitDetail, VelocityLimits, WireDetailsSection, WireTransferSection, badgeVariants, buttonVariants, cardVariants, downloadCSV, generateStatementCSV, inputVariants, newTransactionSchema, reducer, textareaVariants, toast, useAlertDetail, useCounterpartyEntity, useEditState, useFormWithEditState, useIsMobile, useSidebar, useToast };
package/dist/index.js CHANGED
@@ -4,7 +4,7 @@ import { cva } from 'class-variance-authority';
4
4
  import { clsx } from 'clsx';
5
5
  import { twMerge } from 'tailwind-merge';
6
6
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
7
- import { ChevronDown, ChevronUp, Check, X, PanelLeft, Edit, Home, Globe, CreditCard, Building, MoreVertical, Minus, TrendingDown, TrendingUp, ChevronRight, Eye, Trash2, ArrowLeftRight, Settings, Building2, Zap, Plus, MessageSquare, Upload, FileText, Download, Copy, LayoutDashboard, Bell, Briefcase, FileCheck, Receipt, Users, Shield, AlertCircle, RefreshCw, Landmark, Search, Repeat, Box, BarChart3, Key, ChevronLeft, AlertTriangle, Clock, XCircle, CheckCircle, Ban, Circle, Wallet, Filter, User, Loader2, CheckCircle2, ArrowDownRight, ArrowUpRight, ArrowLeft, StickyNote, FileUp, RotateCcw, Send, PlayCircle, UserPlus, ChevronsUpDown, ArrowRightLeft, UserCheck, CalendarIcon, Package, File, FileJson, DollarSign } from 'lucide-react';
7
+ import { ChevronDown, ChevronUp, Check, X, PanelLeft, Edit, Home, Globe, CreditCard, Building, MoreVertical, Minus, TrendingDown, TrendingUp, ChevronRight, Eye, Trash2, Plus, MessageSquare, Upload, FileText, Download, Copy, LayoutDashboard, Bell, Briefcase, FileCheck, Receipt, ArrowLeftRight, Users, Building2, Shield, AlertCircle, RefreshCw, Landmark, Search, Repeat, Zap, Box, Settings, BarChart3, Key, ChevronLeft, AlertTriangle, Clock, XCircle, CheckCircle, Ban, Circle, Wallet, Filter, User, Loader2, CheckCircle2, ArrowDownRight, ArrowUpRight, ArrowLeft, StickyNote, FileUp, RotateCcw, Send, PlayCircle, UserPlus, ChevronsUpDown, ArrowRightLeft, UserCheck, CalendarIcon, Package, File, FileJson, DollarSign } from 'lucide-react';
8
8
  import { createPortal } from 'react-dom';
9
9
  import { Slot } from '@radix-ui/react-slot';
10
10
  import * as SelectPrimitive from '@radix-ui/react-select';
@@ -8403,21 +8403,10 @@ var formatCurrency2 = (value) => {
8403
8403
  minimumFractionDigits: 2
8404
8404
  }).format(numValue);
8405
8405
  };
8406
- var TRANSACTION_TYPES = [
8407
- { value: "transfer", label: "Transfer", icon: ArrowLeftRight },
8408
- { value: "adjustment", label: "Adjustment", icon: Settings },
8409
- { value: "ach", label: "ACH", icon: Building2 },
8410
- { value: "wire", label: "Wire", icon: Zap }
8411
- ];
8412
8406
  var ADJUSTMENT_DIRECTION_OPTIONS = [
8413
8407
  { value: "debit", label: "Debit" },
8414
8408
  { value: "credit", label: "Credit" }
8415
8409
  ];
8416
- var ADJUSTMENT_TYPE_OPTIONS = [
8417
- { value: "collection", label: "Collection" },
8418
- { value: "transaction_reversal", label: "Transaction Reversal" },
8419
- { value: "transaction_adjustment", label: "Transaction Adjustment" }
8420
- ];
8421
8410
  var NewTransactionView = ({
8422
8411
  form,
8423
8412
  accountLookedUp,
@@ -8446,12 +8435,18 @@ var NewTransactionView = ({
8446
8435
  onCounterpartySearchChange,
8447
8436
  onCounterpartySelect,
8448
8437
  onCounterpartyDropdownClose,
8438
+ counterpartyHasMore,
8439
+ counterpartyTotalResults,
8440
+ isLoadingMoreCounterparties,
8441
+ onLoadMoreCounterparties,
8449
8442
  receiverAccountLookedUp,
8450
8443
  receiverAccountData,
8451
8444
  isReceiverAccountLoading,
8452
8445
  onReceiverAccountLookup,
8453
8446
  onEditReceiverAccount,
8454
- isReviewReady
8447
+ isReviewReady,
8448
+ adjustmentTypeOptions,
8449
+ transactionTypeOptions
8455
8450
  }) => {
8456
8451
  const transactionType = form.watch("transactionType");
8457
8452
  const accountNumber = form.watch("accountNumber");
@@ -8501,11 +8496,11 @@ var NewTransactionView = ({
8501
8496
  }
8502
8497
  ] : [];
8503
8498
  const reviewItems = [
8504
- { label: "Transaction Type", value: TRANSACTION_TYPES.find((t) => t.value === transactionType)?.label || "-" },
8499
+ { label: "Transaction Type", value: transactionTypeOptions.find((t) => t.value === transactionType)?.label || "-" },
8505
8500
  { label: "Account Number", value: accountNumber || "-" },
8506
8501
  ...isAdjustment ? [
8507
8502
  { label: "Direction", value: adjustmentDirection === "debit" ? "Debit" : adjustmentDirection === "credit" ? "Credit" : "-" },
8508
- { label: "Adjustment Type", value: ADJUSTMENT_TYPE_OPTIONS.find((t) => t.value === adjustmentType)?.label || "-" }
8503
+ { label: "Adjustment Type", value: adjustmentTypeOptions.find((t) => t.value === adjustmentType)?.label || "-" }
8509
8504
  ] : [],
8510
8505
  ...isTransfer ? [{ label: "Receiver Account", value: receiverAccountNumber || "-" }] : [],
8511
8506
  ...requiresCounterparty ? [{ label: "Counterparty", value: counterpartyName || "-" }] : [],
@@ -8565,28 +8560,29 @@ var NewTransactionView = ({
8565
8560
  title: "Transaction Type",
8566
8561
  variant: "default",
8567
8562
  className: cn(!accountLookedUp && "opacity-50 pointer-events-none"),
8568
- children: /* @__PURE__ */ jsx("div", { className: "grid grid-cols-2 lg:grid-cols-4 gap-3 lg:gap-4", children: TRANSACTION_TYPES.map((type) => {
8563
+ children: /* @__PURE__ */ jsx("div", { className: "grid grid-cols-2 lg:grid-cols-4 gap-3 lg:gap-4", children: transactionTypeOptions.map((type) => {
8569
8564
  const Icon2 = type.icon;
8570
8565
  const isSelected = transactionType === type.value;
8566
+ const isDisabled = !accountLookedUp || type.disabled;
8571
8567
  return /* @__PURE__ */ jsxs(
8572
8568
  "button",
8573
8569
  {
8574
8570
  type: "button",
8575
- onClick: () => onTransactionTypeChange(type.value),
8576
- disabled: !accountLookedUp,
8571
+ onClick: () => !type.disabled && onTransactionTypeChange(type.value),
8572
+ disabled: isDisabled,
8577
8573
  className: cn(
8578
8574
  "flex flex-col items-center justify-center p-4 lg:p-3 rounded-lg border-2 transition-all",
8579
- "hover:border-primary/50 hover:shadow-md",
8580
- isSelected ? "border-primary bg-primary/5 shadow-sm" : "border-border bg-card"
8575
+ isDisabled ? "opacity-50 cursor-not-allowed border-border bg-muted" : "hover:border-primary/50 hover:shadow-md",
8576
+ isSelected && !type.disabled ? "border-primary bg-primary/5 shadow-sm" : !isDisabled && "border-border bg-card"
8581
8577
  ),
8582
8578
  children: [
8583
8579
  /* @__PURE__ */ jsx(Icon2, { className: cn(
8584
8580
  "h-6 w-6 lg:h-5 lg:w-5 mb-2",
8585
- isSelected ? "text-primary" : "text-muted-foreground"
8581
+ isSelected && !type.disabled ? "text-primary" : "text-muted-foreground"
8586
8582
  ) }),
8587
8583
  /* @__PURE__ */ jsx("span", { className: cn(
8588
8584
  "text-sm font-medium",
8589
- isSelected ? "text-primary" : "text-foreground"
8585
+ isSelected && !type.disabled ? "text-primary" : isDisabled ? "text-muted-foreground" : "text-foreground"
8590
8586
  ), children: type.label })
8591
8587
  ]
8592
8588
  },
@@ -8623,19 +8619,41 @@ var NewTransactionView = ({
8623
8619
  ),
8624
8620
  isCounterpartySearching && /* @__PURE__ */ jsx("div", { className: "absolute right-3 top-1/2 -translate-y-1/2", children: /* @__PURE__ */ jsx(Loader2, { className: "h-4 w-4 animate-spin text-muted-foreground" }) })
8625
8621
  ] }),
8626
- showCounterpartyDropdown && counterpartySearchResults.length > 0 && /* @__PURE__ */ jsx("div", { className: "absolute z-50 w-full mt-1 bg-popover border border-border rounded-md shadow-lg max-h-60 overflow-auto", children: counterpartySearchResults.map((result) => /* @__PURE__ */ jsxs(
8627
- "button",
8628
- {
8629
- type: "button",
8630
- onClick: () => onCounterpartySelect(result),
8631
- className: "w-full px-3 py-2 text-left hover:bg-accent transition-colors",
8632
- children: [
8633
- /* @__PURE__ */ jsx("div", { className: "font-medium text-sm", children: result.name }),
8634
- /* @__PURE__ */ jsx("div", { className: "text-xs text-muted-foreground", children: result.id })
8635
- ]
8636
- },
8637
- result.id
8638
- )) }),
8622
+ showCounterpartyDropdown && counterpartySearchResults.length > 0 && /* @__PURE__ */ jsxs("div", { className: "absolute z-50 w-full mt-1 bg-popover border border-border rounded-md shadow-lg max-h-60 overflow-hidden flex flex-col", children: [
8623
+ /* @__PURE__ */ jsxs("div", { className: "px-3 py-2 text-xs text-muted-foreground border-b bg-muted/50 flex-shrink-0", children: [
8624
+ "Showing ",
8625
+ counterpartySearchResults.length,
8626
+ " of ",
8627
+ counterpartyTotalResults,
8628
+ " results"
8629
+ ] }),
8630
+ /* @__PURE__ */ jsx("div", { className: "overflow-auto flex-1", children: counterpartySearchResults.map((result) => /* @__PURE__ */ jsxs(
8631
+ "button",
8632
+ {
8633
+ type: "button",
8634
+ onClick: () => onCounterpartySelect(result),
8635
+ className: "w-full px-3 py-2 text-left hover:bg-accent transition-colors",
8636
+ children: [
8637
+ /* @__PURE__ */ jsx("div", { className: "font-medium text-sm", children: result.name }),
8638
+ /* @__PURE__ */ jsx("div", { className: "text-xs text-muted-foreground", children: result.id })
8639
+ ]
8640
+ },
8641
+ result.id
8642
+ )) }),
8643
+ counterpartyHasMore && /* @__PURE__ */ jsx(
8644
+ "button",
8645
+ {
8646
+ type: "button",
8647
+ onClick: onLoadMoreCounterparties,
8648
+ disabled: isLoadingMoreCounterparties,
8649
+ className: "w-full px-3 py-2 text-center text-sm text-primary hover:bg-accent border-t flex-shrink-0 disabled:opacity-50",
8650
+ children: isLoadingMoreCounterparties ? /* @__PURE__ */ jsxs("span", { className: "flex items-center justify-center gap-2", children: [
8651
+ /* @__PURE__ */ jsx(Loader2, { className: "h-4 w-4 animate-spin" }),
8652
+ "Loading..."
8653
+ ] }) : "Load More"
8654
+ }
8655
+ )
8656
+ ] }),
8639
8657
  showCounterpartyDropdown && counterpartySearchResults.length === 0 && !isCounterpartySearching && counterpartyName.length >= 2 && /* @__PURE__ */ jsx("div", { className: "absolute z-50 w-full mt-1 bg-popover border border-border rounded-md shadow-lg p-3", children: /* @__PURE__ */ jsxs("p", { className: "text-sm text-muted-foreground", children: [
8640
8658
  'No counterparties found matching "',
8641
8659
  counterpartyName,
@@ -8733,8 +8751,8 @@ var NewTransactionView = ({
8733
8751
  name: "adjustmentType",
8734
8752
  label: "Adjustment Type",
8735
8753
  placeholder: "Select type",
8736
- options: ADJUSTMENT_TYPE_OPTIONS,
8737
- disabled: !transactionType
8754
+ options: adjustmentTypeOptions,
8755
+ disabled: !transactionType || !adjustmentDirection
8738
8756
  }
8739
8757
  )
8740
8758
  ] }),
@@ -8838,7 +8856,7 @@ var NewTransactionView = ({
8838
8856
  ] }),
8839
8857
  /* @__PURE__ */ jsxs("div", { className: "flex justify-between text-sm", children: [
8840
8858
  /* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: "Type:" }),
8841
- /* @__PURE__ */ jsx("span", { className: "font-medium", children: TRANSACTION_TYPES.find((t) => t.value === transactionType)?.label })
8859
+ /* @__PURE__ */ jsx("span", { className: "font-medium", children: transactionTypeOptions.find((t) => t.value === transactionType)?.label })
8842
8860
  ] }),
8843
8861
  requiresCounterparty && counterpartyName && /* @__PURE__ */ jsxs("div", { className: "flex justify-between text-sm", children: [
8844
8862
  /* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: "Counterparty:" }),
@@ -14374,6 +14392,11 @@ function NewTransaction() {
14374
14392
  const [counterpartySearchResults, setCounterpartySearchResults] = useState([]);
14375
14393
  const [isCounterpartySearching, setIsCounterpartySearching] = useState(false);
14376
14394
  const [showCounterpartyDropdown, setShowCounterpartyDropdown] = useState(false);
14395
+ const [counterpartySearchPage, setCounterpartySearchPage] = useState(1);
14396
+ const [counterpartyHasMore, setCounterpartyHasMore] = useState(false);
14397
+ const [counterpartyTotalResults, setCounterpartyTotalResults] = useState(0);
14398
+ const [isLoadingMoreCounterparties, setIsLoadingMoreCounterparties] = useState(false);
14399
+ const [currentSearchQuery, setCurrentSearchQuery] = useState("");
14377
14400
  const [confirmationOpen, setConfirmationOpen] = useState(false);
14378
14401
  const [submissionStatus, setSubmissionStatus] = useState(null);
14379
14402
  const [errorMessage, setErrorMessage] = useState("");
@@ -14393,11 +14416,35 @@ function NewTransaction() {
14393
14416
  amount: "",
14394
14417
  description: "",
14395
14418
  certifyInformation: false,
14396
- adjustmentDirection: "",
14419
+ adjustmentDirection: "debit",
14397
14420
  adjustmentType: "",
14398
14421
  receiverAccountNumber: ""
14399
14422
  }
14400
14423
  });
14424
+ const transactionTypeOptions = useMemo(() => [
14425
+ { value: "transfer", label: "Transfer", icon: ArrowLeftRight, disabled: false },
14426
+ { value: "adjustment", label: "Adjustment", icon: Settings, disabled: false },
14427
+ { value: "ach", label: "ACH", icon: Building2, disabled: true },
14428
+ { value: "wire", label: "Wire", icon: Zap, disabled: false }
14429
+ ], []);
14430
+ const adjustmentDirection = form.watch("adjustmentDirection");
14431
+ const adjustmentTypeOptions = useMemo(() => {
14432
+ if (adjustmentDirection === "credit") {
14433
+ return [
14434
+ { value: "interest_credit", label: "Interest Credit" },
14435
+ { value: "fee_reversal", label: "Fee Reversal" },
14436
+ { value: "promotional_credit", label: "Promotional Credit" }
14437
+ ];
14438
+ }
14439
+ return [
14440
+ { value: "collection", label: "Collection" },
14441
+ { value: "transaction_reversal", label: "Transaction Reversal" },
14442
+ { value: "transaction_adjustment", label: "Transaction Adjustment" }
14443
+ ];
14444
+ }, [adjustmentDirection]);
14445
+ useEffect(() => {
14446
+ form.setValue("adjustmentType", "");
14447
+ }, [adjustmentDirection, form]);
14401
14448
  const handleAccountLookup = async () => {
14402
14449
  const accNum = form.getValues("accountNumber");
14403
14450
  if (!accNum) {
@@ -14421,37 +14468,60 @@ function NewTransaction() {
14421
14468
  { id: "CP-1234", name: "Global Industries LLC", type: "Business", paymentInstrumentType: "ach" },
14422
14469
  { id: "CP-9012", name: "GlobalCorp Partners", type: "Business", paymentInstrumentType: "both" },
14423
14470
  { id: "CP-3456", name: "Acme Corporation", type: "Business", paymentInstrumentType: "wire" },
14424
- { id: "CP-7890", name: "Tech Innovations Ltd", type: "Business", paymentInstrumentType: "ach" }
14471
+ { id: "CP-7890", name: "Tech Innovations Ltd", type: "Business", paymentInstrumentType: "ach" },
14472
+ { id: "CP-1111", name: "Global Enterprises", type: "Business", paymentInstrumentType: "wire" },
14473
+ { id: "CP-2222", name: "Global Finance Group", type: "Business", paymentInstrumentType: "both" },
14474
+ { id: "CP-3333", name: "Global Trade Inc.", type: "Business", paymentInstrumentType: "wire" },
14475
+ { id: "CP-4444", name: "Global Services Co.", type: "Business", paymentInstrumentType: "ach" },
14476
+ { id: "CP-5555", name: "Global Ventures Ltd", type: "Business", paymentInstrumentType: "both" }
14425
14477
  ];
14478
+ const PAGE_SIZE = 5;
14426
14479
  const isCounterpartyCompatible = (instrumentType, transactionType) => {
14427
14480
  if (instrumentType === "both") return true;
14428
14481
  if (transactionType === "ach" && instrumentType === "ach") return true;
14429
14482
  if (transactionType === "wire" && instrumentType === "wire") return true;
14430
14483
  return false;
14431
14484
  };
14485
+ const filterByTransactionType = (results, txType) => {
14486
+ if (txType === "ach") {
14487
+ return results.filter(
14488
+ (cp) => cp.paymentInstrumentType === "ach" || cp.paymentInstrumentType === "both"
14489
+ );
14490
+ } else if (txType === "wire") {
14491
+ return results.filter(
14492
+ (cp) => cp.paymentInstrumentType === "wire" || cp.paymentInstrumentType === "both"
14493
+ );
14494
+ }
14495
+ return results;
14496
+ };
14432
14497
  const debouncedSearch = useMemo(
14433
- () => debounce(async (query, txType) => {
14498
+ () => debounce(async (query, txType, page = 1) => {
14434
14499
  if (query.length < 2) {
14435
14500
  setCounterpartySearchResults([]);
14436
14501
  setShowCounterpartyDropdown(false);
14502
+ setCounterpartyHasMore(false);
14503
+ setCounterpartyTotalResults(0);
14437
14504
  return;
14438
14505
  }
14439
- setIsCounterpartySearching(true);
14506
+ if (page === 1) {
14507
+ setIsCounterpartySearching(true);
14508
+ }
14440
14509
  try {
14441
14510
  await new Promise((resolve) => setTimeout(resolve, 350));
14442
- let results = mockSearchResults.filter(
14511
+ let filteredResults = mockSearchResults.filter(
14443
14512
  (cp) => cp.name.toLowerCase().includes(query.toLowerCase())
14444
14513
  );
14445
- if (txType === "ach") {
14446
- results = results.filter(
14447
- (cp) => cp.paymentInstrumentType === "ach" || cp.paymentInstrumentType === "both"
14448
- );
14449
- } else if (txType === "wire") {
14450
- results = results.filter(
14451
- (cp) => cp.paymentInstrumentType === "wire" || cp.paymentInstrumentType === "both"
14452
- );
14514
+ filteredResults = filterByTransactionType(filteredResults, txType);
14515
+ const startIndex = (page - 1) * PAGE_SIZE;
14516
+ const paginatedResults = filteredResults.slice(startIndex, startIndex + PAGE_SIZE);
14517
+ if (page === 1) {
14518
+ setCounterpartySearchResults(paginatedResults);
14519
+ } else {
14520
+ setCounterpartySearchResults((prev) => [...prev, ...paginatedResults]);
14453
14521
  }
14454
- setCounterpartySearchResults(results);
14522
+ setCounterpartyTotalResults(filteredResults.length);
14523
+ setCounterpartyHasMore(startIndex + PAGE_SIZE < filteredResults.length);
14524
+ setCounterpartySearchPage(page);
14455
14525
  setShowCounterpartyDropdown(true);
14456
14526
  } finally {
14457
14527
  setIsCounterpartySearching(false);
@@ -14466,11 +14536,19 @@ function NewTransaction() {
14466
14536
  }, [debouncedSearch]);
14467
14537
  const handleCounterpartySearchChange = (value) => {
14468
14538
  form.setValue("counterpartyName", value);
14539
+ setCurrentSearchQuery(value);
14540
+ setCounterpartySearchPage(1);
14469
14541
  if (counterpartyLookedUp) {
14470
14542
  setCounterpartyLookedUp(false);
14471
14543
  setCounterpartyData(null);
14472
14544
  }
14473
- debouncedSearch(value, form.getValues("transactionType"));
14545
+ debouncedSearch(value, form.getValues("transactionType"), 1);
14546
+ };
14547
+ const handleLoadMoreCounterparties = async () => {
14548
+ setIsLoadingMoreCounterparties(true);
14549
+ const txType = form.getValues("transactionType");
14550
+ await debouncedSearch(currentSearchQuery, txType, counterpartySearchPage + 1);
14551
+ setIsLoadingMoreCounterparties(false);
14474
14552
  };
14475
14553
  const handleTransactionTypeChange = (newType) => {
14476
14554
  form.setValue("transactionType", newType);
@@ -14526,7 +14604,7 @@ function NewTransaction() {
14526
14604
  form.setValue("counterpartyName", "");
14527
14605
  form.setValue("amount", "");
14528
14606
  form.setValue("description", "");
14529
- form.setValue("adjustmentDirection", "");
14607
+ form.setValue("adjustmentDirection", "debit");
14530
14608
  form.setValue("adjustmentType", "");
14531
14609
  setReceiverAccountLookedUp(false);
14532
14610
  setReceiverAccountData(null);
@@ -14602,7 +14680,7 @@ function NewTransaction() {
14602
14680
  setIsSubmitting(true);
14603
14681
  try {
14604
14682
  await new Promise((resolve) => setTimeout(resolve, 1500));
14605
- const hasError = Math.random() > 0.7;
14683
+ const hasError = Math.random() > 0.1;
14606
14684
  if (hasError) {
14607
14685
  const errorScenarios = [
14608
14686
  "Insufficient funds. Current balance: $125,450.00, Required: $" + parseFloat(data.amount).toFixed(2),
@@ -14630,7 +14708,7 @@ function NewTransaction() {
14630
14708
  amount: "",
14631
14709
  description: "",
14632
14710
  certifyInformation: false,
14633
- adjustmentDirection: "",
14711
+ adjustmentDirection: "debit",
14634
14712
  adjustmentType: "",
14635
14713
  receiverAccountNumber: ""
14636
14714
  });
@@ -14696,6 +14774,10 @@ function NewTransaction() {
14696
14774
  onCounterpartySearchChange: handleCounterpartySearchChange,
14697
14775
  onCounterpartySelect: handleCounterpartySelect,
14698
14776
  onCounterpartyDropdownClose: () => setShowCounterpartyDropdown(false),
14777
+ counterpartyHasMore,
14778
+ counterpartyTotalResults,
14779
+ isLoadingMoreCounterparties,
14780
+ onLoadMoreCounterparties: handleLoadMoreCounterparties,
14699
14781
  onEditCounterparty: handleEditCounterparty,
14700
14782
  onTransactionTypeChange: handleTransactionTypeChange,
14701
14783
  onSubmit: handleSubmit,
@@ -14708,7 +14790,9 @@ function NewTransaction() {
14708
14790
  isReceiverAccountLoading,
14709
14791
  onReceiverAccountLookup: handleReceiverAccountLookup,
14710
14792
  onEditReceiverAccount: handleEditReceiverAccount,
14711
- isReviewReady
14793
+ isReviewReady,
14794
+ adjustmentTypeOptions,
14795
+ transactionTypeOptions
14712
14796
  }
14713
14797
  );
14714
14798
  }
@@ -16741,6 +16825,6 @@ function ReconExceptions() {
16741
16825
  ] }) });
16742
16826
  }
16743
16827
 
16744
- export { ACHBankCard, ACHBasicInfoCard, ACHDetailsSection, ACHTransferSection, ADJUSTMENT_DIRECTION_OPTIONS, ADJUSTMENT_TYPE_OPTIONS, AccountCard, AccountDetail_default as AccountDetail, Accounts_default as Accounts, AddressForm, AlertDetail_default as AlertDetail, AlertDetailRouter, AlertDocuments, AlertHeaderControls, AlertNotes, AlertTimeline, Alerts_default as Alerts, AppSidebar, Badge, BankAddressCard, BankingDetailsCard, BasicInfoCard, BasicInfoSection, BeneficiaryAddress, BeneficiaryCard, BeneficiaryDomesticWire, Breadcrumb, BusinessDetail_default as BusinessDetail, BusinessDetailView, BusinessFiltersSheet, BusinessProfileCard, BusinessStatusCard, BusinessTypeBadge, Businesses_default as Businesses, Button, CIPStatusBadge, Calendar, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Cases_default as Cases, Checkbox, ContactInfoCard, Container, ContextSection, Counterparties_default as Counterparties, CounterpartiesView, CounterpartyBasicInfo, CounterpartyDetail_default as CounterpartyDetail, CounterpartyDetailView, CounterpartyProfileCard, CounterpartyRecordsCard, CounterpartyTypeBadge, Create_default as CreateBusiness, CreateBusinessView, Create_default2 as CreateCounterparty, CreateCounterpartyView, Create_default3 as CreateIndividual, CreateVelocityLimit, Dashboard_default as Dashboard, DashboardDemo, DataGrid, DataTable, DetailPageLayout, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, EditableFormCard, EditableInfoField, EnhancedInput, EnhancedSelect, EnhancedTextarea, EntityCard, FormCard, FormField, FormInput, FormProvider, FormSection, FormSelect, IndividualDetail_default as IndividualDetail, Individuals_default as Individuals, InfoField, IntermediaryCard, IntermediaryFI, IntermediaryFIAddress, JsonViewer, Label, ListPage, MainLayout, MetricCard, NewTransaction, NewTransactionView, NotFound_default as NotFound, OFACAlertView, OriginatorCard, OriginatorFI, OriginatorFIAddress, PageLayout, PatternLibrary, PaymentInformationSection, Popover, PopoverContent, PopoverTrigger, ReceiverCard, ReconExceptions, ReconUpload, ResolveAlertDialog, ResponsiveGrid, ScrollArea, ScrollBar, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Stack, Statement, StatementHeader, StatementView, StatusBadge, TRANSACTION_TYPES, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Toast, ToastAction, ToastClose, ToastDescription, ToastProvider, ToastTitle, ToastViewport, Toaster, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TransactionDetail_default as TransactionDetail, TransactionHistory_default as TransactionHistory, TransactionTypeBadge, UIKit, UIKitShowcase, VelocityLimitDetail, VelocityLimits, WireDetailsSection, WireTransferSection, badgeVariants, buttonVariants, cardVariants, downloadCSV, generateStatementCSV, inputVariants, newTransactionSchema, reducer, textareaVariants, toast, useAlertDetail, useCounterpartyEntity, useEditState, useFormWithEditState, useIsMobile, useSidebar, useToast };
16828
+ export { ACHBankCard, ACHBasicInfoCard, ACHDetailsSection, ACHTransferSection, ADJUSTMENT_DIRECTION_OPTIONS, AccountCard, AccountDetail_default as AccountDetail, Accounts_default as Accounts, AddressForm, AlertDetail_default as AlertDetail, AlertDetailRouter, AlertDocuments, AlertHeaderControls, AlertNotes, AlertTimeline, Alerts_default as Alerts, AppSidebar, Badge, BankAddressCard, BankingDetailsCard, BasicInfoCard, BasicInfoSection, BeneficiaryAddress, BeneficiaryCard, BeneficiaryDomesticWire, Breadcrumb, BusinessDetail_default as BusinessDetail, BusinessDetailView, BusinessFiltersSheet, BusinessProfileCard, BusinessStatusCard, BusinessTypeBadge, Businesses_default as Businesses, Button, CIPStatusBadge, Calendar, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Cases_default as Cases, Checkbox, ContactInfoCard, Container, ContextSection, Counterparties_default as Counterparties, CounterpartiesView, CounterpartyBasicInfo, CounterpartyDetail_default as CounterpartyDetail, CounterpartyDetailView, CounterpartyProfileCard, CounterpartyRecordsCard, CounterpartyTypeBadge, Create_default as CreateBusiness, CreateBusinessView, Create_default2 as CreateCounterparty, CreateCounterpartyView, Create_default3 as CreateIndividual, CreateVelocityLimit, Dashboard_default as Dashboard, DashboardDemo, DataGrid, DataTable, DetailPageLayout, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, EditableFormCard, EditableInfoField, EnhancedInput, EnhancedSelect, EnhancedTextarea, EntityCard, FormCard, FormField, FormInput, FormProvider, FormSection, FormSelect, IndividualDetail_default as IndividualDetail, Individuals_default as Individuals, InfoField, IntermediaryCard, IntermediaryFI, IntermediaryFIAddress, JsonViewer, Label, ListPage, MainLayout, MetricCard, NewTransaction, NewTransactionView, NotFound_default as NotFound, OFACAlertView, OriginatorCard, OriginatorFI, OriginatorFIAddress, PageLayout, PatternLibrary, PaymentInformationSection, Popover, PopoverContent, PopoverTrigger, ReceiverCard, ReconExceptions, ReconUpload, ResolveAlertDialog, ResponsiveGrid, ScrollArea, ScrollBar, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Stack, Statement, StatementHeader, StatementView, StatusBadge, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Toast, ToastAction, ToastClose, ToastDescription, ToastProvider, ToastTitle, ToastViewport, Toaster, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TransactionDetail_default as TransactionDetail, TransactionHistory_default as TransactionHistory, TransactionTypeBadge, UIKit, UIKitShowcase, VelocityLimitDetail, VelocityLimits, WireDetailsSection, WireTransferSection, badgeVariants, buttonVariants, cardVariants, downloadCSV, generateStatementCSV, inputVariants, newTransactionSchema, reducer, textareaVariants, toast, useAlertDetail, useCounterpartyEntity, useEditState, useFormWithEditState, useIsMobile, useSidebar, useToast };
16745
16829
  //# sourceMappingURL=index.js.map
16746
16830
  //# sourceMappingURL=index.js.map