@burdenoff/microfe-billing 2026.614.1 → 2026.623.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 (135) hide show
  1. package/dist/billing/BillingAdminRoutes.js +7 -6
  2. package/dist/billing/BillingAdminRoutes.js.map +1 -1
  3. package/dist/billing/BillingRoot.js +1 -1
  4. package/dist/billing/BillingRoot.js.map +1 -1
  5. package/dist/billing/modules/addons/components/FloatingCartDrawer.js +22 -22
  6. package/dist/billing/modules/addons/components/FloatingCartDrawer.js.map +1 -1
  7. package/dist/billing/modules/addons/pages/AddonCreatePage.js +31 -31
  8. package/dist/billing/modules/addons/pages/AddonCreatePage.js.map +1 -1
  9. package/dist/billing/modules/addons/pages/AddonDetailPage.js +39 -39
  10. package/dist/billing/modules/addons/pages/AddonDetailPage.js.map +1 -1
  11. package/dist/billing/modules/addons/pages/AddonEditPage.js +29 -29
  12. package/dist/billing/modules/addons/pages/AddonEditPage.js.map +1 -1
  13. package/dist/billing/modules/addons/pages/AddonsListPage.js +91 -91
  14. package/dist/billing/modules/addons/pages/AddonsListPage.js.map +1 -1
  15. package/dist/billing/modules/analytics/pages/AnalyticsPage.js +40 -40
  16. package/dist/billing/modules/analytics/pages/AnalyticsPage.js.map +1 -1
  17. package/dist/billing/modules/billing/pages/InvoiceDetailPage.js +115 -115
  18. package/dist/billing/modules/billing/pages/InvoiceDetailPage.js.map +1 -1
  19. package/dist/billing/modules/billing/pages/InvoicesListPage.js +75 -72
  20. package/dist/billing/modules/billing/pages/InvoicesListPage.js.map +1 -1
  21. package/dist/billing/modules/billing/pages/RefundsPage.js +126 -126
  22. package/dist/billing/modules/billing/pages/RefundsPage.js.map +1 -1
  23. package/dist/billing/modules/billing/pages/UserRefundsPage.js +45 -45
  24. package/dist/billing/modules/billing/pages/UserRefundsPage.js.map +1 -1
  25. package/dist/billing/modules/checkout/components/BillingAccountSelector.js +25 -25
  26. package/dist/billing/modules/checkout/components/BillingAccountSelector.js.map +1 -1
  27. package/dist/billing/modules/checkout/components/CompleteBillingAccountModal.js +31 -35
  28. package/dist/billing/modules/checkout/components/CompleteBillingAccountModal.js.map +1 -1
  29. package/dist/billing/modules/checkout/components/CreditsAmountInput.js +9 -9
  30. package/dist/billing/modules/checkout/components/CreditsAmountInput.js.map +1 -1
  31. package/dist/billing/modules/checkout/components/OrderSummary.js +31 -31
  32. package/dist/billing/modules/checkout/components/OrderSummary.js.map +1 -1
  33. package/dist/billing/modules/checkout/components/PromoCodeInput.js +8 -8
  34. package/dist/billing/modules/checkout/components/PromoCodeInput.js.map +1 -1
  35. package/dist/billing/modules/checkout/components/RazorpayPaymentButton.js +5 -5
  36. package/dist/billing/modules/checkout/components/RazorpayPaymentButton.js.map +1 -1
  37. package/dist/billing/modules/checkout/components/SimpleAutoPayToggle.js +9 -9
  38. package/dist/billing/modules/checkout/components/SimpleAutoPayToggle.js.map +1 -1
  39. package/dist/billing/modules/checkout/components/StripePaymentForm.js +21 -21
  40. package/dist/billing/modules/checkout/components/StripePaymentForm.js.map +1 -1
  41. package/dist/billing/modules/checkout/components/SubscriptionSelector.js +11 -11
  42. package/dist/billing/modules/checkout/components/SubscriptionSelector.js.map +1 -1
  43. package/dist/billing/modules/checkout/components/UnifiedPaymentMethodSelector.js +31 -31
  44. package/dist/billing/modules/checkout/components/UnifiedPaymentMethodSelector.js.map +1 -1
  45. package/dist/billing/modules/checkout/components/WorkspaceQuotaAssignmentModal.js +23 -23
  46. package/dist/billing/modules/checkout/components/WorkspaceQuotaAssignmentModal.js.map +1 -1
  47. package/dist/billing/modules/checkout/pages/CheckoutPage.js +91 -91
  48. package/dist/billing/modules/checkout/pages/CheckoutPage.js.map +1 -1
  49. package/dist/billing/modules/coupons/pages/CouponDetailPage.js +62 -62
  50. package/dist/billing/modules/coupons/pages/CouponDetailPage.js.map +1 -1
  51. package/dist/billing/modules/coupons/pages/CouponsListPage.js +72 -60
  52. package/dist/billing/modules/coupons/pages/CouponsListPage.js.map +1 -1
  53. package/dist/billing/modules/coupons/pages/CreateCouponPage.js +66 -66
  54. package/dist/billing/modules/coupons/pages/CreateCouponPage.js.map +1 -1
  55. package/dist/billing/modules/coupons/pages/EditCouponPage.js +46 -46
  56. package/dist/billing/modules/coupons/pages/EditCouponPage.js.map +1 -1
  57. package/dist/billing/modules/credits/pages/AdminCreditsPage.js +19 -19
  58. package/dist/billing/modules/credits/pages/AdminCreditsPage.js.map +1 -1
  59. package/dist/billing/modules/credits/pages/CreditTransactionsPage.js +37 -37
  60. package/dist/billing/modules/credits/pages/CreditTransactionsPage.js.map +1 -1
  61. package/dist/billing/modules/credits/pages/CreditWithdrawalPage.js +90 -90
  62. package/dist/billing/modules/credits/pages/CreditWithdrawalPage.js.map +1 -1
  63. package/dist/billing/modules/credits/pages/CreditsPage.js +41 -41
  64. package/dist/billing/modules/credits/pages/CreditsPage.js.map +1 -1
  65. package/dist/billing/modules/dashboard/components/ActiveSubscriptionCard.js +31 -31
  66. package/dist/billing/modules/dashboard/components/ActiveSubscriptionCard.js.map +1 -1
  67. package/dist/billing/modules/dashboard/components/AddPaymentMethodModal.js +35 -35
  68. package/dist/billing/modules/dashboard/components/AddPaymentMethodModal.js.map +1 -1
  69. package/dist/billing/modules/dashboard/components/BillingAccountCard.js +24 -24
  70. package/dist/billing/modules/dashboard/components/BillingAccountCard.js.map +1 -1
  71. package/dist/billing/modules/dashboard/components/CreateBillingAccountModal.js +99 -99
  72. package/dist/billing/modules/dashboard/components/CreateBillingAccountModal.js.map +1 -1
  73. package/dist/billing/modules/dashboard/components/PaymentMethodsSection.js +23 -23
  74. package/dist/billing/modules/dashboard/components/PaymentMethodsSection.js.map +1 -1
  75. package/dist/billing/modules/dashboard/components/RecommendedAddonsSection.js +22 -22
  76. package/dist/billing/modules/dashboard/components/RecommendedAddonsSection.js.map +1 -1
  77. package/dist/billing/modules/dashboard/pages/OverviewPage.js +58 -58
  78. package/dist/billing/modules/dashboard/pages/OverviewPage.js.map +1 -1
  79. package/dist/billing/modules/discounts/pages/DiscountsListPage.js +126 -126
  80. package/dist/billing/modules/discounts/pages/DiscountsListPage.js.map +1 -1
  81. package/dist/billing/modules/earnings/pages/PayoutAdminPage.js +83 -79
  82. package/dist/billing/modules/earnings/pages/PayoutAdminPage.js.map +1 -1
  83. package/dist/billing/modules/plans/pages/PlanAssignFreePage.js +16 -16
  84. package/dist/billing/modules/plans/pages/PlanAssignFreePage.js.map +1 -1
  85. package/dist/billing/modules/plans/pages/PlanBrowseDetailPage.js +40 -40
  86. package/dist/billing/modules/plans/pages/PlanBrowseDetailPage.js.map +1 -1
  87. package/dist/billing/modules/plans/pages/PlanCreatePage.js +35 -35
  88. package/dist/billing/modules/plans/pages/PlanCreatePage.js.map +1 -1
  89. package/dist/billing/modules/plans/pages/PlanDetailPage.js +57 -57
  90. package/dist/billing/modules/plans/pages/PlanDetailPage.js.map +1 -1
  91. package/dist/billing/modules/plans/pages/PlanEditPage.js +35 -35
  92. package/dist/billing/modules/plans/pages/PlanEditPage.js.map +1 -1
  93. package/dist/billing/modules/plans/pages/PlansBrowsePage.js +57 -57
  94. package/dist/billing/modules/plans/pages/PlansBrowsePage.js.map +1 -1
  95. package/dist/billing/modules/plans/pages/PlansListPage.js +52 -52
  96. package/dist/billing/modules/plans/pages/PlansListPage.js.map +1 -1
  97. package/dist/billing/modules/promotions/pages/CreatePromotionPage.js +40 -39
  98. package/dist/billing/modules/promotions/pages/CreatePromotionPage.js.map +1 -1
  99. package/dist/billing/modules/promotions/pages/PromotionsListPage.js +22 -19
  100. package/dist/billing/modules/promotions/pages/PromotionsListPage.js.map +1 -1
  101. package/dist/billing/modules/quota/pages/QuotaTemplateCreatePage.js +34 -34
  102. package/dist/billing/modules/quota/pages/QuotaTemplateCreatePage.js.map +1 -1
  103. package/dist/billing/modules/quota/pages/QuotaTemplateDetailPage.js +47 -47
  104. package/dist/billing/modules/quota/pages/QuotaTemplateDetailPage.js.map +1 -1
  105. package/dist/billing/modules/quota/pages/QuotaTemplateEditPage.js +39 -39
  106. package/dist/billing/modules/quota/pages/QuotaTemplateEditPage.js.map +1 -1
  107. package/dist/billing/modules/quota/pages/QuotaTemplatesListPage.js +52 -52
  108. package/dist/billing/modules/quota/pages/QuotaTemplatesListPage.js.map +1 -1
  109. package/dist/billing/modules/subscriptions/components/ManageSeatsModal.js +23 -23
  110. package/dist/billing/modules/subscriptions/components/ManageSeatsModal.js.map +1 -1
  111. package/dist/billing/modules/subscriptions/pages/SubscriptionDetailPage.js +259 -246
  112. package/dist/billing/modules/subscriptions/pages/SubscriptionDetailPage.js.map +1 -1
  113. package/dist/billing/modules/subscriptions/pages/SubscriptionsListPage.js +88 -85
  114. package/dist/billing/modules/subscriptions/pages/SubscriptionsListPage.js.map +1 -1
  115. package/dist/billing/modules/subscriptions/pages/UpgradeSubscriptionPage.js +51 -51
  116. package/dist/billing/modules/subscriptions/pages/UpgradeSubscriptionPage.js.map +1 -1
  117. package/dist/billing/modules/usage/pages/UsagePage.js +206 -196
  118. package/dist/billing/modules/usage/pages/UsagePage.js.map +1 -1
  119. package/dist/billing/shared/components/ServerError.js +4 -4
  120. package/dist/billing/shared/components/ServerError.js.map +1 -1
  121. package/dist/billing/shared/components/StatCard.js +11 -33
  122. package/dist/billing/shared/components/StatCard.js.map +1 -1
  123. package/dist/billing/shared/ui/Card.js +15 -0
  124. package/dist/billing/shared/ui/Card.js.map +1 -0
  125. package/dist/billing/shared/ui/MetricCard.js +44 -0
  126. package/dist/billing/shared/ui/MetricCard.js.map +1 -0
  127. package/dist/billing/shared/ui/ProgressBar.js +30 -0
  128. package/dist/billing/shared/ui/ProgressBar.js.map +1 -0
  129. package/dist/billing/shared/ui/SectionHeader.js +2 -0
  130. package/dist/billing/shared/ui/StatusPill.js +28 -0
  131. package/dist/billing/shared/ui/StatusPill.js.map +1 -0
  132. package/dist/billing/shared/ui/index.js +5 -0
  133. package/dist/billing/shared/utils/tokens.js +13 -30
  134. package/dist/billing/shared/utils/tokens.js.map +1 -1
  135. package/package.json +1 -1
@@ -1,7 +1,9 @@
1
1
  import { useBilling as e } from "../../../providers/BillingProvider.js";
2
- import { useBillingAccountSelection as t } from "../../../hooks/useBillingAccountSelection.js";
3
- import { formatCurrency as n, formatDate as r, formatPlanDuration as i, formatSubscriptionStatus as a } from "../../../shared/utils/format.js";
4
- import { getStatusBadgeClasses as o, getSubscriptionStatusColor as s } from "../../../shared/utils/status.js";
2
+ import { StatusPill as t } from "../../../shared/ui/StatusPill.js";
3
+ import "../../../shared/ui/index.js";
4
+ import { useBillingAccountSelection as n } from "../../../hooks/useBillingAccountSelection.js";
5
+ import { formatCurrency as r, formatDate as i, formatPlanDuration as a, formatSubscriptionStatus as o } from "../../../shared/utils/format.js";
6
+ import { getSubscriptionStatusColor as s } from "../../../shared/utils/status.js";
5
7
  import { useBillingPermissions as c } from "../../../hooks/useBillingPermissions.js";
6
8
  import { useBillingNavigate as l } from "../../../hooks/useBillingNavigate.js";
7
9
  import { withBillingAccountId as u } from "../../../shared/utils/navigation.js";
@@ -12,10 +14,10 @@ import { Fragment as g, jsx as _, jsxs as v } from "react/jsx-runtime";
12
14
  import { useI18n as y } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
13
15
  //#region src/billing/modules/subscriptions/pages/SubscriptionsListPage.tsx
14
16
  var b = ["expired", "upgraded"], x = 10, S = () => {
15
- let { t: n } = y(), r = (e, t) => {
16
- let r = n(e);
17
- return r === e ? t : r;
18
- }, i = l(), a = c(), { orgId: o } = e(), { billingAccounts: s, isLoading: S } = d(), { selectedAccountId: w, setSelectedAccountId: T } = t({
17
+ let { t } = y(), r = (e, n) => {
18
+ let r = t(e);
19
+ return r === e ? n : r;
20
+ }, i = l(), a = c(), { orgId: o } = e(), { billingAccounts: s, isLoading: S } = d(), { selectedAccountId: w, setSelectedAccountId: T } = n({
19
21
  orgId: o,
20
22
  billingAccounts: s,
21
23
  syncFromUrl: !0,
@@ -31,19 +33,19 @@ var b = ["expired", "upgraded"], x = 10, S = () => {
31
33
  }, q = L.filter((e) => O === "all" ? !0 : O === "inactive" ? b.includes(e.status) : e.status === O), J = S || V;
32
34
  return a.canViewSubscriptions ? J && !W ? /* @__PURE__ */ v("div", {
33
35
  className: "space-y-6 p-6",
34
- children: [/* @__PURE__ */ _("div", { className: "h-8 w-48 bg-muted animate-pulse rounded" }), /* @__PURE__ */ _("div", {
36
+ children: [/* @__PURE__ */ _("div", { className: "h-8 w-48 bg-bg-sunken animate-pulse rounded" }), /* @__PURE__ */ _("div", {
35
37
  className: "space-y-4",
36
38
  children: [
37
39
  1,
38
40
  2,
39
41
  3
40
42
  ].map((e) => /* @__PURE__ */ _("div", {
41
- className: "border border-border rounded-lg p-6",
43
+ className: "border border-border-subtle rounded-lg p-6",
42
44
  children: /* @__PURE__ */ v("div", {
43
45
  className: "flex items-center gap-4",
44
- children: [/* @__PURE__ */ _("div", { className: "size-12 bg-muted animate-pulse rounded" }), /* @__PURE__ */ v("div", {
46
+ children: [/* @__PURE__ */ _("div", { className: "size-12 bg-bg-sunken animate-pulse rounded" }), /* @__PURE__ */ v("div", {
45
47
  className: "flex-1 space-y-2",
46
- children: [/* @__PURE__ */ _("div", { className: "h-5 w-32 bg-muted animate-pulse rounded" }), /* @__PURE__ */ _("div", { className: "h-4 w-48 bg-muted animate-pulse rounded" })]
48
+ children: [/* @__PURE__ */ _("div", { className: "h-5 w-32 bg-bg-sunken animate-pulse rounded" }), /* @__PURE__ */ _("div", { className: "h-4 w-48 bg-bg-sunken animate-pulse rounded" })]
47
49
  })]
48
50
  })
49
51
  }, e))
@@ -54,9 +56,9 @@ var b = ["expired", "upgraded"], x = 10, S = () => {
54
56
  className: "text-center space-y-4",
55
57
  children: [
56
58
  /* @__PURE__ */ _("div", {
57
- className: "size-12 mx-auto rounded-full bg-destructive/10 flex items-center justify-center",
59
+ className: "size-12 mx-auto rounded-full bg-status-error-bg-subtle flex items-center justify-center",
58
60
  children: /* @__PURE__ */ _("svg", {
59
- className: "size-6 text-destructive",
61
+ className: "size-6 text-status-error-text",
60
62
  fill: "none",
61
63
  viewBox: "0 0 24 24",
62
64
  stroke: "currentColor",
@@ -69,36 +71,36 @@ var b = ["expired", "upgraded"], x = 10, S = () => {
69
71
  })
70
72
  }),
71
73
  /* @__PURE__ */ _("h2", {
72
- className: "text-lg font-semibold text-foreground",
74
+ className: "text-lg font-semibold text-text-primary",
73
75
  children: "Failed to load subscriptions"
74
76
  }),
75
77
  /* @__PURE__ */ _("p", {
76
- className: "text-sm text-muted-foreground",
78
+ className: "text-sm text-text-secondary",
77
79
  children: H.message
78
80
  }),
79
81
  /* @__PURE__ */ _("button", {
80
82
  type: "button",
81
83
  onClick: () => U(),
82
- className: "px-4 py-2 text-sm font-medium bg-primary text-primary-foreground rounded-md hover:bg-primary/90 transition-colors",
84
+ className: "px-4 py-2 text-sm font-medium bg-action-primary-bg text-action-primary-text rounded-button hover:bg-action-primary-bgHover transition-colors",
83
85
  children: "Try Again"
84
86
  })
85
87
  ]
86
88
  })
87
89
  }) : /* @__PURE__ */ v("div", {
88
- className: "space-y-6 p-6",
90
+ className: "space-y-6 px-6 lg:px-8 py-6",
89
91
  children: [
90
92
  /* @__PURE__ */ v("div", {
91
93
  className: "flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between",
92
94
  children: [/* @__PURE__ */ v("div", { children: [/* @__PURE__ */ _("h1", {
93
- className: "text-2xl font-bold text-foreground",
95
+ className: "text-2xl md:text-3xl font-semibold tracking-tight text-text-primary",
94
96
  children: r("billing.subscriptions.title", "Subscriptions")
95
97
  }), /* @__PURE__ */ _("p", {
96
- className: "text-sm text-muted-foreground mt-1",
98
+ className: "text-sm text-text-secondary mt-1",
97
99
  children: r("billing.subscriptions.subtitle", "Manage your active and past subscriptions")
98
100
  })] }), a.canCreateSubscription && /* @__PURE__ */ v("button", {
99
101
  type: "button",
100
102
  onClick: () => i("/plans"),
101
- className: "inline-flex items-center gap-2 px-4 py-2 text-sm font-medium bg-primary text-primary-foreground rounded-md hover:bg-primary/90 transition-colors",
103
+ className: "inline-flex items-center gap-2 px-4 py-2 text-sm font-medium bg-action-primary-bg text-action-primary-text rounded-button hover:bg-action-primary-bgHover transition-colors duration-200",
102
104
  children: [/* @__PURE__ */ _("svg", {
103
105
  className: "size-4",
104
106
  fill: "none",
@@ -118,13 +120,13 @@ var b = ["expired", "upgraded"], x = 10, S = () => {
118
120
  children: [/* @__PURE__ */ v("button", {
119
121
  type: "button",
120
122
  onClick: () => D(!E),
121
- className: "w-full sm:w-auto flex items-center justify-between gap-3 px-4 py-3 border border-border rounded-lg bg-card hover:bg-muted/50 transition-colors",
123
+ className: "w-full sm:w-auto flex items-center justify-between gap-3 px-4 py-3 border border-border-subtle rounded-card bg-bg-surface hover:bg-bg-sunken hover:border-border-strong transition-all duration-200",
122
124
  children: [/* @__PURE__ */ v("div", {
123
125
  className: "flex items-center gap-3",
124
126
  children: [/* @__PURE__ */ _("div", {
125
- className: "size-8 rounded-lg bg-primary/10 flex items-center justify-center",
127
+ className: "size-9 rounded-lg bg-[var(--color-accent-soft)] flex items-center justify-center",
126
128
  children: /* @__PURE__ */ _("svg", {
127
- className: "size-4 text-primary",
129
+ className: "size-4 text-text-link",
128
130
  fill: "none",
129
131
  viewBox: "0 0 24 24",
130
132
  stroke: "currentColor",
@@ -138,15 +140,15 @@ var b = ["expired", "upgraded"], x = 10, S = () => {
138
140
  }), /* @__PURE__ */ v("div", {
139
141
  className: "text-left",
140
142
  children: [/* @__PURE__ */ _("p", {
141
- className: "text-sm font-medium text-foreground",
143
+ className: "text-sm font-medium text-text-primary",
142
144
  children: W?.name || "Select Account"
143
145
  }), /* @__PURE__ */ _("p", {
144
- className: "text-xs text-muted-foreground",
146
+ className: "text-xs text-text-secondary",
145
147
  children: W?.email
146
148
  })]
147
149
  })]
148
150
  }), /* @__PURE__ */ _("svg", {
149
- className: `size-4 text-muted-foreground transition-transform ${E ? "rotate-180" : ""}`,
151
+ className: `size-4 text-text-secondary transition-transform ${E ? "rotate-180" : ""}`,
150
152
  fill: "none",
151
153
  viewBox: "0 0 24 24",
152
154
  stroke: "currentColor",
@@ -161,17 +163,17 @@ var b = ["expired", "upgraded"], x = 10, S = () => {
161
163
  className: "fixed inset-0 z-10",
162
164
  onClick: () => D(!1)
163
165
  }), /* @__PURE__ */ _("div", {
164
- className: "absolute top-full left-0 right-0 sm:right-auto mt-1 w-full sm:w-80 bg-popover border border-border rounded-lg shadow-lg z-20 py-1 max-h-60 overflow-y-auto",
166
+ className: "absolute top-full left-0 right-0 sm:right-auto mt-1 w-full sm:w-80 bg-bg-elevated border border-border-subtle rounded-card shadow-elevation-3 z-20 py-1 max-h-60 overflow-y-auto",
165
167
  children: s.map((e) => /* @__PURE__ */ v("button", {
166
168
  type: "button",
167
169
  onClick: () => G(e),
168
- className: "w-full flex items-center justify-between gap-3 px-4 py-3 hover:bg-muted transition-colors",
170
+ className: "w-full flex items-center justify-between gap-3 px-4 py-3 hover:bg-bg-sunken transition-colors",
169
171
  children: [/* @__PURE__ */ v("div", {
170
172
  className: "flex items-center gap-3 min-w-0",
171
173
  children: [/* @__PURE__ */ _("div", {
172
- className: "size-8 rounded-lg bg-muted flex items-center justify-center flex-shrink-0",
174
+ className: "size-9 rounded-lg bg-bg-sunken flex items-center justify-center flex-shrink-0",
173
175
  children: /* @__PURE__ */ _("svg", {
174
- className: "size-4 text-muted-foreground",
176
+ className: "size-4 text-text-secondary",
175
177
  fill: "none",
176
178
  viewBox: "0 0 24 24",
177
179
  stroke: "currentColor",
@@ -185,15 +187,15 @@ var b = ["expired", "upgraded"], x = 10, S = () => {
185
187
  }), /* @__PURE__ */ v("div", {
186
188
  className: "text-left min-w-0",
187
189
  children: [/* @__PURE__ */ _("p", {
188
- className: "text-sm font-medium text-foreground truncate",
190
+ className: "text-sm font-medium text-text-primary truncate",
189
191
  children: e.name
190
192
  }), /* @__PURE__ */ _("p", {
191
- className: "text-xs text-muted-foreground truncate",
193
+ className: "text-xs text-text-secondary truncate",
192
194
  children: e.email
193
195
  })]
194
196
  })]
195
197
  }), W?.id === e.id && /* @__PURE__ */ _("svg", {
196
- className: "size-4 text-primary flex-shrink-0",
198
+ className: "size-4 text-text-link flex-shrink-0",
197
199
  fill: "none",
198
200
  viewBox: "0 0 24 24",
199
201
  stroke: "currentColor",
@@ -211,42 +213,42 @@ var b = ["expired", "upgraded"], x = 10, S = () => {
211
213
  className: "grid grid-cols-1 sm:grid-cols-3 gap-4",
212
214
  children: [
213
215
  /* @__PURE__ */ v("div", {
214
- className: "border border-border rounded-lg bg-card p-4",
216
+ className: "border border-border-subtle rounded-card bg-bg-surface shadow-elevation-1 p-5",
215
217
  children: [/* @__PURE__ */ _("p", {
216
- className: "text-sm text-muted-foreground",
218
+ className: "text-sm text-text-secondary",
217
219
  children: "Account"
218
220
  }), /* @__PURE__ */ _("p", {
219
- className: "text-lg font-semibold text-foreground mt-1",
221
+ className: "text-lg font-semibold text-text-primary mt-1",
220
222
  children: W.name
221
223
  })]
222
224
  }),
223
225
  /* @__PURE__ */ v("div", {
224
- className: "border border-border rounded-lg bg-card p-4",
226
+ className: "border border-border-subtle rounded-card bg-bg-surface shadow-elevation-1 p-5",
225
227
  children: [/* @__PURE__ */ _("p", {
226
- className: "text-sm text-muted-foreground",
228
+ className: "text-sm text-text-secondary",
227
229
  children: "Active Subscriptions"
228
230
  }), /* @__PURE__ */ _("p", {
229
- className: "text-lg font-semibold text-status-success-text mt-1",
231
+ className: "text-lg font-semibold tabular-nums text-status-success-text mt-1",
230
232
  children: R.length
231
233
  })]
232
234
  }),
233
235
  /* @__PURE__ */ v("div", {
234
- className: "border border-border rounded-lg bg-card p-4",
236
+ className: "border border-border-subtle rounded-card bg-bg-surface shadow-elevation-1 p-5",
235
237
  children: [/* @__PURE__ */ _("p", {
236
- className: "text-sm text-muted-foreground",
238
+ className: "text-sm text-text-secondary",
237
239
  children: "Credit Balance"
238
240
  }), /* @__PURE__ */ v("p", {
239
- className: "text-lg font-semibold text-foreground mt-1",
241
+ className: "text-lg font-semibold tabular-nums text-text-primary mt-1",
240
242
  children: [(W.creditAmount || 0).toLocaleString(), " Credits"]
241
243
  })]
242
244
  })
243
245
  ]
244
246
  }),
245
247
  /* @__PURE__ */ v("div", {
246
- className: "flex flex-col sm:flex-row flex-wrap items-stretch sm:items-center gap-3 sm:gap-4 pb-4 border-b border-border",
248
+ className: "flex flex-col sm:flex-row flex-wrap items-stretch sm:items-center gap-3 sm:gap-4 pb-4 border-b border-border-subtle",
247
249
  children: [
248
250
  /* @__PURE__ */ _("div", {
249
- className: "inline-flex rounded-lg border border-border p-1 bg-muted/50 flex-wrap",
251
+ className: "inline-flex rounded-lg border border-border-subtle p-1 bg-bg-sunken flex-wrap",
250
252
  children: [
251
253
  "all",
252
254
  "active",
@@ -255,14 +257,14 @@ var b = ["expired", "upgraded"], x = 10, S = () => {
255
257
  ].map((e) => /* @__PURE__ */ _("button", {
256
258
  type: "button",
257
259
  onClick: () => k(e),
258
- className: `px-3 py-1.5 text-sm font-medium rounded-md transition-colors capitalize ${O === e ? "bg-background text-foreground shadow-sm" : "text-muted-foreground hover:text-foreground"}`,
260
+ className: `px-3 py-1.5 text-sm font-medium rounded-button transition-colors capitalize ${O === e ? "bg-bg-surface text-text-primary shadow-sm" : "text-text-secondary hover:text-text-primary"}`,
259
261
  children: e === "inactive" ? "Inactive" : e
260
262
  }, e))
261
263
  }),
262
264
  /* @__PURE__ */ v("div", {
263
265
  className: "relative flex-1 min-w-0 w-full sm:max-w-md",
264
266
  children: [/* @__PURE__ */ _("svg", {
265
- className: "absolute left-3 top-1/2 -translate-y-1/2 size-4 text-muted-foreground",
267
+ className: "absolute left-3 top-1/2 -translate-y-1/2 size-4 text-text-secondary",
266
268
  fill: "none",
267
269
  viewBox: "0 0 24 24",
268
270
  stroke: "currentColor",
@@ -277,11 +279,11 @@ var b = ["expired", "upgraded"], x = 10, S = () => {
277
279
  placeholder: r("billing.subscriptions.searchPlaceholder", "Search subscriptions..."),
278
280
  value: A,
279
281
  onChange: (e) => j(e.target.value),
280
- className: "w-full pl-[3.25rem] pr-4 py-2 text-sm border border-border rounded-md bg-background text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-primary focus:border-transparent"
282
+ className: "w-full pl-[3.25rem] pr-4 py-2 text-sm border border-border-subtle rounded-button bg-bg-surface text-text-primary placeholder:text-text-placeholder focus:outline-none focus:ring-2 focus:ring-[var(--color-focus-ring)] focus:border-transparent"
281
283
  })]
282
284
  }),
283
285
  /* @__PURE__ */ v("div", {
284
- className: "text-sm text-muted-foreground",
286
+ className: "text-sm text-text-secondary",
285
287
  children: [
286
288
  z,
287
289
  " subscription",
@@ -292,12 +294,12 @@ var b = ["expired", "upgraded"], x = 10, S = () => {
292
294
  ]
293
295
  }),
294
296
  q.length === 0 ? /* @__PURE__ */ v("div", {
295
- className: "flex flex-col items-center justify-center py-12 border border-dashed border-border rounded-lg",
297
+ className: "flex flex-col items-center justify-center py-12 border border-dashed border-border-subtle rounded-card",
296
298
  children: [
297
299
  /* @__PURE__ */ _("div", {
298
- className: "size-12 rounded-full bg-muted flex items-center justify-center mb-4",
300
+ className: "size-12 rounded-full bg-[var(--color-accent-soft)] flex items-center justify-center mb-4",
299
301
  children: /* @__PURE__ */ _("svg", {
300
- className: "size-6 text-muted-foreground",
302
+ className: "size-6 text-text-secondary",
301
303
  fill: "none",
302
304
  viewBox: "0 0 24 24",
303
305
  stroke: "currentColor",
@@ -310,17 +312,17 @@ var b = ["expired", "upgraded"], x = 10, S = () => {
310
312
  })
311
313
  }),
312
314
  /* @__PURE__ */ _("h3", {
313
- className: "text-lg font-medium text-foreground",
315
+ className: "text-lg font-medium text-text-primary",
314
316
  children: r("billing.subscriptions.noSubscriptionsFound", "No subscriptions found")
315
317
  }),
316
318
  /* @__PURE__ */ _("p", {
317
- className: "text-sm text-muted-foreground mt-1",
319
+ className: "text-sm text-text-secondary mt-1",
318
320
  children: O !== "all" || M ? "No subscriptions match your filters." : "You don't have any subscriptions yet."
319
321
  }),
320
322
  a.canCreateSubscription && O === "all" && !M && /* @__PURE__ */ _("button", {
321
323
  type: "button",
322
324
  onClick: () => i("/plans"),
323
- className: "mt-4 px-4 py-2 text-sm font-medium bg-primary text-primary-foreground rounded-md hover:bg-primary/90 transition-colors",
325
+ className: "mt-4 px-4 py-2 text-sm font-medium bg-action-primary-bg text-action-primary-text rounded-button hover:bg-action-primary-bgHover transition-colors duration-200",
324
326
  children: "Browse Plans"
325
327
  })
326
328
  ]
@@ -339,7 +341,7 @@ var b = ["expired", "upgraded"], x = 10, S = () => {
339
341
  type: "button",
340
342
  onClick: () => K(P - 1),
341
343
  disabled: P === 1,
342
- className: "px-3 py-1.5 text-sm border border-border rounded-md disabled:opacity-50 disabled:cursor-not-allowed hover:bg-muted transition-colors",
344
+ className: "px-3 py-1.5 text-sm border border-border-subtle rounded-button disabled:opacity-50 disabled:cursor-not-allowed hover:bg-bg-sunken transition-colors",
343
345
  children: /* @__PURE__ */ _("svg", {
344
346
  className: "size-4",
345
347
  fill: "none",
@@ -358,12 +360,12 @@ var b = ["expired", "upgraded"], x = 10, S = () => {
358
360
  children: Array.from({ length: B }, (e, t) => t + 1).map((e) => {
359
361
  let t = e === 1 || e === B || Math.abs(e - P) <= 1, n = e === P - 2 && P > 3, r = e === P + 2 && P < B - 2;
360
362
  return n || r ? /* @__PURE__ */ _("span", {
361
- className: "px-2 text-muted-foreground",
363
+ className: "px-2 text-text-secondary",
362
364
  children: "..."
363
365
  }, e) : t ? /* @__PURE__ */ _("button", {
364
366
  type: "button",
365
367
  onClick: () => K(e),
366
- className: `px-3 py-1.5 text-sm rounded-md transition-colors ${e === P ? "bg-primary text-primary-foreground" : "border border-border hover:bg-muted"}`,
368
+ className: `px-3 py-1.5 text-sm rounded-button transition-colors ${e === P ? "bg-action-primary-bg text-action-primary-text" : "border border-border-subtle hover:bg-bg-sunken"}`,
367
369
  children: e
368
370
  }, e) : null;
369
371
  })
@@ -372,7 +374,7 @@ var b = ["expired", "upgraded"], x = 10, S = () => {
372
374
  type: "button",
373
375
  onClick: () => K(P + 1),
374
376
  disabled: P === B,
375
- className: "px-3 py-1.5 text-sm border border-border rounded-md disabled:opacity-50 disabled:cursor-not-allowed hover:bg-muted transition-colors",
377
+ className: "px-3 py-1.5 text-sm border border-border-subtle rounded-button disabled:opacity-50 disabled:cursor-not-allowed hover:bg-bg-sunken transition-colors",
376
378
  children: /* @__PURE__ */ _("svg", {
377
379
  className: "size-4",
378
380
  fill: "none",
@@ -395,9 +397,9 @@ var b = ["expired", "upgraded"], x = 10, S = () => {
395
397
  className: "text-center space-y-2",
396
398
  children: [
397
399
  /* @__PURE__ */ _("div", {
398
- className: "size-12 mx-auto rounded-full bg-muted flex items-center justify-center",
400
+ className: "size-12 mx-auto rounded-full bg-bg-sunken flex items-center justify-center",
399
401
  children: /* @__PURE__ */ _("svg", {
400
- className: "size-6 text-muted-foreground",
402
+ className: "size-6 text-text-secondary",
401
403
  fill: "none",
402
404
  viewBox: "0 0 24 24",
403
405
  stroke: "currentColor",
@@ -410,31 +412,31 @@ var b = ["expired", "upgraded"], x = 10, S = () => {
410
412
  })
411
413
  }),
412
414
  /* @__PURE__ */ _("h2", {
413
- className: "text-lg font-semibold text-foreground",
415
+ className: "text-lg font-semibold text-text-primary",
414
416
  children: "Access Denied"
415
417
  }),
416
418
  /* @__PURE__ */ _("p", {
417
- className: "text-sm text-muted-foreground max-w-sm",
419
+ className: "text-sm text-text-secondary max-w-sm",
418
420
  children: "You don't have permission to view subscriptions."
419
421
  })
420
422
  ]
421
423
  })
422
424
  });
423
- }, C = ({ subscription: e, onView: t, canCancel: c }) => {
425
+ }, C = ({ subscription: e, onView: n, canCancel: c }) => {
424
426
  let l = e.plan, u = s(e.status), d = e.status === "active", f = new Date(e.endDate), p = /* @__PURE__ */ new Date(), m = Math.max(0, Math.ceil((f.getTime() - p.getTime()) / (1e3 * 60 * 60 * 24)));
425
427
  return /* @__PURE__ */ _("div", {
426
- className: "border border-border rounded-lg bg-card hover:shadow-md transition-shadow cursor-pointer",
427
- onClick: t,
428
+ className: "border border-border-subtle rounded-card bg-bg-surface shadow-elevation-1 hover:border-border-strong hover:shadow-elevation-2 hover:-translate-y-0.5 transition-all duration-200 cursor-pointer",
429
+ onClick: n,
428
430
  children: /* @__PURE__ */ v("div", {
429
- className: "p-6",
431
+ className: "p-5",
430
432
  children: [
431
433
  /* @__PURE__ */ v("div", {
432
434
  className: "flex flex-col sm:flex-row sm:items-center gap-4",
433
435
  children: [
434
436
  /* @__PURE__ */ _("div", {
435
- className: "size-12 rounded-lg bg-primary/10 flex items-center justify-center shrink-0",
437
+ className: "size-12 rounded-lg bg-[var(--color-accent-soft)] flex items-center justify-center shrink-0",
436
438
  children: /* @__PURE__ */ _("svg", {
437
- className: "size-6 text-primary",
439
+ className: "size-6 text-text-link",
438
440
  fill: "none",
439
441
  viewBox: "0 0 24 24",
440
442
  stroke: "currentColor",
@@ -451,20 +453,21 @@ var b = ["expired", "upgraded"], x = 10, S = () => {
451
453
  children: [/* @__PURE__ */ v("div", {
452
454
  className: "flex items-center gap-2 flex-wrap",
453
455
  children: [/* @__PURE__ */ _("h3", {
454
- className: "font-semibold text-foreground",
456
+ className: "font-semibold text-text-primary",
455
457
  children: l?.name || "Unknown Plan"
456
- }), /* @__PURE__ */ _("span", {
457
- className: `px-2 py-0.5 text-xs font-medium rounded ${o(u)}`,
458
- children: a(e.status)
458
+ }), /* @__PURE__ */ _(t, {
459
+ status: u,
460
+ dot: !0,
461
+ children: o(e.status)
459
462
  })]
460
463
  }), /* @__PURE__ */ v("div", {
461
- className: "flex items-center gap-4 mt-1 text-sm text-muted-foreground",
464
+ className: "flex items-center gap-4 mt-1 text-sm text-text-secondary",
462
465
  children: [
463
466
  /* @__PURE__ */ v("span", { children: [
464
- l ? n(l.price, l.currency) : "—",
467
+ l ? r(l.price, l.currency) : "—",
465
468
  " /",
466
469
  " ",
467
- l ? i(l.duration) : "—"
470
+ l ? a(l.duration) : "—"
468
471
  ] }),
469
472
  /* @__PURE__ */ _("span", {
470
473
  className: "hidden sm:inline",
@@ -472,7 +475,7 @@ var b = ["expired", "upgraded"], x = 10, S = () => {
472
475
  }),
473
476
  /* @__PURE__ */ v("span", {
474
477
  className: "hidden sm:inline",
475
- children: ["Started ", r(e.startDate, "short")]
478
+ children: ["Started ", i(e.startDate, "short")]
476
479
  })
477
480
  ]
478
481
  })]
@@ -482,27 +485,27 @@ var b = ["expired", "upgraded"], x = 10, S = () => {
482
485
  children: [d && /* @__PURE__ */ v("div", {
483
486
  className: "text-right",
484
487
  children: [/* @__PURE__ */ v("p", {
485
- className: "text-sm font-medium text-foreground",
488
+ className: "text-sm font-medium text-text-primary",
486
489
  children: [m, " days"]
487
490
  }), /* @__PURE__ */ _("p", {
488
- className: "text-xs text-muted-foreground",
491
+ className: "text-xs text-text-secondary",
489
492
  children: "remaining"
490
493
  })]
491
494
  }), /* @__PURE__ */ _("button", {
492
495
  type: "button",
493
496
  onClick: (e) => {
494
- e.stopPropagation(), t();
497
+ e.stopPropagation(), n();
495
498
  },
496
- className: "px-3 py-1.5 text-sm font-medium border border-border text-foreground rounded-md hover:bg-muted transition-colors",
499
+ className: "px-3 py-1.5 text-sm font-medium border border-border-subtle text-text-primary rounded-button hover:bg-bg-sunken hover:border-border-strong transition-all duration-200",
497
500
  children: "View"
498
501
  })]
499
502
  })
500
503
  ]
501
504
  }),
502
505
  e.addonSubscriptions && e.addonSubscriptions.length > 0 && /* @__PURE__ */ _("div", {
503
- className: "mt-4 pt-4 border-t border-border",
506
+ className: "mt-4 pt-4 border-t border-border-subtle",
504
507
  children: /* @__PURE__ */ v("p", {
505
- className: "text-sm text-muted-foreground",
508
+ className: "text-sm text-text-secondary",
506
509
  children: [
507
510
  e.addonSubscriptions.length,
508
511
  " addon",
@@ -512,12 +515,12 @@ var b = ["expired", "upgraded"], x = 10, S = () => {
512
515
  })
513
516
  }),
514
517
  e.canceledAt && /* @__PURE__ */ _("div", {
515
- className: "mt-4 pt-4 border-t border-border",
518
+ className: "mt-4 pt-4 border-t border-border-subtle",
516
519
  children: /* @__PURE__ */ v("p", {
517
- className: "text-sm text-muted-foreground",
520
+ className: "text-sm text-text-secondary",
518
521
  children: [
519
522
  "Canceled on ",
520
- r(e.canceledAt),
523
+ i(e.canceledAt),
521
524
  e.cancellationReason && /* @__PURE__ */ v("span", { children: [": ", e.cancellationReason] })
522
525
  ]
523
526
  })