monigo_portal 0.1.0
monigo_portal: ^0.1.0 copied to clipboard
Embeddable customer-portal widgets for Monigo — invoices, bills, subscriptions, wallets, payment methods, and payout accounts.
0.1.0 #
Released 2026-04-18
Initial release of monigo_portal — a Flutter package delivering full customer-portal parity with @monigo/svelte.
Features #
MonigoPortal— drop-in, self-contained portal widget with bottomNavigationBarand nestedNavigator.MonigoScope—InheritedWidgetprovidingPortalClient,MessageCatalog, andLocaleto descendants.MonigoTheme/MonigoThemeProvider—ThemeExtension<MonigoTheme>withlight/darkpresets and fullcopyWithsupport.PortalClient— typed HTTP client wrappingpackage:http; mirrors every method inportal-core/src/client.ts.- Invoice widgets:
InvoiceList,InvoiceDetail,InvoiceStatusBadge,PayInvoiceButton. - Bill widgets:
BillList,BillDetail,BillStatusBadge. - Subscription widgets:
SubscriptionList,SubscriptionCard,CancelSubscriptionButton. - Wallet widgets:
WalletList,WalletCard,WalletDetail,WalletTransactionList,FundWalletButton. - Payment method widgets:
PaymentMethodList,PaymentMethodCard,AddPaymentMethodButton,RemovePaymentMethodButton,SetDefaultPaymentMethodButton. - Payout account widgets:
PayoutAccountList,PayoutAccountCard. - Dashboard widgets:
DashboardSummary,RecentActivity. - Pages:
PortalDashboardPage,PortalInvoicesPage,PortalInvoiceDetailPage,PortalBillsPage,PortalBillDetailPage,PortalSubscriptionsPage,PortalWalletsPage,PortalWalletDetailPage,PortalPaymentMethodsPage,PortalPayoutAccountsPage. - Shared widgets:
Skeleton,EmptyState,ErrorState. - i18n:
MessageCatalog+createMessages()with English strings; locale parameter reserved for future locales. - Formatters:
formatCurrency,formatDate,formatInvoiceStatus,formatBillStatus. - Sealed-class state stores (Dart 3):
InvoicesStore,BillsStore,SubscriptionsStore,WalletsStore,PaymentMethodsStore,PayoutAccountsStore,DashboardStore. - CI: GitHub Actions matrix (Ubuntu / macOS / Windows) with analyze, test, pub dry-run, and component-parity check.
- Integration test:
integration_test/portal_flow_test.dart(skipped whenMONIGO_PORTAL_TOKENnot set).