@airdraft/react-ui 0.1.0
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/CHANGELOG.md +5 -0
- package/dist/AcceptInviteForm.d.ts +22 -0
- package/dist/AcceptInviteForm.d.ts.map +1 -0
- package/dist/AcceptInviteForm.js +52 -0
- package/dist/AcceptInviteForm.js.map +1 -0
- package/dist/AuditLogViewer.d.ts +42 -0
- package/dist/AuditLogViewer.d.ts.map +1 -0
- package/dist/AuditLogViewer.js +95 -0
- package/dist/AuditLogViewer.js.map +1 -0
- package/dist/CollectionManager.d.ts +26 -0
- package/dist/CollectionManager.d.ts.map +1 -0
- package/dist/CollectionManager.js +100 -0
- package/dist/CollectionManager.js.map +1 -0
- package/dist/CollectionsIndex.d.ts +25 -0
- package/dist/CollectionsIndex.d.ts.map +1 -0
- package/dist/CollectionsIndex.js +42 -0
- package/dist/CollectionsIndex.js.map +1 -0
- package/dist/ContentManager.d.ts +26 -0
- package/dist/ContentManager.d.ts.map +1 -0
- package/dist/ContentManager.js +110 -0
- package/dist/ContentManager.js.map +1 -0
- package/dist/EntryEditor.d.ts +25 -0
- package/dist/EntryEditor.d.ts.map +1 -0
- package/dist/EntryEditor.js +190 -0
- package/dist/EntryEditor.js.map +1 -0
- package/dist/LoginForm.d.ts +18 -0
- package/dist/LoginForm.d.ts.map +1 -0
- package/dist/LoginForm.js +41 -0
- package/dist/LoginForm.js.map +1 -0
- package/dist/MediaManager.d.ts +21 -0
- package/dist/MediaManager.d.ts.map +1 -0
- package/dist/MediaManager.js +59 -0
- package/dist/MediaManager.js.map +1 -0
- package/dist/SchemaEditor.d.ts +22 -0
- package/dist/SchemaEditor.d.ts.map +1 -0
- package/dist/SchemaEditor.js +35 -0
- package/dist/SchemaEditor.js.map +1 -0
- package/dist/SchemaEditorContent.d.ts +4 -0
- package/dist/SchemaEditorContent.d.ts.map +1 -0
- package/dist/SchemaEditorContent.js +82 -0
- package/dist/SchemaEditorContent.js.map +1 -0
- package/dist/SchemaEditorFieldDrawer.d.ts +2 -0
- package/dist/SchemaEditorFieldDrawer.d.ts.map +1 -0
- package/dist/SchemaEditorFieldDrawer.js +126 -0
- package/dist/SchemaEditorFieldDrawer.js.map +1 -0
- package/dist/SchemaEditorRoot.d.ts +59 -0
- package/dist/SchemaEditorRoot.d.ts.map +1 -0
- package/dist/SchemaEditorRoot.js +71 -0
- package/dist/SchemaEditorRoot.js.map +1 -0
- package/dist/SchemaEditorSidebar.d.ts +4 -0
- package/dist/SchemaEditorSidebar.d.ts.map +1 -0
- package/dist/SchemaEditorSidebar.js +67 -0
- package/dist/SchemaEditorSidebar.js.map +1 -0
- package/dist/TeamManager.d.ts +18 -0
- package/dist/TeamManager.d.ts.map +1 -0
- package/dist/TeamManager.js +90 -0
- package/dist/TeamManager.js.map +1 -0
- package/dist/components/CmsAdminHeader.d.ts +11 -0
- package/dist/components/CmsAdminHeader.d.ts.map +1 -0
- package/dist/components/CmsAdminHeader.js +119 -0
- package/dist/components/CmsAdminHeader.js.map +1 -0
- package/dist/components/ConfirmDialog.d.ts +19 -0
- package/dist/components/ConfirmDialog.d.ts.map +1 -0
- package/dist/components/ConfirmDialog.js +12 -0
- package/dist/components/ConfirmDialog.js.map +1 -0
- package/dist/components/EmptyState.d.ts +9 -0
- package/dist/components/EmptyState.d.ts.map +1 -0
- package/dist/components/EmptyState.js +7 -0
- package/dist/components/EmptyState.js.map +1 -0
- package/dist/components/EntryRow.d.ts +12 -0
- package/dist/components/EntryRow.d.ts.map +1 -0
- package/dist/components/EntryRow.js +20 -0
- package/dist/components/EntryRow.js.map +1 -0
- package/dist/components/ErrorAlert.d.ts +32 -0
- package/dist/components/ErrorAlert.d.ts.map +1 -0
- package/dist/components/ErrorAlert.js +40 -0
- package/dist/components/ErrorAlert.js.map +1 -0
- package/dist/components/InviteRow.d.ts +18 -0
- package/dist/components/InviteRow.d.ts.map +1 -0
- package/dist/components/InviteRow.js +28 -0
- package/dist/components/InviteRow.js.map +1 -0
- package/dist/components/MediaCard.d.ts +10 -0
- package/dist/components/MediaCard.d.ts.map +1 -0
- package/dist/components/MediaCard.js +29 -0
- package/dist/components/MediaCard.js.map +1 -0
- package/dist/components/MemberRow.d.ts +19 -0
- package/dist/components/MemberRow.d.ts.map +1 -0
- package/dist/components/MemberRow.js +19 -0
- package/dist/components/MemberRow.js.map +1 -0
- package/dist/components/PageHeader.d.ts +8 -0
- package/dist/components/PageHeader.d.ts.map +1 -0
- package/dist/components/PageHeader.js +7 -0
- package/dist/components/PageHeader.js.map +1 -0
- package/dist/components/RoleBadge.d.ts +7 -0
- package/dist/components/RoleBadge.d.ts.map +1 -0
- package/dist/components/RoleBadge.js +12 -0
- package/dist/components/RoleBadge.js.map +1 -0
- package/dist/components/StatusBadge.d.ts +8 -0
- package/dist/components/StatusBadge.d.ts.map +1 -0
- package/dist/components/StatusBadge.js +16 -0
- package/dist/components/StatusBadge.js.map +1 -0
- package/dist/components/TagInput.d.ts +12 -0
- package/dist/components/TagInput.d.ts.map +1 -0
- package/dist/components/TagInput.js +76 -0
- package/dist/components/TagInput.js.map +1 -0
- package/dist/components/UploadZone.d.ts +9 -0
- package/dist/components/UploadZone.d.ts.map +1 -0
- package/dist/components/UploadZone.js +21 -0
- package/dist/components/UploadZone.js.map +1 -0
- package/dist/components/index.d.ts +27 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +15 -0
- package/dist/components/index.js.map +1 -0
- package/dist/hooks/use-mobile.d.ts +2 -0
- package/dist/hooks/use-mobile.d.ts.map +1 -0
- package/dist/hooks/use-mobile.js +16 -0
- package/dist/hooks/use-mobile.js.map +1 -0
- package/dist/hooks/useMediaQuery.d.ts +2 -0
- package/dist/hooks/useMediaQuery.d.ts.map +1 -0
- package/dist/hooks/useMediaQuery.js +16 -0
- package/dist/hooks/useMediaQuery.js.map +1 -0
- package/dist/index.d.ts +29 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +23 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/utils.d.ts +3 -0
- package/dist/lib/utils.d.ts.map +1 -0
- package/dist/lib/utils.js +6 -0
- package/dist/lib/utils.js.map +1 -0
- package/dist/ui/accordion.d.ts +8 -0
- package/dist/ui/accordion.d.ts.map +1 -0
- package/dist/ui/accordion.js +19 -0
- package/dist/ui/accordion.js.map +1 -0
- package/dist/ui/aevr/aevr/activity-item.d.ts +107 -0
- package/dist/ui/aevr/aevr/activity-item.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/activity-item.js +154 -0
- package/dist/ui/aevr/aevr/activity-item.js.map +1 -0
- package/dist/ui/aevr/aevr/blurred-background.d.ts +10 -0
- package/dist/ui/aevr/aevr/blurred-background.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/blurred-background.js +31 -0
- package/dist/ui/aevr/aevr/blurred-background.js.map +1 -0
- package/dist/ui/aevr/aevr/button.d.ts +11 -0
- package/dist/ui/aevr/aevr/button.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/button.js +37 -0
- package/dist/ui/aevr/aevr/button.js.map +1 -0
- package/dist/ui/aevr/aevr/country-dropdown.d.ts +25 -0
- package/dist/ui/aevr/aevr/country-dropdown.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/country-dropdown.js +38 -0
- package/dist/ui/aevr/aevr/country-dropdown.js.map +1 -0
- package/dist/ui/aevr/aevr/currency-amount-input.d.ts +19 -0
- package/dist/ui/aevr/aevr/currency-amount-input.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/currency-amount-input.js +89 -0
- package/dist/ui/aevr/aevr/currency-amount-input.js.map +1 -0
- package/dist/ui/aevr/aevr/currency-select.d.ts +16 -0
- package/dist/ui/aevr/aevr/currency-select.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/currency-select.js +38 -0
- package/dist/ui/aevr/aevr/currency-select.js.map +1 -0
- package/dist/ui/aevr/aevr/file-upload.d.ts +70 -0
- package/dist/ui/aevr/aevr/file-upload.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/file-upload.js +388 -0
- package/dist/ui/aevr/aevr/file-upload.js.map +1 -0
- package/dist/ui/aevr/aevr/info-box.d.ts +32 -0
- package/dist/ui/aevr/aevr/info-box.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/info-box.js +248 -0
- package/dist/ui/aevr/aevr/info-box.js.map +1 -0
- package/dist/ui/aevr/aevr/loader.d.ts +6 -0
- package/dist/ui/aevr/aevr/loader.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/loader.js +14 -0
- package/dist/ui/aevr/aevr/loader.js.map +1 -0
- package/dist/ui/aevr/aevr/mini-wallet-card.d.ts +29 -0
- package/dist/ui/aevr/aevr/mini-wallet-card.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/mini-wallet-card.js +31 -0
- package/dist/ui/aevr/aevr/mini-wallet-card.js.map +1 -0
- package/dist/ui/aevr/aevr/multistep.d.ts +40 -0
- package/dist/ui/aevr/aevr/multistep.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/multistep.js +95 -0
- package/dist/ui/aevr/aevr/multistep.js.map +1 -0
- package/dist/ui/aevr/aevr/nav-user.d.ts +35 -0
- package/dist/ui/aevr/aevr/nav-user.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/nav-user.js +47 -0
- package/dist/ui/aevr/aevr/nav-user.js.map +1 -0
- package/dist/ui/aevr/aevr/page-header.d.ts +46 -0
- package/dist/ui/aevr/aevr/page-header.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/page-header.js +68 -0
- package/dist/ui/aevr/aevr/page-header.js.map +1 -0
- package/dist/ui/aevr/aevr/phone-input.d.ts +8 -0
- package/dist/ui/aevr/aevr/phone-input.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/phone-input.js +60 -0
- package/dist/ui/aevr/aevr/phone-input.js.map +1 -0
- package/dist/ui/aevr/aevr/progress.d.ts +38 -0
- package/dist/ui/aevr/aevr/progress.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/progress.js +65 -0
- package/dist/ui/aevr/aevr/progress.js.map +1 -0
- package/dist/ui/aevr/aevr/responsive-breadcrumb.d.ts +14 -0
- package/dist/ui/aevr/aevr/responsive-breadcrumb.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/responsive-breadcrumb.js +17 -0
- package/dist/ui/aevr/aevr/responsive-breadcrumb.js.map +1 -0
- package/dist/ui/aevr/aevr/responsive-dialog.d.ts +16 -0
- package/dist/ui/aevr/aevr/responsive-dialog.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/responsive-dialog.js +29 -0
- package/dist/ui/aevr/aevr/responsive-dialog.js.map +1 -0
- package/dist/ui/aevr/aevr/search-command.d.ts +31 -0
- package/dist/ui/aevr/aevr/search-command.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/search-command.js +129 -0
- package/dist/ui/aevr/aevr/search-command.js.map +1 -0
- package/dist/ui/aevr/aevr/settings-card.d.ts +15 -0
- package/dist/ui/aevr/aevr/settings-card.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/settings-card.js +29 -0
- package/dist/ui/aevr/aevr/settings-card.js.map +1 -0
- package/dist/ui/aevr/aevr/settings-header.d.ts +8 -0
- package/dist/ui/aevr/aevr/settings-header.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/settings-header.js +9 -0
- package/dist/ui/aevr/aevr/settings-header.js.map +1 -0
- package/dist/ui/aevr/aevr/stat-card.d.ts +55 -0
- package/dist/ui/aevr/aevr/stat-card.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/stat-card.js +86 -0
- package/dist/ui/aevr/aevr/stat-card.js.map +1 -0
- package/dist/ui/aevr/aevr/summary-card.d.ts +20 -0
- package/dist/ui/aevr/aevr/summary-card.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/summary-card.js +29 -0
- package/dist/ui/aevr/aevr/summary-card.js.map +1 -0
- package/dist/ui/aevr/aevr/tag.d.ts +15 -0
- package/dist/ui/aevr/aevr/tag.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/tag.js +42 -0
- package/dist/ui/aevr/aevr/tag.js.map +1 -0
- package/dist/ui/aevr/aevr/theme-toggle.d.ts +2 -0
- package/dist/ui/aevr/aevr/theme-toggle.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/theme-toggle.js +20 -0
- package/dist/ui/aevr/aevr/theme-toggle.js.map +1 -0
- package/dist/ui/aevr/aevr/transaction-pin-confirm.d.ts +21 -0
- package/dist/ui/aevr/aevr/transaction-pin-confirm.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/transaction-pin-confirm.js +65 -0
- package/dist/ui/aevr/aevr/transaction-pin-confirm.js.map +1 -0
- package/dist/ui/aevr/aevr/wallet-activity-item.d.ts +36 -0
- package/dist/ui/aevr/aevr/wallet-activity-item.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/wallet-activity-item.js +288 -0
- package/dist/ui/aevr/aevr/wallet-activity-item.js.map +1 -0
- package/dist/ui/aevr/aevr/wallet-topup-form.d.ts +26 -0
- package/dist/ui/aevr/aevr/wallet-topup-form.d.ts.map +1 -0
- package/dist/ui/aevr/aevr/wallet-topup-form.js +13 -0
- package/dist/ui/aevr/aevr/wallet-topup-form.js.map +1 -0
- package/dist/ui/aevr/blurred-background.d.ts +10 -0
- package/dist/ui/aevr/blurred-background.d.ts.map +1 -0
- package/dist/ui/aevr/blurred-background.js +31 -0
- package/dist/ui/aevr/blurred-background.js.map +1 -0
- package/dist/ui/aevr/loader.d.ts +7 -0
- package/dist/ui/aevr/loader.d.ts.map +1 -0
- package/dist/ui/aevr/loader.js +15 -0
- package/dist/ui/aevr/loader.js.map +1 -0
- package/dist/ui/aevr/nav-user.d.ts +35 -0
- package/dist/ui/aevr/nav-user.d.ts.map +1 -0
- package/dist/ui/aevr/nav-user.js +38 -0
- package/dist/ui/aevr/nav-user.js.map +1 -0
- package/dist/ui/aevr/page-header.d.ts +46 -0
- package/dist/ui/aevr/page-header.d.ts.map +1 -0
- package/dist/ui/aevr/page-header.js +72 -0
- package/dist/ui/aevr/page-header.js.map +1 -0
- package/dist/ui/aevr/progress.d.ts +38 -0
- package/dist/ui/aevr/progress.d.ts.map +1 -0
- package/dist/ui/aevr/progress.js +65 -0
- package/dist/ui/aevr/progress.js.map +1 -0
- package/dist/ui/aevr/responsive-breadcrumb.d.ts +14 -0
- package/dist/ui/aevr/responsive-breadcrumb.d.ts.map +1 -0
- package/dist/ui/aevr/responsive-breadcrumb.js +17 -0
- package/dist/ui/aevr/responsive-breadcrumb.js.map +1 -0
- package/dist/ui/aevr/search-command.d.ts +31 -0
- package/dist/ui/aevr/search-command.d.ts.map +1 -0
- package/dist/ui/aevr/search-command.js +129 -0
- package/dist/ui/aevr/search-command.js.map +1 -0
- package/dist/ui/aevr/theme-toggle.d.ts +2 -0
- package/dist/ui/aevr/theme-toggle.d.ts.map +1 -0
- package/dist/ui/aevr/theme-toggle.js +20 -0
- package/dist/ui/aevr/theme-toggle.js.map +1 -0
- package/dist/ui/alert-dialog.d.ts +19 -0
- package/dist/ui/alert-dialog.d.ts.map +1 -0
- package/dist/ui/alert-dialog.js +42 -0
- package/dist/ui/alert-dialog.js.map +1 -0
- package/dist/ui/alert.d.ts +11 -0
- package/dist/ui/alert.d.ts.map +1 -0
- package/dist/ui/alert.js +28 -0
- package/dist/ui/alert.js.map +1 -0
- package/dist/ui/avatar.d.ts +12 -0
- package/dist/ui/avatar.d.ts.map +1 -0
- package/dist/ui/avatar.js +24 -0
- package/dist/ui/avatar.js.map +1 -0
- package/dist/ui/badge.d.ts +10 -0
- package/dist/ui/badge.d.ts.map +1 -0
- package/dist/ui/badge.js +25 -0
- package/dist/ui/badge.js.map +1 -0
- package/dist/ui/breadcrumb.d.ts +12 -0
- package/dist/ui/breadcrumb.d.ts.map +1 -0
- package/dist/ui/breadcrumb.js +28 -0
- package/dist/ui/breadcrumb.js.map +1 -0
- package/dist/ui/button.d.ts +11 -0
- package/dist/ui/button.d.ts.map +1 -0
- package/dist/ui/button.js +36 -0
- package/dist/ui/button.js.map +1 -0
- package/dist/ui/checkbox.d.ts +5 -0
- package/dist/ui/checkbox.d.ts.map +1 -0
- package/dist/ui/checkbox.js +9 -0
- package/dist/ui/checkbox.js.map +1 -0
- package/dist/ui/command.d.ts +19 -0
- package/dist/ui/command.d.ts.map +1 -0
- package/dist/ui/command.js +35 -0
- package/dist/ui/command.js.map +1 -0
- package/dist/ui/dialog.d.ts +18 -0
- package/dist/ui/dialog.d.ts.map +1 -0
- package/dist/ui/dialog.js +37 -0
- package/dist/ui/dialog.js.map +1 -0
- package/dist/ui/drawer.d.ts +14 -0
- package/dist/ui/drawer.d.ts.map +1 -0
- package/dist/ui/drawer.js +35 -0
- package/dist/ui/drawer.js.map +1 -0
- package/dist/ui/dropdown-menu.d.ts +30 -0
- package/dist/ui/dropdown-menu.d.ts.map +1 -0
- package/dist/ui/dropdown-menu.js +52 -0
- package/dist/ui/dropdown-menu.js.map +1 -0
- package/dist/ui/field.d.ts +25 -0
- package/dist/ui/field.d.ts.map +1 -0
- package/dist/ui/field.js +68 -0
- package/dist/ui/field.js.map +1 -0
- package/dist/ui/hover-card.d.ts +7 -0
- package/dist/ui/hover-card.d.ts.map +1 -0
- package/dist/ui/hover-card.js +14 -0
- package/dist/ui/hover-card.js.map +1 -0
- package/dist/ui/input-group.d.ts +17 -0
- package/dist/ui/input-group.d.ts.map +1 -0
- package/dist/ui/input-group.js +57 -0
- package/dist/ui/input-group.js.map +1 -0
- package/dist/ui/input.d.ts +4 -0
- package/dist/ui/input.d.ts.map +1 -0
- package/dist/ui/input.js +7 -0
- package/dist/ui/input.js.map +1 -0
- package/dist/ui/item.d.ts +24 -0
- package/dist/ui/item.d.ts.map +1 -0
- package/dist/ui/item.js +68 -0
- package/dist/ui/item.js.map +1 -0
- package/dist/ui/label.d.ts +5 -0
- package/dist/ui/label.d.ts.map +1 -0
- package/dist/ui/label.js +8 -0
- package/dist/ui/label.js.map +1 -0
- package/dist/ui/radio-group.d.ts +6 -0
- package/dist/ui/radio-group.d.ts.map +1 -0
- package/dist/ui/radio-group.js +11 -0
- package/dist/ui/radio-group.js.map +1 -0
- package/dist/ui/select.d.ts +16 -0
- package/dist/ui/select.d.ts.map +1 -0
- package/dist/ui/select.js +36 -0
- package/dist/ui/select.js.map +1 -0
- package/dist/ui/separator.d.ts +5 -0
- package/dist/ui/separator.d.ts.map +1 -0
- package/dist/ui/separator.js +9 -0
- package/dist/ui/separator.js.map +1 -0
- package/dist/ui/sheet.d.ts +15 -0
- package/dist/ui/sheet.d.ts.map +1 -0
- package/dist/ui/sheet.js +37 -0
- package/dist/ui/sheet.js.map +1 -0
- package/dist/ui/sidebar.d.ts +70 -0
- package/dist/ui/sidebar.d.ts.map +1 -0
- package/dist/ui/sidebar.js +207 -0
- package/dist/ui/sidebar.js.map +1 -0
- package/dist/ui/skeleton.d.ts +3 -0
- package/dist/ui/skeleton.d.ts.map +1 -0
- package/dist/ui/skeleton.js +7 -0
- package/dist/ui/skeleton.js.map +1 -0
- package/dist/ui/switch.d.ts +7 -0
- package/dist/ui/switch.d.ts.map +1 -0
- package/dist/ui/switch.js +8 -0
- package/dist/ui/switch.js.map +1 -0
- package/dist/ui/table.d.ts +11 -0
- package/dist/ui/table.d.ts.map +1 -0
- package/dist/ui/table.js +28 -0
- package/dist/ui/table.js.map +1 -0
- package/dist/ui/textarea.d.ts +4 -0
- package/dist/ui/textarea.d.ts.map +1 -0
- package/dist/ui/textarea.js +7 -0
- package/dist/ui/textarea.js.map +1 -0
- package/dist/ui/toggle-group.d.ts +11 -0
- package/dist/ui/toggle-group.d.ts.map +1 -0
- package/dist/ui/toggle-group.js +24 -0
- package/dist/ui/toggle-group.js.map +1 -0
- package/dist/ui/toggle.d.ts +10 -0
- package/dist/ui/toggle.d.ts.map +1 -0
- package/dist/ui/toggle.js +26 -0
- package/dist/ui/toggle.js.map +1 -0
- package/dist/ui/tooltip.d.ts +8 -0
- package/dist/ui/tooltip.d.ts.map +1 -0
- package/dist/ui/tooltip.js +17 -0
- package/dist/ui/tooltip.js.map +1 -0
- package/package.json +57 -0
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import * as React from "react";
|
|
4
|
+
import { Button } from "@/components/ui/button";
|
|
5
|
+
import { InputOTP, InputOTPGroup, InputOTPSlot, } from "@/components/ui/input-otp";
|
|
6
|
+
import ResponsiveDialog from "@/components/ui/aevr/responsive-dialog";
|
|
7
|
+
import { MinimalMultiStep } from "@/components/ui/aevr/multistep";
|
|
8
|
+
import Loader from "@/components/ui/aevr/loader";
|
|
9
|
+
import { LockIcon } from "lucide-react";
|
|
10
|
+
const PIN_LENGTH = 6;
|
|
11
|
+
// ─── Preview Step ─────────────────────────────────────────────────────────────
|
|
12
|
+
function PreviewStep({ previewFields, next, isProcessing, skipPin, onConfirm, }) {
|
|
13
|
+
const [error, setError] = React.useState(null);
|
|
14
|
+
const handleConfirm = React.useCallback(async () => {
|
|
15
|
+
if (skipPin) {
|
|
16
|
+
try {
|
|
17
|
+
setError(null);
|
|
18
|
+
await onConfirm("");
|
|
19
|
+
}
|
|
20
|
+
catch (err) {
|
|
21
|
+
setError(err instanceof Error ? err.message : "Something went wrong. Please try again.");
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
next();
|
|
26
|
+
}
|
|
27
|
+
}, [skipPin, onConfirm, next]);
|
|
28
|
+
return (_jsxs("div", { className: "space-y-4", children: [_jsx("div", { className: "bg-muted/50 divide-border divide-y rounded-xl border", children: previewFields.map((field, index) => (_jsxs("div", { className: "flex items-center justify-between px-4 py-3", children: [_jsx("span", { className: "text-muted-foreground text-sm", children: field.label }), _jsx("span", { className: "text-sm font-medium", children: field.value })] }, index))) }), _jsxs(Button, { className: "w-full", onClick: () => void handleConfirm(), disabled: isProcessing, children: [isProcessing ? _jsx(Loader, { className: "mr-2 h-4 w-4" }) : null, skipPin ? "Confirm" : "Continue to PIN"] }), error ? (_jsx("p", { className: "text-destructive text-center text-sm", children: error })) : null] }));
|
|
29
|
+
}
|
|
30
|
+
// ─── PIN Entry Step ───────────────────────────────────────────────────────────
|
|
31
|
+
function PinEntryStep({ values, setValues, isProcessing, onConfirm, }) {
|
|
32
|
+
const [error, setError] = React.useState(null);
|
|
33
|
+
const handlePinChange = React.useCallback(async (value) => {
|
|
34
|
+
setValues({ pin: value });
|
|
35
|
+
setError(null);
|
|
36
|
+
if (value.length === PIN_LENGTH) {
|
|
37
|
+
try {
|
|
38
|
+
await onConfirm(value);
|
|
39
|
+
}
|
|
40
|
+
catch (err) {
|
|
41
|
+
setError(err instanceof Error ? err.message : "Invalid PIN. Please try again.");
|
|
42
|
+
setValues({ pin: "" });
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}, [setValues, onConfirm]);
|
|
46
|
+
return (_jsxs("div", { className: "space-y-6", children: [_jsxs("div", { className: "flex flex-col items-center gap-3 py-2", children: [_jsx("div", { className: "bg-muted flex h-12 w-12 items-center justify-center rounded-full", children: _jsx(LockIcon, { className: "text-muted-foreground h-5 w-5" }) }), _jsxs("div", { className: "text-center", children: [_jsx("p", { className: "text-sm font-medium", children: "Enter your transaction PIN" }), _jsx("p", { className: "text-muted-foreground mt-1 text-xs", children: "Enter your 6-digit PIN to authorize this transaction" })] })] }), _jsx("div", { className: "flex justify-center", children: _jsx(InputOTP, { maxLength: PIN_LENGTH, value: values.pin, onChange: (value) => void handlePinChange(value), disabled: isProcessing, autoFocus: true, children: _jsx(InputOTPGroup, { children: Array.from({ length: PIN_LENGTH }).map((_, i) => (_jsx(InputOTPSlot, { index: i }, i))) }) }) }), error ? (_jsx("p", { className: "text-destructive text-center text-sm", children: error })) : null, isProcessing ? (_jsxs("div", { className: "flex items-center justify-center gap-2", children: [_jsx(Loader, { className: "h-4 w-4" }), _jsx("span", { className: "text-muted-foreground text-sm", children: "Verifying\u2026" })] })) : null] }));
|
|
47
|
+
}
|
|
48
|
+
// ─── Main Component ───────────────────────────────────────────────────────────
|
|
49
|
+
export function TransactionPinConfirm({ open, onOpenChange, title = "Confirm Transaction", description = "Review the transaction details before confirming.", previewFields, onConfirm, isProcessing = false, skipPin = false, }) {
|
|
50
|
+
const initialValues = { pin: "" };
|
|
51
|
+
const steps = React.useMemo(() => skipPin
|
|
52
|
+
? [
|
|
53
|
+
({ next, isProcessing: ip }) => (_jsx(PreviewStep, { previewFields: previewFields, next: next, isProcessing: ip, skipPin: true, onConfirm: onConfirm })),
|
|
54
|
+
]
|
|
55
|
+
: [
|
|
56
|
+
({ next, isProcessing: ip }) => (_jsx(PreviewStep, { previewFields: previewFields, next: next, isProcessing: ip, onConfirm: onConfirm })),
|
|
57
|
+
({ values, setValues, isProcessing: ip }) => (_jsx(PinEntryStep, { values: values, setValues: setValues, isProcessing: ip, onConfirm: onConfirm })),
|
|
58
|
+
], [previewFields, onConfirm, skipPin]);
|
|
59
|
+
return (_jsx(ResponsiveDialog, { openPrompt: open, onOpenPromptChange: (isOpen) => {
|
|
60
|
+
if (!isProcessing) {
|
|
61
|
+
onOpenChange(Boolean(isOpen));
|
|
62
|
+
}
|
|
63
|
+
}, title: title, description: description, children: _jsx("div", { className: "p-4", children: _jsx(MinimalMultiStep, { steps: steps, initialValues: initialValues, persist: false, isProcessing: isProcessing, options: { showBackBtn: !skipPin } }) }) }));
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=transaction-pin-confirm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transaction-pin-confirm.js","sourceRoot":"","sources":["../../../../src/ui/aevr/aevr/transaction-pin-confirm.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { type ActivityField, type ActivityIndicator, type ActivityStatus } from "@/components/ui/aevr/activity-item";
|
|
2
|
+
import type { InitiatedPayment, LedgerTransaction } from "@/utils/wallets";
|
|
3
|
+
import type { WebhookDeliveryLog } from "@/utils/notifications/types";
|
|
4
|
+
export declare function GenericActivityItem({ title, subtitle, status, timestamp, dialogTitle, dialogDescription, summaryLabel, summaryValue, fields, indicator, shareText, copyValue, copyLabel, downloadFilename, publicUrl, }: {
|
|
5
|
+
title: string;
|
|
6
|
+
subtitle?: string;
|
|
7
|
+
status: ActivityStatus;
|
|
8
|
+
timestamp: string;
|
|
9
|
+
dialogTitle: string;
|
|
10
|
+
dialogDescription: string;
|
|
11
|
+
summaryLabel: string;
|
|
12
|
+
summaryValue: string;
|
|
13
|
+
fields: ActivityField[];
|
|
14
|
+
indicator: ActivityIndicator;
|
|
15
|
+
shareText: string;
|
|
16
|
+
copyValue?: string;
|
|
17
|
+
copyLabel?: string;
|
|
18
|
+
downloadFilename?: string;
|
|
19
|
+
publicUrl?: string;
|
|
20
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
21
|
+
export declare function WebhookDeliveryActivityItem({ delivery, endpointUrl, }: {
|
|
22
|
+
delivery: WebhookDeliveryLog;
|
|
23
|
+
endpointUrl?: string;
|
|
24
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
25
|
+
export declare function GenericWalletTransactionItem({ transaction, }: {
|
|
26
|
+
transaction: LedgerTransaction;
|
|
27
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
28
|
+
export declare function WalletTransactionItem({ transaction, }: {
|
|
29
|
+
transaction: LedgerTransaction;
|
|
30
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
31
|
+
export declare function WalletInitiatedPaymentItem({ payment, onCancel, isCancelling, }: {
|
|
32
|
+
payment: InitiatedPayment;
|
|
33
|
+
onCancel?: (paymentId: string) => void;
|
|
34
|
+
isCancelling?: boolean;
|
|
35
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
36
|
+
//# sourceMappingURL=wallet-activity-item.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet-activity-item.d.ts","sourceRoot":"","sources":["../../../../src/ui/aevr/aevr/wallet-activity-item.tsx"],"names":[],"mappings":"AAkBA,OAAO,EAsBL,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACpB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAMtE,wBAAgB,mBAAmB,CAAC,EAClC,KAAK,EACL,QAAQ,EACR,MAAM,EACN,SAAS,EACT,WAAW,EACX,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,MAAM,EACN,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAqB,EACrB,gBAAgB,EAChB,SAAS,GACV,EAAE;IACD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,SAAS,EAAE,iBAAiB,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,2CAiEA;AA+BD,wBAAgB,2BAA2B,CAAC,EAC1C,QAAQ,EACR,WAAW,GACZ,EAAE;IACD,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,2CA4CA;AAID,wBAAgB,4BAA4B,CAAC,EAC3C,WAAW,GACZ,EAAE;IACD,WAAW,EAAE,iBAAiB,CAAC;CAChC,2CAyDA;AAkID,wBAAgB,qBAAqB,CAAC,EACpC,WAAW,GACZ,EAAE;IACD,WAAW,EAAE,iBAAiB,CAAC;CAChC,2CAMA;AAkOD,wBAAgB,0BAA0B,CAAC,EACzC,OAAO,EACP,QAAQ,EACR,YAAoB,GACrB,EAAE;IACD,OAAO,EAAE,gBAAgB,CAAC;IAC1B,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,2CAUA"}
|
|
@@ -0,0 +1,288 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
+
import Link from "next/link";
|
|
4
|
+
import { useMemo } from "react";
|
|
5
|
+
import { AlertCircleIcon, ArrowDownLeftIcon, ArrowRightLeftIcon, ArrowUpRightIcon, CheckCircle2Icon, Clock3Icon, CopyIcon, ExternalLinkIcon, XIcon, } from "lucide-react";
|
|
6
|
+
import { Button } from "@/components/ui/button";
|
|
7
|
+
import { Avatar, AvatarFallback, AvatarImage } from "@/components/ui/avatar";
|
|
8
|
+
import { ActivityItem, ActivityItemBadge, ActivityItemContent, ActivityItemCopy, ActivityItemDialog, ActivityItemDownload, ActivityItemField, ActivityItemIndicator, ActivityItemInlineField, ActivityItemMiniDate, ActivityItemReceipt, ActivityItemShare, ActivityItemSnapshot, ActivityItemStatus, ActivityItemSubtitle, ActivityItemSummary, ActivityItemTimestamp, ActivityItemTitle, ActivityItemToolbar, ActivityItemTrigger, useActivityItem, } from "@/components/ui/aevr/activity-item";
|
|
9
|
+
import { formatCurrency } from "@/utils/aevr/number-formatter";
|
|
10
|
+
import { formatDate } from "@/utils/aevr/date-formatter";
|
|
11
|
+
// ─── GenericActivityItem ────────────────────────────────────────────
|
|
12
|
+
export function GenericActivityItem({ title, subtitle, status, timestamp, dialogTitle, dialogDescription, summaryLabel, summaryValue, fields, indicator, shareText, copyValue, copyLabel = "Copy ID", downloadFilename, publicUrl, }) {
|
|
13
|
+
return (_jsxs(ActivityItem, { children: [_jsxs(ActivityItemTrigger, { className: "hover:bg-background/60 flex w-full items-center justify-between gap-3 border-t p-4 transition-colors", children: [_jsxs("div", { className: "flex min-w-0 items-center gap-3", children: [_jsx(ActivityItemIndicator, { className: indicator.toneClassName, children: _jsx(indicator.Icon, { className: "h-4 w-4" }) }), _jsxs(ActivityItemContent, { children: [_jsx(ActivityItemTitle, { children: title }), subtitle ? (_jsx(ActivityItemSubtitle, { children: subtitle })) : null] })] }), _jsxs(ActivityItemBadge, { children: [_jsx(ActivityItemStatus, { status: status }), _jsx(ActivityItemTimestamp, { children: new Date(timestamp).toLocaleString() })] })] }), _jsxs(ActivityItemDialog, { title: dialogTitle, description: dialogDescription, children: [_jsxs(ActivityItemReceipt, { children: [_jsx(ActivityItemSummary, { label: summaryLabel, value: summaryValue, status: status, indicator: indicator }), _jsx(ActivityItemSnapshot, { children: fields.map((field, index) => typeof field.value === "string" ? (_jsx(ActivityItemField, { label: field.label, value: field.value, mono: field.mono }, `${field.label}-${index}`)) : (_jsx(ActivityItemInlineField, { label: field.label, children: field.value }, `${field.label}-${index}`))) })] }), _jsxs(ActivityItemToolbar, { children: [_jsx(ActivityItemDownload, { filename: downloadFilename }), _jsx(ActivityItemShare, { title: dialogTitle, text: shareText, url: publicUrl }), copyValue ? (_jsx(ActivityItemCopy, { value: copyValue, label: copyLabel })) : null] })] })] }));
|
|
14
|
+
}
|
|
15
|
+
// ─── WebhookDeliveryActivityItem ────────────────────────────────────
|
|
16
|
+
function getDeliveryIndicator(delivery) {
|
|
17
|
+
if (delivery.success) {
|
|
18
|
+
return {
|
|
19
|
+
label: "Delivered",
|
|
20
|
+
Icon: CheckCircle2Icon,
|
|
21
|
+
toneClassName: "bg-green-100 text-green-700 border-green-200 dark:bg-green-900/40 dark:text-green-400 dark:border-green-800",
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
if (delivery.statusCode && delivery.statusCode >= 500) {
|
|
25
|
+
return {
|
|
26
|
+
label: "Server failure",
|
|
27
|
+
Icon: AlertCircleIcon,
|
|
28
|
+
toneClassName: "bg-red-100 text-red-700 border-red-200 dark:bg-red-900/40 dark:text-red-400 dark:border-red-800",
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
return {
|
|
32
|
+
label: "Delivery attempt",
|
|
33
|
+
Icon: Clock3Icon,
|
|
34
|
+
toneClassName: "bg-amber-100 text-amber-700 border-amber-200 dark:bg-amber-900/40 dark:text-amber-400 dark:border-amber-800",
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
export function WebhookDeliveryActivityItem({ delivery, endpointUrl, }) {
|
|
38
|
+
const status = delivery.success ? "successful" : "failed";
|
|
39
|
+
const indicator = getDeliveryIndicator(delivery);
|
|
40
|
+
const summaryValue = `HTTP ${delivery.statusCode ?? "-"}`;
|
|
41
|
+
return (_jsx(GenericActivityItem, { title: `${delivery.eventType} - ${indicator.label}`, subtitle: `Notification ${delivery.notificationId}`, status: status, timestamp: delivery.attemptedAt, dialogTitle: "Webhook Delivery Attempt", dialogDescription: "Inspect this delivery attempt payload and metadata.", summaryLabel: "Delivery Result", summaryValue: summaryValue, indicator: indicator, copyValue: delivery.notificationId, copyLabel: "Copy Notification", downloadFilename: `webhook-delivery-${delivery.notificationId}.png`, shareText: [
|
|
42
|
+
`Event: ${delivery.eventType}`,
|
|
43
|
+
`Notification ID: ${delivery.notificationId}`,
|
|
44
|
+
`Status: ${status}`,
|
|
45
|
+
`HTTP: ${delivery.statusCode ?? "-"}`,
|
|
46
|
+
`Attempted At: ${new Date(delivery.attemptedAt).toLocaleString()}`,
|
|
47
|
+
endpointUrl ? `Endpoint: ${endpointUrl}` : null,
|
|
48
|
+
delivery.error ? `Error: ${delivery.error}` : null,
|
|
49
|
+
]
|
|
50
|
+
.filter(Boolean)
|
|
51
|
+
.join("\n"), fields: [
|
|
52
|
+
{ label: "Event", value: delivery.eventType },
|
|
53
|
+
{ label: "Notification", value: delivery.notificationId, mono: true },
|
|
54
|
+
{ label: "Status", value: status },
|
|
55
|
+
{ label: "HTTP", value: String(delivery.statusCode ?? "-") },
|
|
56
|
+
{
|
|
57
|
+
label: "Attempted",
|
|
58
|
+
value: new Date(delivery.attemptedAt).toLocaleString(),
|
|
59
|
+
},
|
|
60
|
+
...(endpointUrl ? [{ label: "Endpoint", value: endpointUrl }] : []),
|
|
61
|
+
...(delivery.error ? [{ label: "Error", value: delivery.error }] : []),
|
|
62
|
+
] }));
|
|
63
|
+
}
|
|
64
|
+
// ─── GenericWalletTransactionItem ───────────────────────────────────
|
|
65
|
+
export function GenericWalletTransactionItem({ transaction, }) {
|
|
66
|
+
const amount = formatCurrency(transaction.amount, {
|
|
67
|
+
currency: transaction.symbol,
|
|
68
|
+
minimumFractionDigits: 0,
|
|
69
|
+
maximumFractionDigits: 3,
|
|
70
|
+
});
|
|
71
|
+
const indicator = getTransactionIndicator(transaction);
|
|
72
|
+
const txMeta = isRecord(transaction.meta) ? transaction.meta : {};
|
|
73
|
+
const details = [
|
|
74
|
+
{ label: "Transaction ID", value: transaction._id, mono: true },
|
|
75
|
+
{ label: "Type", value: transaction.type },
|
|
76
|
+
{ label: "Symbol", value: transaction.symbol },
|
|
77
|
+
{ label: "Status", value: transaction.status },
|
|
78
|
+
{
|
|
79
|
+
label: "Created",
|
|
80
|
+
value: new Date(transaction.createdAt).toLocaleString(),
|
|
81
|
+
},
|
|
82
|
+
];
|
|
83
|
+
if (typeof transaction.from?.name === "string") {
|
|
84
|
+
details.push({ label: "From", value: transaction.from.name });
|
|
85
|
+
}
|
|
86
|
+
if (typeof transaction.to?.name === "string") {
|
|
87
|
+
details.push({ label: "To", value: transaction.to.name });
|
|
88
|
+
}
|
|
89
|
+
if (typeof txMeta.kind === "string") {
|
|
90
|
+
details.push({ label: "Kind", value: txMeta.kind });
|
|
91
|
+
}
|
|
92
|
+
return (_jsx(GenericActivityItem, { title: `${indicator.label} ${amount}`, subtitle: `${transaction.from?.name || "Unknown"} to ${transaction.to?.name || "Unknown"}`, status: transaction.status, timestamp: transaction.createdAt, dialogTitle: "Transaction Details", dialogDescription: "Inspect transaction details and share the record.", summaryLabel: "Transaction Amount", summaryValue: amount, indicator: indicator, copyValue: transaction._id, copyLabel: "Copy ID", downloadFilename: `transaction-${transaction._id}.png`, shareText: [
|
|
93
|
+
`Transaction ID: ${transaction._id}`,
|
|
94
|
+
`Amount: ${amount}`,
|
|
95
|
+
`Type: ${transaction.type}`,
|
|
96
|
+
`Status: ${transaction.status}`,
|
|
97
|
+
`Created: ${new Date(transaction.createdAt).toLocaleString()}`,
|
|
98
|
+
`View: ${typeof window !== "undefined" ? window.location.origin : ""}/activity/${transaction._id}`,
|
|
99
|
+
].join("\n"), fields: details, publicUrl: `${typeof window !== "undefined" ? window.location.origin : ""}/activity/${transaction._id}` }));
|
|
100
|
+
}
|
|
101
|
+
// ─── Helpers ────────────────────────────────────────────────────────
|
|
102
|
+
function formatInitiatedPaymentKind(kind) {
|
|
103
|
+
if (kind === "wallet_topup")
|
|
104
|
+
return "Wallet top-up";
|
|
105
|
+
if (kind === "subscription_payment")
|
|
106
|
+
return "Subscription payment";
|
|
107
|
+
if (!kind)
|
|
108
|
+
return "Payment";
|
|
109
|
+
return kind.replace(/_/g, " ");
|
|
110
|
+
}
|
|
111
|
+
function humanizeKey(key) {
|
|
112
|
+
return key
|
|
113
|
+
.replace(/([a-z])([A-Z])/g, "$1 $2")
|
|
114
|
+
.replace(/_/g, " ")
|
|
115
|
+
.replace(/^./, (value) => value.toUpperCase());
|
|
116
|
+
}
|
|
117
|
+
function formatMetaValue(value) {
|
|
118
|
+
if (value == null)
|
|
119
|
+
return "-";
|
|
120
|
+
if (typeof value === "string")
|
|
121
|
+
return value;
|
|
122
|
+
if (typeof value === "number" || typeof value === "boolean") {
|
|
123
|
+
return String(value);
|
|
124
|
+
}
|
|
125
|
+
return "-";
|
|
126
|
+
}
|
|
127
|
+
function isRecord(value) {
|
|
128
|
+
return typeof value === "object" && value !== null;
|
|
129
|
+
}
|
|
130
|
+
function getInitials(value) {
|
|
131
|
+
return (value || "U")
|
|
132
|
+
.split(" ")
|
|
133
|
+
.map((part) => part.trim())
|
|
134
|
+
.filter(Boolean)
|
|
135
|
+
.slice(0, 2)
|
|
136
|
+
.map((part) => part[0])
|
|
137
|
+
.join("")
|
|
138
|
+
.toUpperCase();
|
|
139
|
+
}
|
|
140
|
+
function extractParty(fallback, meta, key) {
|
|
141
|
+
const raw = isRecord(meta[key]) ? meta[key] : undefined;
|
|
142
|
+
const rawUser = isRecord(raw?.user) ? raw.user : undefined;
|
|
143
|
+
const name = fallback?.name ||
|
|
144
|
+
(typeof raw?.name === "string" ? raw.name : undefined) ||
|
|
145
|
+
(typeof rawUser?.name === "string" ? rawUser.name : undefined) ||
|
|
146
|
+
"Unknown";
|
|
147
|
+
const userId = (typeof raw?.user === "string" ? raw.user : undefined) ||
|
|
148
|
+
(typeof rawUser?._id === "string" ? rawUser._id : undefined);
|
|
149
|
+
const avatarUrl = (typeof fallback?.picture === "string" ? fallback.picture : undefined) ||
|
|
150
|
+
(typeof rawUser?.picture === "string" ? rawUser.picture : undefined) ||
|
|
151
|
+
(typeof raw?.avatarUrl === "string" ? raw.avatarUrl : undefined);
|
|
152
|
+
const payTag = (typeof fallback?.payTag === "string" ? fallback.payTag : undefined) ||
|
|
153
|
+
(typeof raw?.payTag === "string" ? raw.payTag : undefined) ||
|
|
154
|
+
(typeof rawUser?.payTag === "string" ? rawUser.payTag : undefined) ||
|
|
155
|
+
(key === "from"
|
|
156
|
+
? typeof meta.senderPayTag === "string"
|
|
157
|
+
? meta.senderPayTag
|
|
158
|
+
: undefined
|
|
159
|
+
: typeof meta.recipientPayTag === "string"
|
|
160
|
+
? meta.recipientPayTag
|
|
161
|
+
: undefined);
|
|
162
|
+
const displayName = (typeof raw?.displayName === "string" ? raw.displayName : undefined) ||
|
|
163
|
+
(typeof rawUser?.name === "string" ? rawUser.name : undefined) ||
|
|
164
|
+
(key === "from"
|
|
165
|
+
? typeof meta.senderDisplayName === "string"
|
|
166
|
+
? meta.senderDisplayName
|
|
167
|
+
: undefined
|
|
168
|
+
: typeof meta.recipientDisplayName === "string"
|
|
169
|
+
? meta.recipientDisplayName
|
|
170
|
+
: undefined) ||
|
|
171
|
+
name.replace(/\s+[A-Z0-9]{2,10}\s+wallet$/i, "").trim();
|
|
172
|
+
return {
|
|
173
|
+
name,
|
|
174
|
+
displayName,
|
|
175
|
+
payTag,
|
|
176
|
+
userId,
|
|
177
|
+
avatarUrl,
|
|
178
|
+
};
|
|
179
|
+
}
|
|
180
|
+
function getTransactionIndicator(transaction) {
|
|
181
|
+
if (transaction.status === "reversed") {
|
|
182
|
+
return {
|
|
183
|
+
label: "Reversal",
|
|
184
|
+
Icon: ArrowRightLeftIcon,
|
|
185
|
+
toneClassName: "bg-amber-100 text-amber-700 border-amber-200 dark:bg-amber-900/40 dark:text-amber-400 dark:border-amber-800",
|
|
186
|
+
};
|
|
187
|
+
}
|
|
188
|
+
if (transaction.type === "credit") {
|
|
189
|
+
return {
|
|
190
|
+
label: "Credit",
|
|
191
|
+
Icon: ArrowDownLeftIcon,
|
|
192
|
+
toneClassName: "bg-green-100 text-green-700 border-green-200 dark:bg-green-900/40 dark:text-green-400 dark:border-green-800",
|
|
193
|
+
};
|
|
194
|
+
}
|
|
195
|
+
return {
|
|
196
|
+
label: "Debit",
|
|
197
|
+
Icon: ArrowUpRightIcon,
|
|
198
|
+
toneClassName: "bg-red-100 text-red-700 border-red-200 dark:bg-red-900/40 dark:text-red-400 dark:border-red-800",
|
|
199
|
+
};
|
|
200
|
+
}
|
|
201
|
+
// ─── WalletTransactionItem ──────────────────────────────────────────
|
|
202
|
+
export function WalletTransactionItem({ transaction, }) {
|
|
203
|
+
return (_jsx(ActivityItem, { children: _jsx(WalletTransactionItemContent, { transaction: transaction }) }));
|
|
204
|
+
}
|
|
205
|
+
function WalletTransactionItemContent({ transaction, }) {
|
|
206
|
+
const { copy } = useActivityItem();
|
|
207
|
+
const txMeta = useMemo(() => (isRecord(transaction.meta) ? transaction.meta : {}), [transaction.meta]);
|
|
208
|
+
const createdDate = new Date(transaction.createdAt);
|
|
209
|
+
const receivedOnLabel = formatDate(transaction.createdAt, {
|
|
210
|
+
formatStyle: "absolute",
|
|
211
|
+
formatString: "EEEE, MMM d, yyyy",
|
|
212
|
+
});
|
|
213
|
+
const receivedTimeLabel = formatDate(transaction.createdAt, {
|
|
214
|
+
formatStyle: "absolute",
|
|
215
|
+
formatString: "h:mm a",
|
|
216
|
+
});
|
|
217
|
+
const fromParty = extractParty(transaction.from, txMeta, "from");
|
|
218
|
+
const toParty = extractParty(transaction.to, txMeta, "to");
|
|
219
|
+
const highlightMetaEntries = useMemo(() => Object.entries(txMeta).filter(([key, value]) => {
|
|
220
|
+
if (![
|
|
221
|
+
"kind",
|
|
222
|
+
"provider",
|
|
223
|
+
"currency",
|
|
224
|
+
"country",
|
|
225
|
+
"paymentStatus",
|
|
226
|
+
"resolvedCurrency",
|
|
227
|
+
"resolvedAmountCredited",
|
|
228
|
+
].includes(key)) {
|
|
229
|
+
return false;
|
|
230
|
+
}
|
|
231
|
+
return (typeof value === "string" ||
|
|
232
|
+
typeof value === "number" ||
|
|
233
|
+
typeof value === "boolean");
|
|
234
|
+
}), [txMeta]);
|
|
235
|
+
const amount = formatCurrency(transaction.amount, {
|
|
236
|
+
currency: transaction.symbol,
|
|
237
|
+
minimumFractionDigits: 0,
|
|
238
|
+
maximumFractionDigits: 3,
|
|
239
|
+
});
|
|
240
|
+
const indicator = getTransactionIndicator(transaction);
|
|
241
|
+
const renderParty = (party, roleLabel) => {
|
|
242
|
+
const tagLabel = party.payTag && party.payTag.trim().length > 0 ? `@${party.payTag}` : "";
|
|
243
|
+
return (_jsx("span", { className: "inline-flex max-w-full items-start justify-end gap-2", children: _jsxs("span", { className: "flex min-w-0 flex-col items-end gap-0.5", children: [_jsxs("div", { className: "flex flex-wrap items-center gap-1", children: [_jsxs(Avatar, { size: "sm", className: "ring-border ring-1", children: [party.avatarUrl ? (_jsx(AvatarImage, { src: party.avatarUrl, alt: party.displayName })) : null, _jsx(AvatarFallback, { children: getInitials(party.displayName) })] }), _jsx("span", { className: "max-w-60 truncate text-sm font-semibold", children: party.displayName || party.name })] }), tagLabel ? (_jsxs("span", { className: "inline-flex items-center gap-1", children: [_jsx("span", { className: "text-muted-foreground text-xs", children: tagLabel }), _jsx(Button, { type: "button", size: "icon", variant: "secondary", className: "size-6", onClick: () => void copy(party.payTag || "", {
|
|
244
|
+
successMessage: `${roleLabel} tag copied`,
|
|
245
|
+
}), children: _jsx(CopyIcon, { className: "size-3" }) })] })) : (_jsx("span", { className: "text-muted-foreground text-[11px]", children: "No PayTag" }))] }) }));
|
|
246
|
+
};
|
|
247
|
+
return (_jsxs(_Fragment, { children: [_jsxs(ActivityItemTrigger, { className: "hover:bg-background/60 flex w-full items-center justify-between gap-3 border-t p-4 transition-colors", children: [_jsxs("div", { className: "flex min-w-0 items-center gap-3", children: [_jsx(ActivityItemIndicator, { className: indicator.toneClassName, children: _jsx(indicator.Icon, { className: "h-4 w-4" }) }), _jsxs(ActivityItemContent, { children: [_jsxs(ActivityItemTitle, { children: [indicator.label, " ", amount] }), _jsxs(ActivityItemSubtitle, { children: [transaction.from?.name || "Unknown", " to", " ", transaction.to?.name || "Unknown"] })] })] }), _jsxs(ActivityItemBadge, { children: [_jsx(ActivityItemStatus, { status: transaction.status }), _jsx(ActivityItemTimestamp, { children: new Date(transaction.createdAt).toLocaleString() })] })] }), _jsxs(ActivityItemDialog, { title: "Transaction Details", description: "Share, download, or inspect the full transaction payload.", children: [_jsxs(ActivityItemReceipt, { children: [_jsx(ActivityItemSummary, { label: "Transaction Amount", value: amount, status: transaction.status, indicator: indicator }), _jsxs(ActivityItemSnapshot, { description: "Minimal details with quick actions.", children: [_jsx(ActivityItemField, { label: "Type", value: indicator.label }), _jsx(ActivityItemField, { label: "Wallet", value: transaction.symbol }), _jsx(ActivityItemInlineField, { label: "From", children: renderParty(fromParty, "Sender") }), _jsx(ActivityItemInlineField, { label: "To", children: renderParty(toParty, "Recipient") }), _jsx(ActivityItemInlineField, { label: "Received on", contentClassName: "items-center", children: _jsxs("span", { className: "inline-flex max-w-full items-center justify-end gap-2", children: [_jsx("span", { className: "text-muted-foreground w-24 text-right text-xs", children: receivedOnLabel }), _jsx(ActivityItemMiniDate, { date: createdDate })] }) }), _jsx(ActivityItemField, { label: "Time", value: receivedTimeLabel }), _jsx(ActivityItemInlineField, { label: "Transaction number", children: _jsxs("span", { className: "inline-flex max-w-full items-center justify-end gap-2", children: [_jsxs("span", { className: "font-mono text-sm break-all", children: ["#", transaction._id] }), _jsx(Button, { type: "button", size: "icon", variant: "secondary", className: "h-7 w-7", onClick: () => void copy(transaction._id, {
|
|
248
|
+
successMessage: "Transaction number copied",
|
|
249
|
+
}), children: _jsx(CopyIcon, { className: "h-3.5 w-3.5" }) })] }) }), highlightMetaEntries.map(([key, value]) => (_jsx(ActivityItemField, { label: humanizeKey(key), value: humanizeKey(formatMetaValue(value)) }, key)))] })] }), _jsxs(ActivityItemToolbar, { children: [_jsx(ActivityItemDownload, { filename: `transaction-${transaction._id}.png`, successMessage: "Transaction image downloaded", errorMessage: "Failed to download transaction image" }), _jsx(ActivityItemShare, { title: "Transaction details", text: [
|
|
250
|
+
`Transaction ID: ${transaction._id}`,
|
|
251
|
+
`Amount: ${amount}`,
|
|
252
|
+
`Type: ${transaction.type}`,
|
|
253
|
+
`Status: ${transaction.status}`,
|
|
254
|
+
`Created: ${new Date(transaction.createdAt).toLocaleString()}`,
|
|
255
|
+
`View: ${typeof window !== "undefined" ? window.location.origin : ""}/activity/${transaction._id}`,
|
|
256
|
+
].join("\n"), url: `${typeof window !== "undefined" ? window.location.origin : ""}/activity/${transaction._id}` }), _jsx(ActivityItemCopy, { value: transaction._id, label: "Copy ID", successMessage: "Transaction ID copied" }), _jsx(Button, { type: "button", variant: "secondary", asChild: true, children: _jsxs(Link, { href: `/activity/${transaction._id}`, target: "_blank", children: [_jsx(ExternalLinkIcon, { className: "h-4 w-4" }), "Public Page"] }) })] })] })] }));
|
|
257
|
+
}
|
|
258
|
+
// ─── WalletInitiatedPaymentItem ─────────────────────────────────────
|
|
259
|
+
export function WalletInitiatedPaymentItem({ payment, onCancel, isCancelling = false, }) {
|
|
260
|
+
return (_jsx(ActivityItem, { children: _jsx(WalletInitiatedPaymentItemContent, { payment: payment, onCancel: onCancel, isCancelling: isCancelling }) }));
|
|
261
|
+
}
|
|
262
|
+
function WalletInitiatedPaymentItemContent({ payment, onCancel, isCancelling = false, }) {
|
|
263
|
+
const { copy } = useActivityItem();
|
|
264
|
+
const amount = formatCurrency(payment.amount, {
|
|
265
|
+
currency: payment.symbol,
|
|
266
|
+
minimumFractionDigits: 0,
|
|
267
|
+
maximumFractionDigits: 3,
|
|
268
|
+
});
|
|
269
|
+
const paymentDate = new Date(payment.createdAt);
|
|
270
|
+
const paymentReceivedOnLabel = formatDate(payment.createdAt, {
|
|
271
|
+
formatStyle: "absolute",
|
|
272
|
+
formatString: "EEEE, MMM d, yyyy",
|
|
273
|
+
});
|
|
274
|
+
const paymentTimeLabel = formatDate(payment.createdAt, {
|
|
275
|
+
formatStyle: "absolute",
|
|
276
|
+
formatString: "h:mm a",
|
|
277
|
+
});
|
|
278
|
+
return (_jsxs(_Fragment, { children: [_jsxs("div", { className: "flex items-center justify-between gap-3 border-t p-4", children: [_jsx(ActivityItemTrigger, { className: "min-w-0 flex-1", children: _jsxs("div", { className: "space-y-1", children: [_jsxs(ActivityItemTitle, { children: [formatInitiatedPaymentKind(payment.kind), " ", amount] }), _jsxs(ActivityItemSubtitle, { children: ["Ref: ", payment.reference || "-", " |", " ", new Date(payment.createdAt).toLocaleString()] })] }) }), _jsxs("div", { className: "flex shrink-0 items-center gap-2", children: [_jsx(ActivityItemStatus, { status: payment.status }), payment.resumable && payment.hostedUrl ? (_jsx(Button, { type: "button", size: "sm", asChild: true, children: _jsxs(Link, { href: payment.hostedUrl, target: "_blank", rel: "noreferrer", children: [_jsx(ExternalLinkIcon, { className: "h-4 w-4" }), "Resume"] }) })) : null, payment.status === "pending" && onCancel ? (_jsx(Button, { type: "button", size: "sm", variant: "destructive", onClick: () => onCancel(payment._id), disabled: isCancelling, children: _jsx(XIcon, { className: "h-4 w-4" }) })) : null] })] }), _jsxs(ActivityItemDialog, { title: "Initiated Payment", description: "Inspect payment details, resume checkout, or share the hosted payment link.", children: [_jsxs(ActivityItemReceipt, { children: [_jsx(ActivityItemSummary, { label: "Payment Amount", value: amount, status: payment.status }), _jsxs(ActivityItemSnapshot, { description: "Minimal details with quick actions.", children: [_jsx(ActivityItemField, { label: "Kind", value: formatInitiatedPaymentKind(payment.kind) }), _jsx(ActivityItemField, { label: "Wallet", value: payment.symbol }), _jsx(ActivityItemField, { label: "Provider", value: payment.provider || "100Pay" }), _jsx(ActivityItemField, { label: "Currency", value: payment.currency || payment.symbol }), _jsx(ActivityItemField, { label: "Country", value: payment.country || "-" }), _jsx(ActivityItemInlineField, { label: "Received on", children: _jsxs("span", { className: "inline-flex max-w-full items-center justify-end gap-2", children: [_jsx(ActivityItemMiniDate, { date: paymentDate }), _jsx("span", { className: "text-muted-foreground text-xs", children: paymentReceivedOnLabel })] }) }), _jsx(ActivityItemField, { label: "Time", value: paymentTimeLabel }), _jsx(ActivityItemInlineField, { label: "Payment number", children: _jsxs("span", { className: "inline-flex max-w-full items-center justify-end gap-2", children: [_jsxs("span", { className: "font-mono text-sm break-all", children: ["#", payment.reference || payment._id] }), _jsx(Button, { type: "button", size: "icon", variant: "secondary", className: "h-7 w-7", onClick: () => void copy(payment.reference || payment._id, {
|
|
279
|
+
successMessage: "Payment number copied",
|
|
280
|
+
}), children: _jsx(CopyIcon, { className: "h-3.5 w-3.5" }) })] }) }), payment.updatedAt ? (_jsx(ActivityItemField, { label: "Updated", value: new Date(payment.updatedAt).toLocaleString() })) : null, payment.teamSlug ? (_jsx(ActivityItemField, { label: "Team", value: payment.teamSlug })) : null, payment.planSlug ? (_jsx(ActivityItemField, { label: "Plan", value: payment.planSlug })) : null, payment.term ? (_jsx(ActivityItemField, { label: "Term", value: `${payment.term} ${payment.termUnit || "units"}` })) : null] })] }), _jsxs(ActivityItemToolbar, { children: [_jsx(ActivityItemDownload, { filename: `initiated-payment-${payment.reference || payment._id}.png`, successMessage: "Payment image downloaded", errorMessage: "Failed to download payment image" }), _jsx(ActivityItemShare, { title: "Initiated payment details", text: [
|
|
281
|
+
`Reference: ${payment.reference || payment._id}`,
|
|
282
|
+
`Amount: ${amount}`,
|
|
283
|
+
`Kind: ${formatInitiatedPaymentKind(payment.kind)}`,
|
|
284
|
+
`Status: ${payment.status}`,
|
|
285
|
+
`Created: ${new Date(payment.createdAt).toLocaleString()}`,
|
|
286
|
+
].join("\n"), url: payment.hostedUrl }), _jsx(ActivityItemCopy, { value: payment.reference || payment._id, label: "Copy Ref", successMessage: "Payment reference copied" }), payment.hostedUrl ? (_jsx(Button, { type: "button", variant: "secondary", asChild: true, children: _jsxs(Link, { href: payment.hostedUrl, target: "_blank", rel: "noreferrer", children: [_jsx(ExternalLinkIcon, { className: "h-4 w-4" }), "Open Checkout"] }) })) : null] })] })] }));
|
|
287
|
+
}
|
|
288
|
+
//# sourceMappingURL=wallet-activity-item.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet-activity-item.js","sourceRoot":"","sources":["../../../../src/ui/aevr/aevr/wallet-activity-item.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { type CurrencyAmountOption } from "@/components/ui/aevr/currency-amount-input";
|
|
2
|
+
export interface WalletTopUpFormProps {
|
|
3
|
+
isSubmitting?: boolean;
|
|
4
|
+
receiveAmount: string;
|
|
5
|
+
receiveCurrency: string;
|
|
6
|
+
onReceiveAmountChange: (value: string) => void;
|
|
7
|
+
onReceiveCurrencyChange: (value: string) => void;
|
|
8
|
+
receiveOptions: CurrencyAmountOption[];
|
|
9
|
+
receiveHelperText?: string;
|
|
10
|
+
chargeAmount: string;
|
|
11
|
+
chargeCurrency: string;
|
|
12
|
+
onChargeAmountChange: (value: string) => void;
|
|
13
|
+
onChargeCurrencyChange: (value: string) => void;
|
|
14
|
+
chargeOptions: CurrencyAmountOption[];
|
|
15
|
+
chargeHelperText?: string;
|
|
16
|
+
canSwap?: boolean;
|
|
17
|
+
onSwap: () => void;
|
|
18
|
+
submitDisabled?: boolean;
|
|
19
|
+
onSubmit: () => void;
|
|
20
|
+
onCancel: () => void;
|
|
21
|
+
submitLabel?: string;
|
|
22
|
+
cancelLabel?: string;
|
|
23
|
+
className?: string;
|
|
24
|
+
}
|
|
25
|
+
export declare function WalletTopUpForm({ isSubmitting, receiveAmount, receiveCurrency, onReceiveAmountChange, onReceiveCurrencyChange, receiveOptions, receiveHelperText, chargeAmount, chargeCurrency, onChargeAmountChange, onChargeCurrencyChange, chargeOptions, chargeHelperText, canSwap, onSwap, submitDisabled, onSubmit, onCancel, submitLabel, cancelLabel, className, }: WalletTopUpFormProps): import("react/jsx-runtime").JSX.Element;
|
|
26
|
+
//# sourceMappingURL=wallet-topup-form.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet-topup-form.d.ts","sourceRoot":"","sources":["../../../../src/ui/aevr/aevr/wallet-topup-form.tsx"],"names":[],"mappings":"AAMA,OAA4B,EAC1B,KAAK,oBAAoB,EAC1B,MAAM,4CAA4C,CAAC;AAGpD,MAAM,WAAW,oBAAoB;IACnC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,qBAAqB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,uBAAuB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,cAAc,EAAE,oBAAoB,EAAE,CAAC;IACvC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,oBAAoB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,sBAAsB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,aAAa,EAAE,oBAAoB,EAAE,CAAC;IACtC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,eAAe,CAAC,EAC9B,YAAoB,EACpB,aAAa,EACb,eAAe,EACf,qBAAqB,EACrB,uBAAuB,EACvB,cAAc,EACd,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,oBAAoB,EACpB,sBAAsB,EACtB,aAAa,EACb,gBAAgB,EAChB,OAAc,EACd,MAAM,EACN,cAAsB,EACtB,QAAQ,EACR,QAAQ,EACR,WAAkC,EAClC,WAAsB,EACtB,SAAS,GACV,EAAE,oBAAoB,2CA4DtB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { ArrowUpDownIcon } from "lucide-react";
|
|
4
|
+
import { Button } from "@/components/ui/button";
|
|
5
|
+
import Loader from "@/components/ui/aevr/loader";
|
|
6
|
+
import CurrencyAmountInput from "@/components/ui/aevr/currency-amount-input";
|
|
7
|
+
import { cn } from "@/lib/utils";
|
|
8
|
+
export function WalletTopUpForm({ isSubmitting = false, receiveAmount, receiveCurrency, onReceiveAmountChange, onReceiveCurrencyChange, receiveOptions, receiveHelperText, chargeAmount, chargeCurrency, onChargeAmountChange, onChargeCurrencyChange, chargeOptions, chargeHelperText, canSwap = true, onSwap, submitDisabled = false, onSubmit, onCancel, submitLabel = "Continue to 100Pay", cancelLabel = "Cancel", className, }) {
|
|
9
|
+
return (_jsxs("div", { className: cn("space-y-4 p-4", className), children: [_jsxs("div", { className: "relative flex flex-col gap-0", children: [_jsx("div", { className: "overflow-hidden rounded-b-none", children: _jsx(CurrencyAmountInput, { label: "Receive in wallet", amount: receiveAmount, currency: receiveCurrency, onAmountChange: onReceiveAmountChange, onCurrencyChange: onReceiveCurrencyChange, maxFractionDigits: 6, options: receiveOptions, helperText: receiveHelperText }) }), _jsx("div", { className: "relative z-10 -my-4 flex justify-center", children: _jsx(Button, { type: "button", variant: "outline", size: "icon", className: "border-background! bg-muted! hover:bg-accent h-9 w-9 rounded-full border-3 shadow-md disabled:invisible", onClick: onSwap, disabled: !canSwap, title: canSwap
|
|
10
|
+
? "Swap receive and charge currencies"
|
|
11
|
+
: "Swap unavailable until both sides are supported in reverse", children: _jsx(ArrowUpDownIcon, { className: "h-4 w-4" }) }) }), _jsx("div", { className: "overflow-hidden rounded-t-none", children: _jsx(CurrencyAmountInput, { label: "Charge amount", amount: chargeAmount, currency: chargeCurrency, onAmountChange: onChargeAmountChange, onCurrencyChange: onChargeCurrencyChange, maxFractionDigits: 6, options: chargeOptions, helperText: chargeHelperText }) })] }), _jsxs("div", { className: "flex items-center justify-end gap-2", children: [_jsx(Button, { variant: "outline", onClick: onCancel, disabled: isSubmitting, children: cancelLabel }), _jsxs(Button, { onClick: onSubmit, disabled: isSubmitting || submitDisabled, children: [isSubmitting ? _jsx(Loader, { className: "h-4 w-4" }) : null, submitLabel] })] })] }));
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=wallet-topup-form.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet-topup-form.js","sourceRoot":"","sources":["../../../../src/ui/aevr/aevr/wallet-topup-form.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,MAAM,MAAM,6BAA6B,CAAC;AACjD,OAAO,mBAEN,MAAM,4CAA4C,CAAC;AACpD,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AA0BjC,MAAM,UAAU,eAAe,CAAC,EAC9B,YAAY,GAAG,KAAK,EACpB,aAAa,EACb,eAAe,EACf,qBAAqB,EACrB,uBAAuB,EACvB,cAAc,EACd,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,oBAAoB,EACpB,sBAAsB,EACtB,aAAa,EACb,gBAAgB,EAChB,OAAO,GAAG,IAAI,EACd,MAAM,EACN,cAAc,GAAG,KAAK,EACtB,QAAQ,EACR,QAAQ,EACR,WAAW,GAAG,oBAAoB,EAClC,WAAW,GAAG,QAAQ,EACtB,SAAS,GACY;IACrB,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAAC,eAAe,EAAE,SAAS,CAAC,aAC5C,eAAK,SAAS,EAAC,8BAA8B,aAC3C,cAAK,SAAS,EAAC,gCAAgC,YAC7C,KAAC,mBAAmB,IAClB,KAAK,EAAC,mBAAmB,EACzB,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,eAAe,EACzB,cAAc,EAAE,qBAAqB,EACrC,gBAAgB,EAAE,uBAAuB,EACzC,iBAAiB,EAAE,CAAC,EACpB,OAAO,EAAE,cAAc,EACvB,UAAU,EAAE,iBAAiB,GAC7B,GACE,EAEN,cAAK,SAAS,EAAC,yCAAyC,YACtD,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,OAAO,EAAC,SAAS,EACjB,IAAI,EAAC,MAAM,EACX,SAAS,EAAC,yGAAyG,EACnH,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,CAAC,OAAO,EAClB,KAAK,EACH,OAAO;gCACL,CAAC,CAAC,oCAAoC;gCACtC,CAAC,CAAC,4DAA4D,YAGlE,KAAC,eAAe,IAAC,SAAS,EAAC,SAAS,GAAG,GAChC,GACL,EAEN,cAAK,SAAS,EAAC,gCAAgC,YAC7C,KAAC,mBAAmB,IAClB,KAAK,EAAC,eAAe,EACrB,MAAM,EAAE,YAAY,EACpB,QAAQ,EAAE,cAAc,EACxB,cAAc,EAAE,oBAAoB,EACpC,gBAAgB,EAAE,sBAAsB,EACxC,iBAAiB,EAAE,CAAC,EACpB,OAAO,EAAE,aAAa,EACtB,UAAU,EAAE,gBAAgB,GAC5B,GACE,IACF,EAEN,eAAK,SAAS,EAAC,qCAAqC,aAClD,KAAC,MAAM,IAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,YAChE,WAAW,GACL,EACT,MAAC,MAAM,IAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,IAAI,cAAc,aAChE,YAAY,CAAC,CAAC,CAAC,KAAC,MAAM,IAAC,SAAS,EAAC,SAAS,GAAG,CAAC,CAAC,CAAC,IAAI,EACpD,WAAW,IACL,IACL,IACF,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
type BlurDirection = "top-to-bottom" | "bottom-to-top" | "left-to-right" | "right-to-left";
|
|
2
|
+
interface BlurredBackgroundProps {
|
|
3
|
+
layers?: number;
|
|
4
|
+
maxBlur?: number;
|
|
5
|
+
direction?: BlurDirection;
|
|
6
|
+
className?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare function BlurredBackground({ layers, maxBlur, direction, className, }?: BlurredBackgroundProps): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=blurred-background.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"blurred-background.d.ts","sourceRoot":"","sources":["../../../src/ui/aevr/blurred-background.tsx"],"names":[],"mappings":"AAIA,KAAK,aAAa,GACd,eAAe,GACf,eAAe,GACf,eAAe,GACf,eAAe,CAAC;AAEpB,UAAU,sBAAsB;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,iBAAiB,CAAC,EAChC,MAAW,EACX,OAAY,EACZ,SAA2B,EAC3B,SAAS,GACV,GAAE,sBAA2B,2CAyC7B"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
export function BlurredBackground({ layers = 10, maxBlur = 10, direction = "bottom-to-top", className, } = {}) {
|
|
4
|
+
return (_jsx("div", { className: `pointer-events-none absolute inset-0 -z-10 h-full w-full ${className || ""}`, children: Array.from({ length: layers }).map((_, index) => {
|
|
5
|
+
const blurAmount = (index / (layers - 1)) ** 2 * maxBlur;
|
|
6
|
+
const startPercent = (index / layers) * 100;
|
|
7
|
+
const endPercent = ((index + 1) / layers) * 100;
|
|
8
|
+
let gradientDirection;
|
|
9
|
+
switch (direction) {
|
|
10
|
+
case "top-to-bottom":
|
|
11
|
+
gradientDirection = "to bottom";
|
|
12
|
+
break;
|
|
13
|
+
case "left-to-right":
|
|
14
|
+
gradientDirection = "to right";
|
|
15
|
+
break;
|
|
16
|
+
case "right-to-left":
|
|
17
|
+
gradientDirection = "to left";
|
|
18
|
+
break;
|
|
19
|
+
default: // bottom-to-top
|
|
20
|
+
gradientDirection = "to top";
|
|
21
|
+
}
|
|
22
|
+
return (_jsx("div", { className: `absolute inset-0 w-full ${className || ""}`, style: {
|
|
23
|
+
backdropFilter: `blur(${blurAmount.toFixed(6)}px)`,
|
|
24
|
+
WebkitBackdropFilter: `blur(${blurAmount.toFixed(6)}px)`,
|
|
25
|
+
maskImage: `linear-gradient(${gradientDirection}, rgba(0, 0, 0, 0) ${startPercent}%, rgb(0, 0, 0) ${endPercent}%)`,
|
|
26
|
+
WebkitMaskImage: `linear-gradient(${gradientDirection}, rgba(0, 0, 0, 0) ${startPercent}%, rgb(0, 0, 0) ${endPercent}%)`,
|
|
27
|
+
zIndex: index + 1,
|
|
28
|
+
} }, index));
|
|
29
|
+
}) }));
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=blurred-background.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"blurred-background.js","sourceRoot":"","sources":["../../../src/ui/aevr/blurred-background.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAiBb,MAAM,UAAU,iBAAiB,CAAC,EAChC,MAAM,GAAG,EAAE,EACX,OAAO,GAAG,EAAE,EACZ,SAAS,GAAG,eAAe,EAC3B,SAAS,MACiB,EAAE;IAC5B,OAAO,CACL,cACE,SAAS,EAAE,4DAA4D,SAAS,IAAI,EAAE,EAAE,YAEvF,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;YAC/C,MAAM,UAAU,GAAG,CAAC,KAAK,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;YACzD,MAAM,YAAY,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC,GAAG,GAAG,CAAC;YAC5C,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,GAAG,CAAC;YAEhD,IAAI,iBAAyB,CAAC;YAC9B,QAAQ,SAAS,EAAE,CAAC;gBAClB,KAAK,eAAe;oBAClB,iBAAiB,GAAG,WAAW,CAAC;oBAChC,MAAM;gBACR,KAAK,eAAe;oBAClB,iBAAiB,GAAG,UAAU,CAAC;oBAC/B,MAAM;gBACR,KAAK,eAAe;oBAClB,iBAAiB,GAAG,SAAS,CAAC;oBAC9B,MAAM;gBACR,SAAS,gBAAgB;oBACvB,iBAAiB,GAAG,QAAQ,CAAC;YACjC,CAAC;YAED,OAAO,CACL,cAEE,SAAS,EAAE,2BAA2B,SAAS,IAAI,EAAE,EAAE,EACvD,KAAK,EAAE;oBACL,cAAc,EAAE,QAAQ,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK;oBAClD,oBAAoB,EAAE,QAAQ,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK;oBACxD,SAAS,EAAE,mBAAmB,iBAAiB,sBAAsB,YAAY,mBAAmB,UAAU,IAAI;oBAClH,eAAe,EAAE,mBAAmB,iBAAiB,sBAAsB,YAAY,mBAAmB,UAAU,IAAI;oBACxH,MAAM,EAAE,KAAK,GAAG,CAAC;iBAClB,IARI,KAAK,CASV,CACH,CAAC;QACJ,CAAC,CAAC,GACE,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../src/ui/aevr/loader.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AA2B/B,QAAA,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAqB/D,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { cn } from "../../lib/utils";
|
|
4
|
+
import { AnimatePresence, motion } from "motion/react";
|
|
5
|
+
const LoaderIcon = (props) => {
|
|
6
|
+
return (_jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "267", height: "267", fill: "none", viewBox: "0 0 267 267", ...props, children: [_jsx("path", { fill: "currentColor", fillOpacity: "0.3", d: "M133.5 0C207.23 0 267 59.77 267 133.5c0 73.73-59.77 133.5-133.5 133.5C59.77 267 0 207.23 0 133.5 0 59.77 59.77 0 133.5 0zm0 226.95c51.611 0 93.45-41.839 93.45-93.45 0-51.611-41.839-93.45-93.45-93.45-51.611 0-93.45 41.839-93.45 93.45 0 51.611 41.839 93.45 93.45 93.45z" }), _jsx("path", { fill: "currentColor", d: "M66.75 17.886A133.5 133.5 0 004.549 98.948l38.685 10.365A93.45 93.45 0 0186.775 52.57L66.75 17.886z" })] }));
|
|
7
|
+
};
|
|
8
|
+
const Loader = ({ loading = true, className, }) => {
|
|
9
|
+
return (_jsx(AnimatePresence, { children: loading && (_jsx(motion.div, { className: "overflow-clip", initial: { width: 0, scale: 0 }, animate: { width: loading ? "auto" : 0, scale: loading ? 1 : 0 }, exit: {
|
|
10
|
+
width: 0,
|
|
11
|
+
scale: 0,
|
|
12
|
+
}, children: _jsx(LoaderIcon, { className: cn("icon size-5 animate-spin", className) }) })) }));
|
|
13
|
+
};
|
|
14
|
+
export default Loader;
|
|
15
|
+
//# sourceMappingURL=loader.js.map
|