@burdenoff/microfe-billing 2026.821.1 → 2026.825.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (145) hide show
  1. package/dist/billing/BillingAdminRoutes.js.map +1 -1
  2. package/dist/billing/BillingRoot.js.map +1 -1
  3. package/dist/billing/BillingUserRoutes.js.map +1 -1
  4. package/dist/billing/hooks/useBillingAccountSelection.js.map +1 -1
  5. package/dist/billing/hooks/useBillingEventEmitter.js.map +1 -1
  6. package/dist/billing/hooks/useBillingNavigate.js.map +1 -1
  7. package/dist/billing/hooks/useBillingPermissions.js.map +1 -1
  8. package/dist/billing/hooks/useDefaultBillingCurrency.js.map +1 -1
  9. package/dist/billing/modules/addons/components/FloatingCartDrawer.js.map +1 -1
  10. package/dist/billing/modules/addons/hooks/useAddons.js.map +1 -1
  11. package/dist/billing/modules/addons/pages/AddonBrowseDetailPage.js.map +1 -1
  12. package/dist/billing/modules/addons/pages/AddonCreatePage.js.map +1 -1
  13. package/dist/billing/modules/addons/pages/AddonDetailPage.js.map +1 -1
  14. package/dist/billing/modules/addons/pages/AddonEditPage.js.map +1 -1
  15. package/dist/billing/modules/addons/pages/AddonsBrowsePage.js.map +1 -1
  16. package/dist/billing/modules/addons/pages/AddonsListPage.js.map +1 -1
  17. package/dist/billing/modules/addons/store/addonCartStore.js.map +1 -1
  18. package/dist/billing/modules/affiliate/api.js.map +1 -1
  19. package/dist/billing/modules/affiliate/pages/AffiliateDashboardPage.js +107 -107
  20. package/dist/billing/modules/affiliate/pages/AffiliateDashboardPage.js.map +1 -1
  21. package/dist/billing/modules/analytics/pages/AnalyticsPage.js +80 -81
  22. package/dist/billing/modules/analytics/pages/AnalyticsPage.js.map +1 -1
  23. package/dist/billing/modules/billing/hooks/useInvoices.js.map +1 -1
  24. package/dist/billing/modules/billing/hooks/useRefunds.js.map +1 -1
  25. package/dist/billing/modules/billing/hooks/useTransactions.js.map +1 -1
  26. package/dist/billing/modules/billing/pages/InvoiceDetailPage.js.map +1 -1
  27. package/dist/billing/modules/billing/pages/InvoicesListPage.js +1 -1
  28. package/dist/billing/modules/billing/pages/InvoicesListPage.js.map +1 -1
  29. package/dist/billing/modules/billing/pages/PaymentMethodsPage.js.map +1 -1
  30. package/dist/billing/modules/billing/pages/RefundsPage.js.map +1 -1
  31. package/dist/billing/modules/billing/pages/TransactionsPage.js.map +1 -1
  32. package/dist/billing/modules/billing/pages/UserRefundsPage.js +127 -127
  33. package/dist/billing/modules/billing/pages/UserRefundsPage.js.map +1 -1
  34. package/dist/billing/modules/checkout/components/BillingAccountSelector.js.map +1 -1
  35. package/dist/billing/modules/checkout/components/CompleteBillingAccountModal.js.map +1 -1
  36. package/dist/billing/modules/checkout/components/CreditsAmountInput.js.map +1 -1
  37. package/dist/billing/modules/checkout/components/NativeCheckoutView.js.map +1 -1
  38. package/dist/billing/modules/checkout/components/OrderSummary.js.map +1 -1
  39. package/dist/billing/modules/checkout/components/PromoCodeInput.js.map +1 -1
  40. package/dist/billing/modules/checkout/components/RazorpayPaymentButton.js.map +1 -1
  41. package/dist/billing/modules/checkout/components/SimpleAutoPayToggle.js.map +1 -1
  42. package/dist/billing/modules/checkout/components/StoreShippingSection.js.map +1 -1
  43. package/dist/billing/modules/checkout/components/StripePaymentForm.js.map +1 -1
  44. package/dist/billing/modules/checkout/components/SubscriptionSelector.js.map +1 -1
  45. package/dist/billing/modules/checkout/components/UnifiedPaymentMethodSelector.js.map +1 -1
  46. package/dist/billing/modules/checkout/components/WorkspaceQuotaAssignmentModal.js.map +1 -1
  47. package/dist/billing/modules/checkout/hooks/useCheckout.js +0 -1
  48. package/dist/billing/modules/checkout/hooks/useCheckout.js.map +1 -1
  49. package/dist/billing/modules/checkout/hooks/useNativeCheckout.js.map +1 -1
  50. package/dist/billing/modules/checkout/hooks/usePaymentProviders.js.map +1 -1
  51. package/dist/billing/modules/checkout/hooks/usePaymentStatusPolling.js.map +1 -1
  52. package/dist/billing/modules/checkout/hooks/useStoreShipping.js.map +1 -1
  53. package/dist/billing/modules/checkout/pages/CheckoutPage.js +412 -395
  54. package/dist/billing/modules/checkout/pages/CheckoutPage.js.map +1 -1
  55. package/dist/billing/modules/checkout/utils/storeOrder.js.map +1 -1
  56. package/dist/billing/modules/coupons/pages/CouponDetailPage.js.map +1 -1
  57. package/dist/billing/modules/coupons/pages/CouponsListPage.js.map +1 -1
  58. package/dist/billing/modules/coupons/pages/CreateCouponPage.js.map +1 -1
  59. package/dist/billing/modules/coupons/pages/EditCouponPage.js.map +1 -1
  60. package/dist/billing/modules/credits/hooks/useCredits.js.map +1 -1
  61. package/dist/billing/modules/credits/pages/AdminCreditsPage.js.map +1 -1
  62. package/dist/billing/modules/credits/pages/CreditTransactionsPage.js.map +1 -1
  63. package/dist/billing/modules/credits/pages/CreditWithdrawalPage.js.map +1 -1
  64. package/dist/billing/modules/credits/pages/CreditsPage.js.map +1 -1
  65. package/dist/billing/modules/dashboard/components/ActiveSubscriptionCard.js.map +1 -1
  66. package/dist/billing/modules/dashboard/components/AddPaymentMethodModal.js.map +1 -1
  67. package/dist/billing/modules/dashboard/components/BillingAccountCard.js.map +1 -1
  68. package/dist/billing/modules/dashboard/components/CreateBillingAccountModal.js.map +1 -1
  69. package/dist/billing/modules/dashboard/components/PaymentMethodsSection.js.map +1 -1
  70. package/dist/billing/modules/dashboard/components/RecommendedAddonsSection.js.map +1 -1
  71. package/dist/billing/modules/dashboard/hooks/useBillingOverviewData.js.map +1 -1
  72. package/dist/billing/modules/dashboard/hooks/useDashboard.js.map +1 -1
  73. package/dist/billing/modules/dashboard/pages/OverviewPage.js.map +1 -1
  74. package/dist/billing/modules/discounts/pages/DiscountsListPage.js.map +1 -1
  75. package/dist/billing/modules/earnings/api.js.map +1 -1
  76. package/dist/billing/modules/earnings/pages/DeveloperRevenueAdminPage.js +145 -145
  77. package/dist/billing/modules/earnings/pages/DeveloperRevenueAdminPage.js.map +1 -1
  78. package/dist/billing/modules/earnings/pages/EarningsPage.js +133 -133
  79. package/dist/billing/modules/earnings/pages/EarningsPage.js.map +1 -1
  80. package/dist/billing/modules/earnings/pages/PayoutAdminPage.js +7 -9
  81. package/dist/billing/modules/earnings/pages/PayoutAdminPage.js.map +1 -1
  82. package/dist/billing/modules/earnings/pages/PayoutsPage.js +95 -95
  83. package/dist/billing/modules/earnings/pages/PayoutsPage.js.map +1 -1
  84. package/dist/billing/modules/plans/constants/featuredQuotas.js.map +1 -1
  85. package/dist/billing/modules/plans/hooks/usePlans.js.map +1 -1
  86. package/dist/billing/modules/plans/hooks/useQuotas.js.map +1 -1
  87. package/dist/billing/modules/plans/pages/PlanAssignFreePage.js.map +1 -1
  88. package/dist/billing/modules/plans/pages/PlanBrowseDetailPage.js.map +1 -1
  89. package/dist/billing/modules/plans/pages/PlanCreatePage.js.map +1 -1
  90. package/dist/billing/modules/plans/pages/PlanDetailPage.js.map +1 -1
  91. package/dist/billing/modules/plans/pages/PlanEditPage.js.map +1 -1
  92. package/dist/billing/modules/plans/pages/PlansBrowsePage.js.map +1 -1
  93. package/dist/billing/modules/plans/pages/PlansListPage.js.map +1 -1
  94. package/dist/billing/modules/promotions/pages/CreatePromotionPage.js.map +1 -1
  95. package/dist/billing/modules/promotions/pages/PromotionsListPage.js.map +1 -1
  96. package/dist/billing/modules/quota/hooks/useQuotaTemplates.js.map +1 -1
  97. package/dist/billing/modules/quota/pages/QuotaAssignFreePage.js.map +1 -1
  98. package/dist/billing/modules/quota/pages/QuotaTemplateCreatePage.js.map +1 -1
  99. package/dist/billing/modules/quota/pages/QuotaTemplateDetailPage.js.map +1 -1
  100. package/dist/billing/modules/quota/pages/QuotaTemplateEditPage.js.map +1 -1
  101. package/dist/billing/modules/quota/pages/QuotaTemplatesListPage.js.map +1 -1
  102. package/dist/billing/modules/settings/pages/SettingsPage.js.map +1 -1
  103. package/dist/billing/modules/settings/pages/TeamPermissionsPage.js.map +1 -1
  104. package/dist/billing/modules/store/pages/StoreCheckoutPage.js +5 -6
  105. package/dist/billing/modules/store/pages/StoreCheckoutPage.js.map +1 -1
  106. package/dist/billing/modules/subscriptions/components/ManageSeatsModal.js.map +1 -1
  107. package/dist/billing/modules/subscriptions/hooks/useSubscriptions.js.map +1 -1
  108. package/dist/billing/modules/subscriptions/pages/SubscriptionDetailPage.js.map +1 -1
  109. package/dist/billing/modules/subscriptions/pages/SubscriptionsListPage.js.map +1 -1
  110. package/dist/billing/modules/subscriptions/pages/UpgradeSubscriptionPage.js.map +1 -1
  111. package/dist/billing/modules/usage/hooks/useUsage.js +14 -9
  112. package/dist/billing/modules/usage/hooks/useUsage.js.map +1 -1
  113. package/dist/billing/modules/usage/pages/UsagePage.js +481 -453
  114. package/dist/billing/modules/usage/pages/UsagePage.js.map +1 -1
  115. package/dist/billing/providers/BillingProvider.js.map +1 -1
  116. package/dist/billing/shared/components/AccessDenied.js.map +1 -1
  117. package/dist/billing/shared/components/ActorIdentity.js.map +1 -1
  118. package/dist/billing/shared/components/CurrencyPriceOverridesEditor.js.map +1 -1
  119. package/dist/billing/shared/components/EmptyState.js.map +1 -1
  120. package/dist/billing/shared/components/PageHeader.js.map +1 -1
  121. package/dist/billing/shared/components/ServerError.js.map +1 -1
  122. package/dist/billing/shared/components/StatCard.js.map +1 -1
  123. package/dist/billing/shared/hooks/useActorProfiles.js.map +1 -1
  124. package/dist/billing/shared/types/graphql.js.map +1 -1
  125. package/dist/billing/shared/ui/Card.js.map +1 -1
  126. package/dist/billing/shared/ui/MetricCard.js.map +1 -1
  127. package/dist/billing/shared/ui/ProgressBar.js.map +1 -1
  128. package/dist/billing/shared/ui/StatusPill.js.map +1 -1
  129. package/dist/billing/shared/utils/directBillingGraphql.js.map +1 -1
  130. package/dist/billing/shared/utils/error.js.map +1 -1
  131. package/dist/billing/shared/utils/format.js.map +1 -1
  132. package/dist/billing/shared/utils/gatewayGraphql.js.map +1 -1
  133. package/dist/billing/shared/utils/navigation.js.map +1 -1
  134. package/dist/billing/shared/utils/paymentTheme.js.map +1 -1
  135. package/dist/billing/shared/utils/planFeatureQuantity.js.map +1 -1
  136. package/dist/billing/shared/utils/status.js.map +1 -1
  137. package/dist/billing/shared/utils/tokens.js.map +1 -1
  138. package/dist/generated/global-operations.js +5 -1
  139. package/dist/generated/global-operations.js.map +1 -1
  140. package/dist/generated/global-types.js.map +1 -1
  141. package/dist/generated/wspace-operations.js +1 -1
  142. package/dist/generated/wspace-operations.js.map +1 -1
  143. package/dist/node_modules/@capacitor/core/dist/index.js +1 -1
  144. package/dist/node_modules/@capacitor/core/dist/index.js.map +1 -1
  145. package/package.json +13 -10
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","names":[],"sources":["../../../../src/billing/shared/utils/status.ts"],"sourcesContent":["/**\n * Status utilities for the billing module\n * Provides status colors, icons, and helper functions\n *\n * Uses semantic design tokens from tokens.ts for consistent theming\n */\n\nimport {\n SubscriptionStatus,\n InvoiceStatus,\n PaymentStatus,\n ChargeStatus,\n RefundStatus,\n QuotaStatus,\n TransactionStatus,\n CreditTransactionStatus,\n} from '../types';\nimport { type SemanticStatus, getStatusBadgeTokens, getProgressTokens } from './tokens';\n\n// ============================================================================\n// Status Color Types\n// ============================================================================\n\nexport type StatusColor = SemanticStatus;\n\n// ============================================================================\n// Status Color Mappings\n// ============================================================================\n\nexport function getSubscriptionStatusColor(status: SubscriptionStatus): StatusColor {\n const colors: Record<SubscriptionStatus, StatusColor> = {\n [SubscriptionStatus.ACTIVE]: 'success',\n [SubscriptionStatus.CANCELED]: 'error',\n [SubscriptionStatus.EXPIRED]: 'neutral',\n [SubscriptionStatus.UPGRADED]: 'info',\n };\n return colors[status] || 'neutral';\n}\n\nexport function getInvoiceStatusColor(status: InvoiceStatus): StatusColor {\n const colors: Record<InvoiceStatus, StatusColor> = {\n [InvoiceStatus.DRAFT]: 'neutral',\n [InvoiceStatus.OPEN]: 'info',\n [InvoiceStatus.PAID]: 'success',\n [InvoiceStatus.VOID]: 'neutral',\n [InvoiceStatus.UNCOLLECTIBLE]: 'error',\n };\n return colors[status] || 'neutral';\n}\n\nexport function getPaymentStatusColor(status: PaymentStatus): StatusColor {\n const colors: Record<PaymentStatus, StatusColor> = {\n [PaymentStatus.PENDING]: 'warning',\n [PaymentStatus.SUCCEEDED]: 'success',\n [PaymentStatus.FAILED]: 'error',\n [PaymentStatus.CANCELED]: 'neutral',\n [PaymentStatus.REFUNDED]: 'info',\n };\n return colors[status] || 'neutral';\n}\n\nexport function getChargeStatusColor(status: ChargeStatus): StatusColor {\n const colors: Record<ChargeStatus, StatusColor> = {\n [ChargeStatus.PENDING]: 'warning',\n [ChargeStatus.SUCCEEDED]: 'success',\n [ChargeStatus.FAILED]: 'error',\n [ChargeStatus.REFUNDED]: 'info',\n };\n return colors[status] || 'neutral';\n}\n\nexport function getRefundStatusColor(status: RefundStatus): StatusColor {\n const colors: Record<RefundStatus, StatusColor> = {\n [RefundStatus.PENDING]: 'warning',\n [RefundStatus.SUCCEEDED]: 'success',\n [RefundStatus.FAILED]: 'error',\n [RefundStatus.CANCELED]: 'neutral',\n };\n return colors[status] || 'neutral';\n}\n\nexport function getQuotaStatusColor(status: QuotaStatus): StatusColor {\n const colors: Record<QuotaStatus, StatusColor> = {\n [QuotaStatus.HEALTHY]: 'success',\n [QuotaStatus.WARNING]: 'warning',\n [QuotaStatus.CRITICAL]: 'error',\n [QuotaStatus.EXHAUSTED]: 'error',\n [QuotaStatus.INACTIVE]: 'neutral',\n };\n return colors[status] || 'neutral';\n}\n\nexport function getTransactionStatusColor(status: TransactionStatus): StatusColor {\n const colors: Record<TransactionStatus, StatusColor> = {\n [TransactionStatus.PENDING]: 'warning',\n [TransactionStatus.SUCCESS]: 'success',\n [TransactionStatus.FAILED]: 'error',\n };\n return colors[status] || 'neutral';\n}\n\nexport function getCreditTransactionStatusColor(status: CreditTransactionStatus): StatusColor {\n const colors: Record<CreditTransactionStatus, StatusColor> = {\n [CreditTransactionStatus.PENDING]: 'warning',\n [CreditTransactionStatus.SUCCESS]: 'success',\n [CreditTransactionStatus.FAILED]: 'error',\n [CreditTransactionStatus.REFUND]: 'info',\n };\n return colors[status] || 'neutral';\n}\n\n// ============================================================================\n// CSS Class Mappings (using semantic tokens)\n// ============================================================================\n\n/**\n * Get combined badge classes for a status.\n */\nexport function getStatusBadgeClasses(color: StatusColor): string {\n return getStatusBadgeTokens(color);\n}\n\n// ============================================================================\n// Quota Status Helpers\n// ============================================================================\n\nexport function getQuotaStatusFromPercentage(percentage: number): QuotaStatus {\n if (percentage >= 100) return QuotaStatus.EXHAUSTED;\n if (percentage >= 90) return QuotaStatus.CRITICAL;\n if (percentage >= 75) return QuotaStatus.WARNING;\n return QuotaStatus.HEALTHY;\n}\n\nexport function getQuotaProgressColor(percentage: number): string {\n const tokens = getProgressTokens(percentage);\n return tokens.bar;\n}\n\nexport function getQuotaProgressBgColor(percentage: number): string {\n const tokens = getProgressTokens(percentage);\n return tokens.track;\n}\n\n// ============================================================================\n// Status Checks\n// ============================================================================\n\nexport function isActiveSubscription(status: SubscriptionStatus): boolean {\n return status === SubscriptionStatus.ACTIVE;\n}\n\nexport function isPaidInvoice(status: InvoiceStatus): boolean {\n return status === InvoiceStatus.PAID;\n}\n\nexport function isOpenInvoice(status: InvoiceStatus): boolean {\n return status === InvoiceStatus.OPEN;\n}\n\nexport function isSuccessfulPayment(status: PaymentStatus): boolean {\n return status === PaymentStatus.SUCCEEDED;\n}\n\nexport function isPendingPayment(status: PaymentStatus): boolean {\n return status === PaymentStatus.PENDING;\n}\n\nexport function isHealthyQuota(status: QuotaStatus): boolean {\n return status === QuotaStatus.HEALTHY;\n}\n\nexport function isQuotaAtRisk(status: QuotaStatus): boolean {\n return status === QuotaStatus.WARNING || status === QuotaStatus.CRITICAL;\n}\n\nexport function isQuotaExhausted(status: QuotaStatus): boolean {\n return status === QuotaStatus.EXHAUSTED;\n}\n"],"mappings":";;;AA6BA,SAAgB,EAA2B,GAAyC;AAOlF,QANwD;GACrD,EAAmB,SAAS;GAC5B,EAAmB,WAAW;GAC9B,EAAmB,UAAU;GAC7B,EAAmB,WAAW;EAChC,CACa,MAAW;;AAG3B,SAAgB,EAAsB,GAAoC;AAQxE,QAPmD;GAChD,EAAc,QAAQ;GACtB,EAAc,OAAO;GACrB,EAAc,OAAO;GACrB,EAAc,OAAO;GACrB,EAAc,gBAAgB;EAChC,CACa,MAAW;;AA6C3B,SAAgB,EAA0B,GAAwC;AAMhF,QALuD;GACpD,EAAkB,UAAU;GAC5B,EAAkB,UAAU;GAC5B,EAAkB,SAAS;EAC7B,CACa,MAAW;;AAG3B,SAAgB,EAAgC,GAA8C;AAO5F,QAN6D;GAC1D,EAAwB,UAAU;GAClC,EAAwB,UAAU;GAClC,EAAwB,SAAS;GACjC,EAAwB,SAAS;EACnC,CACa,MAAW;;AAU3B,SAAgB,EAAsB,GAA4B;AAChE,QAAO,EAAqB,EAAM;;AAcpC,SAAgB,EAAsB,GAA4B;AAEhE,QADe,EAAkB,EAAW,CAC9B"}
1
+ {"version":3,"file":"status.js","names":[],"sources":["../../../../src/billing/shared/utils/status.ts"],"sourcesContent":["/**\n * Status utilities for the billing module\n * Provides status colors, icons, and helper functions\n *\n * Uses semantic design tokens from tokens.ts for consistent theming\n */\n\nimport {\n SubscriptionStatus,\n InvoiceStatus,\n PaymentStatus,\n ChargeStatus,\n RefundStatus,\n QuotaStatus,\n TransactionStatus,\n CreditTransactionStatus,\n} from '../types';\nimport { type SemanticStatus, getStatusBadgeTokens, getProgressTokens } from './tokens';\n\n// ============================================================================\n// Status Color Types\n// ============================================================================\n\nexport type StatusColor = SemanticStatus;\n\n// ============================================================================\n// Status Color Mappings\n// ============================================================================\n\nexport function getSubscriptionStatusColor(status: SubscriptionStatus): StatusColor {\n const colors: Record<SubscriptionStatus, StatusColor> = {\n [SubscriptionStatus.ACTIVE]: 'success',\n [SubscriptionStatus.CANCELED]: 'error',\n [SubscriptionStatus.EXPIRED]: 'neutral',\n [SubscriptionStatus.UPGRADED]: 'info',\n };\n return colors[status] || 'neutral';\n}\n\nexport function getInvoiceStatusColor(status: InvoiceStatus): StatusColor {\n const colors: Record<InvoiceStatus, StatusColor> = {\n [InvoiceStatus.DRAFT]: 'neutral',\n [InvoiceStatus.OPEN]: 'info',\n [InvoiceStatus.PAID]: 'success',\n [InvoiceStatus.VOID]: 'neutral',\n [InvoiceStatus.UNCOLLECTIBLE]: 'error',\n };\n return colors[status] || 'neutral';\n}\n\nexport function getPaymentStatusColor(status: PaymentStatus): StatusColor {\n const colors: Record<PaymentStatus, StatusColor> = {\n [PaymentStatus.PENDING]: 'warning',\n [PaymentStatus.SUCCEEDED]: 'success',\n [PaymentStatus.FAILED]: 'error',\n [PaymentStatus.CANCELED]: 'neutral',\n [PaymentStatus.REFUNDED]: 'info',\n };\n return colors[status] || 'neutral';\n}\n\nexport function getChargeStatusColor(status: ChargeStatus): StatusColor {\n const colors: Record<ChargeStatus, StatusColor> = {\n [ChargeStatus.PENDING]: 'warning',\n [ChargeStatus.SUCCEEDED]: 'success',\n [ChargeStatus.FAILED]: 'error',\n [ChargeStatus.REFUNDED]: 'info',\n };\n return colors[status] || 'neutral';\n}\n\nexport function getRefundStatusColor(status: RefundStatus): StatusColor {\n const colors: Record<RefundStatus, StatusColor> = {\n [RefundStatus.PENDING]: 'warning',\n [RefundStatus.SUCCEEDED]: 'success',\n [RefundStatus.FAILED]: 'error',\n [RefundStatus.CANCELED]: 'neutral',\n };\n return colors[status] || 'neutral';\n}\n\nexport function getQuotaStatusColor(status: QuotaStatus): StatusColor {\n const colors: Record<QuotaStatus, StatusColor> = {\n [QuotaStatus.HEALTHY]: 'success',\n [QuotaStatus.WARNING]: 'warning',\n [QuotaStatus.CRITICAL]: 'error',\n [QuotaStatus.EXHAUSTED]: 'error',\n [QuotaStatus.INACTIVE]: 'neutral',\n };\n return colors[status] || 'neutral';\n}\n\nexport function getTransactionStatusColor(status: TransactionStatus): StatusColor {\n const colors: Record<TransactionStatus, StatusColor> = {\n [TransactionStatus.PENDING]: 'warning',\n [TransactionStatus.SUCCESS]: 'success',\n [TransactionStatus.FAILED]: 'error',\n };\n return colors[status] || 'neutral';\n}\n\nexport function getCreditTransactionStatusColor(status: CreditTransactionStatus): StatusColor {\n const colors: Record<CreditTransactionStatus, StatusColor> = {\n [CreditTransactionStatus.PENDING]: 'warning',\n [CreditTransactionStatus.SUCCESS]: 'success',\n [CreditTransactionStatus.FAILED]: 'error',\n [CreditTransactionStatus.REFUND]: 'info',\n };\n return colors[status] || 'neutral';\n}\n\n// ============================================================================\n// CSS Class Mappings (using semantic tokens)\n// ============================================================================\n\n/**\n * Get combined badge classes for a status.\n */\nexport function getStatusBadgeClasses(color: StatusColor): string {\n return getStatusBadgeTokens(color);\n}\n\n// ============================================================================\n// Quota Status Helpers\n// ============================================================================\n\nexport function getQuotaStatusFromPercentage(percentage: number): QuotaStatus {\n if (percentage >= 100) return QuotaStatus.EXHAUSTED;\n if (percentage >= 90) return QuotaStatus.CRITICAL;\n if (percentage >= 75) return QuotaStatus.WARNING;\n return QuotaStatus.HEALTHY;\n}\n\nexport function getQuotaProgressColor(percentage: number): string {\n const tokens = getProgressTokens(percentage);\n return tokens.bar;\n}\n\nexport function getQuotaProgressBgColor(percentage: number): string {\n const tokens = getProgressTokens(percentage);\n return tokens.track;\n}\n\n// ============================================================================\n// Status Checks\n// ============================================================================\n\nexport function isActiveSubscription(status: SubscriptionStatus): boolean {\n return status === SubscriptionStatus.ACTIVE;\n}\n\nexport function isPaidInvoice(status: InvoiceStatus): boolean {\n return status === InvoiceStatus.PAID;\n}\n\nexport function isOpenInvoice(status: InvoiceStatus): boolean {\n return status === InvoiceStatus.OPEN;\n}\n\nexport function isSuccessfulPayment(status: PaymentStatus): boolean {\n return status === PaymentStatus.SUCCEEDED;\n}\n\nexport function isPendingPayment(status: PaymentStatus): boolean {\n return status === PaymentStatus.PENDING;\n}\n\nexport function isHealthyQuota(status: QuotaStatus): boolean {\n return status === QuotaStatus.HEALTHY;\n}\n\nexport function isQuotaAtRisk(status: QuotaStatus): boolean {\n return status === QuotaStatus.WARNING || status === QuotaStatus.CRITICAL;\n}\n\nexport function isQuotaExhausted(status: QuotaStatus): boolean {\n return status === QuotaStatus.EXHAUSTED;\n}\n"],"mappings":";;;AA6BA,SAAgB,EAA2B,GAAyC;CAOlF,OAAO;GALJ,EAAmB,SAAS;GAC5B,EAAmB,WAAW;GAC9B,EAAmB,UAAU;GAC7B,EAAmB,WAAW;CAE1B,EAAO,MAAW;AAC3B;AAEA,SAAgB,EAAsB,GAAoC;CAQxE,OAAO;GANJ,EAAc,QAAQ;GACtB,EAAc,OAAO;GACrB,EAAc,OAAO;GACrB,EAAc,OAAO;GACrB,EAAc,gBAAgB;CAE1B,EAAO,MAAW;AAC3B;AA4CA,SAAgB,EAA0B,GAAwC;CAMhF,OAAO;GAJJ,EAAkB,UAAU;GAC5B,EAAkB,UAAU;GAC5B,EAAkB,SAAS;CAEvB,EAAO,MAAW;AAC3B;AAEA,SAAgB,EAAgC,GAA8C;CAO5F,OAAO;GALJ,EAAwB,UAAU;GAClC,EAAwB,UAAU;GAClC,EAAwB,SAAS;GACjC,EAAwB,SAAS;CAE7B,EAAO,MAAW;AAC3B;AASA,SAAgB,EAAsB,GAA4B;CAChE,OAAO,EAAqB,CAAK;AACnC;AAaA,SAAgB,EAAsB,GAA4B;CAEhE,OADe,EAAkB,CAC1B,EAAO;AAChB"}
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.js","names":[],"sources":["../../../../src/billing/shared/utils/tokens.ts"],"sourcesContent":["/**\n * Semantic Design Tokens for Billing Module\n *\n * Maps semantic status colors to fe-libs design tokens.\n * This ensures consistent theming across all micro-frontends.\n *\n * Token Reference (from fe-libs):\n * - Status: --color-status-{success|warning|error|info}-{bg|bgSubtle|text|border}\n * - Action: --color-action-{primary|secondary|danger}-{bg|bgHover|text}\n * - Text: --color-text-{primary|secondary|muted}\n * - Background: --color-bg-{canvas|surface|elevated|sunken}\n */\n\n// ============================================================================\n// Status Color Token Mappings\n// ============================================================================\n\nexport type SemanticStatus = 'success' | 'warning' | 'error' | 'info' | 'neutral' | 'primary';\n\nexport interface StatusTokenClasses {\n /** Background for subtle/badge usage */\n bg: string;\n /** Text color */\n text: string;\n /** Border color */\n border: string;\n /** Dot/indicator color */\n dot: string;\n /** Icon color */\n icon: string;\n}\n\n/**\n * Semantic status color classes using design tokens\n * These map to CSS custom properties defined in fe-libs\n */\nexport const statusTokens: Record<SemanticStatus, StatusTokenClasses> = {\n success: {\n bg: 'bg-status-success-bg-subtle',\n text: 'text-status-success-text',\n border: 'border-status-success-border',\n dot: 'bg-status-success-bg',\n icon: 'text-status-success-bg',\n },\n warning: {\n bg: 'bg-status-warning-bg-subtle',\n text: 'text-status-warning-text',\n border: 'border-status-warning-border',\n dot: 'bg-status-warning-bg',\n icon: 'text-status-warning-bg',\n },\n error: {\n bg: 'bg-status-error-bg-subtle',\n text: 'text-status-error-text',\n border: 'border-status-error-border',\n dot: 'bg-status-error-bg',\n icon: 'text-status-error-bg',\n },\n info: {\n bg: 'bg-status-info-bg-subtle',\n text: 'text-status-info-text',\n border: 'border-status-info-border',\n dot: 'bg-status-info-bg',\n icon: 'text-status-info-bg',\n },\n neutral: {\n bg: 'bg-status-neutral-bg-subtle',\n text: 'text-status-neutral-text',\n border: 'border-status-neutral-border',\n dot: 'bg-status-neutral-bg',\n icon: 'text-status-neutral-text',\n },\n primary: {\n bg: 'bg-[var(--color-accent-soft)]',\n text: 'text-text-link',\n border: 'border-border-strong',\n dot: 'bg-action-primary-bg',\n icon: 'text-text-link',\n },\n};\n\n/**\n * Get status token classes for a given status\n */\nexport function getStatusTokens(status: SemanticStatus): StatusTokenClasses {\n return statusTokens[status] || statusTokens.neutral;\n}\n\n/**\n * Get combined badge classes for a status\n */\nexport function getStatusBadgeTokens(status: SemanticStatus): string {\n const tokens = getStatusTokens(status);\n return `${tokens.bg} ${tokens.text} ${tokens.border} border`;\n}\n\n// ============================================================================\n// Trend/Change Indicators\n// ============================================================================\n\nexport const trendTokens = {\n positive: {\n text: 'text-status-success-text',\n icon: 'text-status-success-bg',\n },\n negative: {\n text: 'text-status-error-text',\n icon: 'text-status-error-bg',\n },\n neutral: {\n text: 'text-status-neutral-text',\n icon: 'text-status-neutral-text',\n },\n};\n\n/**\n * Get trend indicator classes\n */\nexport function getTrendTokens(isPositive: boolean | null) {\n if (isPositive === null) return trendTokens.neutral;\n return isPositive ? trendTokens.positive : trendTokens.negative;\n}\n\n// ============================================================================\n// Progress Bar Colors\n// ============================================================================\n\nexport const progressTokens = {\n healthy: {\n bar: 'bg-status-success-bg',\n track: 'bg-status-success-bg-subtle',\n },\n warning: {\n bar: 'bg-status-warning-bg',\n track: 'bg-status-warning-bg-subtle',\n },\n critical: {\n bar: 'bg-status-error-bg',\n track: 'bg-status-error-bg-subtle',\n },\n};\n\n/**\n * Get progress bar colors based on percentage\n */\nexport function getProgressTokens(percentage: number) {\n if (percentage >= 90) return progressTokens.critical;\n if (percentage >= 75) return progressTokens.warning;\n return progressTokens.healthy;\n}\n\n// ============================================================================\n// Category/Type Badge Colors\n// ============================================================================\n\nexport const categoryTokens = {\n plan: {\n bg: 'bg-status-info-bg-subtle',\n text: 'text-status-info-text',\n border: 'border-status-info-border',\n },\n addon: {\n bg: 'bg-[var(--color-accent-soft)]',\n text: 'text-text-link',\n border: 'border-border-strong',\n },\n credits: {\n bg: 'bg-status-warning-bg-subtle',\n text: 'text-status-warning-text',\n border: 'border-status-warning-border',\n },\n};\n\n/**\n * Get category badge classes\n */\nexport function getCategoryTokens(category: 'plan' | 'addon' | 'credits') {\n return categoryTokens[category] || categoryTokens.plan;\n}\n\n// ============================================================================\n// Alert/Banner Colors\n// ============================================================================\n\nexport const alertTokens = {\n success: {\n container: 'bg-status-success-bg-subtle border-status-success-border',\n text: 'text-status-success-text',\n icon: 'text-status-success-bg',\n },\n warning: {\n container: 'bg-status-warning-bg-subtle border-status-warning-border',\n text: 'text-status-warning-text',\n icon: 'text-status-warning-bg',\n },\n error: {\n container: 'bg-status-error-bg-subtle border-status-error-border',\n text: 'text-status-error-text',\n icon: 'text-status-error-bg',\n },\n info: {\n container: 'bg-status-info-bg-subtle border-status-info-border',\n text: 'text-status-info-text',\n icon: 'text-status-info-bg',\n },\n};\n\n/**\n * Get alert/banner classes\n */\nexport function getAlertTokens(type: 'success' | 'warning' | 'error' | 'info') {\n return alertTokens[type];\n}\n"],"mappings":";AAoCA,IAAa,IAA2D;CACtE,SAAS;EACP,IAAI;EACJ,MAAM;EACN,QAAQ;EACR,KAAK;EACL,MAAM;EACP;CACD,SAAS;EACP,IAAI;EACJ,MAAM;EACN,QAAQ;EACR,KAAK;EACL,MAAM;EACP;CACD,OAAO;EACL,IAAI;EACJ,MAAM;EACN,QAAQ;EACR,KAAK;EACL,MAAM;EACP;CACD,MAAM;EACJ,IAAI;EACJ,MAAM;EACN,QAAQ;EACR,KAAK;EACL,MAAM;EACP;CACD,SAAS;EACP,IAAI;EACJ,MAAM;EACN,QAAQ;EACR,KAAK;EACL,MAAM;EACP;CACD,SAAS;EACP,IAAI;EACJ,MAAM;EACN,QAAQ;EACR,KAAK;EACL,MAAM;EACP;CACF;AAKD,SAAgB,EAAgB,GAA4C;AAC1E,QAAO,EAAa,MAAW,EAAa;;AAM9C,SAAgB,EAAqB,GAAgC;CACnE,IAAM,IAAS,EAAgB,EAAO;AACtC,QAAO,GAAG,EAAO,GAAG,GAAG,EAAO,KAAK,GAAG,EAAO,OAAO;;AAkCtD,IAAa,IAAiB;CAC5B,SAAS;EACP,KAAK;EACL,OAAO;EACR;CACD,SAAS;EACP,KAAK;EACL,OAAO;EACR;CACD,UAAU;EACR,KAAK;EACL,OAAO;EACR;CACF;AAKD,SAAgB,EAAkB,GAAoB;AAGpD,QAFI,KAAc,KAAW,EAAe,WACxC,KAAc,KAAW,EAAe,UACrC,EAAe;;AAOxB,IAAa,IAAiB;CAC5B,MAAM;EACJ,IAAI;EACJ,MAAM;EACN,QAAQ;EACT;CACD,OAAO;EACL,IAAI;EACJ,MAAM;EACN,QAAQ;EACT;CACD,SAAS;EACP,IAAI;EACJ,MAAM;EACN,QAAQ;EACT;CACF,EAaY,IAAc;CACzB,SAAS;EACP,WAAW;EACX,MAAM;EACN,MAAM;EACP;CACD,SAAS;EACP,WAAW;EACX,MAAM;EACN,MAAM;EACP;CACD,OAAO;EACL,WAAW;EACX,MAAM;EACN,MAAM;EACP;CACD,MAAM;EACJ,WAAW;EACX,MAAM;EACN,MAAM;EACP;CACF"}
1
+ {"version":3,"file":"tokens.js","names":[],"sources":["../../../../src/billing/shared/utils/tokens.ts"],"sourcesContent":["/**\n * Semantic Design Tokens for Billing Module\n *\n * Maps semantic status colors to fe-libs design tokens.\n * This ensures consistent theming across all micro-frontends.\n *\n * Token Reference (from fe-libs):\n * - Status: --color-status-{success|warning|error|info}-{bg|bgSubtle|text|border}\n * - Action: --color-action-{primary|secondary|danger}-{bg|bgHover|text}\n * - Text: --color-text-{primary|secondary|muted}\n * - Background: --color-bg-{canvas|surface|elevated|sunken}\n */\n\n// ============================================================================\n// Status Color Token Mappings\n// ============================================================================\n\nexport type SemanticStatus = 'success' | 'warning' | 'error' | 'info' | 'neutral' | 'primary';\n\nexport interface StatusTokenClasses {\n /** Background for subtle/badge usage */\n bg: string;\n /** Text color */\n text: string;\n /** Border color */\n border: string;\n /** Dot/indicator color */\n dot: string;\n /** Icon color */\n icon: string;\n}\n\n/**\n * Semantic status color classes using design tokens\n * These map to CSS custom properties defined in fe-libs\n */\nexport const statusTokens: Record<SemanticStatus, StatusTokenClasses> = {\n success: {\n bg: 'bg-status-success-bg-subtle',\n text: 'text-status-success-text',\n border: 'border-status-success-border',\n dot: 'bg-status-success-bg',\n icon: 'text-status-success-bg',\n },\n warning: {\n bg: 'bg-status-warning-bg-subtle',\n text: 'text-status-warning-text',\n border: 'border-status-warning-border',\n dot: 'bg-status-warning-bg',\n icon: 'text-status-warning-bg',\n },\n error: {\n bg: 'bg-status-error-bg-subtle',\n text: 'text-status-error-text',\n border: 'border-status-error-border',\n dot: 'bg-status-error-bg',\n icon: 'text-status-error-bg',\n },\n info: {\n bg: 'bg-status-info-bg-subtle',\n text: 'text-status-info-text',\n border: 'border-status-info-border',\n dot: 'bg-status-info-bg',\n icon: 'text-status-info-bg',\n },\n neutral: {\n bg: 'bg-status-neutral-bg-subtle',\n text: 'text-status-neutral-text',\n border: 'border-status-neutral-border',\n dot: 'bg-status-neutral-bg',\n icon: 'text-status-neutral-text',\n },\n primary: {\n bg: 'bg-[var(--color-accent-soft)]',\n text: 'text-text-link',\n border: 'border-border-strong',\n dot: 'bg-action-primary-bg',\n icon: 'text-text-link',\n },\n};\n\n/**\n * Get status token classes for a given status\n */\nexport function getStatusTokens(status: SemanticStatus): StatusTokenClasses {\n return statusTokens[status] || statusTokens.neutral;\n}\n\n/**\n * Get combined badge classes for a status\n */\nexport function getStatusBadgeTokens(status: SemanticStatus): string {\n const tokens = getStatusTokens(status);\n return `${tokens.bg} ${tokens.text} ${tokens.border} border`;\n}\n\n// ============================================================================\n// Trend/Change Indicators\n// ============================================================================\n\nexport const trendTokens = {\n positive: {\n text: 'text-status-success-text',\n icon: 'text-status-success-bg',\n },\n negative: {\n text: 'text-status-error-text',\n icon: 'text-status-error-bg',\n },\n neutral: {\n text: 'text-status-neutral-text',\n icon: 'text-status-neutral-text',\n },\n};\n\n/**\n * Get trend indicator classes\n */\nexport function getTrendTokens(isPositive: boolean | null) {\n if (isPositive === null) return trendTokens.neutral;\n return isPositive ? trendTokens.positive : trendTokens.negative;\n}\n\n// ============================================================================\n// Progress Bar Colors\n// ============================================================================\n\nexport const progressTokens = {\n healthy: {\n bar: 'bg-status-success-bg',\n track: 'bg-status-success-bg-subtle',\n },\n warning: {\n bar: 'bg-status-warning-bg',\n track: 'bg-status-warning-bg-subtle',\n },\n critical: {\n bar: 'bg-status-error-bg',\n track: 'bg-status-error-bg-subtle',\n },\n};\n\n/**\n * Get progress bar colors based on percentage\n */\nexport function getProgressTokens(percentage: number) {\n if (percentage >= 90) return progressTokens.critical;\n if (percentage >= 75) return progressTokens.warning;\n return progressTokens.healthy;\n}\n\n// ============================================================================\n// Category/Type Badge Colors\n// ============================================================================\n\nexport const categoryTokens = {\n plan: {\n bg: 'bg-status-info-bg-subtle',\n text: 'text-status-info-text',\n border: 'border-status-info-border',\n },\n addon: {\n bg: 'bg-[var(--color-accent-soft)]',\n text: 'text-text-link',\n border: 'border-border-strong',\n },\n credits: {\n bg: 'bg-status-warning-bg-subtle',\n text: 'text-status-warning-text',\n border: 'border-status-warning-border',\n },\n};\n\n/**\n * Get category badge classes\n */\nexport function getCategoryTokens(category: 'plan' | 'addon' | 'credits') {\n return categoryTokens[category] || categoryTokens.plan;\n}\n\n// ============================================================================\n// Alert/Banner Colors\n// ============================================================================\n\nexport const alertTokens = {\n success: {\n container: 'bg-status-success-bg-subtle border-status-success-border',\n text: 'text-status-success-text',\n icon: 'text-status-success-bg',\n },\n warning: {\n container: 'bg-status-warning-bg-subtle border-status-warning-border',\n text: 'text-status-warning-text',\n icon: 'text-status-warning-bg',\n },\n error: {\n container: 'bg-status-error-bg-subtle border-status-error-border',\n text: 'text-status-error-text',\n icon: 'text-status-error-bg',\n },\n info: {\n container: 'bg-status-info-bg-subtle border-status-info-border',\n text: 'text-status-info-text',\n icon: 'text-status-info-bg',\n },\n};\n\n/**\n * Get alert/banner classes\n */\nexport function getAlertTokens(type: 'success' | 'warning' | 'error' | 'info') {\n return alertTokens[type];\n}\n"],"mappings":";AAoCA,IAAa,IAA2D;CACtE,SAAS;EACP,IAAI;EACJ,MAAM;EACN,QAAQ;EACR,KAAK;EACL,MAAM;CACR;CACA,SAAS;EACP,IAAI;EACJ,MAAM;EACN,QAAQ;EACR,KAAK;EACL,MAAM;CACR;CACA,OAAO;EACL,IAAI;EACJ,MAAM;EACN,QAAQ;EACR,KAAK;EACL,MAAM;CACR;CACA,MAAM;EACJ,IAAI;EACJ,MAAM;EACN,QAAQ;EACR,KAAK;EACL,MAAM;CACR;CACA,SAAS;EACP,IAAI;EACJ,MAAM;EACN,QAAQ;EACR,KAAK;EACL,MAAM;CACR;CACA,SAAS;EACP,IAAI;EACJ,MAAM;EACN,QAAQ;EACR,KAAK;EACL,MAAM;CACR;AACF;AAKA,SAAgB,EAAgB,GAA4C;CAC1E,OAAO,EAAa,MAAW,EAAa;AAC9C;AAKA,SAAgB,EAAqB,GAAgC;CACnE,IAAM,IAAS,EAAgB,CAAM;CACrC,OAAO,GAAG,EAAO,GAAG,GAAG,EAAO,KAAK,GAAG,EAAO,OAAO;AACtD;AAiCA,IAAa,IAAiB;CAC5B,SAAS;EACP,KAAK;EACL,OAAO;CACT;CACA,SAAS;EACP,KAAK;EACL,OAAO;CACT;CACA,UAAU;EACR,KAAK;EACL,OAAO;CACT;AACF;AAKA,SAAgB,EAAkB,GAAoB;CAGpD,OAFI,KAAc,KAAW,EAAe,WACxC,KAAc,KAAW,EAAe,UACrC,EAAe;AACxB;AAMA,IAAa,IAAiB;CAC5B,MAAM;EACJ,IAAI;EACJ,MAAM;EACN,QAAQ;CACV;CACA,OAAO;EACL,IAAI;EACJ,MAAM;EACN,QAAQ;CACV;CACA,SAAS;EACP,IAAI;EACJ,MAAM;EACN,QAAQ;CACV;AACF,GAaa,IAAc;CACzB,SAAS;EACP,WAAW;EACX,MAAM;EACN,MAAM;CACR;CACA,SAAS;EACP,WAAW;EACX,MAAM;EACN,MAAM;CACR;CACA,OAAO;EACL,WAAW;EACX,MAAM;EACN,MAAM;CACR;CACA,MAAM;EACJ,WAAW;EACX,MAAM;EACN,MAAM;CACR;AACF"}
@@ -1,4 +1,4 @@
1
- import * as e from "@apollo/client/react";
1
+ import * as e from "@apollo/client";
2
2
  import { gql as t } from "@apollo/client";
3
3
  //#region src/generated/global-operations.ts
4
4
  var n = {}, r = t`
@@ -3660,6 +3660,8 @@ var Br = t`
3660
3660
  id
3661
3661
  status
3662
3662
  createdAt
3663
+ planName
3664
+ productId
3663
3665
  quotas {
3664
3666
  id
3665
3667
  name
@@ -3750,6 +3752,8 @@ var Hr = t`
3750
3752
  id
3751
3753
  status
3752
3754
  createdAt
3755
+ planName
3756
+ productId
3753
3757
  quotas {
3754
3758
  id
3755
3759
  name